Comandos Básicos no Shell Linux: mudanças entre as edições
Linha 8: | Linha 8: | ||
== Vídeo Parte 01 == | == Vídeo Parte 01 == | ||
<embedvideo service="youtube">https://youtu.be/isMkuY9N3fc</embedvideo> | |||
Link: https://youtu.be/isMkuY9N3fc | Link: https://youtu.be/isMkuY9N3fc | ||
Edição das 05h20min de 18 de março de 2018
Sobre
Olá! Visitante, reunimos aqui, uma listagem de alguns comandos que podem ajudar você a administrar servidores e desktop com Sistemas Operacionais (SO) GNU-Linux. Como esta lista é grande, deixamos apenas o que achamos mais relevantes para pessoas que estão começando a se aventurar com sistemas GNU.
Vídeo Parte 01
Link: https://youtu.be/isMkuY9N3fc
1- su - SuperUsuario (para alterar para o usuário root)
2- whoami - para ver quem e o usuário logado
3- ls - Lista arquivos e diretórios
Exemplos:
ls -l -> mostra com detalhes ls -la -> mostra com detalhes e também arquivos escondidos (ocultos) ls -lR -> mostra com detalhes recursivamente, do diretório principal pra baixo ls -lt -> mostra com detalhes decrescente ls -ltr -> mostra com detalhes invertendo a operação realizada ls -lh -> mostra com detalhes e o tamanho dos arquivos e mostrado em K, M, G, T ls -l *.conf -> mostra com detalhes arquivos com extensão .conf ls -ld etc -> mostra com detalhes o diretório especificado no comando
4- cd - entra em diretórios
Exemplos:
cd ~user -> vai pra pasta do usuário cd / -> raiz cd . -> diretório corrente cd ~ -> vai para home do usuário corrente cd -> vai para home do usuário corrente
5- pwd - mostra a localização atual nas pastas
6- mkdir - cria pastas
Exemplo:
mkdir -p /home/usuário/teste *cria a pasta teste dentro da pasta home do usuário
7- rm - apaga arquivos ou pastas
Exemplos:
rm teste.txt (arquivo) rm -rf /home/usuário/teste (pasta/subpasta)
8- touch - cria arquivo em branco
9- cat - faz a leitura no shell do arquivo
10- echo - printa no shell ou em arquivo um texto ou comando
Exemplos:
echo 1 (printa 1 no shell) echo "1" > /home/usuário/teste.txt ( adiciona na primeira linha 1, apagando todo o resto do conteudo ) echo "2" >> /home/usuário/teste.txt ( adiciona na ultima linha 2, mantendo o conteudo anterior)
11- head - faz a leitura das primeiras linhas de um arquivo
Exemplos:
head /home/usuário/teste.txt (lê as primeiras 11 linhas de um arquivo) head -n1 /home/usuário/teste.txt (lê a primeira linha de um arquivo)
12- tail - faz a leitura das ultimas linhas de um arquivo
Exemplos:
tail -n10 /home/usuário/teste.txt (lê as ultimas 10 linhas do arquivo) tail -f /var/log/syslog (fica monitorando a saída de log, exibindo em tempo real as ultimas linhas)
13- cp - copia arquivos/pastas/subpastas
Exemplos:
cp /home/usuário/teste.txt /home/usuário/novo_teste.txt cp -r /home/usuário/ /tmp/ (copia de modo recursivo -r) cp -p /home/usuário/ /tmp/ (copia de modo a manter as permissões de arquivos)
14- mv - move arquivos ou pastas
mv /home/usuário/teste.txt /home/usuário/1.txt (move o conteúdo de teste.txt para 1.txt) mv /home/usuário/ /tmp/ (move a pasta usuário para tmp)
15- scp - cp utilizando o ssh (para copiar arquivos ou pastas entre computadores distintos conectados em rede ou internet)
Exemplos:
scp /home/usuário/teste.txt [email protected]:/home/user/ (copia da maquina local para pasta user de uma maquina remota)
16- man - manual
Exemplos:
man ls (exibe manual do ls) man cp (exibe manual do cp) man mv (exibe manual do mv)
Vídeo Parte 02
Link: https://youtu.be/VR8pjDDsWC4
Sistemas de Arquivos:
- FAT-16 (Máximo de tamanho de arquivos 2GB)
- FAT-32 (Máximo de tamanho de arquivo 4GB)
- EXT2 (Máximo de tamanho de arquivos 2GB)
- EXT3 (Rápido e uso de Journing e máximo de tamanho de arquivos 2TB)
- RaiserFS (Tolerância a falha *mas está descontinuado)
- NTFS (Padrão após o WindowsXP)
- XFS (Permite aumentar partições em funcionamento)
- JFS (Melhor desempenho, *para desktop não é recomendado)
- EXT4 (Melhor desempenho e máximo de tamanho de arquivos 16 TB)
- SWAP (Memória em arquivo/partição)
Comandos:
whoami: mostra quem está logado
exemplo:
whoami
fdisk: particionamento de discos
parâmetros
-l: exibe informações sobre os discos e as partições /dev/sdXX: utiliza o fdisk no caminho especificado para fazer o particionamento
exemplos:
fdisk -l fdisk /dev/sdb Dentro fdisk m: ajuda n: criar nova partição p: exibe tabela de partição d: deleta partição w: aplicar mudanças e sair
mkfs: software que prepara (formata a partição)
exemplos:
mkfs.ext4 /dev/sdb1 mkfs.xfs /dev/sdb2
mount: software que faz a montagem (disponibilização) de devices
exemplos:
mount (exibe os pontos de montagens no sistema) mount -t ext4 /dev/sdb1 /mnt/hd_01 mount -t xfs /dev/sdb2 /mnt/hd_02
df: comando que exibe os pontos de montagem
parâmetros
-h exibe em formato humano (melhor entendível)
exemplos:
df df -h
fstab ( arquivo que faz a montagem automática no boot )
exemplo:
nano /etc/fstab # Dispositivo ponto de montagem sistema de arquivo opções verificação de integridade /dev/sdb1 /mnt/hd_01 ext4 defaults * *
Vídeo Parte 03
Link: https://youtu.be/eYUWzOTOcrw
- Configurando o FSTAB
O FSTAB (File System Table) localizado em /etc. Sem dúvidas, é um dos arquivos de configuração mais importantes do GNU/Linux. O arquivo é lido na inicialização do sistema e é quem diz ao sistema o que montar, onde montar e os parâmetros de montagem.
nano /etc/fstab
Modelo das informações
#Dispositivo(Device) Ponto de montagem(/mnt) sistema de arquivo(ext3,ext4,etc..) opções(utilizada para infos avançadas) verificação de integridade(check disk) UUID=6ee6502d-9078-4f59-b843-0f56af2871b6 /mnt/HD_01 ext4 defaults 0 0 UUID=3bc4806f-4056-1d56-c983-0d54a7f631d5 /mnt/HD_02 xfs defaults 0 0
- Parâmetros de opções mencionadas no vídeo:
noexec: diz ao disco ou partição que este não tem permissão de execução.
noatime: diz ao disco ou partição que não são considerados os valores de data e hora no momento da gravação de informação.
BLKID(UUID) do Disco
blkid /dev/sdb Exemplo: UUID="6ee6503d-8078-4f59-b943-0f56af2771b6" TYPE="ext4" PARTUUID="91a56830-02"
- Comando Mount/Umount
- Comando Mount: quando utilizado sozinho exibe os pontos de montagens já realizados, porém quando se fornece o comando seguido de um dispositivo, o tipo de sistema e um caminho ele faz a montagem.
- Comando Umount: utilizado para fazer o processo inverso, ou seja, desmonta os devices anteriormente montados, diferentemente do mount, o umount é utilizado apenas o comando seguido da unidade a ser desmontada, sem a necessidade de parâmetros.
Exemplo:
mount mount -t xfs /dev/sdb1 /mnt/HD_02 umont /dev/HD_02
- Verificação de integridade de discos (FSCK/XFS_Check)
Utilizados para verificar se existem inconsistências nos discos, geralmente quando um servidor ou desktop com Linux não inicializa é preciso verificar os discos, estes são dois dos comandos primordiais para tal realização.
Exemplos:
fsck.ext4 /dev/sdb1 xfs_check /dev/sdb2 xfs_repair /dev/sdb2
- Agendando Tarefas na Cron (crontab)
O crontab, é um programa do Unix que edita o arquivo onde são especificados os comandos a serem executados e a hora e dia de execução pelo cron, um serviço que executa comandos agendados nos sistemas operacionais do tipo Unix. O cron se encarregará de verificar a hora e determinar se existe ou não algum programa a ser rodado. Caso exista ele o rodará na hora e data solicitada.
- Listando tarefas já agendadas
crontab -l
- Editando as tarefas
crontab -e
Exemplo de agendamento:
[minutos] [horas] [dias do mês] [mês] [dias da semana] [comando] 28 01 * * * ls /etc/ > /home/agenda.txt 29 01 * * * mv /home/agenda.txt /home/agenda2.txt
- Monitorar atividades com o watch
Exemplo:
watch -n 1 ls /home
- Manual do Cron
man crontab
- Comando SSH
Secure Shell (SSH) é um protocolo de rede criptográfico para operação de serviços de rede de forma segura sobre uma rede insegura. A melhor aplicação de exemplo conhecido é para login remoto a sistemas de computadores pelos usuários. O SSH fornece um canal seguro sobre uma rede insegura em uma arquitetura cliente-servidor, conectando uma aplicação cliente SSH com um servidor SSH. Aplicações comuns incluem login em linha de comando remoto e execução remota de comandos, mas qualquer serviço de rede pode ser protegido com SSH. A especificação do protocolo distingue entre duas versões maiores, referidas como SSH-1 e SSH-2. Por padrão é utilizada a porta TCP 22, pondendo ser modificada para qualquer porta definida pelo administrador, para se conectar em porta fora do padrão basta adicionar o parâmetro -p (PORTA) seguido da nova porta.
- Instalar o server de ssh
apt-get install openssh-server
- Para acessar máquinas com o ssh-server
Exemplos:
ssh usuario@ip_do_cliente/servidor ssh [email protected] ssh [email protected] -p 2222