quarta-feira, junho 17, 2009

Comandos básicos do Linux

Introdução


O Linux (na verdade, GNU/Linux), assim como qualquer sistema operacional moderno, é perfeitamente capaz de oferecer interação com o usuário através de gráficos, fazendo com que seja possível utilizar a maioria de seus recursos através do mouse. Porém, em dado momento, o modo gráfico pode não estar disponível, restando apenas o modo texto (para a inserção de comandos). Além disso, determinadas tarefas só podem ser executadas por comandos digitados. Para não ficar perdido em qualquer dessas situações, é necessário conhecer alguns comandos do Linux. É isso que essa matéria apresenta a seguir.

Onde e como digitar os comandos?

Se o Linux que você utiliza entra direto no modo gráfico ao ser inicializado, é possível inserir comandos no sistema através de uma aplicação de terminal. Esse recurso é facilmente localizável em qualquer distribuição. A imagem abaixo, por exemplo, mostra um terminal no Ubuntu Linux:


Se o computador que você acessa não estiver com o modo gráfico ativado, será possível digitar comandos diretamente, bastando se logar. Quando o comando é inserido, cabe ao interpretador de comandos (também conhecido como shell) executá-lo. O Linux conta com mais de um, sendo os mais conhecidos o bash e o sh.

Quando um terminal é acessado, uma Informação aparece no campo de inserção de comandos. É importante saber interpretá-la. Para isso, veja os exemplos abaixo:

Exemplo 1: [root@infowester /root]#

Exemplo 2: [wester@alecrim /]$

Observação: dependendo de sua distribuição e de seu shell, a linha de comandos pode ter um formato ligeiramente diferente do que é mostrado nos exemplos. No Ubuntu Linux, por exemplo, o segundo exemplo fica na seguinte forma:

wester@alecrim: ~$

Nos exemplos, a palavra existente antes do símbolo @ diz qual o nome do usuário que está usando o terminal (lembre-se de que no Linux é necessário ter um usuário para utilizar o sistema). Os nomes que aparecem depois do @ indicam o computador que está sendo acessado seguido do diretório.

O caractere que aparece no final indica qual o poder do usuário. Se o símbolo for #, significa que usuário tem poderes de administrador (root). Por outro lado, se o símbolo for $, significa que este é um usuário comum, incapaz de acessar todos os recursos que um administrador acessa. Independente de qual seja, é depois do caractere que o usuário pode digitar os comandos.

Os comandos básicos do Linux

Agora que você já sabe como agir em um terminal, vamos aos comandos do Linux mais comuns. Para utilizá-los, basta digitá-los e pressionar a tecla Enter de seu teclado. É importante frisar que, dependendo de sua distribuição Linux, um ou outro comando pode estar indisponível. Além disso, alguns comandos só podem ser executados por usuários com privilégios de administrador.

A relação a seguir mostra os comandos seguidos de uma descrição:

cal: exibe um calendário;

cat arquivo: mostra o conteúdo de um arquivo. Por exemplo, para ver o arquivo infowester.txt, basta digitar cat infowester.txt;

cd diretório: abre um diretório. Por exemplo, para abrir a pasta /mnt, basta digitar cd /mnt. Para ir ao diretório raiz a partir de qualquer outro, digite apenas cd;

chmod: comando para alterar as permissões de arquivos e diretórios. Saiba mais neste artigo;

clear: elimina todo o conteúdo visível, deixando a linha de comando no topo, como se o sistema acabasse de ter sido acessado;

cp origem destino: copia um arquivo ou diretório para outro local. Por exemplo, para copiar o arquivo infowester.txt com o nome infowester2.txt para /home, basta digitar cp infowester.txt /home/info.txt;

date: mostra a data e a hora atual;

df: mostra as partições usadas;

diff arquivo1 arquivo2: indica as diferenças entre dois arquivos, por exemplo: diff calc.c calc2.c;

du diretório: mostra o tamanho de um diretório;

emacs: abre o editor de textos emacs;

file arquivo: mostra informações de um arquivo;

