Às vezes, você pode esquecer os comandos do terminal no Linux e salvá-los no seu computador ou em um pedaço de papel como uma folha de consulta é uma boa prática. Esta lista não está completa, mas contém os comandos mais comumente usados. Sinta-se à vontade para adicionar seus comandos mais usados nos comentários abaixo e compartilhar a lista.
Usuários
- Id - Detalhes sobre o usuário (uid, gid e grupo)
- último - Lista informações sobre os últimos logins no sistema, incluindo hora, nome de usuário, endereço IP e duração da sessão.
- who - Exibir usuários autorizados
- groupadd "testgroup" - Cria um grupo chamado "testgroup"
- adduser NewUser - Adiciona o usuário chamado "NewUser"
- userdel NewUser - Exclui o usuário chamado "NewUser"
- usermod NewUser Modifica as informações do usuário "NewUser"
Navegar por diretórios
- cd /. - Vai para o diretório principal
- cd - Vai para o diretório home (variável $HOME)
- cd /root - Vai para o diretório /root
- cd ... - Vai para um nível inferior
- cd /root/.ssh - Vai para a pasta oculta .ssh
Trabalhando com arquivos
- ls -al - Lista arquivos e diretórios
- pwd - Exibe o diretório de trabalho atual
- mkdir NewFolder - Cria um novo diretório chamado "NewFolder"
- rm NewFile - Exclui o arquivo chamado "NewFile"
- rm -f NewFile - Exclui à força o arquivo chamado "NewFile"
- rm -r NewFolder - Exclui o diretório chamado "NewFolder" recursivamente
- rm -rf NewFolder - Força a exclusão de um diretório chamado "NewFolder" recursivamente
- cp oldfile1 newfile2 - Copia o conteúdo de oldfile1 para newfile2
- cp -r olddir1 newdir2 - Copia recursivamente o diretório "olddir1" para "newdir2". Dir2 será criado se não existir.
- mv oldfile1 newfile2 - Renomeia "oldfile1" para "newfile2"
- ln -s /etc/log/file logfile - Cria um atalho para o arquivo
- touch newfile - Cria um arquivo vazio chamado newfile
- cat > newfile - Coloca o STDIN em newfile
- more newfile - Exibe o conteúdo do newfile em partes
- head newfile - Gera as 10 primeiras linhas do newfile
- tail newfile - Gera as últimas 10 linhas do newfile
- gpg -c newfile - Criptografa o newfile no formato gpg com uma frase secreta e o armazena no mesmo diretório
- gpg gpg - Descriptografa o arquivo
- wc newfile - Imprime o número de bytes, palavras e linhas do newfile
.
.
.
Permissões de arquivo/diretório
- chmod 777 /root/ssh - Configura permissões rwx (leitura, gravação, execução) para o arquivo ssh para todos que têm acesso ao servidor (proprietário, grupo, outros)
- chmod 755 /root/ssh - Configura as permissões rwx para o proprietário e r_x para o grupo e outros
- chmod 766 /root/ssh - Configura as permissões rwx para o proprietário e rw para o grupo e outros
- chown newuser newfile - Altera o proprietário do newfile para newuser
- chown newuser:newgroup newfile - Altera o proprietário e o proprietário do grupo do newfile para newuser e newgroup
- chown newuser:newgroup newfolder - Altera o proprietário e o proprietário do grupo do diretório newfolder para newuser e newgroup
- stat -c "%U %G" newfile - exibe o usuário newfile e os proprietários do grupo
Pesquisa
- grep searchargument newfile - procura o searchargument em newfile
- grep -r searchargument newfolder - Procura recursivamente em todos os arquivos em newfolder pelo searchargument
- locate newfile - Mostra todos os locais do newfile
- find /etc/ -name "searchargument" - Localiza arquivos com um nome que começa com searchargument no diretório /etc
- find /etc/ -size +50000k - Localiza arquivos maiores que 50000k no diretório /etc
Arquivamento
- tar -cf archive.tar newfile - Cria o arquivo 'archive.tar' a partir do arquivo 'newfile'
- tar -xf archive.tar - Desempacotar o arquivo 'archive.tar'
- tar -zcvf archive.tar.gz /var/log/ - Cria arquivo a partir do diretório /var/log
- gzip newfile - Comprime o newfile (ele terá uma extensão .gz)
Instalação a partir de pacotes
- rpm -i pkg_programa.rpm - Instala o pacote rpm (CentOS, RHEL...)
- rpm -e pkg_name - Remove o pacote rpm (CentOS, RHEL...)
- dnf install pkg_name - Instala o pacote com o dnf a partir do repositório. Anteriormente, o YUM era usado, mas recentemente o YUM foi substituído pelo DNF. (CentOS, RHEL...)
- dpkg -i pkg_name - Instala a partir de um pacote deb (Debian, Ubuntu, Mint...)
- dpkg -r pkg_name - Remove o pacote deb (Debian, Ubuntu, Mint...)
- apt install pkg_name - Instala o pacote do repositório (Debian, Ubuntu, Mint...)
- apt remove pkg_name -Remove o pacote (Debian, Ubuntu, Mint...)
- apt upgrade && apt update - Atualiza pacotes em seu sistema (Debian, Ubuntu, Mint...) e atualiza os repositórios depois disso
Processos
- ps - Exibe os processos em execução no momento
- ps aux | grep 'bash' - Localiza o ID do processo 'bash'
- pmap -x 11 - Mapeia o processo com PID = 11 na memória do processo
- top - Mostra todos os processos em execução
- kill pid - Finaliza o processo por pid
- killall process - Finaliza todos os processos com o nome "process"
- pkill nome do processo - Envia sinal para um processo
- bg - Envia um processo pausado para execução em segundo plano
- fg - Tira um processo em execução do segundo plano
- fg process - Retira o processo denominado "processo" do segundo plano
- lsof - Listas de arquivos que os processos usam
- renice 19 PID - Define a prioridade mais baixa do processo
- pgrep bash - localiza o ID do processo bash
- pstree - Mostra a exibição em árvore dos processos
Sistema
- uname - Mostra informações do sistema
- uname -r - Mostra informações sobre o kernel do Linux
- uptime - Há quanto tempo o sistema está sendo executado e a média de carga
- hostname - Mostra o nome do host
- hostname -i - Mostra o endereço IP do host
- último reboot - Mostra o histórico de reinicializações
- date - Mostra a data e a hora
- timedatectl - Emite e altera a data e a hora
- cal - Exibe o calendário
- w - Exibe os usuários que estão trabalhando no sistema
- whoami - Exibe seu nome de usuário
- finger root - Mostra informações do usuário root (precisa ser instalado com "apt-get install finger")
Hardware
- dmesg - Exibe as mensagens do sistema na inicialização
- cat /proc/cpuinfo - Mostra informações da CPU
- cat /proc/meminfo - Mostra informações sobre a RAM
- lshw - Mostra informações de hardware
- lsblk - Mostra informações sobre o disco rígido
- free -m - Libera a memória: RAM e swap (opção -m em MB)
- lspci -tv - Mostra informações sobre dispositivos PCI na exibição em árvore
- lsusb -tv - Exibe dispositivos USB em uma visualização em árvore.
- dmidecode - Mostra informações do dispositivo BIOS
- hdparm -i /dev/xda - Mostra informações sobre o disco
- hdparm -tT /dev/xda - Mostra a velocidade de leitura e gravação de xda
- badblocks -s /dev/xda - Mostra o teste de badblocks
Usando o disco
- df -h - Mostra o espaço livre nas partições montadas (em bytes)
- df -i - Mostra os inodes livres no sistema de arquivos
- fdisk -l - Mostra informações do disco, da partição e do sistema de arquivos
- du -sh - Exibe o espaço não alocado em partições montadas em MB, GB, TB
- findmnt - Exibe todos os pontos de montagem
- mount /dev/sdb1 /mnt - Monta a partição 1 do disco sdb em /mnt
Rede
- ip addr show - Mostra os endereços IP de todas as interfaces de rede disponíveis
- ip address add 192.168.0.1/24 dev eth0 - Atribui o endereço 192.168.0.1 à eth0
- ifconfig - Mostra os endereços IP de todas as interfaces de rede disponíveis
- ping 168.0.1 - Envia uma solicitação de eco ICMP para se conectar ao host em 192.168.0.1
- whois domínio - Mostra informações sobre o nome do domínio
- dig domínio - Obtém informações de DNS sobre um domínio
- dig -x 192.168.0.1 - Inverte a resolução de nomes
- host us - Mostra a resolução do endereço do host
- hostname -I - Mostra endereços locais
- wget nome_do_arquivo - Faz o download de um arquivo
- netstat -pnltu - Mostra todas as portas que estão sendo ouvidas no host (precisa de "apt-get install net-tools")
.
.
Conexão remota
- ssh root@host - Conecta-se a um host remoto via ssh como root
- ssh -p port_number user@host - Conecta-se ao host remoto se for usada uma porta ssh diferente de 22
- ssh host - Usa a conexão padrão como o usuário atual
- telnet host - Usa a conexão telnet (porta 23)
.