Sistemas Linux tem um poder muito grande na linha de comando, saber aproveitar esta força é indispensável para o uso pleno destes sistemas.
Aqui encontramos principalmente os comandos das Ferramentas GNU, contendo ainda vários comandos específicos de algumas distribuições e alguns programas úteis.
Esta é uma relação de comandos Linux com explicações resumidas e alguns exemplos práticos.
Seu principal objetivo é ser útil para aqueles momentos em que nos perguntamos: Como é mesmo aquele parâmetro? Como é mesmo o comando que faz aquilo? etc. Abrindo este documento e utilizando o CTRL + F podemos localiza o que precisamos.
Os comandos estão em ordem alfabética para melhor localização.
Este documento não esta pronto e se encontra em constante melhoramento e expansão portanto não se assuste se encontrar erros ou faltar algo. Sugestões e correções serão bem vindas.
Bom proveito a todos!
alias
Cria strings de substituição. Na prática é um ‘apelido’ para facilitar a digitação de comandos. Quando usamos a palavra chave ela é substituída por uma outra sequencia de caracteres (string) pré-definidos.
O comando sem nenhum parâmetro exibe os alias existentes.
Vamos analisar o comando abaixo.
alias lista='ls -la | less'
Este comando cria um ‘alias’ que será substituído pelo que especificamos entre aspas, facilitando a digitação de comandos muito extensos ou repetitivos.
O que ocorre é que ao digitarmos lista o interpretador de comando substitui a palavra chave lista pela seqüência de caracteres que definimos, no caso acima, por 'ls -la | less', que em seguida é executado como um comando válido para o shell. Lembrando que shell é um interpretador de comandos como o sh, bash, etc.
Detalhes:
Somente a primeira palavra de uma linha de comando é substituída pela sequência de caracteres definida. E a recursividade de não funciona com este comando, ou seja, se uma string de substituição contiver um outro alias ele não será substituído. Se o último caracter de uma string de substituição for um espaço então a próxima palavra depois da string será verificada se é um alias também.
É prudente lembrar que o uso de muitos alias pode comprometer a performance do sistema.
Os caracteres ( /, $, ‘ e = ) ou qualquer metacaracter não devem ser usados no nome de um alias.
Exemplo:
O arquivo .bashrc é executado após a iniciação de algum terminal, o que nos permite usufruir de configurações personalizadas em qualquer sessão do bash.
É interessante colocar alguns alias no arquivo ~/.bashrc como os seguintes:
alias ls='ls --color=auto'
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
Com esses alias o comando ls passa a exibir cores e os comandos rm, cp e mv pedem confirmação para substituição e exclusão de arquivos.
Veja também:
O comando unalias.
apropos
Procura manuais e descritores (ex: comandos do sistema , bibliotecas perl, etc) relacionados a uma palavra-chave.
Exemplo:
apropos ftp
Vários manuais serão encontrado, seus nomes e breve descrições serão exibidos, então use o comando man seguido do nome do manual escolhido para vê-lo individualmente.
Veja também:
O comando man.
apt-cache
Um programa que verifica e mostra informações sobre pacotes para gerenciar o cache de pacotes existentes no sistema.
Exemplo:
apt-cache showpkg pacote
Mostra informações sobre o pacote especificado.
apt-cache search pac
Procura por pacotes que tenham como parte do nome pac. Usa expressões regulares.
apt-cache pkgnames | grep apache
Filtra da lista de todos os pacotes disponíveis o pacote que contiver a palavra
apache.
apt-get
Um sofisticado sistema de gerenciamento de pacotes, que baixa e ou instala automaticamente pacotes nas distribuições Debian ou baseadas em Debian.
Exemplo:
apt-get install pacoteX
Faz download e instala o pacoteX e suas pendências.
apt-get update
Atualiza a lista de pacotes do apt-get.
apt-get udgrade
Faz o download e atualiza todos os pacotes que tiverem atualizações.
apt-get --no-download install pacoteY
Se você já tem o pacote baixado e só quer instalar esse comando é pra você.
apt-get install squid squid-*
Isto instala dois ou mais pacotes com um só comando. No caso temos a instalação do squid e de todos os pacotes que comecem com squid-.
apt-get remove pacote
Faz a remoção de um pacote e suas pendências.
apt-get -D
Remove um pacote e remove suas pendências somente se possível.
Pastas que são usadas pelo apt-get:
/var/cache/apt/archives
Aqui ficam os pacotes .deb instalados através do apt-get no Debian e distribuições baseadas no Debian, como o Ubuntu.
/packages Nesta pastas ficam os arquivos baixados pelos Icones Mágicos do Kurumin que não utilizam o apt-get, como o OpenOffice e o VMware.
/var/lib/apt
Aqui fica salva as listas dos pacotes disponíveis para o apt, aquelas que você atualiza com com o comando apt-get up.
Por padrão o apt-get baixa os arquivos da distribuição Debian considerados estáveis stable isso pode ser mudado editando-se o arquivo abaixo:
etc/apt/apt.conf
Substitua a palavra stable por unstable ou testing, isso deve ser feito como root. A linha abaixo ilustra definição padrão como stable:
APT::Default-Release "stable";
Ou podemos especificar diretamente na linha de comando assim:
apt-get install -t testing pacote
Onde após o -t indicamos a definição da distribuição que preferimos para aquele pacote.
As vezes é preciso alterar a lista de servidores que contém os programas, para incluir novos ou corrigir algum problema. O arquivo que contem a lista de servidores é o indicado abaixo:
/etc/apt/sources.list
Existem pacotes virtuais que compreendem vários pacotes para uma determinada função como por exemplo task-c-devel que instala todos os pacotes para desenvolvimento e compilação em C.
Ex:
apt-get install task-c-devel
Para visualizar este tipo de pacote se sua distribuição use o seguinte comando:
apt-cache pkgnames | grep task
apt-cdrom
Coleta os dados dos pacotes que você tiver num CD e depois é só usar o apt-get que ele pedira o CD e não baixara da internet.
Ex:
apt-cdrom add
Isto pedirá um CD que será examinado e os pacotes que este CD contiver serão cadastrados no banco de dados do APT para uma futura instalação.
Esse comando é muito útil no Debian que tem atualmente 21 Cds mas para uma instalação é necessário somente o primeiro. Depois de instalado adiciona-se os pacotes que estiverem a disposição nos outros CD’s.
apt-check-sigs
Checa a assinatura de um pacote .deb
alien
Converte pacotes .RPM em .DEB
alien pacote.rpm Isso gera um arquivo pacote.deb que pode ser instalado com o comando dpkg -i pacote.deb.
at
Agenda uma execução para uma data e hora de um arquivo contendo comandos.
Ex:
at -f /usr/bin/Copia 23:59
Vamos supor que o arquivo Copia tenha o seguinte conteúdo:
cp /home/user/trabalho/* /bak
Antes da meia noite (23:59) ele fará a copia de todos os arquivos do diretório /home/user/trabalho/* para o diretório /bak. Não especificamos data somente hora por isto fica assumido que é para hoje.
Podemos especificar:
HH:MM Hora e minuto. Sem a especificação do dia assume como hoje e se a hora já passou assume como amanhã.
midnight Meia noite.
noon Meio dia.
tomorrow Amanhã.
teatime Hora do chá !!! 🙂 Que é 4pm.
AM Antes do meio dia.
PM Depois do meio dia.
MMDDAA Mês, dia e ano, que pode ser também MM/DD/AA ou MM.DD.AA. A data obrigatoriamente deve ser seguida da hora.
now Agora.
+ Indica uma contagem de tempo à partir de agora ou de uma hora especifica. Podemos usar minutes, hours, days e weeks para minutos, horas, dias e semanas respectivamente.
Ex:
now + 3 days Nesta mesma hora daqui a três dias.
2pm + 1 weeks As duas horas da tarde semana que vem.
O root pode usar este comando sem restrições mas os outros usuários dependem dos arquivos /etc/at.allow e /etc/at.deny. Os usuários listados em at.allow terão permissão e os listados no arquivo at.deny não poderão faze-lo. Se nenhum destes arquivos existir somente o root poderá usar o comando at. Se o at.deny estiver vazio todos os usuários poderão usar este comando.
Opções.
-V Exibe a versão.
-q fila Usa uma fila de comandos especifica. As filas possuem o nome com apenas uma letra de a à z e de A à Z. A fila padrão para o comando at é a e para o batch é b.
-m Envia email para o usuário quando a execução tiver terminado.
-f Especifica o programa ou arquivo de script que será executado.
-l O mesmo que atq.
-d O mesmo que atrm.
-v Mostra a hora que será executado antes de fazer o agendamento.
-c id Exibe na tela o conteúdo do script agendado. O id é o número de identificação do script agendado. Para saber o id use o comando atq.
atq
Lista as execuções agendadas pelo comando at.
Usando simplesmente o comando atq. Podemos obter um resultado como o que segue.
11 Wed Sep 26 14:53:00 2007 a user
11 é o id do agendamento, Wed Sep 26 14:53:00 2007 é o momento em que será executado e user é o usuário que criou o agendamento e com o qual será executado.
-q fila Especifica qual fila será exibida. Ver detalhes no comando at.
atrm
Remove um agendamento de execução.
Usa-se atrm seguido do id do agendamento. Ver detalhes no comando at e atq.
atrm
Remove execuções agendadas pelo comando at.
awk
Uma linguagem de programação GNU distribuída junto com várias distribuições Linux.
bc
Calculadora modo texto.
Você pode usar parâmetros para entrar como: scale=6 pi=4*a(1)
– O separador de casa decimal é o ponto e não a vírgula.
– Os comandos devem ser digitados em minúsculo.
– Para definir duas casas decimais, na calculadora digite: scale = 2
– funções:
/ = divisão
* = multiplicação
^ = potência Ex: 2 ^ 3 = 8
sqrt() = raiz quadrada Ex: sqrt (9) = 3
s (32) = seno de 32
c (76) = cosseno de 76
a (2) = arco tangente de 2
l (22) = logaritmo de 22
e (9) = exponencial de 9
bzip2
É um compactador que apresenta um nível de compactação normalmente superior aos outros tipos. Sua extensão padrão é bz2.
-d Descompacta.
-t Testa a integridade do arquivo compactado sem extrair seu conteudo.
…
cal
Mostra o calendário. Ótimo!
ex: cal mostra o calendário do mês
cal 2005 mostra o calendário de todo o ano de 2005
cal maio 2007 mostra o mês de Maio de 2009
cat
Grava na saída padrão o conteúdo de determinado arquivo ou da entrada padrão.
-n mostra o número das linhas.
Ex: cat /etc/mtab exibe o conteúdo do arquivo mtab na tela. (como o type do DOS).
Ex: cat >> Arquivo_teste cria um arquivo com o nome Arquivo_teste e o que você digitar após será gravado nele. Ao se pressionar CTRL + Z o arquivo é fechado.
Ex: para criar um arquivo com a imagem de um disquete:
cat /dev/fd0 > arqimage
Ex: para gravar uma imagem num disquete use:
cat arqimage > /dev/fd0
cd
Muda de diretório (ou pasta).
cd /etc
Muda para o diretório /etc.
cd -
Acessa o diretório anterior que é indicado por -.
cd
Sem parâmetro o comando cd acessa o diretório pessoal do usuário (home). Essa pasta leva normalmente o nome do /home/nome_do_usuario
cd ~/tmp
Acessa o diretório tmp na pasta pessoal do usuário. O mesmo que cd /home/meu_usuario/tmp
cd /usr/in*
Acessa a pasta /usr/include caso seja a única que inicie com in.
cdrecord
Grava CD
cdrecord -v dev=/dev/??? blank=fast speed=X
A linha acima apaga o conteúdo de um CDR-W (CD regravavel)
cdrecord -v dev=/dev/??? speed=X sarge-i386-1.raw
Este comando o arquivo sarge-i386-1.raw (imagem ISO) em um CD.
??? é a unidade de CD que você tem, pode ser hdb, hdc, hdd ou simplesmente cdrom caso seu sistema tenha esse atalho (link)
X é a velocidade de gravação.
cffdisk
Excelente programa para particionar seu HD. Como o fdisk do DOS.
Trabalha com menus e é muito fácil de usar.
chattr
Muda os atributos de um arquivo.
Ex: chattr +i /etc/inetd.conf
O comando acima desabilita modificações no arquivo /etc/inetd.conf
As seguintes opções estão disponíveis:
A =
a = permite que o arq seja aberto somente em modo “append”, ou seja somente para adicionar dados ao arq.
c = o arq é automaticamente compactado pelo sistema.
d = o arq com esse atributo não é candidato a backup quando o programa dump estiver rodando.
i = não permite que o arq seja apagado ou renomeado, não permite que seja criado um link para esse arq e não permite alteração do conteúdo do arquivo.
j =
s =
S = as alterações são gravadas sincronizadamente no o disco.
u = quando o arq é apagado seu conteúdo é salvo, permitindo a recuperação do arquivo.
chkconfig
Gerencia o sistema de inicialização do rc.d. Um sistema de inicialização de serviços. Os programas, servidores ou serviços devem ter seu script de inicialização incluído na pasta /etc/rc.d/init.d.
Ex: chkconfig --list
Lista os serviços e mostra se esta iniciando ou não nos níveis de 0 a 6.
Ex: chkconfig --add postgresql
Adiciona o serviço postgres ao sistema rc.d.
Ex: chkconfig --level 345 postgresql on
Ativa para iniciação automática nos níveis 3,4 e 5 o servidor postgres.
Veja também up-rc.d (para Debians), service, o arquivo /etc/init.d e as pastas /etc/rc.d e /etc/rc.d/init.d.
chmod
Muda as permissões de acesso aos arquivos.
chmod <QUEM_PERMIÇÃO> <arquivo>
QUEM pode ser:
u usuário proprietário, normalmente quem criou o arquivo.
g grupo
o outros que não sejam u nem g
a todos
_ pode ser + para adicionar a permissão ou - para remover a permissão e = troca as permissões pelas definidas.
PERMISSÃO pode ser:
r leitura
w escrita
x execução ou acesso a diretório
X execução somente se o arquivo ou diretório já tem permissão de execução para algum usuário.
s quando o arquivo for executado será informado ao sistema que quem esta executando este arquivo é dono do arquivo e não quem o executou realmente. Isto se chama setuid. Se o dono do arquivo for o root e o usuário pedro executou este arquivo o programa será executado com direitos de root. É claro que devemos tomar cuidado com isto, pois permite margem para grandes problemas de segurança. Para alterar o dono e grupo veja o comando chown.
t mesmo que todos os usuários tenham permissão de escrita em um diretório, somente o proprietário do arquivo e o proprietário do diretório podem apagar arquivos neste diretório. Conhecido também como ‘bit contrário’.
?salvar a área de texto do programa na área de swap? modo “Sticky”
u as permissões que o usuário proprietário do arquivo possui atualmente
g as permissões que outros usuários do grupo do arquivo têm para acessa-lo
o as permissões que outros usuários não pertencentes ao grupo do arquivo têm
Ex:
chmod u+x arquivo
O exemplo acima da ao dono do arquivo o direito de executa-lo como um programa.
Ex:
chmod go-wx Lista_de_chamada.txt
O comando logo acima define que o grupo ao qual o arquivo pertence e os outros usuários terão direito de escrita e execução sobre o arquivo Lista_de_chamada.txt.
O comando chmod também pode ser usado no modo octagonal ou numérico, onde os parâmetros são passados com dígitos de 0 à 7 sendo que o primeiro dígito define permissões extendidas o segundo as permissões do dono, o terceiro dígito os direitos do grupo e o quarto dígito as permissões dos outros usuários.
Ex:
chmod 0765 arquivo-teste
Veja a tabela a seguir para entender que permissões foram dadas ao arquivo.
0 = Nenhum direito ou atributo
1 = x (execução)
2 = w (escrita, alteração e gravação)
3 = wx (leitura)
4 = r
5 = rx
6 = rw
7 = rwx
Para o primeiro digito temos as permissões de identificação do usuário, seleção de grupo, imagem de texto e atributos. ???
Opções
-R aplica as permissões recursivamente em toda uma pasta e seu conteúdo.
-f Não mostra mensagens de erro para os arquivos em que as permissões não podem ser alteradas.
…
chroot
Faz com que o diretório root (/) seja mudado para a pasta especificada.
Ex:
chroot /mnt/hda1
Este comando faz com que o raiz do sistema de arquivos seja visto à partir da pasta /mnt/hda1 ou seja se usarmos o comando ls / estaremos vendo na verdade a pasta /mnt/hda1
chsh
Define o shell padrão para um usuário.
Ex:
chsh -s /bin/backup bakuper
O exemplo acima define que quando o usuário bakuper acessar o sistema irá executar o programa /bin/backup ao invés do shell padrão.
chown
Altera o dono e o grupo dos arquivos.
Ex:
chown pedro:backup script.pl
Este comando torna o arquivo script.pl pertencente ao usuário pedro e ao grupo backup.
chown maria trabalho_sobre_redes
O comando acima faz com que o usuário maria seja o dono do documento trabalho_sobre_redes.
chown -R tiago:users /home/data/*
Neste caso todos os arquivos e diretórios abaixo de data terão como dono tiago e o grupo users.
clock
Em alguns sistemas antigos mostra e define a data e hora. Veja date.
cmp
Compara dois arquivos. Como o fc do DOS.
Ex:
cmp arq1.txt arq2.txt
cp
Copia arquivos e ou diretórios. Similar ao COPY do DOS ou XCOPY.
Ex:
cp /home/user/resolv.conf /etc
O primeiro parametro /home/user/resolv.conf indica a origem e osegundo /etc o destino.
Parâmetros:
-d Ao invés de seguir os links eles são copiados.
-f Se um destino já existir e não puder ser aberto apaga e tenta copiar novamente.
-i Aciona o modo interativo no caso de substituição.
-L Segue o link e copia o que estiver apontando.
-P Não copia link.
-p Preserva os atributos. Quando copiamos um arquivo o dono da cópia passa a ser quem copiou, usando este comando isto não acontece.
-R Copia subdiretórios inteiros (recursivo).
-s Cria o link no destino.
-u Copia somente quando a origem for mais nova que o destino ou quando não houver o arquivo no destino.
-v Modo “verbose” mostra os nomes dos arquivos conforme vão sendo copiados.
É o mesmo que --preserve=mode,ownership,timestamps.
--preserve Preserva os atributos …
--no-preserve Não preserva atributos …
Ex:
cp -R /mnt/dos/meusdoc /root
O comando acima copia o diretório meusdoc e todo seu conteúdo para o diretório /root.
crontab
Mantém o agendamento da lista de tarefas que serão executadas pelo daemon cron. Com esta lista de tarefas podemos determinar que tarefas sejam executadas em determinado dia e hora, cada usuário tem a sua lista de tarefas. Estas listas ficam em /var/spool/cron/crontabs com o nome do ID do usuário, porem não devemos edita-las diretamente.
Os arquivos /etc/cron.deny e /etc/cron.allow negam e permitem respectivamente o uso deste comando a usuários específicos, se existirem. Em geral todos os usuários podem usar este comando.
Os parâmetros que podem ser usados são:
-u Especifica o usuário que o crontab usará para fazer as operações. Se este parâmetro for omitido fará para o usuário atual. Observe que o comando su pode confundir o crontab e nesse caso deve-se sempre usar a opção -u.
-l Lista as tarefas do usuário.
-r Remove as tarefas do usuário.
As tarefas são definidas no arquivo /etc/crontab que seguem o seguinte formato:
Min Hor Dia Mês Semana UID Script
52 18 * * 1-5 root /home/user/scripts/faça_algo
Neste caso teremos o script faça_algo executado de segunda a sexta(1-5) as 18 horas e 52 minutos como usuário root. O * nas colunas dia e mês indicam todos os dias e todos os meses.
date
Exibe ou altera a hora e a data. Só digitando date exibirá a hora e data atual.
Para alterar veja o exemplo abaixo.
Ex:
date 02211950
Com o comando acima ajustamos o relógio para o mês de Fevereiro, dia 21, as 19 hora e 50 minutos.
O formato é MMDDhhmmAAaass onde MM é mês, DD dia do mês, hh é a hora e mm minutos, opcionalmente podemos usar AA para os dois primeiros dígitos do ano, aa para os dois últimos dígitos do ano e ss para os segundos. Este comando deve ser executado como root.
Digitando + e as strings de o formatação a seguir podemos mudar a forma de exibição.
%texto% Exibe o literalmente o que estiver entre os %.
%a Dia da semana abreviado.
%A Dia da Semana.
%b Mês abreviado.
%B Mês.
%d Dia do mês.
…
%H Hora.
%m Número do mês.
%M Minuto.
%S Segundo de 00 à 60.
%T Hora minuto e segundo. O mesmo que %H:%M:%S.
%u Número do dia da semana de 1 à 7.
%U Número da semana do ano de 00 à 53.
%y Número do ano com dois dígitos.
%Y Número do ano com quatro dígitos.
…
Ex:
date +%A
Mostra o dia da semana. (quarta)
date +%d-%m-%y
Mostra a data. (06-12-06)
date +%H:%M
Mostra a hora. (16:45)
date +%d%B%Y_%T
O resultado agora foi: 24abril2007_18:27:27
dd
Copia dados de uma entrada para uma saída. Você pode tanto fazer copia de um arquivo para outro como enviar dados de um setor específico de um disco para uma porta serial. Esse comando deve ser usado com cautela, ele permite TUDO, e isso é perigoso.
Ex:
dd if=/dev/hdb of=/dev/hdc
Copia todo um disco para outro. (cuidado! não use se não souber o que está fazendo)
dd if=/dev/hda of=backup.mbr bs=512 count=1
Faz copia do MBR (Master Boot) para o arquivo backup.mbr
dd if=/dev/fd0 of=disk.img
Cria uma imagem completa de um disquete.
dd if=/dev/cdrom of=imagem.iso
Cria uma imagem completa de um CD ou DVD.
A opção noerror faz com que não se pare após encontrar um erro de leitura.
Podemos perceber que if é a origem e of é o destino.
df
Da informações sobre espaço livre em disco.
A opção -T exibe também o tipo do sistema de arquivo.
A opção -h mostra os valores em formato mais legível, por exemplo ao invés de 33863328 bytes mostra 32G.
O resultado de df -T em meu computador é:
Filesystem Type 1k-blocks Used Available Use% Mounted on
/dev/hda3 ext2 1026099 799208 173877 82% /
/dev/hda1 vfat 1927488 1709696 217792 89% /dos1
/dev/hda5 vfat 5232024 3991168 1240856 76% /dos2
diff
compara dois arquivos?
dig
Verifica o funcionamento de servidores de DNS.
Sintaxe:
dig @servidor nome tipo
Parâmetros:
@servidor Especifica um servidor de DNS para fazer a consulta.
nome É o nome do recurso ou domínio para verificação.
tipo É o tipo de consulta: any = tudo
a =
mx =
sig =
ptr =
Ex:
dig -t ptr 145.140.17.200.in-addr.arpa
Este exemplo testa o dns reverso usando o IP invertido (IP naormal seria 200.17.140.145) mais a ‘.in-addr.arpa”.
dmesg
Sabe aquelas mensagens de boot que você não consegue ler pois passa muito rápido, você pode vê-las tranquilamente usando esse comando. Acabou sua revolta. 🙂
Exemplo: dmesg | less
dpkg
Instalador de pacotes para os Debian.
-i Instala pacote
-r Remove um pacote menos seus arquivos de configuração.
-P Remove todo o pacote.
-L Lista os arquivos de um pacote.
-p Exibe informações sobre o pacote.
--info Mostra informações sobre um arquivo .deb
--status Mostra informações sobre um pacote instalado ou disponível para instalação.
A lista de pacotes disponíveis é /var/lib/dpkg/available
dpkg -i pacote.deb instala o pacote.deb
du
Da informações sobre o tamanho dos arquivos ou diretórios.
Ex:
du -sh /etc Mostra somente o tamanho total da pasta /etc sem sub-totais.
du -hc * Mostra o tamanho de cada arquivo e pasta do diretório atual com um total ao final. Se não usarmos o * o comando não funciona da mesma forma.
du -h Mostra os bytes em Kbytes ou Megabytes facilitando a leitura.
du -a Mostra também os tamanhos dos arquivos, não para diretórios somente.
du -s Mostra apenas o total não exibe sub-totais.
du -b Mostra em bytes
du -k Mostra em Kbytes
du -m Mostra em Megabytes
du -x Exclui outros sistemas de arquivos que não sejam do sistema.
du --max-depth=N Mostra o tamanho das pastas somente N níveis abaixo da pasta atual. Para exibir o tamanho de cada pasta sem listar suas sub-pastas podemos usar: du --max-depth=1
dumpe2fs
exibe informações sobre o sistema de arquivos em dispositivos de bloco ou super bloco (discos em geral).
e2fsck
Checa um sistema de arquivos ext2 e ext3.
Parâmetros:
-c Verifica badBlocks (blocos que tenham setores defeituosos)
-D Otimiza o sistema de arquivos.
-f Força a checagem mesmo que o sistema esteja limpo.
-p Repara automaticamente
-v Modo verbose, mostra informações detalhadas.
Ex:
e2fsck -fpv
Faz a verificação do sistema de arquivos e corrige automaticamente erros encontrados.
e2fsck -cfpv
O mesmo que o comando anterior só que verifica se existem blocos defeituosos.
eject
Permite que mídias removíveis sejam ejetadas. Tipicamente usado com drives de CD este comando também pode ser usado com disquetes(que aceitem ejeção por software), fitas, ZIP e JAZ drive e troca de CD em drives de múltiplos discos.
Se for necessário podemos especificar o dispositivo a ejetar. Por padrão o eject usa 'cdrom' mas podemos especificar um dispositivo com /dev/... ou o ponto de montagem como /media/dispositivo.
Por padrão antes de ejetar a mídia o eject desmonta o dispositivo, se não conseguir desmontar não prosseguirá com a ejeção. Existem quatro tipos de ejeção que são CD-ROM, SCSI, disquete e fita. Se não for especificado um ou mais tipos o eject tentará os quatro métodos, na ordem mostrada, até conseguir sucesso.
Opções:
-t recolhe a mídia ou bandeja da mídia(drive de CD), nem todos os dispositivos aceitam esta opção, até porque, nem todos os dispositivos possuem este recurso.
Outras opções:
-x Seleciona a velocidade do drive de CD. Por exemplo: 4 é para velocidade de 4x e assim sucessivamente, o 0 é para velocidade máxima.
-n Mostra o dispositivo selecionado.
-d Mostra o dispositivo padrão.
-h Mostra ajuda resumida.
-V Mostra a versão do programa e sai.
-r Utiliza os comandos de ejeção para drives de CD.
-s Utiliza os comandos de ejeção para drives SCSI.
-f Utiliza os comandos de ejeção para drives de disquete.
-q Utiliza os comandos de ejeção para drives de fita.
-p Utiliza /proc/mount ao invés de /etc/mtab.
-m Permite me mídias montadas automaticamente sejam ejetadas sem que se tente desmontar, estas mídias devem sempre estar montadas.
exit
Faz um logout e fecha o terminal aberto.
export
Indica ou atualiza compartilhamentos NFS.
exportfs
Exporta diretórios em servidores NFS (Network File Sistem), atualiza as exportações de acordo com o arquivo /etc/exports que guarda definição de exportações, etc.
fdformat
Formata discos.
Ex:
fdformat /dev/fd0
O comando acima formata o primeiro disquete.
fdisk
Manipula a tabela de partições de um disco.
Ex:
fdisk -l Lista as partições dos discos fixos.
fdisk /dev/hda
Edita tabela de partição do disco primário master.
Depois de executar esse comando você pode digitar m para ajuda l para listar os tipos de partição reconhecidos e q para sair. Cuidado! Se não souber exatamente o que esta fazendo, NÂO FAÇA, o comando fdisk é potencialmente perigoso e pode tornar indisponível todos os dados de seu disco rígido.
Os comandos do fdisk são:
a permite marcar uma partição como de boot “inicializável” para saber o número da partição utilize primeiro o comando p.
b edita rótulo BSD no disco
c alterna a opção “compatibilidade”
d exclui uma partição
l lista os tipos de partição conhecidos
m mostra este menu
n cria uma nova partição
o cria uma nova tabela de partições DOS vazia
p mostra uma tabela com as partições, informações indicando qual a partição de boot, o setor de inicio e fim, a quantidade de blocos, o sistema de arquivos e ID de cada partição.
q sai sem salvar as alterações
s cria um novo rótulo de disco Sun vazio
t altera a identificação da partição para o sistema
u altera as unidades das entradas mostradas
v verifica a tabela de partições
w grava as alterações executadas na tabela de partições do disco e sai.
x funcionalidade adicional (somente para usuários avançados)
ffmpeg
Este software é na verdade um sistema multimídia capaz de converter formatos de vídeo, áudio.
O site do software é http://ffmpeg.mplayerhq.hu/
Para instala-lo use em distribuições que possuem o apt-get:
apt-get install ffmpeg
Para exibir os formatos, codecs e protocolos suportados use:
ffmpeg -formats
Para converter um vídeo de avi para mpeg use:
ffmpeg -i original.avi -target vcd vcd.mpg
Parâmetros.
-t Ajusta o tempo de gravação em segundos, o formato “hh:mm:ss[.xxx]” também é suportado.
-ss Busca apartir da posição especificada em segundos, aceita também o formato “hh:mm:ss[.xxx]“.
-hq Ativa configurações de alta qualidade.
-itsoffset Limita o tempo que será usado do arquivo de entrada. Esse tempo pode ser em segundos ou no formato “[-]hh:mm:ss[.xxx]“.
Opções de Vídeo
-b Ajusta o ‘bitrate’ em kbits/s. O padrão é 200 Kbps.
-r Ajusta o ‘frame rate’ (quadros por segundo) o padrão é 25.
-target Determina o formato do arquivo de saída. Pode ser vcd, svcd, dvd, dv, pal-vcd, ntsc-svcd…
-s Ajusta o tamanho do frame. O formato é LarguraxAltura ( o padrão é 160×128). As seguintes abreviações são reconhecidas:
sqcif = 128×96
qcif = 176×144
cif = 352×288
4cif = 704×576
-aspect Configura o aspecto como 4:3, 16:9 ou 1.3333, 1.7777.
Opções Áudio
-ar Ajusta a freqüência (o padrão é = 44100 Hz).
-ab Ajusta o bitrate, em kbits/s o padrão é 64.
-ac Configura o número de canais, o padrão é 1.
-acodec Força a codificação para o codec especificado.
Ex:
ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg
Converge os arquivos de vídeo e áudio em um único arquivo mpg de 640×480.
Mais exemplos e opções avançadas veja a man page do ffmpeg.
fg
Alterna para um serviço ou programa em segundo plano.
Use o comando jobs para listar os programas em segundo plano. Cada um deles tem um número que deve ser usado para aciona-lo.
Ex:
$ jobs
[1] Stopped vi
[2]- Stopped bc
[3]+ Stopped mcedit
$ fg 2
No último comando acima estamos alternando para o programa bc que como podemos ver na listagem de jobs tem a referência 2.
figlet
Transforma texto simples em formatos grandes usando caracteres.
A explicação parece confusa?! Experimente, digite a seguinte linha de comando:
figlet 'Oi Mundo!'
Não use aspas duplas ” “, em alguns casos pode apresentar erros.
O resultado seria:
___ _ __ __ _ _
/ _ \(_) | \/ |_ _ _ __ __| | ___ | |
| | | | | | |\/| | | | | '_ \ / _` |/ _ \| |
| |_| | | | | | | |_| | | | | (_| | (_) |_|
\___/|_| |_| |_|\__,_|_| |_|\__,_|\___/(_)
Se não funcionar é porque você provavelmente não tem o figlet instalado. Podemos baixar da internet:
ou:
Se seu Linux é baseado no Debian podemos usar o apt-get e instalar através do usuário root assim:
apt-get install fliget
O figlet tem algumas fontes diferentes veja os exemplos no site alternativo:
http://www.jave.de/figlet/fonts/overview.html
Podemos também baixar mais fontes do site alternativo:
http://www.jave.de/figlet/fonts/overview.html
Os nome das fontes podem ser listados com o comando:
figlist
Se não possuir o comando figlist verifique no site indicado acima.
Fontes comuns que já vem com o Figlet são:
banner, big, block, bubble, digital, lean, mini, mnemonic, script, shadow, slant, small, smscript, smshadow, smslant, standard, term.
Para usar fontes faça assim:
figlet -f banner 'TEXTO'
As opções deste comando são:
-c Centraliza o texto.
-l Alinha a esquerda.
-r Alinha a direita.
-x Justifica o texto.
-w Número máximo de colunas.
-t …
Mais opções veja man figlet.
Veja também o JavE. Um editor de “gráficos” em formato ASCII (texto puro).
find
Procura arquivos em um hierarquia de diretórios
Ex:
find / -name "*.tmp"
Procura apardir de \ por qualquer coisa que tenha .tmp ignorando maiúsculas e minúsculas.
O comando acima no DOS seria: dir \*.tmp /s
find -iname bonit
O comando acima procura por arquivo que contenha bonit, o -iname ignora
maiúsculas e minúsculas e a busca é feita a partir do diretório atual porque nenhum outro foi definido.
Opções:
-empty O arquivo está vazio.
-follow Segue links simbólicos
-nowarn Não exibe mensagens de erro.
-maxdepth N Desce no máximo N níveis de diretório na pesquisa.
-mount Não desce em diretório de outros sistemas de arquivos.
Ações
-delete bla bla bla
-exec comando Executa o comando até que seja encontrada o caracter ; e a string {} que é substituída pelo resultado do comando find deve ser seguida do caractere \.
Ex: find -
Testes de data e hora:
find /home/usuario -type f -mtime 20
Acima temos uma procura na pasta /home/usuario e suas subpastas por arquivos regulares ( -type f ) e que tenham seus dados modificados a 20 dias a traz, na verdade o número 20 é avaliado em horas ( 20 * 24h ). Se agora fossem 12:00h e o arquivo foi alterado ontem as 10:30 ele não teria um dia de diferença, faltariam 1:30h para isso.
Os tipos para -type são:
d diretório
f arquivo
l link simbólico (atalho)
veja outras opções usando man find.
Os argumentos numéricos podem ser especificados assim:
+n maior que n
-n menor que n
n exatamente n
Exemplo:
find -size +100M
Procura por arquivos maiores que 100M
Podemos usar K para Kbyte, M para Mega e G para Gigabyte.
Por exemplo o argumento -mtime +7 se refere a arquivos alterados a mais de sete dias.
Observe que quando falamos em “arquivo” pode ser diretório, link, etc:
-amin n O arquivo foi acessado a n minutos a traz.
-anewer arq O arquivo teve o último acessado mais recentemente que arq.
-atime n O arquivo foi acessado a n*24 horas a traz.
-cmin n O arquivo foi modificado a n minutos a traz.
-cnewer arq O arquivo teve o status modificado mais recentemente que arq.
-ctime O arquivo teve o status modificado a n*24 horas a traz.
-gid N O ID do grupo é N.
-group nome O arquivo pertence ao grupo nome.
-iname Ignora maiúsculas e minúsculas.
...
finger
Mostra informações sobre o usuário como por exemplo em que terminal esta logado.
Ex:
finger paulo
finger / finger @ip
Mostra quem esta conectado em determinado IP caso você tenha uma máquina que permita conecções remotas.
free
Mostra o uso da memória RAM, swap e cache do Kernel.
-b -k -m -g Mostra os dados em bytes, Kbytes, Megabytes e Gigabytes respectivamente.
-o Não mostra informação com -/+buffers/cache.
-t Mostra na última linha os totais.
-s N Mostra a as informações atualizando em N segundos. Para parar precione CTRL+C.
ftp
Cliente de ftp para transferência de arquivos para um servidor.
Ex:
ftp 200.145.144.156
Vai pedir usuário e senha.
> put /home/user/meu_arquivo /remoteftp/meu_arquivo_novo
Após autenticado (no terminal do servidor ftp) esse comando faz a transferência do arquivo meu_arquivo para o servidor na pasta /remoteftp, observe que o nome do arquivo no servidor ficará meu_arquivo_novo, a indicação deste nome é obrigatória mas não precisa ser diferente do original.
> bell
Produz um “beep” após cada transferência ser completada.
> ascii
Ajusta o tipo de transmissão para ASCII.
> binary
Ajusta o tipo de transmissão para binário.
> bye
Termina a sessão FTP com o servidor e sai.
> cd pasta
Acessa a pasta do servidor de FTP remoto.
> cdup
Retorna para a pasta logo acima.
> delete arquivo
Apaga o arquivo especificado.
> dir pasta-remota arquivo-local
Se não for especificado uma pasta lista os arquivos da pasta atual. Se a pasta-remota for especificada lista os arquivos da mesma. Se um arquivo-local for especificado grava a listagem no arquivo.
> get arquivo-remoto arquivo-local
Faz o download do arquivo-remoto e salva na maquina local, se o nome arquivo-local não for especificado usará o mesmo da origem.
>idle N
Se não for especificado o tempo, exibe o tempo limite de inatividade padrão do servidor. Se o tempo em segundos (N) for especificado define um novo tempo limite.
> lcd pasta
Muda a pasta de trabalho na máquina local para pasta.
> ls pasta arquivo-local
Lista o conteúdo da pasta remota do servidor. Se o arquivo-local for especificado a listagem será gravada neste arquivo local.
> mdelete
O mesmo que delete.
…
gphoto2
Baixa fotos de cameras digitáis
Ex: gphoto2 --autode-tect -P
Isto baixa todas os arquivos da câmera.
getconf
Consulta variáveis da configuração do sistema.
Ex:
getconf LONG_BIT
Mostra se a versão do sistema é 32 ou 64 bits.
grep
Filtra a saída de um outro comando.
-i ignora maiúsculas e minúsculas.
-w encontra apenas palavra inteira.
-n imprime junto com a linha encontrada o seu número no arquivo.
-s suprime mensagens de erro.
-e usa expressões regulares.
-P usa expressões regulares Perl.
-v inverte o padrão de reconhecimento.
Ex:
df | grep "hda1"
O comando acima mostra somente a linha que contiver hda1.
Ao finalizar grep retorna 0 se encontrar, 1 se não encontrar e 2 se der problema.
grub
Gerenciador de boot.
Lembre-se que você deve ter cópia de seus dados e os comandos aqui podem danificar permanentemente os dados do seu disco, portanto seja cauteloso.
Para recuperar o boot por um Live-CD que possua o Grub, de preferência a mesma distribuição que estiver instalada no computador, use a seqüência:
#grub
grub> find /boot/grub/stage1
(hd0,2)
grub>root (hd0,2)
grub>setup (hd0)
Ao digitarmos grub entramos no interpretador de comados do Grub ‘grub>‘, digitamos o primeiro comando find /boot/grub/stage1 no caminho especificado boot/grub/ indicamos a pasta onde se encontra o arquivo stage1 que contém informações sobre o disco e partição de boot, essa informação será usada nos próximos comandos. Se este comando não funcionar você vai precisar saber qual o disco e a partição onde estão os arquivos de boot. Para o primeiro disco usamos hd0, para o segundo disco hd1, para a primeira partição usamos 0, para a segunda 1 e assim sucessivamente. Por exemplo para o primeiro disco e terceira partição usamos (hd0,2), para segundo disco primeira partição usamos (hd1,0).
Após obtermos a informação que precisamos indicamos qual o diretório raiz com root (hd0,2). Então finalizamos, reconfigurando o sistema de boot com o comando setup (hd0).
O grub tem mais comandos que podemos descobrir usando o comando help. Será exibido um resumo dos comandos com seus parâmetros e para ajuda mais específica podemos usar help seguido de um dos comandos do qual gostaríamos de mais detalhes.
Podemos precisar recuperar o boot com o comando install do grub da seguinte forma:
# grub
grub> install (hd0,2)/boot/grub/stage1 (hd0) (hd0,2) /boot/grub/stage2 0x8000 (hd0,2)/boot/grub/menu.lst
Como colocar uma imagem de fundo no menu do GRUB
Converta uma imagem do tipo png para 640×480, 14 cores e formato xpm. O comando a seguir pode ajudar:
convert -resize 640x480 -colors 14 imagem.png imagem.xpm
Copie a imagem para a pasta /boot/grub
Inclua no arquivo /boot/grub/menu.lst a seguinte linha:
splashimage (hd0,1)/boot/grub/imagem.xpm
Pronto é só dar reiniciar para ver o resultado.
Modificando o menu de inicialização.
Editando o arquivo /boot/grub/menu.lst podemos definir várias opções.
Opções de cores:
foreground ffffff Define a cor da fonte (letras) do menu.
background 000080 Define a cor de fundo.
Opção de boot padrão:
default 0 Define o boot padrão.
Um ítem de menu:
title Ubuntu, kernel 2.6.15-28-386
root (hd0,3)
kernel /boot/vmlinuz-2.6.15-28-386 root=/dev/sda4 ro quiet splash
initrd /boot/initrd.img-2.6.15-28-386
savedefault
boot
Algumas dicas interessantes como senha no boot, imagem de fundo (splash), etc em http://wiki.ubuntubrasil.org/Grub.
grub-install
Instala o gerenciador de boot GRUB.
Na maioria das vezes usamos este comando para corrigir problemas de boot.
Para recuperar um boot falho devemos iniciar o sistema por um Live-CD como o Kurumin, Ubuntu ou preferencialmente a mesma distribuição que estiver instalada no disco.
Vamos precisar de um terminal e direitos de root. O comando sudo -i deve propiciar estes direitos.
Para visualizarmos os discos e suas partições podemos usar o seguinte comando: fdisk -l
Este comando deve resultar algo como:
Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1275 10241406 7 Linux
/dev/sda2 1276 6374 40957717+ b Linux
/dev/sda3 6375 6635 2096482+ 82 Linux swap / Solaris
/dev/sda4 6636 9729 24852555 83 Linux
Observe que neste caso o único disco é o sda e a partição de boot indicada pelo asterisco na coluna Boot é sda1. Isto pode variar, observe as diferenças e ajuste os comandos a seguir de acordo com seu sistema.
Precisamos montar a partição que contenha a pasta /boot com os arquivos do GRUB. Para isto usamos:
mount /dev/sda1 /mnt
E finalmente mandar reinstalar o GRUB com o comando:
grub-install --root-directory=/mnt /dev/sda
O parâmetro --root-directory indica o raiz do sistema a ser recuperado, onde nosso comando encontrará os arquivos necessários e o /dev/sda indica o disco, que é claro deve ser substituído pelo correspondente do seu sistema.
Outra forma de recuperar o boot seria a seguinte:
Iniciando-se por um Live-CD e prosseguindo assim:
$ sudo -i
# mount /dev/sda1 /mnt
# mount --bind /dev /mnt/dev
# cd /mnt
# chroot /mnt
# grub-install /dev/sda
Lembrando que sda é o hd onde temos o linux, isto pode mudar em seu sistema. Utilize o comando fdisk -l para listar os discos e partições.
Outra forma é através do interpretador de comandos do GRUB. Veja comando grub.
gunzip
Descompactador de arquivos .ZIP como o PKUNZIP para DOS.
Ex:
gunzip guii00.gz
Descompacta todos os arquivos .gz do diretório atual.
gzip
Compactador, gera arquivos .gz
Ex:
gz grandao
Compacta e substitui o arquivo grandao criando um arquivo grandao.gz
gzip -d *.gz
Podemos usar o parâmetro -d para descompactar arquivos .
halt
Serve para desligar o sistema.
help
Apresenta uma ajuda do bash (bash é como o command.com do DOS) que é o interpretador de comandos básico. Isto só exibe os comandos possíveis resumidamente. Para mais informações use man bash.
history
Mostra uma lista de todos os comandos digitados na linha de comando
ifconfig
É usado para configurar (e posteriormente manter) as interfaces de rede. É usado durante o boot para configurar a maioria delas para um estado usável. Depois disto, é normalmente somente necessário durante depurações ou quando for necessária uma configuração fina do sistema.
Se nenhum argumento for informado, ifconfig somente mostra o estado das interfaces correntemente definidas. De outra forma ele assume que os parâmetros devem ser configurados.
Ex:
ifconfig eth0 down
Desativa a placa de rede (eth0)
ifconfig eth0 add 10.1.1.3
Este comando adiciona mais um IP a placa eth0.
host
Obtém o numero de IP de um nome de domínio, em geral faz os serviços de um servidor de DNS, com varias funções.
Ex:
host linux.org
O comando acima retornaria por exemplo:
linux.org A 198.182.196.48
Para mostrar os servidores de DNS responsáveis pelo domínio use:
host -t NS linux.org
Para ver informações completas sobre um domínio use:
host -a -v dominio.net
hostname
Mostra ou define o nome da maquina local (host). Sem parâmetros retorna o nome atual da máquina. Para domínios veja dnsdomainname e domainname.
info
É similar ao HELP do DOS. Você pode digitar somente o comando info ou info e o nome do comando do qual deseja informação.
Use a tecla ? para pedir ajuda completa do info.
BackSpace vai para a pagina de ajuda seguinte.
Delete vai para a pagina anterior.
A tecla Q sai do info.
init
É o processo pai, o que inicia o sistema quando ligamos o computador e processa-se o famoso boot.
Ex:
init 6 Reinicia o sistema.
init 0 Desliga um micro ATX.
O linux tem um sistema de “runlevel” que seria o nível de execução do sistema. Os níveis 6 e 0 já ficaram claro no exemplo anterior, agora veja os outros.
runlevel 6 = usado para reiniciar o sistema.
runlevel 5 = o sistema trabalha em modo gráfico e multiusuário.
runlevel 4 = não usado. será?
runlevel 3 = modo texto, multiusuário.
runlevel 2 = modo texto
runlevel 1 = modo monousuário.
runlevel 0 = usado para desligar o sistema.
Isto serve apenas como exemplo pois o Linux é totalmente modelável e bem provavelmente seu sistema estará diferente, cabe a nós investigarmos como nosso sistema está configurado olhando as pastas rcX.d onde X é o número de 0 à seis do runlevel essas pastas ficam em /etc ou /etc/dr.d …
Veja também inittab e chkconfig.
insmod
Instala um módulo:
O exemplo a seguir serve para “levantar” o módulo ip_tables que é o firewall do linux, que passa a ficar carregado e rodando na memória.
?fica rodando no próximo boot ?
Ex: insmod ip_tables
Veja também lsmod e rmmod
jobs
Lista os serviços ou programas em segundo plano.
Para ter programas em segundo plano temos que antes executa-los com & no final ou usar CTRL + Z para envia-lo ao segundo plano.
Veja também fg e o capítulo Execução
kill
Envia um sinal a um processo(programa)
O sinal 9 é KILL (desliga da tomada o programa sem aviso!)
O sinal 15 é TERM (fechar o programa)
Para ver todos os sinais use:
kill -l
Ex:
kill -s 15 834
Manda um sinal 15 para o programa com o PID 834, fechando-o.
O PID (número de identificação do processo) é conseguido pelo programa ps.
last
Exibe um relatório completo sobre hora de boot, desligamentos e logins.
less
Exibe o conteúdo de um arquivo, similar ao TYPE do DOS só que melhor. Permite visualizar subindo e descendo através das setas do teclado.
/ Permite a procura de strings abaixo da posição atual.
? Permite a procura de strings acima da posição atual.
n Repete a ultima procura para baixo.
N Repete a ultima procura para cima.
q Finaliza.
:e Abre um novo arquivo para visualização.
:n Exibe o próximo arquivo.
:p Exibe o arquivo anterior.
h Acima a ajuda.
Ex: less /etc/termcap
Mostra o conteúdo do arquivo termcap
ls -l /bin | less
Mostra com detalhes todos os arquivos e subdiretórios de /bin.
Obs. | more é o similar no DOS e também funciona no Linux, porém o less é preferido entre os usuários, além de ter mais recursos.
ln
Cria um link (hard link ou soft link para um arquivo ou diretório. Sem parâmetro cria um link hard e com -s cria um soft.
ln -s /root/estudos/anotações /root/anota
Esta linha cria um soft link chamado anota.
locale
Exibe informações sobre a configuração do ambiente local.
locale
Sem parâmetros mostra aconfiguração local.
locale -a
Mostra os locais disponíveis.
locale -m
Mostra os mapas de caracteres disponíveis.
Mais informações use man locale.
logger
Gera entradas nos registros do sistema.
Tem as seguintes opções:
-i registra o id do processo.
-s registra também a mensagem na saída padrão de erro.
-f arq registra o conteúdo do arquivo indicado para registrar no sistema.
-p Salva a mensagem com uma prioridade especificada numericamente ou com um par no formato “NomeFacilitador.nível”.
Os nomes facilitadores válidos são: auth, authpriv (para informações de segurança “de uma naturesa sensível”), cron, daemon, ftp, kern, lpr, mail, news, security (sinônimo desaprovado para auth), syslog, user, uucp, e local0 até local7, inclusive.
Os Níveis válidos são: alert, crit, debug, emerg, err, error (sinônimo desaprovado para err), info, notice, panic (sinônimo desaprovado para emerg), warning, warn (sinônimo desaprovado para warning). Para saber a ordem e propósitos pretendidos destes níveis veja syslog.
-t marca cada mensagem com uma tag (etiqueta) especificada.
Este comando deve ser seguido pela mensagem que será gravada nos registros caso -f não seja usado. Caso se queira que a mensagem comece com um hífem deve ser usado -- no inicio da mensagem.
O comando logger termina com 0 se tudo ocorreu bem e com algo maior que 0 se ocorreu algum erro.
Ex:
logger -i -p mail.alert -- Email pode ser um spam.
Este comando registra em /var/log/mail.log a respectiva mensagem.
logger -i -- isto é apenas um teste de registro no log.
Este comando registra em /var/log/messages nossa mensagem de teste.
lp
Comando usado para imprimir arquivos.
Ex: lp -P impressora -o raw arquivo
lpadmin
Parte do CUPS (servidor de impressão) responsável por configurar impressoras e classes.
Ex:
lpadmin -d impressora
Define a impressora como default (impressora padrão).
lpadmin -x impressora
Exclui a impressora especificada.
lpadmin -p hp -E -v hp:/usb/DESKJET_3820?serial=BR33J1H0GP18 -m
hpijs/HP/HP-DeskJet_3820-hpijs.ppd -u allow:all -D "HP 3820" -L "Laboratorio" -o printer-is-shared=true
Calma! O comando acima adiciona uma impressora. Mas não se assuste, vamos fazer como o “Jack Estripador”, vamos por partes 🙂
O -p indica o nome da impressora que iremos adicionar, neste caso usamos hp, esse nome deve ser simples sem espaços, sem acentos ou caracteres estranhos.
-E ativa a impressora e permite que receba trabalhos.
-v hp:/usb/DESKJET_3820?serial=BR33J1H0GP18 é o dispositivo ou porta, nesse caso como temos uma impressora USB usamos o comando lpinfo -v para descobri-lo. Obserse que todas as possibilidades serão exibidas. As impressoras locais são indicadas com diretct no ínicio. Se a impressora for paralela usamos parallel:/dev/lp0.
-m hpijs/HP/HP-DeskJet_3820-hpijs.ppd é o driver da impressora. Os drivers de impressora para CUPS vem com a maioria das distribuições já empacotados e podem ser instalados como de costume. Os pacotes para HP levam no nome hpijs e hplip e alguns conjuntos de drivers do linuxprinting.org levam o nome de foomatic. Se você não tiver o driver para sua impressora já instalado ou na sua distribuição baixe o arquivo .ppd para sua impressora em http://www.linuxprinting.org/printer_list.cgi. Para saber o nome do driver usamos o comando lpinfo -m | grep 3820 substituindo é claro o 3820 pelo modelo de sua impressora.
-u allow:all A opção -u configura controle de acesso a nível de usuário. Vejamos algumas configurações:
-u allow:user,@printers permite acesso ao usuário user e ao grupo printers.
-u deny:user1,user2,@grupo nega acesso aos usuários e grupos definidos.
-u deny:none e -u allow:all Desativam o controle de usuários dando permissão a todos para imprimir.
-D "HP 3820" é uma descrição amigável da impressora.
-L "Laboratorio" descreve a localização da impressora.
-o printer-is-shared=true anuncia na rede que a impressora está disponível, isto permite que estações Linux tenham acesso automático a esta impressora sem necessidade de configuração ou instalação. Se não quiser que a impressora seja automaticamente exibida na rede use printer-is-shared=false.
lpinfo
Lista dispositivos ou drivers disponíveis conhecidos pelo CUPS.
Ex:
lpinfo -m
Lista os drivers disponíveis.
lpinfo -v
Lista os dispositivos disponíveis.
lpinfo -h servidor:porta -v
Lista os dispositivos em um servidor e porta específicos. É claro troque servidor pelo nome ou IP do servidor e a porta pelo número correspondente que normalmente é 631.
Para conseguir os parâmetros corretos para o comando lpadmin podemos filtrar o comando lpinfo assim:
lpinfo -v | grep 3820
lpinfo -m | grep 3820
Nos dois comandos acima utilizei o filtro para uma impressora HP Deskjet 3820, você pode substituir o 3820 pelo modelo de sua impressora.
lpoptions
Ajusta ou exibe as propriedades especificas da impressora.
lpoptions -l
Lista todas as propriedades da impressora padrão.
lpoptions -p hp -l
Lista todas as propriedades da impressora hp.
lpoptions -p hp -o opcao=valor -o opcao=valor
Define uma opção da impressora hp, as opções e seus valores devem ser de acordo com os exibidos pelo comando lpoptions -l.
Ex: lpoptions -p hp -o PageSiza=A4 -o Quality=FromPrintoutMode
lppasswd
Altera senha de usuários do CUPS.
Ex:
lppasswd -g sys -a user
Define a senha do usuário user e seu grupo como sys.
logout
Fecha a sessão ou terminal atual.
ls
Lista os arquivos como o DIR do DOS.
Parâmetros mais usados:
-a Lista todos os arquivos inclusive os ocultos.
-A Lista todos os arquivos inclusive os ocultos menos o . e ..
-l Lista exibindo dados completos.
-o Lista exibindo dados completos menos o grupo
-R Lista o conteúdo dos subdiretórios.
-S Lista em ordem de tamanho do maior para o menor.
-h Lista em Kb, Mb, Gb ao invés de bytes. Usar com -o ou -l.
-d Lista o nome dos diretórios não seu conteúdo como é padrão???
--full-time Em alguns sistemas o ano e ou segundos de um arquivo não são mostrados quando usamos, por exemplo, a opção -l. Esse parâmetro mostra a data e hora completa, com toda precisão possível.
-i Junto com o -l mostra o número de indexação do arquivo.
-n Como o -l só que mostra o ID do dono e do grupo ao invés do nome.
-N Não imprime caracteres especiais de controle, modo raw ou literal.
-Q Imprime os nomes entre aspas duplas.
-r Usa a ordem reversa.
-t Lista em ordem da data de modificação.
-u Lista em ordem de último acesso.
Ex:
ls -l /bin/ls
O comando acima teria uma saída assim:
-rwxr-xr-x 1 root bin 49732 Jun 30 1999 /bin/ls
root é o proprietário do arquivo e bin é o grupo ao qual esse arquivo pertence.
-rwxr-xr-x são os atributos (PERMISÕES) de um arquivo.
Da esquerda para a direita:
- Quer dizer arquivo comum, um d seria um diretório e l um link.
rwx São as permissões do proprietário r permite ler, w permite escrever ou alterar o arquivo e x permite executar o programa.
r-x São as permissões do grupo, r ler, x executar.
r-x São as permissões para todos os outros usuários r ler e x executar.
Obs: Mais informações sobre permissões veja o comando chmod.
lsattr
Lista os atributos. Veja chattr.
Envia e recebe email’s usando a linha de comando.
Os parâmetros mais usados são:
-s Especifica o assunto. Somente a primeira palavra é aceita como argumento, para colocar mais de uma palavra separada por espaços use aspas.
-c Envia copia para uma lista de email’s. A lista deve ser separada por vírgulas.
-b Envia copia oculta para uma lista de email’s. A lista deve ser separada por vírgulas.
-f Examina email’s do arquivo mbox. Podendo especificar o arquivo.
-v Modo detalhado (verbose).
-u Determina de qual usuário será lido os emails.
Enviando email:
echo "Texto do corpo do email." | mail -s "Assundo do email" voce@dominio
Enviando email com corpo extenso e com anexo:
cat /caminho/arquivo.txt | mail -s "Assunto" -a arquivo_anexo user@dominio
Lendo email:
Usando somente o comando mail e se o usuário atual tiver email é exibido uma lista de email de sua caixa. A mensagem atual é 1 e para mover-se entre as mensagens usamos as teclas + e -.
O comando print pode ser abreviado por p, imprime a mensagem atual.
O comando d deleta a mensagem atual e r responde. O comando u recupera uma mensagem apagada, durante a sessão, se sair do mail não será mais possível recuperar as mensagens apagadas.
Para sair usamos exit ou x.
Exemplos:
d 1 3 Apaga as mensagens 1 e 3.
d 1-5 Apaga as mensagens de 1 até 5.
d * Apaga todas as mensagens.
d $ Apaga a última mensagem.
? Mostra os comandos possíveis.
! Executa um comando shell especificado como argumento.
exit Sai sem alterar a caixa de mensagens.
quit Sai e salva as mensagens da caixa no arquivo mbox na pasta do usuário.
Veja mais comandos usando man mail.
man
Apresenta informações de ajuda sobre um comando ou programa.
Ex:
man ls
A linha acima exibirá uma ajuda sobre o comando ls. Para sair da ajuda pressione a tecla Q.
Opções:
-k Lista manuais e descritores que estejam associados a palavra-chave. A palavra-chave é tratada como uma expressão regular.
-w Mostra a localização física da página de manual.
-7 Mostra caracteres no padrão ASCII, o que evita caracteres que não são bem exibidos em terminais.
-P Mostra uma página específica de manual. Muitas vezes vemos a referencia de uma página da seguinte forma: crontab(5). Isto indica a página 5 do manual do crontab. Se digitarmos apenas man crontab visualizaremos provavelmente a página 1 então para acessarmos a página 5 usamos o seguinte comando:
mam -P 5 crontab
ex:
man -k ftp
O comando apropos também ajuda a localizar manuais.
mcedit
Editor modo texto do mc, bom para iniciantes no Linux pois é similar ao EDIT do MS-DOS.
md5sum
Faz o checksum de um arquivo, essa técnica faz uma “soma” por assim dizer de todo o conteúdo de um arquivo, gerando um número único como resultado, este número pode ser usado para verificar a integridade do arquivo, podemos encontrar junto de arquivos para download seu checksum, baixamos o arquivo geramos novamente seu checksum e comparamos com o original, se forem iguais ótimo, se forem diferentes devemos efetuar novamente o download, pois o arquivo deve estar corrompido :(.
Ex:
md5sum imagem.iso ; cat md5sum_imagem.txt
Este comando gera o checksum do arquivo imagem.iso e exibe posteriormente o conteúdo do arquivo md5sum_imagem.txt para que possamos comparar o checksum gerado por nós com o original.
mformat
Formata disquetes usando o formato MSDOS
Ex:
mformat a:
mkdir
Cria diretórios.
mkdir /tmp
Cria o diretório especificado.
mkdir -p /tmp/sistema/relatorio/estoque
O -p permite criar de uma única vez uma estrutura inteira de pastas.
mkfs
Cria um sistema de arquivos
Ex:
mkfs -t ext2 -c /dev/fd0H1440
mknbi
Cria imagem de boot para rede.
mknod
Cria um arquivo especial (dispositivo de bloco ou caracter)
Os parâmetros são:
b para criar um arquivo especial de bloco (com buffer)
c ou u para criar um arquivo especial de caracter (não bufferizado)
p cria um FIFO.
Ex: Por padrão existem dispositivos para acessar até 20 partições de um disco. Caso seja necessário acessar a partição 21 use os seguintes comandos:
cd /dev
mknod hda21 b 3 21
chgrp disk hda21
chmod 660 hda21
modprobe
Adiciona ou remove módulos do kernel Linux.
Módulos são como drivers, o modprobe olha no diretório /lib/modules/'uname -r' (veja que uname -r é um comando que retorna sua versão de kernel) a procura de módulos e outros arquivos. Todos os módulos compilados ou adquiridos devem ser colocados nesta pasta. Temos também opcionalmente o arquivo /etc/modprobe.conf (use man modprobe.conf para mais informações).
Para permitir a iniciação automática de módulos é preciso configurá-los no arquivo /etc/modules.conf (veja Arquivos de Configuração).
Ex:
modprove 3c509
mount
Monta driver’s ou dispositivos. Para quem vem do windows é bom lembra que no Linux não existe “A:”, “C:”, “F:”. Os dispositivos são visualizados em diretórios ao invés de letras.
Ex: para acessar o CDROM usa-se:
mount -t -r iso9660 /dev/cdrom /mnt/cdrom
-t indica o tipo de sistema de arquivo no caso iso9660, -r monta só para leitura, /dev/cdrom é o drive de CD e /mnt/cdrom é o diretório onde vamos ver o conteúdo do CD.
Para montar uma partição FAT32:
mount -t vfat /dev/hda1 /mnt/c-drive
ou
mount /dev/hda1 /mnt/c-drive
A linha acima é para sistemas pré configurados no arquivo /etc/fstab que já tem os parâmetros necessários para montar cada tipo de sistema.
Veja que vfat é para partições FAT32, hda1 é o dispositivo para primeira partição do primeiro HD e c-drive é o diretório onde aparecerá os arquivos e diretórios da partição.
Ex: outra forma para montar um CDROM:
mount /dev/cdrom /mnt/cdrom
ou simplesmente
mount /dev/cdrom
Ex: para montar um disquete com um sistema de arquivos nativo do Linux:
mount -t ext2 /dev/fd0 /mnt
Ex: para montar um imagem de CD ISO use isto:
mount -o loop -t iso9660 arquivo_imagem.iso /mnt/ponto_de_montagem
Ex: para montar um compartilhamento do Windows ou SAMBA use isto:
mount -t smbfs -o username=user,password=trabalho //serv/pub /mnt/tmp
ndispwrapper
Instala drivers do windows em ambiente Linux.
Instalando:
ndiswrapper -i drivername.inf
Listando:
ndiswrapper -l
Sempre carregar o módilo:
ndiswrapper -m
netstat
Mostra as conexões de rede ativas dos sockets abertos. Sem nenhum parâmetro exibe todas as conexões ativas, porem podemos especificar algumas famílias de endereços como inet que mostra somente as conexões raw, udp e tcp. Outras famílias são: --unix, --ipx, --ax25, --netrom e --ddp.
--inet Mostra somente as conexões raw, udp e tcp.
Parâmetros:
-r Mostra a tabela de roteamento.
-i mostra as conexões da interface especificada.
Ex: netstat -i eth0
-M Mostra as conexões mascaradas.
-s Mostra estatísticas completas das conexões de rede.
Opções:
-v Exibe informações detalhadas.
-n Mostra endereços numéricos.
-A Permite a especificação das famílias de forma diferente, uma lista com as famílias separadas por vírgula. Ex: netstat -A inet,unix,ipx
-c Faz com que a tabela mostrada seja atualizada a cada segundo.
Ex:
netstat --inet -c
Mostra todas as conexões de internet de forma contínua.
ntpdate
NTP (Network Time Protocol) é um protocolo de ajuste da hora pela rede. Através do ntpdate podemos ajustar a hora de forma automática com servidores de hora precisos como o do Observatório nacional (http://pcdsh01.on.br/) que fornece um servidor de NTP público (200.20.186.75 porta 123 UDP) com a hora brasileira.
Ex:
ntpdate -t 3 200.20.186.75
Parametros:
-a Especifica a chave (key) para conecção autenticada.
-d Modo debug, mostra informações porem não atualiza a hora.
-q Somente mostra a hora do servidor.
-u Especifica a porta.
-t tempo máximo em segundos para o servidor responder.
-v Modo verbose, mostra detalhes.
partimage
Faz backup e restaura partições de disco.
O partimage é auto expicativo porque tem uma interface muito facil de ser usada. Podemos também usar a linha de comando como a seguinte:
partimage -z1 -o -d save /dev/hda5 /backup/debian.partimg.gz
-z0 Não compacta, muito rapido com imagem grande
-z1 Compacta usando o gzip, compactação rapida com imagem pequena
-z2 Compacta usando o bzip2, compactação lenta com imagem muito pequena.
-o Sobrescreve imagem com mesmo nome (se existir).
-d Não solicita descrição para o arquivo de imagem.
-M Não cria copia do Master Boot unto com a imagem.
-S Simulação do modo de restauração.
-s Endereço IP do servidor de imagens
save Salva uma imagem da partição em um arquivo.
restore Restaura uma partição de um arquivo para um partição.
imginfo Mostra informações da imagem.
restmbr Restaura MBR?
passwd
Muda ou define a senha de usuário.
pico
Editor modo texto, bom e simples. Os comando são exibidos na parte de baixo do monitor e o ^ é um símbolo que representa a tecla CTRL.
Para ir ao início da linha, por exemplo, use CRTL + A representado por ^A.
plip
plipconfig
Cria uma conecção de rede entre dois computadores usando como meio físico cabos do tipo serial ou paralelo.
-a
-i
-v Especifica a interface.
…
poweroff
Desliga o computador como um “shutdown -h now” só que mais prático.
ps
Lista os processos
Ex:
ps -a Lista todos os processos iniciados pelo usuário.
ps -A Lista todos os processos iniciados pelo usuário e pelo sistema.
ps -U user Lista os processos do usuário user.
ps -aux Lista todos os processos da maquina.
pwd
Mostra em que lugar da arvore (diretório) você está.
Ex: pwd
O comando acima pode resultar em: /usr/share/doc se estivermos acessando esta pasta.
reboot
Reinicia o sistema.
reset
Usado para resetar um terminal. Por exemplo quando usamos o comando cat em um arquivo binário e o terminal fica com alguns “cacos”.
rm
Apaga arquivos, com o parâmetro -r pode apagar diretórios inteiros. Com o -f não pede confirmação e não tem volta. Cuidado!
Ex:
rm coisa_feia.txt
route
Gerencia a tabela de roteamento.
Ex:
route add default gw 10.0.0.1
Adiciona como getway padrão o IP 10.0.0.1 esse comando é usado para maquinas firewall ou simples roteadores que servem de caminho (getway) para que uma rede acessar a internet ou outra rede qualquer através dela.
rpm
Gerenciador de pacotes RPM. Os pacotes RPM contém programas para instalação. Através do rpm podemos instalar programas como um editor de texto ou uma ferramenta, também para atualizar o sistema ou desinstalar algo que não queremos mais usar para liberar espaço em disco.
Opções de Consulta:
rpm -q -a Lista todos os pacotes instalados.
rpm -q XFree86 Verifica se o pacote XFree86 esta instalado, por exemplo na minha maquina a saída foi:
Xfree86-3.3.3.1-55cl
onde 3.3.3.1-55cl é a versão instalada.
rpm -q -i XFree86 Da informação detalhada sobre o pacote.
rpm -q -il XFree86 Lista os arquivos contidos no pacote.
rpm -q -f /bin/ls Diz de que pacote o arquivo ls é.
rpm -q -l XFree86 Lista os arquivos do pacote especificado.
rpm -q -p -i Mostra informações detalhadas sobre um pacote não instalado.
rpm -q -p -R Lista as pendências necessárias p instalar o pacote.
Opções de Desinstalação
rpm -e xpuzzles-5.4.1-8cl Remove o pacote xpuzzles-5.4.1-8cl
Opções de Instalação
rpm -i mtools-3.9.1-8cl Instala o pacote mtools-3.9.1-8cl
rpm -U mtools-3.9.1-8cl Atualiza um pacote já instalado, removendo as versões mais antigas, antes de instalar o novo.
rpm -i --force mtools-3.9.1-8cl Instala um pacote mesmo que ele já esteja instalado ou que substitua arquivos de outros pacotes já instalados ou que os arq já instalados sejam mais novos.
CUIDADO!
rpm -i --nodeps Instala sem verificar as pendências necessárias para o pacote.
rpm -i --test mtools-3.9.1-8cl Não instala apenas verifica possíveis conflitos.
RunWM
Define o gerenciador de janela padrão do Xfree. (Comando específico do RedHat)
O comando RunWM --help da uma explicação de como escolher o gerenciador
Ex:
RunWM --WindowMaker
A linha acima define como padrão o WindowMaker para gerenciar as janelas ao se executar startx.
Parece que na verdade ele altera o arquivo .wm_style que fica no diretório do usuário. Alguns sistemas adotam o arquivo .session como o arquivo que define o gerenciador.
scp
Faz copia segura de arquivos remotos, entre computadores de uma rede com conecção estabelecida por ssh.
Ex:
scp -P 50 /pub/clinet/arquivo.zip [email protected]:/tmp
Explicando: -P 50 indica a porta pela qual será feita a comunicação, se não indicada assume 22 que é a porta padrão.
/pub/client/arquivo.zip indica a localização e arquivo local a ser transferido.
paulo indica o nome do usuário.
@200.248.14.2 é o nome ou nesse caso o IP do servidor ssh.
:/tmp define o local onde será salvo o arquivo.
-r copia recursivamente (ou seja com os diretórios e seus conteúdos).
setterm
Ajusta parâmetros do terminal. Este comando é para terminais modo texto, no caso do modo gráfico consulte xset.
Para desligar o beep do sistema podemos usar:
setterm -blength 0
Para religa-lo usamos:
setterm -blength 100 -bfreq 750
…
shutdown
Desliga ou reinicia a maquina.
-r serve para reiniciar o sistema.
-h fecha tudo e desliga o sistema. Para o desligamento funcionar é necessário que o sistema esteja preparado para isso, caso contrário, após todos os processos serem fechados o sistema trava (halt), aguardando o desligamento ou reset manual do equipamento.
-F Faz a verificação do sistema de arquivos no próximo boot.
Ex:
shutdown -r now
Reinicia imediatamente depois de fechar todos os processos do sistema.
sleep
Faz uma pausa durante um tempo determinado.
O comando recebe como parâmetro um número inteiro que representa em segundos o tempo que deve esperar. Se não indicarmos o tipo de medida para o tempo será considerado como segundos, porem, podemos indicar após o número outras medidas de tempo como segue:
s segundos
m minutos
h horas
d dias
Ex:
sleep 5m
Nesse caso o comando ficará parado por cinco minutos.
ssh
Acesso remoto seguro. Você pode acessar remotamente uma maquina Linux que tenha o serviço sshd rodando usando esse programa. Por padrão o ssh usa a porta 22 e após efetuar a conecção pela primeira vez faz um registro da chave de segurança da maquina no arquivo ~/.ssh/know_hosts
Ex:
ssh 200.100.145.96
O comando acima tentara acessar a um terminal na maquina remota usando o usuário local e solicitará a senha do respectivo usuário que deverá estar cadastrada na maquina remota.
Parâmetros:
-p especifica uma porta diferente da 22 para acesso.
Ex:
ssh -p 1800 200.100.145.96
-l especifica um usuário diferente
Ex:
ssh -l outrousuario 200.100.145.96
Veja também scp.
stat
Exibe informações detalhadas sobre o arquivo.
Um comando stat arquivo resultaria em por exemplo:
File: "arquivo"
Size: 48 Blocks: 8 IO Block: 4096 Regular File
Device: 304h/772d Inode: 20539 Links: 1
Access: (0755/-rwxr-xr-x) Uid: (0/root) Gid: (0/root)
Access: Mon Apr 28 14:42:49 2003
Modify: Tue Mar 11 22:48:37 2003
Change: Tue Mar 11 22:48:37 2003
sysv-rc-conf
Aplicativo Debian para gerência da inicialização dos daemons.
sysctl
Configura os parâmetros do kernel em execução.
tail
Lista a última parte do arquivo.
Ex:
cat /etc/mtab | tail -2
Mostra as duas últimas linhas de mtab.
tar
Este comando pode agrupa ou empacota vários arquivos e pastas em um único arquivo ou fita, e pode manipular este arquivo ou fita extraindo ou adicionando arquivos. O arquivo gerado normalmente tem a extensão .tar e chamaremos ess arquivo doravante de pacote.
Formato:
tar opções arquivo.tar arquivos
Operações principais.
-A Concatena arquivos tar.
-c Cria um novo arquivo que pode conter empacotados vários arquivos e pastas.
-d Compara diferenças entre o arquivo tar e sistema de arquivo origem.
--delete Apaga arquivos de um pacote.
-r Adiciona arquivos ao final de um arquivo existente.
-t lista o conteúdo de um pacote.
-u Somente anexa arquivos mais novos que os contidos no pacote.
-x Extrai os arquivos de um pacote.
Modificadores das operações.
-g Novo modo incremental de backup.
-G Modo incremental antigo de backup.
-k Não substitui arquivos existentes quando extraindo.
--overwrite Substitui arquivos existentes quando extraindo.
-O Extrai para a saída padrão.
--recursive-unlink Limpa hierarquias antes de extrair diretórios.
--remove-files Remove os arquivos depois de adiciona-los ao pacote.
-W Verifica o arquivo depois de escreve-lo.
Formatos.
-j Filtra arquivos através do bzip2. Para melhor compatibilidade, principalmente em scripts use --bzip2.
-z Filtra arquivos através do gzip.
Arquivos.
--ignore-case Ignora letras maiúsculas ou minúsculas.
-N Armazena somente arquivos mais novos que a data especificada logo após a opção -N.
-T arquivo Pega os nomes dos arquivos à extrair ou empacotar do arquivo especificado.
Opções de informação
--checkpoint Mostra o processo a cada 10 registros.
-v Lista arquivos processados.
--show-defaults Mostra padrões do tar.
--totals Exibe o total de bytes enquanto cria o arquivo tar.
Outras opções
--no-recursion Não copia subdiretórios.
--recursion Copia subdiretórios. Esta opção é padrão.
-L N Muda de fita após gravar N Kbytes.
Exemplos:
tar -xvf gui00.tar
Desagrupa o arquivo gui00.tar
tar -xvzf arq.tar.gz
Além de desagrupar, descompacta o arquivo do tipo .gz
tar xjvf arq.tar.bz2
O parâmetro j nos permite descompactar arquivos .tar.bz2. Observemos também que o - antes das opções é opcional.
tar -cjf teste.tar.bz2 arquivo1.tif arquivo2.dat arquivo3.txt
Cria um arquivo teste.tar.bz2 que irá empacotar os três arquivos citados e a opção j compacta o pacote com o bzip2.
tar -cj --remove-files -f backup_`date +%d%B%Y`.tar.bz2 *.fbk
Cria um arquivo de backup típico para o banco de dados Firebird, empacotando e compactando todos arquivos com a extensão fbk em um único arquivo. Ao final com a opção --remove-files remove os arquivos originais.
Mais informações use man tar.
tcpdump Monitora o tráfico na rede.
Ex:
tcpdump -i eth0
Na linha acima -i eth0 indica a placa de rede a ser monitorada podendo ser -i ppp0 no caso de uma conecção a internet discada.
tee
Usado junto com o pipe “|” direciona a saída de um comando para a saída padrão (a tela) e para um arquivo ou dispositivo ao mesmo tempo.
Opções:
-a Adiciona ao final do arquivo e não o sobrepõe. Similar ao redirecionamento >>.
-i Ignora sinal de interrupção.
testparm
Testa os parâmetros de configuração do servidor Samba, o smb.conf.
testprns
Testa definições de impressoras no arquivo printcap
time
Roda um programa e calcula o tempo e uso dos recursos do sistema.
Ex:
time programa
top
Mostra os recursos que mais consomem recursos do sistema.
touch
Muda o registro de hora de um arquivo. Se o arquivo não existir será criado um arquivo vazio com o nome especifido.
Ex:
thouch -t 200506101230.00 arq.tmp
O comando acima muda a data de acesso e modificação do arquivo arq.tmp para 10 de Junho de 2005 às 12 horas e 30 minutos. Faça um teste e use o ls -l para conferir.
traceroute
os caminhos pelo qual passa uma solicitação
umask
Altera ou exibe o padrão das permissões para os arquivos criados (novos).
Se o comando for executado sem argumentos retorna o padrão de permissões que está definido para o usuário atual.
O comando abaixo retorna o padrão das permissões que terão os arquivos que forem criados com o usuário que você estiver usando:
umask
Normalmente retorna 0022 sem as aspas, que é a representação das permissões no formato octal ( sistema numérico com 8 dígitos possíveis de 0 até 7).
Para podermos entender mais facilmente quais são as permissões, podemos usar o parâmetro -S que exibe as permissões no formato simbólico.
umask -S
Esse comando retornaria normalmente o seguinte:
u=rwx,g=rx,o=rx
Se passarmos um argumento que comece com um digito, este é interpretado como um número octal, caso contrario é interpretado como tendo o formato simbólico.
Para melhor entendimento veja primeiro o comando chmod.
Lembrando que:
r = permissão de leitura;
w = permissão de escrita;
x = permissão de execução.
Exemplo de formato octal:
umask 0037
O comando acima definiria o padrão como:
proprietário = 0 ou rwx
grupo = 3 ou r
outros = 7 ou nenhum direito.
Podemos usar a seguinte tabela:
0 = rwx
1 = rw
2 = rx
3 = r
4 = wx
5 = w
6 = x
7 = nenhum direito
Observe que no modo octal não existe compatibilidade com o comando chmod, na verdade existe uma relação reversa, para o chmod o valor 7 dá todos os direito (rwx) e no umask nenhum.
Se você achou um pouco complicado esse “negócio de octal” use o modo simbólico.
Exemplo no formato simbólico:
umask u=rwx,g=rx,o=r
Lembre que: u = usuário proprietário (dono);
g = grupo ao qual pertence o usuário;
o = os outros usuários todos.
Nesse caso o umask funciona da mesma forma que o chmod, o que me libera de maiores explicações. Veja o comando chmod seu preguiçoso! 🙂
umask g+w
O comando acima define que o grupo terá direito de escrita sobre arquivos os criados.
umount
Desmonta (desconecta) conecções no sistema de arquivos feitas pelo mount.
Ex: umount /mnt/cdrom
Temos a desmontagem ou desconecção da pasta /mnt/cdrom do dispositivo ao qual estava conectado. Podemos observar que basta indicar a pasta onde tínhamos montado previamente.
Ex: umount -fl /mnt/pub
Força a desmontagem imediata da pasta pub. Útil quando não houver arquivos abertos e o sistema informar que o dispositivo está ocupado (busy).
unalias
Remove alias da lista de alias definidos.
Exemplo:
unalias ls
Este comando irá remover da lista de alias a palavra chave ls.
Veja também:
O comando alias.
uname
Mostra informações úteis sobre o computador como versão do kernel, nome do micro, etc.
-r mostra a versão do kernel
-a mostra todas as informações.
-m mostra o tipo da máquina (hardware)
-n mostra o nome do nó da máquina na rede
-s mostra o nome do sistema operacional
-v mostra a data em que o sistema operacional foi criado
--h mostra ajuda
--v mostra a de versão do uname
Ex:
uname -r
unarj
Descompacta arquivos .arj
uptime
Mostra a quanto tempo o sistema esta em execução.
Exibe uma linha com a hora atual, quanto tempo o sistema esta rodando, quantos usuários estão logados e a média de carga do sistemas a 1, 5 e 15 minutos a traz.
update-rc.d
Utilitário do Debian que atualiza os links de scripts de inicialização (init) no estilo system V, cujo alvo são os scripts em /etc/init.d/. Estes links são executados pelo init quando ocore uma mudança de runlevel (nível de execução) ou quando o sistema é iniciado. Eles são geralmente usados para iniciar e parar os serviços do sistema como os servidores e daemons.
Ex:
update-rc.d -f dhcp remove
Remove da inicialização automática o servidor dhcp.
update-rc.d dhcp defauts 19
Abilita a execução do daemon (ou serviço) nos níveis 2, 3, 4 e 5 com prioridade 19.
update-rc.d apache start 30 2345 stop 70 0 1 6
Habilita a inicialização do Apache nos níveis 2, 3, 4 e 5 com prioridade 30 e faz parar o servidor Apache nos níveis 0, 1 e 6 com prioridade 70.
urpmi
Instala pacotes rpm. Uma melhora do sistema rpm similar ao apt-get.
--auto-select
--allow-force
--clean Limpa cache.
urpmq
Lista pacotes disponíveis.
--list Lista pacotes disponíveis.
-l pacote Lista arquivos do pacote.
-a cdr dvd Lista pacotes que coincidam com as palavras cdr e dvd.
urpmf
useradd
Adiciona usuários no sistema ou atualiza uma conta existente.
Ex:
useradd -g users -d /home/operador -p secreta operador
Na linha acima temos:
-g users Idica o grupo.
-d /home/operador Indica o diretório do usuário.
-p secreta Indicando a senha.
operador É o nome do usuário. (haaaaa coitado!)
userdel
Remove um usuário.
Ex:
userdel fulano
usermod
Modifica a conta do usuário
-d Define a nova pasta HOME do usuário (-m move o conteúdo da pasta velha p nova)
-e YYYY-MM-DD define a data de expiração da conta.
-g Define o grupo principal.
-G Uma lista de grupos secundários separada por vírgulas.
Se o usuário fizer parte de um grupo que não for especificado na lista de grupos o usuário será excluído do grupo, para alterar esta característica podemos usar o parâmetro -a que adiciona o usuário aos grupos especificados sem modificar a relação de grupos dos quais o usuário faça parte.
Ex: usermod -G plugdev -a usuario
Isto adiciona o usuário ao grupo plugdev sem alterar os grupos dos quais o usuário já faça parte.
-u O iud (identificação numérica) do usuário.
-L “lock” trava a senha do usuário não permitindo o login faz isso colocando uma ! na frente da senha criptografada no arquivo de senhas.
-U “unlock” destrava a senha, reativando a conta sem alterações.
vi
Editor modo texto padrão em quase todos os sistemas Unix e distribuições Linux. Por isso vale a pena saber pelo menos o mínimo, pois um dia você vai precisar e não adianta dizer:
“Droga! Eu devia ter estudado essa “coisa” do vi antes, e agora como vou fazer?”.
Sim, isso pode ser um exagero, principalmente para quem conhece a fundo essa ferramenta que é muito flexível e extensível. Mas a primeira impressão que fica quando nos deparamos com essa ferramenta não é tão boa.
Se nos obrigarmos a usa-lo por pelo menos um tempo, podemos até gostar e não ter que correr a traz de um outro editor conhecido na hora da emergência. Se não gostar, tudo bem, ao menos você não vai se apertar na hora “H”.
O primo mais evoluído do vi é o vim que em muitos casos é chamado pelo mesmo comando vi. Vamos nos ater ao vim por ser mais amistoso porem totalmente compatível com o vi.
Quando é executado o vim inicia no modo de comando.
Para entrar no modo de edição pressione a tecla i ou Insert. Pressionando Insert mais uma vez mudamos do modo de INSERT para REPLACE ou seja o texto digitado não é inserido ou adicionado mas substitui o texto existente conforme digitamos. A tecla Esc sair do modo de edição e retorna para o modo de comando. Veja os comandos mais usados:
i Ou Insert entra no modo de edição.
Na edição podemos digitar normalmente, usar as setas, o Backspace e o Delete como qualquer editor.
Esc Sai do modo de edição para o modo de comando.
Comandos do Modo de Edição.
CTRL+P Procura por palavra semelhante e completa automaticamente a palavra.
Comandos do Modo de Comando:
:w Salva as alterações do arquivo atual.
:w outro Salvar como. Salva o arquivo atual com o nome outro.
:q Sai do vim se você não tem alterações pendentes.
:q! Sai sem salvar. Descarta todas as alterações.
:wq Salva e sai.
😡 Salva e sai.
u Undo ou desfazer é o comando que desfaz as alterações que foram feitas no documento.
dd Deleta a linha onde estiver o cursor. Essa linha fica no buffer e pode ser movida de lugar é só posicionar o cursor e pressionar p para colar.
y Copia. Copia para a memória do Vim algo para depois podermos colar em outro lugar.
yy Copia a linha onde esta o cursor.
yNg Onde N é um número de linhas abaixo do cursor a copiar.
dNg Recorta N linhas abaixo do cursor.
p Put ou Colar é o comando que cola o que foi copiado com o comando y.
v No vim pode-se usar o modo visual para selecionar texto, pressiona-se a tecla v no modo comando e usa-se as setas para ir selecionando o texto. Depois de selecionado o texto é só pressionar a tecla y para copiar e posteriormente p para colar.
/seqüencia Procura a partir da posição do cursor por seqüencia.
n Repete a ultima procura.
Outros Comandos:
:set ignorecase Na busca com o comando / ignora maiúsculo minúsculo.
:set number Ativa a numeração de linha.
:set nonumber Desativa a numeração de linha.
:syntax on Ativa o destaque da sintaxe com cores.
:syntax off Desativa o destaque da sintaxe.
:set autoindent Ativa a identação automática.
:vi Volta para o modo de comando padrão.
:mkv Cria o arquivo .vimrc com as configurações do vim. Este arquivo é criado na pasta do usuário e pode ser editado normalmente.
% Procura pelos fechamento dos { [ e ( correspondentes.
x Apaga caracter na posição do cursor.
:r arq Adiciona o conteúdo do arquivo arq.
"ay5g O comando "a seleciona o buffer a (27 buffers de a até z) e o comando y5g copia as próximas 5 linhas para o buffer selecionado.
d[home] Onde [home] é a tecla home do teclado. Apaga do cursor até o inicio da linha.
d[end] Onde [end] é a tecla end do teclado. Apaga do cursor até o fim da linha.
h Move o cursor para a esquerda.
l Move o cursor para a direita.
j Move o cursor para baixo.
k Move o cursor para cima.
G Move o cursor para o final do documento.
Move o cursor para o final do documento.
edit : Inicia a edição em um outro buffer.
write : Grava o buffer com um novo nome e retorna para o buffer atual.
ls : Lista os buffers.
buffer # : Altera de buffer de edição.
q : Encerra o buffer atual.
x : Grava os buffers e sai do editor.
O Vim tem seu arquivo de configuração com o nome .vimrc, que pode ser criado na pasta do usuário para alterar as configurações do editor.
Veja o site http://sao-paulo.pm.org/papers/alceu/vim4perl/index.html um tutorial de como fazer algumas alterações.
vipw
Edita (com o vi) o arquivo de senhas /etc/passwd e atualiza automaticamente a base de dados do sistema. Com a opção -s edita o arquivo de sombra (shadow) do respectivo arquivo.
vigr
Edita (com o vi) o arquivo de grupos /etc/group e atualiza automaticamente a base de dados. Com a opção -s edita o arquivo de sombra (shadow) do respectivo arquivo.
xev
Exibe os sinais recebidos pelo mouse e teclado. No caso do teclado temos o keycode da tecla pressionada. Esse keycode pode ser usado para reconfigurar uma tecla para outra função (veja xmodmap).
xmodmap
Define o mapa do teclado e permite o remapeamento de teclas. (ver .xmodmap e xev)
Ex:
xmodmap -pke
A linha acima exibe o mapa de teclado com códigos expressões.
xset
Ajusta parâmetros dos terminais do ambiente gráfico, no caso do modo texto consulte o comando setterm.
Para desligar o beep do sistema podemos usar:
xset b off
Para religa-lo usamos:
xset b 100 400 100
…
wc
Exibe o número de linhas, palavras e bytes de um arquivo.
-c exibe somente o número de bytes.
-l exibe somente o número de linhas.
-L exibe o comprimento da maior linha do arquivo. (em bytes)
-w número de palavras.
wc -c arquivo
wget
Faz download de arquivo.
wget url
Em url especificar a url completa do arquivo a baixar.
wget --ftp-user=usuario --ftp-password=senha ftp://server.com/t.txt
Neste exemplo o nome do usuário e a senha são especificados.
Opções
-c Permite continuar um download interrompido.
which
Localiza um comando. Retorna o caminho do arquivo que seria executado, caso o comando seja encontrado.
Podemos especificar mais de um comando para localizar.
Ex:
$ which gzip
Retorna o caminho completo do gzip, no meu caso:
/bin/gzip
Se o comando não for encontrado não exibe saída alguma.
Parâmetros:
-a Retorna todos os arquivos que coincidirem. Por padrão somente o primeiro é mostrado.
Ex:
executavel()
{
# Se which não estiver disponível em /bin ou /usr/bin então
# a subrotina retorna que não pode ser executado.
[ -x /bin/which ] || [ -x /usr/bin/which ] || return 1
which "$1" >/dev/null 2>&1
}
Esta sub rotina verifica se o comando passado a ela pode ser executado, retornando 1 se houver erro ou se não puder executar.
who
Mostra quem esta logado no sistema.
whoami
Mostra o login atual.
whois
Mostra informações sobre um domínio como responsáveis pelo domínio, servidores que de DNS que respondem pelo domínio, etc. É similar a uma consulta ao site registro.br.
Ex:
whois dominio.com.br
O comando acima retorna várias as informações sobre o domínio especificado. Veja também o comando dig.
zip
Compactador que gera arquivos .ZIP, este formato é muito útil por ser muito portável.
Ex:
zip compact.zip arquivos.dat
Paulo José Sant’Ana