find diretório parâmetro termo: o comando find serve para localizar informações. Para isso, deve-se digitar o comando seguido do diretório da pesquisa mais um parâmetro (ver lista abaixo) e o termo da busca. Parâmetros:

name - busca por nome
type - busca por tipo
size - busca pelo tamanho do arquivo
mtime - busca por data de modificação

Exemplo: find /home name tristania

finger usuário: exibe informações sobre o usuário indicado;

free: mostra a quantidade de memória RAM disponível;

halt: desliga o computador;

history: mostra os últimos comandos inseridos;

id usuário: mostra qual o número de identificação do usuário especificado no sistema;

kill: encerra processados em andamento. Saiba mais no artigo Processos no Linux;

ls: lista os arquivos e diretórios da pasta atual;

lpr arquivo: imprime o arquivo especificado;

lpq: mostra o status da fila de impressão;

lprm: remove trabalhos da fila de impressão;

lynx: abre o navegador de internet de mesmo nome;

mv origem destino: tem a mesma função do comando cp, só que ao invés de copiar, move o arquivo ou o diretório para o destino especificado;

mkdir diretório: cria um diretório, por exemplo, mkdir info cria uma pasta de nome infowester;

passwd: altera sua senha. Para um administrador mudar a senha de um usuário, basta digitar passwd seguido do nome deste;

ps: mostra os processos em execução. Saiba mais no artigo Processos no Linux;

pwd: mostra o diretório em que você está;

reboot: reinicia o sistema imediatamente (pouco recomendável, preferível shutdown -r now);

rm arquivo: apaga o arquivo especificado;

rmdir diretório: apaga o diretório especificado, desde que vazio;

shutdown: desliga ou reinicia o computador, veja:
shutdown -r now: reinicia o computador
shutdown -h now: desliga o computador

O parâmetro now pode ser mudado. Por exemplo: digite shutdown -r +10 e o sistema irá reiniciar daqui a 10 minutos;

su: passa para o usuário administrador, isto é, root (perceba que o símbolo $ mudará para #);

tar -xzvf arquivo.tar.gz: extrai um arquivo compactado em tar.gz;

telnet: ativa o serviço de Telnet em uma máquina. Para acessar esse computador a partir de outros por Telnet, basta digitar telnet nomedamáquina ou telnet IP. Por exemplo: telnet 192.168.0.10. Após abrir o Telnet, digite help para conhecer suas funções;

top: exibe a lista dos processos, conforme os recursos de memória consumidos;

uname: mostra informações do sistema operacional e do computador. Digite uname -a para obter mais detalhes;

useradd usuário: cria uma nova conta usuário, por exemplo, useradd wester cria o usuário wester;

userdel usuário: apaga a conta do usuário especificado;

uptime: mostra a quantas horas seu computador está ligado;

vi: inicia o editor de textos vi. Saiba mais aqui;

whereis nome: procura pelo binário do arquivo indicado, útil para conhecer seu diretório ou se ele existe no sistema;

w: mostra os usuários logados atualmente no computador (útil para servidores);

who: mostra quem está usando o sistema.

Finalizando

Praticamente todos os comandos citados possuem parâmetros que permitem incrementar suas funcionalidades. Por exemplo, se você digitar o comando ls com o parâmetro -R (ls -R), este mostrará todos os arquivos do diretório, inclusive os ocultos.

A melhor forma de conhecer os parâmetros adicionais de cada comando é consultando as informações de ajuda. Para isso, pode-se usar o recurso --help. Veja o exemplo para o comando ls:

ls --help


Também é possível utilizar o comando man (desde que seu conteúdo esteja instalado), que geralmente fornece informações mais detalhadas. Par usar o man para obter detalhes do comando cp, por exemplo, a sintaxe é:

man cp

Se você estiver utilizando o bash, pode-se aplicar o comando help ou info da mesma forma que o comando man:

help cp

info cp

Assim como conhecer os comandos básicos do Linux é importante, também o é saber como acessar seus recursos de ajuda, pois isso te desobriga de decorar as seqüências das funcionalidades extras. Sabendo usar todos os recursos, você certamente terá boa produtividade em suas tarefas no Linux.