LINUX
NEWBIE
ADMINISTRATOR
GUIDE
ver. 0.154 2001-09-02 by Stan, Peter and Marrei Klimas
A última
versão deste guia está disponível em
http://sunsite.dk/linux-newbie.
Copyright (c) <1999,2000,2001> by Peter and Stan Klimas.
Sua resposta, comentários, correções, e
melhorias são apreciados. Envie-os para linux_nag@canada.com
Este material pode ser distribuído somente sob os termos e
condições estabelecidas pela Open Publication License,
v1.0, 8 ou posterior http://opencontent.org/openpub/
com as modificações estabelecidas em lnag_licence.html.
Parte 5: Atalhos e Comandos
Linux
Conteúdo:
5.1
Atalhos essenciais em Linux e comandos de
verificação
5.2 comandos de
ajuda
5.3 Informação
sobre o sistema
5.4 Operações
básicas
5.5 Gerência
de arquivos
5.6 Examinando e editando
arquivos
5.7 Procurando arquivos
5.8 Básico sobre X-windows
5.9 Aplicações de rede
5.10 Descompressão de arquivos
5.11 Controle de processos
5.12
Comandos básicos de administração
5.13 Utilitários e disco
5.14
Gerência de contas de usuários e
permissões de arquivos
5.15 Instalação
de programas
5.16 Acesso a drives
e partições
5.17 Ferramentas
de administração de rede
5.18 Comandos
relacionados com som
5.19 Comandos
relacionados com gráficos
5.20 /Pequenos
jogos
Introdução. Esta é uma seleção
prática dos comandos que usamos mais frequentemente, úteis,
e que vem no CD de distribuição Linux (RedHat ou
Mandrake). Pressione <Tab> em uma linha de comando
vazia para ver a lista de todos os comandos disponíveis (no
seu PATH). Em minha pequena rede doméstica, ele diz que
existem 3786 executáveis no meu PATH. Muitos destes comandos
podem ser acessados a partir de interface gráfica
favorita(provavelmente KDE ou GNOME) clicando no menu ou botões.
Eles também podem ser executados a partir da linha de
comando(a menos que você não tenha instalado o pacote,
mas eles estão todos em seu CD). Os programas que
requerem uma interface gráfica tem de ser rodados sob ela, por
exemplo, a partir de um terminal aberto em KDE ou GNOME(xterm, por
exemplo). Algumas ferramentas mais avançadas(menos úteis
para os novatos?) estão descritas na Parte Aprendendo
com Linux neste Guia.
Notas para os não habituados com Unix:
1. Linux
distingue caracteres maiúsculos e minúsculos. Por
exemplo, Netscape, NETSCAPE e netscape
seriam comandos diferentes(mas, dos três, somente netscape
está disponível em meu sistema). meu__arquivo e
meu_Arquivo, são também diferentes arquivos. Seu
usuário para login e a password fazem também a
distinção entre letras maiúsculas e minúsculas.
(Isto está de acordo com a tradição de Unix e a
linguagem de programação C)
2. Os nomes de arquivos
podem ter até 256 caracteres de comprimento e podem conter
letras, números, .(ponto), _
(travessão) -(hífen)),mais outros
caracteres(não recomendados).
3. Arquivos cujos nomes se
iniciam com .(ponto) não são normalmente
mostrados pelos comandos ls (listar) ou dir.
Imagine que estes arquivos com o ponto inicial sejam arquivos
ocultos. Use ls -a (listar com a opção
"all") para ver também estes arquivos.
4. "/"
é equivalente ao caracter "\" no DOS(diretório
raiz, significando o pai de todos os outros diretórios, ou um
separador entre um diretório e um subdiretório ou nome
de arquivo). Por exemplo, tente cd /usr/doc
5. Sob
Linux, todos os diretórios aparecem sob uma única
árvore de diretório(não existem letras para
discos como no DOS). Isto significa que arquivos de todos os
dispositivos físicos aparecem em um único sistema de
arquivos.
6. Em um arquivo de configuração, uma
linha começando com # é um comentário. Quando
alterar um arquivo de configuração, não delete
as definições anteriores - - comente as linhas
originais. Sempre insira um pequeno comentário descrevendo o
que você fez.
7. O Linux é inerentemente
multiusuário. Suas definições pessoais estão
no diretório padrão de seu usuário que é
/home/seu_código_de_login Muitas definições
são mantidas em arquivos com nomes começando por um
.(ponto) de forma a mante-los fora de seu caminho (veja
item 3 acima).
8. Definições válidas para
todo o sistema são mantida no diretório /etc .
9. Sob o Linux, como em muitos sistemas multiusuário,
diretórios e arquivos tem um dono e um conjunto de permissões.
Você tipicamente terá permissão para gravar
somente no seu diretório padrão que é
/home/seu_código_de_login. Apreenda a usar as
permissões de arquivos caso contrario você será
constantemente incomodado no uso do Linux.
10. As opções
de comandos se iniciam com um hífen "-", seguido por
uma simples letra (ou - - quando a opção tem mais de
uma letra). Dai que o "-" é um equivalente ao "/"
no DOS. Por exemplo, tente rm --help
11. Digite comando&
(o nome do comando seguido por um &) para executar um comando em
segundo plano. Esta é usualmente a maneira preferida de se
iniciar um programa em um terminal X-windows.
<Ctrl><Alt><F1>
Muda a tela para o
primeiro terminal texto. Sob Linux você pode ter vários
(6 na definição padrão) terminais abertos ao
mesmo tempo. Este é um atalho de teclado que significa:
"pressione a tecla Control e a tecla Alt, segure-as. Agora
pressione a tecla <F1> e solte todas elas.
<Ctrl><Alt><Fn> (n=1..6)
Muda
a tela para o terminal texto numero n. (O mesmo poderia ser feito com
o comando raramente usado chvt n. "chvt"
significa "change virtual terminal[mude o terminal virtual]").
tty
Mostra o nome do terminal no qual você está
digitando este comando. O numero do terminal ativo pode ser mostrado
usando o comando fgconsole.
<Ctrl><Alt><F7>
Muda a tela para o
primeiro terminal gráfico (se o X-windows estiver sendo
executado neste terminal).
<Ctrl><Alt><Fn> (n=7..12)
Muda a tela para o terminal gráfico n (se um terminal
gráfico estiver sendo executado na tela n - 1). Por default, o
primeiro servidor X roda no terminal 7. Por default, nada roda
nos terminais 8 a 12--você pode executar servidores X
subsequentes ali.
<Tab>
(Em um terminal texto) Completa
automaticamente o comando se há somente uma opção
ou, em caso contrário, mostra todas as opções
disponíveis. ESTE ATALHO É MUITO LEGAL! Ele funciona
até no prompt do LILO!
<Seta para cima>
(Em um terminal texto)
Varre, mostra e edita o histórico de comandos. Pressione
<Enter> para executar.
<Shift><PgUp>
Mostra telas
anteriores. Isto funciona também no prompt de login, assim
você pode navegar através das mensagens de inicialização
(boot). A quantidade/uso de sua memória de vídeo
determina a distancia que você pode chegar nas paginas
anteriores.
<Shift><PgDown>
Mostra telas a
frente, depois de você ter usado o atalho anterior.
<Ctrl><Alt><+>
(em X-windows)
Muda para próxima resolução do servidor X (se
você configurou o servidor X com mais de uma resolução).
Para múltiplas resoluções em meu monitor/placa
SVGA padrão, eu tenho a seguinte linha no arquivo
/etc/X11/XF86Config (a primeira resolução é
a inicial, a maior resolução determina o tamanho da
tela virtual):
Modes "1024x768"
"800x600" "640x480" "512x384" "480x300"
"400x300" "1152x864"Z
Naturalmente,
primeiro eu tenho de configurar o servidor X, ou usando o
Xconfigurator, xf86config, ou manualmente editando o arquivo
/etc/X11/XF86Config, de forma que ele suporte as resoluções
acima (na maior parte é uma questão de descomentar a
linha que define o chipset de meu vídeo, e especificar as
freqüências de sincronização que meu monitor
suporta). XFdrake (utilitário de configuração
do Mandrake) pode faze-lo a partir da interface gráfica. Veja
também os comandos xvidtune e xvidgen.
<Ctrl><Alt><->
(em X-windows) Muda
a resolução do servidor X para a resolução
anterior.
<Ctrl><Alt><Esc>
(em X-windows,
KDE) Fecha a janela na qual vou posicionar e clicar o mouse (o
ponteiro do mouse se transforma em algo parecido como o símbolo
da morte). Resultado similar pode ser obtido com o comando xkill
(executado em um terminal X). Útil quando um programa
rodando no ambiente X não pode ser finalizado(travado?).
<Ctrl><Alt><BkSpc>
(em X-windows)
Termina o servidor X corrente. Use se o servidor X não pode
ser terminado normalmente.
<Ctrl><Alt><Del>
Sai do sistema e
reinicializa a maquina. Este é comando normal para
encerramento do sistema(shutdown) na console em modo texto. Não
use o botão reset para fazer isto!
<Ctrl>c
Fecha o processo corrente(funciona na
maioria das vezes em aplicações em modo texto).
<Ctrl>d
(pressionado no inicio de uma linha
vazia) Fecha a sessão corrente de terminal. Veja também
o próximo comando.
<Ctrl>d
Envia [End-of-File] para o processo
corrente. Não pressione-o duas vezes senão você
estará fazendo logout(veja o comando anterior).
<Ctrl>s
Interrompe a transferencia de dados
para o terminal.
<Ctrl>q
Reinicia a transferencia de dados para
o terminal. Tente isto se seu terminal misteriosamente parar de
responder.
<Ctrl>z
Envia o processo corrente para segundo
plano.
exit
Executa logout. Também posso usar o
comando logout para obter o mesmo efeito. (Se você
executou um segundo shell, por exemplo, usando bash, você
voltará para o primeiro shell encerrando o segundo.)
reset
Restaura um terminal desconfigurado(mostrando
caracteres estranhos) para a configuração normal. Use-o
caso tenha usado o comando "cat" sobre um arquivo binário.
Você pode não ser capaz de ver o comando quando você
o digitar.
<Botão central do mouse>
Cola o texto
que foi selecionado em algum lugar. Esta é a operação
normal de copiar-e-colar em Linux. (Ela não funciona com
Netscape e WordPerfect que usam o estilo Windows de copiar-e-colar.
Ele funciona em um terminal texto se você habilitar o serviço
"gpm" usando o comando "setup".) É melhor
utilizado com um mouse de 3 botões (Logitech ou similar) ou
usando a emulação de mouse de 3 botões").
~
(til) Meu diretório padrão (diretório
padrão, normalmente o diretório
/home/meu_nome_de_login). Por exemplo, o comando cd
~/meu_diretório irá alterar o diretório
corrente para o diretório "meu_diretório"
sob o meu diretório padrão(home) Digitando-se
apenas ust "cd" é um equivalente ao comando "cd
~".
.
(ponto) Diretório corrente. Por exemplo,
./meu_programa tentará executar o arquivo
'meu_programa' localizado em seu diretório corrente.
..
(sequência de dois pontos) Diretório
pai do diretório corrente. Por exemplo, o comando cd ..
irá alterar o meu diretório corrente para um nível
acima.
<Alt><SysRq><tecla_de_comando>
(Não
essencial.) Esta é uma combinação de grupo de
teclas implementada a nível do kernel linux(baixo nível).
Isto significa que estas combinações de teclas
funcionarão na maioria das vezes. As combinações
tem o propósito de depuração e em uma
emergência, você deveria tentar outras soluções
mais seguras antes. A tecla <SysRq> é também
conhecida no PC como <PrintScreen>. A combinação
pode ser habilitada/desabilitada atribuindo o valor 1 ou 0 a variável
relevante no kernel, por exemplo : echo "1" >
/proc/sys/kernel/sysrq
<Alt><SysRq><k>
Fecha todos os processos(incluindo o servidor X) que estão
rodando na console virtual correntemente ativa. Esta combinação
de teclas é conhecida como "tecla de acesso seguro(secure
access key)" (SAK).
<Alt><SysRq><e>
Envia o sinal TERM para todos os processos em execução,
exceto o processo init, solicitando-os que sejam fechados.
<Alt><SysRq><i> Envia o sinal
KILL para todos os processos em execução, exceto o
processo init. Isto pode ter mais sucesso em fechar processos do que
a combinação anterior, mas pode fazer com que alguns
deles terminem anormalmente.
<Alt><SysRq><l>
Envia o sinal KILL para todos os processos, inclusive ao processo
init. O sistema deixará de estar funcional.
<Alt><SysRq><s>
Executa um sync(gravação dos buffers em disco) de
emergência em todos os sistemas de arquivos montados. Isto pode
evitar perda de dados.
<Alt><SysRq><u>
Remonta todos os sistemas de arquivos atualmente montados como
leitura-somente. Isto tem o mesmo efeito que a combinação
de sync acima, mas com um beneficio importante: se a operação
tiver sucesso, fsck não terá que verificar todos os
sistemas de arquivo depois de um reset de hardware do computador.
<Alt><SysRq><r> Desliga o modo
direto do teclado. Isto pode ser útil quando sua sessão
X trava. Depois de dar o comando você será capaz de usar
<CTRL><ALT><DEL>.
<Alt><SysRq><b>
Reinicia imediatamente a maquina sem fazer a gravação
dos buffers ou desmontagem dos sistemas de arquivos. Você
provavelmente terminará o sistema com erros nos sistemas de
arquivos.
<Alt><SysRq><o>
Fecha o sistema(se estiver configurado e for suportado).
<Alt><SysRq><p> Mostra o
conteúdo dos registradores e flags(indicadores) em sua
console.
<Alt><SysRq><t>
Mostra uma lista de tarefas correntes e informações
sobre elas em sua console.
<Alt><SysRq><m>
Mostra informações da memória em sua console.
<Alt>SysRq><digito> O dígito
é '0' a '9'. Define o nível de exibição,
controlando quais mensagens do kernel serão exibidas em sua
console. Por exemplo, '0' fará com que somente mensagens de
emergência como PANICs ou OOPSes sejam mostradas em sua
console.
<Alt><SysRq><h>
Mostra a ajuda(help). Qualquer outra combinação não
suportadas <Alt><SysRq><key> mostrará a
mesma ajuda.
qualquer_comando --help |more
Mostra uma breve
explanação de um comando (funciona com a maioria dos
comandos). Por exemplo, tente cp --help |more. "
--help" funciona de maneira similar a chave "/h" no
ambiente DOS. O "more" torna-se necessário quando a
saída a ser exibida tem tamanho maior que a tela.
man tópico
Mostra o conteúdo das
paginas de manual para aquele tópico. Pressione "q"
para sair do visualizador. Execute man man se você
precisa de opções mais avançadas. O
comando info tópico funciona de maneira
similar ao man tópico, ele contem informações
mais atualizadas. As paginas de manuais podem ser menos confortáveis
de serem lidas - - elas foram escritas para programadores UNIX.
Execute qualquer_comando --help para uma ajuda mais
breve e mais fácil de ser digerida sobre um comando. Alguns
programas também vem com um arquivo de informação
README ou outros--dê uma olhada no diretório
/usr/share/doc. Para mostrar paginas de manuais de uma seção
específica, posso usar algo como: man 3 exit (isto
mostra uma informação sobre o comando exit da
seção 4 das paginas de manual) ou man -a exit
(isto mostra as paginas de manual do comando exit para todas
as seções). As seções man
são: Seção 1-Comandos do Usuário,
Seção 2-Chamadas ao sistema, Seção
3-Sub-rotinas, Seção 4-Dispositivos, Seção
5-Formatos de arquivos, Seção 6-Jogos, Seção
7-Seção variada, Seção 8-Administração
do sistema, Seção 10, Seção n - Nova.
Para imprimir uma pagina de manual, use: man tópico
| col -b | lpr (a opção col -b remove os
caracteres de retrocesso(backspace) ou outros caracteres que poderiam
tornar a leitura da pagina de manual impressa difícil de ser
lida).
info tópico
Mostra o conteúdo de
informações sobre um comando em particular, info
é uma substituição das paginas man
porisso ela contem as atualizações mais recentes da
documentação do sistema. Use a tecla <Espaço>
e <BkSpace> para se movimentar nas paginas ou você poderá
ficar confuso. Pressione "q" para sair. Uma
substituição para a navegação algo
confusa do sistema info pode ser pinfo - tente executa-lo se
você preferir algo melhor.
apropos tópico
Fornece uma lista dos
comandos que tenham alguma coisa a ver com o tópico.
whatis topic
Fornece uma curta lista dos
comandos que causam com o tópico. whatis é
similar ao comando apropos (veja o comando anterior)--ambos
usam o mesmo banco de dados. Mas whatis pesquisa por
palavras chaves, enquanto apropos também pesquisa as
descrições que contenham as palavras chaves.
help comando
Mostra uma breve informação
sobre o comando embutido do shell bash. Usando help sem
nenhum comando mostra a lista de comandos embutidos do bash. A
menor lista de comandos embutidos do bash provavelmente incluiria:
alias, bg, cd, echo, exit, export, fg, help, history, jobs, kill,
logout, pwd, set, source, ulimit, umask, unalias, unset.
kdehelp
(no terminal X). Navegação
através do sistema inteiro de ajuda usando o navegador de
ajuda KDE. Normalmente, a ajuda KDE é chamada clicando no
ícone apropriado do painel de controle KDE. Use
gnome-help-browser para o equivalente no GNOME.
pwd
Mostra o diretório corrente,
hostname
Mostra o nome do host local(a maquina na
qual estou trabalhando). Use netconf (como root) para
modificar o nome da maquina.
whoami
Mostra meu nome de login.
id nomedeusuarios
Mostra a identificação
do usuário (user id ou uid) e o grupo de identificação
(group id ou gid), a identificação efetiva(effective
id, é diferente do id real) e os grupos suplementares.
date
Mostra ou altera a data e hora do sistema. Por
exemplo, eu poderia mudar a data e hora para 2000-12-31 23:57 usando
este comando:
date 123123572000
Para ajustar o
relógio de hardware (BIOS) a partir do relógio do
sistema (Linux) use o comando (como root) setclock
time
Determina a quantidade de tempo consumida
durante a execução de um determinado comando mais
outras informações. Não o confunda com o comando
date (veja comando anterior). Por exemplo, eu posso
determinar quanto tempo é gasto para mostrar o conteúdo
de um diretório usando:
time ls
clock
hwclock
(dois comandos, use um ou
outro). Obtém a data/hora do relógio do hardware(tempo
real, alimentado pela bateria). Você pode também usar um
destes comandos para ajustar o relógio do hardware, mas
setclock pode ser mais simples (veja os 2 comandos
anteriores).
who
Mostra os usuários logados na máquina.
w
Mostra quem está logado no sistema,
determina o que eles estão fazendo, o tempo de uso do
processador, etc... Bom comando de segurança.
rwho -a
(=remote who) Mostra usuários logados
em outros computadores em sua rede. O serviço rwho deve estar
habilitado para este comando rodar. Se não estiver execute o
comando setup (específico de RedHat) como root para
habilitar "rwho".
finger nome-de-usuário
Mostra informações
do sistema sobre um usuário. Execute finger root . Pode-se
usar finger com qualquer outro computador em rede que
exponha o serviço finger para o mundo, exemplo, execute:
finger @finger.kernel.org.
last
Mostra uma listagem dos últimos usuários
que se logaram no sistema. Realmente uma boa idéia checa-lo de
vez em quando como uma medida de segurança em seu sistema.
lastb
("=last bad") Mostra a ultima
tentativa de login não bem sucedida no sistema. Ela não
funcionou em meu sistema, consegui inicia-la com :
touch
/var/log/btmp
"Há uma boa razão por que /var/log/btmp não esteja disponível em qualquer configuração segura - ele é um arquivo de leitura não restrita contendo os erros de login. Como um dos erros mais comum de login é digitar a password ao invés de nome do usuário, /var/log/btmp é um presente para os crackers." (Obrigado a Bruce Richardson). Parece que o problema é solucionado alterando-se as permissões do arquivo de forma que somente o root possa usar "lastb":
chmod o-r /var/log/btmp
history | more
Mostra os últimos (1000 ou algo
assim) comandos executados na linha de comando na conta corrente. O
"| more" faz com que a exibição se interrompa
após o preenchimento da tela. Para ver o que um outro usuário
estava fazendo em seu sistema, faça login como root e veja o
arquivo "history" do usuário. O history é
mantido no arquivo .bash_history no diretório padrão
do usuário (por isso, sim, ele pode ser modificado ou
apagado).
uptime
Mostra a quantidade de tempo decorrido desde o
último reboot.
ps
(="print status(mostre status)" ou
"process status(status de processos)") Lista os processos
correntes executados pelo usuário corrente.
ps axu | more
Lista todos os processos em execução,
mesmo aqueles não ligados a nenhum terminal, junto com o nome
do usuário, dono de cada processo.
top
Mantém permanentemente uma listagem
atualizada dos processos em execução, classificados
pelo uso de cpu(os maiores primeiros). Para sair pressione <Ctrl>c
ou q.
PID = process identification(identificação do processo).
USER= nome do usuário que possui(iniciou?) o processo.
PRI=prioridade do processo(quanto maior o numero, menor a prioridade, normal 0, a maior é -20, a menor é 20.
NI=nível de reescalonamento de prioridade(niceness level) (isto é, se o processo tenta ajustar sua prioridade para o número dado/).
SIZE=kilobytes de código+dados+stack gastos em memória pelo processador.
RSS=kilobytes de memória física gastos.
SHARE=kilobytes de memória compartilhada com outros processos.
STAT=estado do processo : S-sleeping(dormindo), R-running(rodando), T-(parado ou em trace), D-uniterruptable sleep(sono não interrompível), Z=zumbi.
%CPU=ocupação da cpu(desde a última atualização da tela).
%MEM=ocupação de memória física.
TIME=tempo total de CPU usado pelo processador(desde quando foi iniciado).
COMMAND=linha de comando usada para iniciar a tarefa(cuidado com passwords, etc, na linha cde comando, todos os usuários autorizados a executarem o comado top a verão!
gtop
ktop
(no terminal X) Duas escolhas
gráficas para o comando top. A minha favorita é gtop
(vem com o gnome). No KDE, ktop está também disponível
a partir do menu K, sob "System"-"Task
Manager(Gerenciador de Tarefas)".
uname -a
(= "nome do Unix " com opção
"todas(all)") Informação sobre o seu servidor
local. Pode-se usar também guname (em um terminal
X_window ) para mostrar a mesma informação de maneira
mais agradável.
cat /etc/issue
Verifica qual distribuição
você está usando. Você pode colocar sua própria
mensagem neste arquivo testo - - ele é mostrado quando se faz
login. É mais comum colocar as informações
especificas de seu site no arquivo /etc/motd
("motd"="message of the day[mensagem do dia]").
free
Informação sobre memória
(em kilobytes). "Shared[compartilhada]" é a
memória que pode ser compartilhada entre processos(por
exemplo, o código executável é compartilhado).
"Buffered(buferizada)" e "cashed[em cache]" é
a quantidade que mantém partes dos arquivos mais recentemente
acessados - - ela pode ser reduzida se mais memória for
requerida pelos processos em execução.
df -h
(=disk free[espaço livre em disco])
Exibe informação de discos de todos os sistemas de
arquivos(em forma legível).
du / -bh | more
(=disk usage[uso do disco]) Exibe o
uso detalhado de disco em cada subdiretório começando
pelo diretório raiz (/ ) em um formato legível).
cat /proc/cpuinfo
Informação de cpu - -
mostra o conteúdo do arquivo cpuinfo. Observe que os
arquivos no diretório /proc não são
arquivos reais - - eles são ganchos para informações
disponíveis no kernel.
cat /proc/interrupts
Lista as interrupções
de hardware em uso. As vezes é necessário saber
antes de configurar um novo hardware.
cat /proc/version
Versão do linux e outras
informações.
cat /proc/filesystems
Mostra os tipos de sistemas de
arquivos em uso.
cat /etc/printcap |more
Mostra a configuração
das impressoras.
lsmod
(= "list modules". Como root. Use
/sbin/lsmod para executar este comando quando você for
um usuário não-root.) Mostra os módulos do
kernel correntemente carregados.
set|more
Mostra o ambiente do usuário
corrente(completo).
echo $PATH
Mostra o conteúdo da variável
de ambiente "PATH". Este comando pode ser usado para
mostrar outras variáveis de ambiente. Use o comando set
para ver o ambiente completo(veja o comando anterior).
dmesg | less
Mostra as mensagens do kernel (o
conteúdo do chamado buffer em anel do kernel). Pressione q
para sair do less. Use less /var/log/dmesg para ver o
que dmesg" jogou para dentro deste arquivo depois do
último boot.
chage -l meu_nome_de_login
Ver informações
sobre a expiração de minha password.
quota
Ver minha quota de disco(limites sobre o uso do
disco).
sysctl -a |more
Mostra todos os parâmetros
configuráveis do Linux.
stat filename
Exibe informações
gerais a respeito de um arquivo(o conteúdo do inode).
runlevel
Exibe o nível de execução(runlevel)
anterior e corrente. A saída "N5" significa:
"nenhum runlevel anterior" e "5 é o
runlevel corrente".
Runlevel é o modo de operação do Linux. O runlevel pode ser trocado a qualquer momento pelo comando init. Por exemplo, init 3 (como root) irá alterar o runlevel para o nível 3. Os seguintes runlevel são padronizados:
0 - halt (Não estabeleça o initdefault para este nível)
1 - Modo monousuario
2 - Modo multiusuario, sem NFS (O mesmo que o nível 3, se você não tem ambiente de rede)
3 - Modo multiusuario completo
4 - não usado
5 - X11
6 - reboot (Não use este nível como initdefault)
O runlevel padrão está definido no arquivo : /etc/inittab .
ls
dir
Lista o conteúdo do
diretório corrente O comando dir é um alias
para o comando ls de forma que estes comandos fazem
exatamente a mesma coisa. A listagem dos arquivos é
normalmente codificada por cores: azul escuro= diretórios,
cinza leve= arquivos normais, verde= arquivos executáveis,
violeta = arquivos gráficos, vermelho= arquivos comprimidos,
azul claro = links simbólicos, amarelo = arquivos de
dispositivos, marrom = FIFO ("First-In First-Out" named
pipes[nomes de canalizações do tipo Primeiro a entrar,
primeiro a sair).
ls -al |more
Lista o conteúdo do diretório
corrente, todos os arquivos(incluindo aqueles começando com um
ponto), e em um formato mais longo. A saída é
canalizada para o comando "more", de forma que a exibição
seja interrompida quando a tela ficar cheia/ O comando ls
tem diversas opções úteis. Algumas delas tem
atalhos (aliases) para evitar uma digitação complicada.
Execute ll (="long ls[ls longo]", um alias para ls
-l). Uma outra opção que uso frequentemente é
ls -ad (lista todos os subdiretórios em meu diretório
corrente, mas não lista seus conteúdos).
cd diretório
Muda o diretório
corrente. Usando-se "cd" sem o nome do diretório
fará com que seu diretório corrente seja o seu
diretório padrão, "cd - " fará
com que seu diretório corrente seja o diretório onde
você estava anteriormente e é uma maneira conveniente de
se alternar entre dois diretórios, "cd .."
fará com que seu diretório corrente seja o diretório
exatamente superior ao que você se encontra( muito útil).
./nome_do_programa
Roda um executável no
diretório corrente. Os caracteres ./ são necessários
quando o executável não está no PATH. Os
executáveis que estão sem seu PATH simplesmente são
executados digitando-se o nome dos mesmos.
shutdown -h now
(como root) Encerra o sistema,
colocando em um estado parado. É usado para shutdown
(encerramento) remoto. Use <Ctrl><Alt><Del>
para um shutdown na console(o qual pode ser feito por qualquer
usuário).
halt
reboot
init 6
(como
root, três comandos) Para ou reinicializa a máquina.
Usado para shutdown remoto, mais simples de se digitar que o comando
anterior, É também muito bom se o computador trava
"hangs" (quando perco controle sobre o teclado)--A partir
de uma outra maquina faço telnet para esta maquina travada
remotamente a reinicializo. Eu uso <Ctrl><Alt><Del>
para um shutdown normal na console de um computador local.
vlock
(Não presente em versões
anteriores do RedHat.) Trava um terminal local(em modo texto).
Posso também usar vlock -a para travar todos os
terminais (provavelmente não 'e uma boa idéia). O
melhor provavelmente é fazer um logout. Você não
usa vlock na interface gráfica--os gerenciadores de janelas
vem com protetores de telas que somente são liberados por
senha e um utilitário de tranca(por exemplo, o pequeno ícone
com um cadeado no KDE).
cp fonte destino
Copia arquivos. Por exemplo, cp
/home/stan/nome-de-arquivo-existente. Copiará um
arquivo para meu diretório corrente. Use a opção
"-R"(que significa "recursivo") para copiar o
conteúdo inteiro de arvores de diretórios, por exemplo,
cp -R meu_diretório_existente/ ~(caracter til)
copiará um subdiretório sob meu diretório
corrente para meu diretório padrão.
mcopy fonte destino
Copia um arquivo de um sistema de
arquivos DOS(nenhuma montagem do sistema de arquivos DOS é
necessária). Por exemplo, mcopy a:\autoexec.bat ~/junk.
Veja man mtools para outros comandos que podem ter acesso a
arquivos DOS sem montagem do sistema de arquivos: mdir, mcd,
mren, mmove, mdel, mmd, mrd,
mformat .... Nós não usamos os comandos
mtool frequentemente --operações em arquivos DOS/MS
Windows podem ser executadas usando comandos regulares do Linux
depois que você monta o sistema de arquivos DOS/MS Windows.
mv fonte destino
Move ou renomeia arquivos. O mesmo
comando é usado para mover e renomear arquivos e diretórios.
rename string string_de_substituição
nome_de_arquivo
Utilitário flexível par
trocar partes de nomes de arquivos. Por exemplo, :
rename
.htm .html *.htm
ln fonte destino
Cria um hard link chamado destino
para o arquivo chamado source. O link aparece como uma cópia
do arquivo original, mas na realidade somente uma copia do arquivo é
mantida, apenas duas ou mais entradas de diretórios apontam
para ela. Quaisquer alterações na copia original são
automaticamente visíveis usando-se as entradas. Quando uma
entrada de diretório é removida a outra fica intacta. A
limitação dos hard links são: os arquivos tem
que estar no mesmo sistema de arquivos, hard links para diretórios
ou arquivos especiais são impossíveis.
ln -s fonte destino
Cria um link simbólico
chamado "destino" para o arquivo chamado "fonte".
O link simbólico especifica um caminho onde procurar pelo
arquivo real. Em distinção aos hard links, a fonte e
destino não tem que estar no mesmo sistema de arquivos. Em
comparação aos hard links , o problema dos links
simbólicos são : se o arquivo original é
removido, o link fica quebrado - - aponta para lugar
nenhum; os links simbólicos podem criar referencias
circulares(tal como referencias circulares em planilhas ou banco de
dados, por exemplo, "a" aponta para "b" e "b"
aponta de volta para "a"). Em resumo, links
simbólicos são uma grande ferramenta e são
usados muito frequentemente (mais que is hard links), mas eles podem
criar um nível extra de complexidade.
rm arquivos
Remove (deleta) arquivos. Você deve
ser o dono do arquivo para ser capaz de deleta-lo(ou ser root). Em
muitos sistemas será pedida uma confirmação de
deleção, se você não quiser isto use o
flag -f" (=forcar), por exemplo, rm -f * removerá
todos os arquivos e,m meu diretório corrente, nenhuma
confirmação será solicitada.
mkdir directory
Cria um novo diretório.
rmdir directory
Remove um diretório
vazio.
rm -r files
(remoção recursiva)
Remove arquivos, diretórios, e seus subdiretórios. Seja
cuidadoso com este comando sob root - - você pode facilmente
remover arquivos do sistema com um comando executado no topo da
arvore de diretórios, e não existe undelete no
Linux(ainda). Mas se você realmente o quer(reconsidere), eis
como (como root):
rm -rf /*
rm -rf arquivos
(remoção forçada
e recursiva). Tal como acima, mas elimina o prompt para confirmação.
se um estiver definido em seu sistema. Seja cuidadoso com este
comando particularmente como root--veja o comando acima.
mc
Executa o gerenciador de arquivos "Midnight
Commander" (parece como um "Norton Commander" para
Linux).
konqueror &
(no terminal X) Executa o gerenciador
de arquivos KDE. Talvez este seja o estado da arte em gerência
de arquivos. Muito melhor que o MS "Windows Explorer".
Ele tem embutido a navegação web, visualização
de arquivos pdf, e muito mais. Realmente ótimo.
xwc
(no terminal X). Um outro gerenciador de arquivos
(chamado "X Win Commander"). Mais rápido que o
konqueror, mas que não contem tantos recursos.
cat nome_de _arquivo | more
Visualiza o conteúdo
do arquivo chamado "nome_de_arquivo, uma pagina de cada
vez. O "|" é o símbolo de canalização
(em muitos teclados americanos ele está na mesma tecla que o
"\"). more faz com que a saída no vídeo
seja interrompida a cada vez que a tela ficar cheia. Para arquivos
maiores, algumas vezes é conveniente usar os comandos head
e tail que mostram o inicio e o fim do arquivo. Se acontecer
de você usar cat em um arquivo binário e seu
terminal começar a mostrar caracteres malucos, você pode
restaurar o terminal com o comando reset.
cat filename | less
less filename
(dois comandos, use um deles) Permite a navegação
através do conteúdo de um arquivo texto. Pressione q
quando terminar. O comando "less" é quase que
equivalente ao comando "more" , o mesmo que você
conhece do DOS, mas frequentemente o comando "less" é
mais conveniente que o "more".
head filename
Mostra as 10 primeiras linhas de
um arquivo texto(longo).
tail filename
Mostra as 10 primeiras 10 linhas
de um arquivo texto longo ou em crescimento. Use tail -f
nome_do_arquivo para que o comando tail mostre o arquivo a
medida em que ele cresce - - realmente muito bom para inspeção
continua de arquivos de log.
pico filename
Edita um arquivo texto usando o
editor de texto simples e padrão chamado pico.
Use <Ctrl>x para sair. Existem muitos editores
de texto para Linux incluindo alguns baseados em interface gráfica.
Um outro, novo em folha, derivado do pico(licença GPL) é
o nano.
pico -w filename
Edita um arquivo texto,
desabilitando a quebra de linhas longas. Ótimo para edição
de arquivos de configuração, por exemplo, /etc/fstab.
kwrite
(no terminal X) Muito legal, editor de
textos avançado". Suporta seleção de texto
vertical!
kedit
gedit
(no terminal X). Editores de
textos simples e de aparência legal.(baseados em interface
gráfica).
gxedit
(no terminal X) Um outro editor de textos de
múltiplos propósitos e com vários recursos. Este
tem até mesmo um backup de tempos em tempos.
latte
(no terminal X) editor de código, isto
é, editor de textos para codificação de
programas.
nedit
(no terminal X) Um outro editor para
programadores. Muito bonito.
bluefish
(no terminal X) editor html (fonte com
salientador de sintaxe e muitas ferramentas e opções).
ispell nome_de_arquivo
Verifica a ortografia de um
arquivo texto ASCII. AbiWord, WordPerfect, StarOffice e outros
processadores de palavras vem com um destes verificadores
que atuam a medida em que você digita, assim você não
tem que se preocupar com o simples ispell a menos que você
precise dele. Distribuições mais recentes do Linux(por
exemplo, RH7.0) contem um modulo melhorado de verificação
de ortografia chamado aspell, mesmo assim o comando acima continuará
também funcionando.
look thermo
Pesquisa o dicionário de
seu sistema(/usr/share/dict/words) por palavras que se
iniciam com "thermo".
touch nome_de_arquivo
Muda o selo de data e hora do
arquivo para o momento corrente. Cria um arquivo vazio caso ele não
exista.
wvHtml documento.word.doc > nome_de_arquivo.html
Converte um documento MS Word para o formato html.
find / -name "nome_do_arquivo"
Encontra o
arquivo informado em seu sistema de arquivos iniciando a procura pelo
diretório raiz "/". O nome_do_arquivo
pode conter coringas (*,?).
O comando find é muito poderoso. Ele tem muitas opções que permitirão que você pesquise por arquivos das mais variadas formas, por exemplo, por data, permissões, donos, .... Algumas pesquisas podem tomar mais que um minuto para serem compostas. Veja info find. Eis alguns exemplos mais complexos para se usar o find para executar algumas tarefas úteis.
find $HOME -name core -exec rm -f {} \;
O comando acima encontra os arquivos de nome "core", a partir de seu diretório padrão. Para cada arquivo encontrado ele executa a ação "rm -f" (deleção forçada do arquivo). O {} significa o arquivo encontrado e o "\" termina a lista do comando.
find /dev -user "peter" |more
O comando acima exibe o nome de arquivo de todos os dispositivos possuídos por "peter". Exibição do nome do arquivo é a ação padrão do comando fiod, assim ele não tem que ser especificado se isto é tudo o que eu preciso.
find /home/peter -nouser -exec ls -l {} \; -ok chown peter.peter {} \;
Encontra arquivos sem um proprietário valido no diretório no diretório Exibe o arquivo em um formato longo. A seguir, aguarda que informemos a mudança do proprietário para peter e do grupo para peter. Você provavelmente precisará ser root para alterar a propriedade de um arquivo
locate nome_do_arquivo
Encontra o nome do arquivo que
contém o string "nome_do_arquivo". Mais fácil
e mais rápido que o comando anterior mas depende de um banco
de dados que normalmente é reconstruído a noite.
which nome_do_executável
Mostra o caminho
completo até o executável que seria executado se o nome
dele fosse digitado na linha de comando. Por exemplo, este comando:
which netscape
no meu sistema dá o seguinte
resultado:
/usr/bin/netscape
whereis comando
Exibe os locais onde se
encontram os arquivos executável, o fonte e paginas de manuais
do comando "comando".
rgrep -r 'celeste' . |more
Pesquisa todos os
arquivos no diretório corrente e em todos os seus
subdiretórios. (a opção "-r" significa
recursivo") que contenham o string "celeste".
Exibe o nome do arquivo e a linha no arquivo que contém o
string procurado.
kfind &
(no terminal X). Uma interface gráfica
para os comandos find e grep. Muito legal. O
caracter & no fim do comando faz com que kfind rode em
segundo plano de forma que o terminal X continue disponível.
xinit
Inicia um servidor X-Windows puro (sem um
gerenciador de janelas).
startx
Inicial um servidor X-windows e o gerenciador
de janelas padrão. Funciona como win no DOS com
Windows 3.1
startx -- :1
Inicia um outro servidor no display 1 (o
padrão é aberto no display 0). Você pode ter
diversos terminais gráficos rodando concorrentemente. Você
pode alternar entre eles usando <Ctrl><Alt><F7>,
<Ctrl><Alt><F8>, etc.
xterm
(no terminal X) Executa um terminal X.
Digitando exit fará com que ele seja fechado.
Existem outros terminais virtuais X mais avançados para
W-windows. Eu gosto dos populares: konsole e kvt
(ambos vem com o kde) e gnome-terminal (vem com o gnome).
Se você precisa de algo realmente sofisticado tente o Eterm.
startkde
gnome-session
xfce
afterstep
AnotherLevel
fvwm2
fvwm
(no terminal X, 7 comandos diferentes, use
aquele que inicia o seu gerenciador de janelas favorito). Inicia o
seu gerenciador de janelas favorito em um terminal X em um servidor X
puro.
netscape &
(no terminal X) Executa o netscape.
Eu atualmente (Marco 2001) rodo o Netscape 4.75 e ele é bem
legal. Algumas versões anteriores de Netscape eram
conhecidas por conterem alguns bugs: eles ocasionalmente sofriam um
crash onde o usuário perdia o contato com ele (nenhum outro
problema acontecia), quando não estava conectado a rede , eles
se recusavam a fazer qualquer coisa(parecia que estavam travados)
revivendo quando alguma conexão a rede era estabelecida.
O Mozilla é uma substituição moderna para o
Netscape, mas ele ainda não está completamente pronto,
(é utilizável, requer sua própria instalação).
O konqueror pode ser uma boa alternativa se o Netscape não
satisfaz as suas necessidades.
netscape -display host:0.0 &
(no terminal
X) Executa o netscape na máquina corrente e dirige a saída
para máquina chamada "host" no display 0 e tela 0.
Sua máquina deve ter permissão para enviar a saída
para a máquina "host" (esta permissão é
dada executando-se o comando xhost nome_da_maq_local em um
terminal X da maquina host. Outros programas X-windows podem também
ser executados remotamente da mesma forma.
lynx file.html
Visualiza um arquivo html ou
navega pela rede em modo texto. Embora o lynx possa ser conveniente
ele não é tão bom quanto um browser gráfico,
ele é leve, quase sempre funciona, e não requer nenhuma
configuração desde que a rede esteja funcionando.
konqueror &
(no terminal X) Gerenciador de
arquivos e browser em um só. Muito legal. Melhor que o
netscape de varias formas. Vem com o KDE.
pine
Um bom leitor de correios em modo texto. Um
outro bom leitor padrão é o elm. Seu Netscape
mail lerá os correios de sua conta Internet, . pine
permitirá que você leia o correio local, por exemplo, o
correio que seu filho ou processos cron enviem para você a
partir de um computador em sua rede domestica. O comando mail
pode também ser usado para leitura e redação de
correio mas ele é um pouco inconveniente - - ele é
dirigido para ser usado em scripts para automação.
mutt
Um leitor de correios bem básico mas
extremamente útil e rápido.
mail
Uma ferramenta básica do sistema
operacional para correios. Veja os comandos anteriores para um melhor
leitor de correios. mail é bom se você quiser
enviar um correio a partir de um shell script.
kmail &
(no terminal X) É um bonito
programa gráfico para correios. Eu uso kmail, ele é
muito melhor que o netscape mail. Eu posso ter múltiplas
contas e recuperar os correios a partir do servidor smtp(local) e
servidores pop3(de seu provedor de acesso) para a mesma caixa de
correio. Simples e elegante. Suporta assinatura digital.
licq &
(no terminal X) É um cliente padrão
icq para mensagens instantâneas. Uma outro bom é o
kxicq. Distribuições mais antigas não
tem um cliente icq instalado, você tem que fazer o download e o
instalar.
knode &
(no terminal X) Executa meu leitor
favorito de newsgroup (usenet). É muito melhor que o leitor
embutido no netscape.
talk username1
Permite que você converse
com um outro usuário correntemente logado em sua maquina (ou
use "talk nome_de_usuario@nomedamaquina" para
conversar com um usuário em um computador diferente) . Para
aceitar o convite para a conversa, digite o comando "talk
nomedosusuario2". Se alguém está tentando
conversar com você e ele perturba o seu trabalho, você
pode usar o comando "mesg n" para recusar as
mensagens. Você pode usar o comando "who" ou
"rwho" para determinar os usuários que
estão correntemente logados.
telnet servidor
Conecta-se a uma outra maquina
usando o protocolo TELNETl. Use um nome da maquina remota ou o
endereço IP. Será solicitado a você o nome de
login e a password --você deve ter uma conta na maquina remota
para fazer o login. Telnet conectará você a uma outra
máquina e permitirá que você a opere como se você
estivesse sentado em frente a ela usando o teclado dela. Telnet não
é muito seguro - - tudo o que você digita é
enviado em texto aberto, inclusive sua password!
rlogin servidor
(=login remoto) Conecta sua
maquina a uma outra maquina. O nome de login e password de sua sessão
corrente é usado; se a conexão falhar uma password é
solicitada a você.
rsh servidor
(=shell remoto) Uma outra forma
de se conectar a uma máquina remota. O nome de login e a
password de sua sessão corrente é utilizado ; se a
conexão falha uma password é solicitada.
ssh servidor
(=shell seguro) Conecta-se a um
servidor(login remoto) usando uma conexão segura. ssh
é seguro porque ele verifica a identidade da pessoa que está
se conectando, e criptografa toda a transferencia de dados sobre a
rede usando o seu par de chaves publica e privada RSA.
Tanto o cliente como o servidor devem ter o serviço ssh (daemon) rodando. Eles estão normalmente disponíveis em versões Linux mais recentes(RH7.0). Antes de usar ssh, alguma configuração é necessária. O usuário cria seu par de chaves RSA executando o comando ssh-keygen. Este comando armazena a chave privada no arquivo $HOME/.ssh/identity e a chave publica no arquivo $HOME/.ssh/identity.pub no diretório padrão do usuário. O usuário deve então copiar a identidade publica para $HOME/.ssh/authorized_keys no seu diretório padrão na máquina remota. Depois disto, o usuário pode fazer o login sem fornecer a senha. A forma mais conveniente de se usar a autenticação pode ser com um agente autenticador. Veja man 1 ssh-agent para mais informações. Se a autenticação automática falha, o ssh solicita a password. A password é enviada ao host remoto para verificação, entretanto, como as comunicações são criptografadas, a password não pode ser vista por que alguém que esteja escutando a rede.
From: Benjamin Smith <bens@benjamindsmith.com> (editado por questões de espaço):
Eu recentemente consegui rodar o openssh 2.9.2p1, com a opção de login com password livre. Tive que fazer algumas coisas e elas não estavam em nenhum dos howtos que cobriam isto. Você gostaria da mágica que faz isto funcionar? Ei-la: : "o padrão é para chaves SSH2 e DSA, as quais você gera com 'ssh-keygen -d' e vai para ~/.ssh/id_dsa.pub, o qual você copiaria para .ssh/authorized_keys2" no host remoto. Use isto ao invés do arquivo authorized_keys de chaves autorizadas como informado nos howtos e VOILA! Funciona realmente.
ftp servidor
Conecta-se a um servidor ftp. (Existe
também o ncftp que proporciona algumas
características extras e gftp para o modo gráfico.)
Ftp é bom para copiar arquivos para/de outras máquinas
remotas. Tente o usuário "anonymous" se você
não tem uma conta no servidor remoto. Depois de se conectar,
use "?" para ver a lista de comandos ftp disponíveis.
Os comandos ftp essenciais são: ls (mostra os
arquivos no sistema remoto), ASCII, binary
(estabelece o modo de transferencia para texto(ascii) ou binário,
é importante que você selecione o apropriado ), get
(copia um arquivo do sistema remoto para o sistema local), mget
(copia muitos arquivos de uma só vez), put (copia um
arquivo do sistema local no sistema remoto), mput (copia
muitos arquivos no sistema remoto de uma só vez), bye
(desconecta). Para automação em um script você
pode usar ncftpput e ncftpget, por exemplo:
ncftpput -u meu_usuário -p minha_password -a
domínio_host_remoto dir_remoto *local.html
Para
manter o espelhamento de diretórios ftp pode-se usar fmirror
wget -m http://sunsite.dk/linux-newbie
Copia arquivos
de sites web. O exemplo acima usa a opção -m (=mirror)
para recuperar um conjunto completo de arquivos do site master deste
guia.
minicom
Emulação de terminal em porta
serial. Ele se parece e trabalha como o programa "Procomm"
ou "Telix". No mínimo, de muita utilidade para
teste, e depuração de comunicação serial.
rx
Recebe arquivos
usando o protocolo Zmodem, Ymodem, ou Xmodeml. Xmodem requer um nome
de arquivo. Use rx --help para
maiores informações. Quem ainda usa estes protocolos?
"Eu uso Zmodem regularmente. Eu tenho dois computadores rodando (SuSE) Linux, um laptop e um desktop. O desktop não tem acesso a internet. Assim, a fim de buscar arquivos que baixei de um computador para o outro, eu os envio via um cabo null-modem , usando Minicom e o protocolo Zmodem. Desta forma eu posso até conectar meu laptop do trabalho rodando Win2000 para minha maquina Linux usando Reflexion (um programa de emulação de terminal win32)"
(from Berry Vos, B.Vos@getronics.com, 2001 08 28).
tar -zxvf nomedearquivo.tar.gz
(=arquivador em
fitas) Obtém os arquivos de um tarball comprimido (*.tar.gz ou
*.tgz) que você tenha baixado da internet.
tar -xvf nomedearquivo.tar
Obtém os
arquivos de um tarball não comprimido (*.tar).
tar czvpf /var/backups/meubackup.tar.gz /home
cd
/; tar xzvpf /var/backups/meubackup.tar.gz '*/meuarquivo.rtf'
(como root) Cria um backup de /home em um arquivo comprimido. O
segundo comando mostra como restaurar um arquivo do backup.
gunzip nomedearquivo.gz
Descompacta um arquivo
compactado (*.gz" or *.z). Use gzip (também zip
ou compress) se você quer compactar arquivos neste
formato.
zcat nomedearquivo.gz | more
(=zip cat) Mostra o
conteúdo de um arquivo compactado Outros utilitários
para operação em arquivos compactados sem que se faca
primeiro a descompactacao estão também disponíveis:
zless, zmore, zgrep, ...
bunzip2 nomedearquivo.bz2
(=big unzip)
Descompacta um arquivo (*.bz2) compactado com o utilitário de
compactacao bzip2. É usado para arquivos grandes.
unzip nomedearquivo.zip
Descompacta um arquivo
(*.zip) compactado com um utilitários de compactacao
compatível com PKZIP para DOS.
zip nomedearquivo.zip nomedearquivo1 nomedearquivo2
Compacta dois arquivos "nomedearquivo1" e
"nomedearquivo2" em um arquivo backup chamado
"nomedearquivo.zip".
unarj e nomedearquivo.arj
Extrai o conteúdo
de um arquivo *.arj.
lha e filename.lha
Extrai o conteúdo de
arquivo lharc.
uudecode -o arquivodesaida nomedearquivo
Decodifica
um arquivo codificado com uuencode. Arquivos
codificados no formato uu-encoded são tipicamente usados para
transferencia de arquivos não-textos em e-mails(uuencode
transforma qualquer arquivo em um arquivo ASCII).
cat nomedearquivo | mimencode -o nomedearquivo.mime
cat nomedearquivo.mime |mimencode -u -o
nomedearquivo
(2 comandos) Codifica e decodifica um
arquivo de/para o padrão de transferencia Internet orientado a
correio de 7 bits de dados chamado "mime". Em
distribuições mais antigas, o comando que faz o
trabalho (mimencode) é chamado mmencode.
Normalmente, você não tem que se preocupar com estes
comandos, o seu software de correio faz as operações de
codificação/decodificação de forma
transparente.
ar -x meuarquivo.a arquivo1 arquivo2
(=archiver).
Extrai os arquivos arquivo1 e arquivo2 de um arquivo chamado
meuarquivo.a. O utilitário ar é na
maioria das vezes usado para bibliotecas.
ark &
(no terminal X). Uma aplicação
de backup gráfica (baseada em Qt). Talvez seja tudo que você
precise para gerenciar seus arquivos compactados. Outra alternativa é
gnozip.
ps
(="print status[exiba status]"
ou"process status[status de processo]") Mostra a lista de
processos correntemente em execução com seus números
de identificação de processos (PIDs). Use ps axu
para ver todos os processos que estão rodando em seu
computador (incluindo aqueles de outros usuários ou sem um
terminal ao qual estejam associados), cada um com o nome de seu
proprietário. Use "top" para mostrar continuamente a
lista dos processos que estão rodando.
qualquer_comando &
Roda qualquer comando
em segundo plano (o símbolo "&" significa rode
o comando precedente em segundo plano"). O
número_da_tarefa é mostrado na tela de
forma que você possa trazer o comando para o primeiro
plano(veja abaixo) caso queira. Eu uso "&"
frequentemente quando inicio um programa gráfico a partir de
um terminal X.
jobs
Lista os processos iniciados em segundo plano e
mostra seus números de tarefas.
fg número_da_tarefa
Traz um processo
iniciado em segundo plano para o primeiro plano.
bg número_da_tarefa
Coloca um processo
em segundo plano, como se ele tivesse sido iniciado com &. Isto
reiniciará um processo de segundo plano que estava
interrompido. O processo em primeiro plano pode frequentemente ser
interrompido com <Ctrl>z. Se você
interrompeu ou jogou para segundo plano alguma tarefa você tem
que digitar exit duas vezes para fazer o logout.
batch qualquer_comando
Roda qualquer comando
(usualmente algum que vai demorar algum tempo) quando a carga do
sistema estiver baixa. Mesmo que eu saia do sistema (logout) o
processo continuará rodando.
at 17:00
Executa um comando em uma hora especificada.
Você será questionado sobre qual programa a ser
executado, até que você pressione <Ctrl>d.
Os comandos associados são atq (mostra a fila de
processos iniciados com at) e atrm (remove um
processo da fila do "at").
kill PID
Encerra um processo. Determine o PID
do processo a ser encerrado usando ps.
killall nomedoprograma
Encerra um programa pelo nome.
Por exemplo, killall pppd desconectará sua rede
dialup.
nohup nomedoprograma
(=não termine ao
fazer logout). Roda nomedoprograma de forma que ele
não seja encerrado quando você sair do sistema(logout).
A saída é redirecionada para o arquivo nohup.out
no seu diretório padrão. Você certamente não
vai rodar um programa interativo usando r nohup.
xkill
(no terminal X) Fecha um programa gráfico
com o mouse(Aponte com seu mouse a janela do processo a ser fechado e
clique o botão esquerdo)
kpm
(no terminal X) Gerenciador de processo KDE.
lpc
(como root) Verifica e controla a(s)
impressora(s). Digite "?" para ver a lista de comandos
disponíveis.
lpq
Mostra o conteúdo da fila de impressão.
Sob KDE (X-Windows), você pode usar o menu K-Utilitários-Fila
de Impressão.
lprm numero-da-tarefa
Remove um trabalho de
impressão da fila.
nice nomedoprograma
Roda o nomedoprograma
ajustando sua prioridade. Como a prioridade não é
especificada neste exemplo, o valor padrão(usualmente 0) será
incrementado de 10(o processo rodará mais devagar). Quanto
menor o número nice, maior a prioridade. O valor da prioridade
está na faixa de -20 a 19. Somente o root pode especificar
valores negativos. Use top para mostrar as prioridades dos
processos em execução.
renice -18 PID
(como root) Altera a prioridade
de um processo em execução para -18. Usuários
normais(não root) somente podem ajustar a prioridade de
processos dos quais eles são donos, e somente para diminuir a
prioridade. Poderia-se também executar renice +10 -u peter
para fazer com o usuário peter use menos ciclos de cpu de modo
que outros usuários não sofram quando ele estiver
rodando suas tarefas altamente consumidoras de recursos.
<Ctrl>c, <Ctrl>z, <Ctrl>s, e <Ctrl>q também pertencem a este capítulo mas elas foram descritas previamente. Em suma elas significam interromper o comando corrente, enviar o comando corrente para segundo plano, interromper a transferencia de dados, reiniciar a transferencia de dados.
lsof
Lista os arquivos abertos. Se eu sou root, todos
os arquivos serão listados. Posso me limitar aos arquivos
abertos por processos possuídos pela primeira console se eu
usar lsof /dev/tty1 . Para listar somente arquivos de
rede(útil para uma auditoria de segurança) eu devo
executar lsof -i (como root).
watch -n 60 meu_comando
Executa meu_comando a
intervalos de 60 segundos(o intervalo padrão é 2
segundos).
su
(=substitui o id de usuário) Assume a
identidade do superusuario(=root) (a password será solicitada
a você). Digite "exit" para voltar ao seu login
anterior. Não trabalhe habitualmente em sua máquina
como root. A conta de root é para tarefas administrativas e o
comando su é para facilitar seu acesso a esta conta
quando ela for necessária. Você pode também usar
"su" para assumir a identidade de outros usuários,
por exemplo, . su barbara me tornará o usuário
"barbara" (a senha será solicitada a menos que seu
seja root).
alias ls="ls --color=tty"
Cria um alias
para o comando "ls" para melhorar seu formato com cor.
Neste exemplo, o alias é também chamado "ls"
e opção "color" é somente invocada
quando a saída é feita para um terminal(não para
arquivos). Coloque o alias no arquivo /etc/bashrc se você
quer que o alias fique disponível para todos os usuários
no sistema. Os aliases são uma forma fácil de se
customizar o seu sistema. Digite "alias" sozinho
para ver a lista de aliases para sua conta. Use unalias
nome_do_alias para remover um alias.
cat /var/log/httpd/access_log
Mostra quem se conectou
ao seu servidor apache web desde a ultima vez que ele foi
girado(ação do comando rotate para
salvamento e limpeza de logs, normalmente executado pelo cron uma vez
ao dia). O arquivo de log anterior é is access_log.1,
o mais imediatamente anterior é access_log.2, etc.
cat /var/log/secure
(como root) Inspeciona a log do
sistema. É realmente uma boa idéia faze-lo de tempos em
tempos se você usa acesso a internet.
ftpwho
(como root) Mostra quem está conectado
ao seu servidor ftp.
printtool
(como root no terminal X) Ferramenta de
configuração para sua(s) impressora(s).As definições
estão no arquivo /etc/printcap e (estranhamente) em
/var/spool/lpd.
setup
(como root) Configura o mouse, placa de som,
teclado, X-windows, e serviços do sistema. Existem muitos
utilitários de configuração específicos
por distribuição, setup é o utilitário
padrão para RedHat. Mandrake 7.0 oferece o DrakConf .
linuxconf
(como root, tanto no modo texto como em
modo gráfico). Você pode ter acesso e modificar centenas
de definições de rede a partir dele. Muito poderoso - -
não modifique muitas coisas ao mesmo tempo, e seja cuidadoso
com modificações de entradas que você não
conhece bem. O utilitário RedHat de configuração
de rede netconf é um subconjunto do linuxconf,
portanto é mais simples e algumas vezes mais fácil de
usar.
mouseconf
(como root). Ferramenta simples para
configurar seu mouse(depois da instalação inicial).
O Mandrake inclui também como alternativa o mousedrake.
kudzu
(como root). Ele automaticamente determina e
configura o seu hardware. Se você estiver tendo problemas
misteriosos com o seu mouse( ou outros dispositivos seriais), você
pode desabilitar o kudzu, de forma que ele não rode quando o
sistema estiver sendo iniciado (kudzu atrapalhou o meu sistema de
forma que não consegui fazer meu mouse funcionar). Você
pode roda-lo manualmente quando você precisar dele.
timeconfig
(como root) Define a zona de tempo
(timezone) para seu sistema.
setclock
(como root). Ajusta o relógio de
hardware de seu computador a partir da hora do linux. Use o comando
"date" para ajustar a hora no seu linux. Por exemplo, eu
poderia mudar a data e hora para 2000-12-31 23:57 usando o
comando:
date 123123572000
e então gravar a
hora no relógio do hardware usando:
setclock
xvidtune
(no terminal X).Faz ajustes do terminal
gráfico para todas as resoluções de forma a
eliminar problemas, desloca a tela para cima/baixo e para os lados,
etc. (Primeiro use os botões do seu monitor para ajustar seu
modo texto corretamente na tela). A seguir use xvidtune para ajustar
as freqüências do seu monitor para cada resolução
de forma que ela se enquadre bem em sua tela. Para tornar as mudanças
permanentes, mostre as freqüências na tela e as transfira
para o arquivo de definição /etc/X11/XF86Config.
kvideogen
(no terminal X). Gera "modelines(linhas
de configuração gráfica)" para resoluções
customizadas de sua tela. Depois que você gerou o texto
de definição (as "modelines"),você pode
copiar-e-cola-las no arquivo de definição do X-windows
/etc/X11/XF86Config (ou /etc/X11/XF86Config-4 se você
usa o X versão 4.xx). Veja também o atalho de teclado
<Ctrl><Alt><+>
SVGATextMode 80x25x9
SVGATextMode 80x29x9
(como roott) Muda a resolução de texto em um
terminal texto. No exemplo acima (segunda linha) eu alterei a tela de
texto para 80 colunas e 29 linhas com caracteres de 9 pixels de
altura. A primeira linha define uma resolução que
sempre funciona, de forma que se o segundo comando não
funcionar em meu sistema , eu posso pressionar a <Seta-para-cima>
duas vezes e <Enter> para recuperar o controle sobre minha
tela . Os modos possíveis dependem de sua placa de vídeo
e das freqüências de sincronização de seu
monitor - - eu precisei editar (como root) o arquivo /etc/TextConfig
e comentar/descomentar as linhas apropriadas para permitir que o
SVGATextMode saiba o que o meu sistema suporta.
SuperProbe
(como root). Um utilitário para
determinar o tipo de placa de vídeo e a quantidade de memória
dela.
kernelcfg
(como root no terminal X). Interface
gráfica para adicionar/remover módulos do kernel . Um
módulo é como um device driver (driver de dispositivo)
- - um pedaço do kernel Linux que provê suporte para um
pedaço particular de hardware ou uma funcionalidade. Você
pode fazer o mesmo a partir da linha de comando usando o comando
insmod.
lsmod
(= lista módulos). Lista os módulos
que estão carregados. Um módulo é como um
device-driver(driver de dispositivo) - - ele provê suporte do
kernel do sistema operacional para um parte do hardware ou alguma
característica.
modprobe -l |more
Lista todos os módulos
disponíveis para o seu kernel. Os módulos disponíveis
são determinados pela maneira como o seu Linux foi compilado.
Cada módulo ou característica possível pode ser
compilado no linux como embutido (rápido, não-removível),
módulo(talvez mais lento, mas carregável/descarregável
sob demanda), or "nenhum" (nenhum suporte para esta
característica). Os módulos que seu kernel suporta(com
os quais ele foi compilado) são todos os arquivos que estão
no diretório /lib/modules (e os subdiretórios.),
portanto se você navegar por eles pode te dar uma pista se você
estiver perdido.
modprobe sb
Carrega o módulo soundblaster
(sb).
insmod parport
insmod ppa
(como root)
Insere módulos no kernel (um módulo é a grosso
modo um equivalente a um driver de dispositivo no DOS). Normalmente
eu uso modprobe(veja o comando anterior) para inserir módulos.
Este exemplo mostra como inserir os módulos para suporte do
zip drive em porta paralela (parece ser um problema conseguir que o
zip drive funcione de outra maneira no RH6.0 e 6.1).
rmmod nome_do_módulo
(como root, não
essencial). Remove o módulo nome_do_módulo do kernel.
depmod -a
(como root) Monta a tabela de dependências
de módulos para o kernel. Não essencial a menos que
você tenha modificado /etc/modules e não quer reiniciar
o sistema.
setserial /dev/cua0 port 0x03f8 irq 4
(como root)
Ajusta a porta serial para uma definição não-padrão.
O exemplo mostra a definição padrão para a
primeira porta serial(cua0 ou ttyS0). As definições
padrão do PC para a segunda porta (cua1ou ttyS1) são:
endereço da porta 0x02f8, irq 3. A terceira porta serial cua2
ou ttyS2): 0x03e8, irq 4. A quarta porta serial (cua3 ou ttyS3):
0x02e8, irq 3. Acrescenta suas definições a
/etc/rc.d/rc.local se você que elas fiquem valendo em
tempo de inicialização do sistema. Veja man setserial
para uma boa visão do assunto.
tunelp
(como root, raramente necessário)
Ajuste de suas portas paralelas.
/sbin/chkconfig --level 123456 kudzu off
(como root)
Uma ferramenta para verificar/habilitar/desabilitar serviços
do sistema os quais não são automaticamente iniciados
em diferentes níveis de execução (runlevels).
Tipicamente, eu uso o utilitário RedHat ntsysv se eu
preciso habilitar/desabilitar um serviço no corrente nível
de execução, mas chkconfig me dá uma
flexibilidade extra. Uma ferramenta alternativa é tksysv
(baseada em X). O exemplo acima mostra como desabilitar o
serviço kudzu de forma que ele não se inicie em nenhum
nível de execução(runlevel)(Ele atrapalha o
funcionamento do mouse em um dos meus computadores). Para
listar todos os serviços iniciados/interrompidos nos níveis
de execução, eu uso :
chkconfig --list | more
Para verificar o status corrente dos serviços, eu posso
usar:
service --status-all
Para iniciar um serviço
imediatamente, eu posso usar algo como (iniciar um servidor ftp):
service wu-ftpd start
Para reiniciar a rede
samba(por exemplo, depois que eu alterei sua configuração),
eu posso usar:
service smb restart
symlinks -r -cds /
(como root) Verifica e corrige
links simbólicos em meu sistema. Começa no diretório
raiz (/) e continua através de todos os subdiretórios.
(opção -r= recursivo) e altera links
absolutos ou atrapalhados para relativos, deleta links que não
levam a nada, e reduz links compridos (opção -cds).
Se meu sistema de arquivos se expande sobre diferentes partições
de discos rígidos, eu preciso reexecutar este comando para
cada um deles (por exemplo, symlinks -r -cds /usr).
cd /usr/src/linux-2.2.14
make xconfig
(como
root no terminal X). Uma bela interface gráfica para
configuração de opções do kernel na
preparação para compilação de seu kernel
customizado. (O nome do diretório contem a versão
de seu kernel Linux, assim talvez você precise modificar o nome
do diretório se a versão de seu kernel Linux é
diferente de 2.2.14 usada neste exemplo. Você também
precisa do interpretador "Tk" instalado assim como o código
fonte do kernel.) As alternativas para "make xconfig"
são: "make config" (roda um script que faz
perguntas a você em modo texto) e "make menuconfig"
(roda um utilitário dirigido a menus em modo texto). Execute
less /usr/doc/HOWTO/Kernel-HOWTO para mais informações.
Depois de configurar as opções para o novo kernel,
você pode escolher continuar com a compilação do
novo kernel através dos seguintes comandos:
make dep
make bzImage
O último comando levará algum tempo até
terminar( talvez 30 minutos a 2 horas, dependendo de seu hardware).
Ele produz o arquivo "bzImage", o qual é o seu novo
kernel. A seguir:
make modules
make
modules_install
Agora você tem o novo kernel e os
módulos de forma que você pode instala-los --a
instalação envolve a copia dos novos arquivos para o
diretório /boot e fazer as mudanças em
/etc/lilo.conf de forma que você possa selecionar em
tempo de boot qual kernel ( o novo ou o antigo) a ser carregado. Veja
isto para obter
detalhes sobre o upgrade do kernel. Pode ser também de
muita ajuda ler /usr/doc/HOWTO/Kernel-HOWTO e talvez man
depmod. A configuração, compilação e
instalação de um novo kernel não é
difícil de forma alguma mas pode acarretar problemas se você
não souber o que está fazendo (se você não
pode iniciar e não está habilitado a consertar as
coisas depois de iniciar a partir do disquete, você pode
precisar reinstalar o sistema). A compilação do kernel
é também uma boa forma de testar o seu hardware, por
que ele envolve uma massiva quantidade de computação.
Se seu hardware tem problemas você muito comumente irá
receber a mensagem de erro "signal 11" (leia o bom
/usr/doc/FAQ/txt/GCC-SIG11-FAQ).
ldconfig
(como root) Recria as associações
e o cache para o carregador de bibliotecas dinâmicas(ld).
Você pode precisar rodar ldconfig depois de instalar
novas bibliotecas dinâmicas em seu sistema. (Ele também
é reexecutado a cada vez que você inicia a máquina,
porisso se você reiniciar a maquina você não terá
que faze-lo manualmente.)
mknod /dev/fd0 b 2 0
(=cria nodo, como root)
Manualmente cria um arquivo de dispositivo. Este exemplo mostra como
criar um arquivo de dispositivo associado com seu primeiro drive de
disquete e poderia ser útil se acontecesse por acidente que
você o apagasse. As opções são :
b=dispositivo de modo blocado, c=dispositivo de modo caracter,
p=dispositivo FIFO , u=dispositivo de modo caracter não
buferizado. Os dois inteiros especificam os números maiores e
menores (major and minor numbers) do dispositivo. Eu normalmente não
sei os parâmetros que mknod requer. Assim, para criar
dispositivos, eu primeiro leio man MAKEDEV para determinar o
nome do dispositivo e então rodo o script /dev/MAKEDEV
o qual conhece os dispositivos pelos seus nomes - - veja o próximo
comando. Se a citada pagina de manual não ajudar, eu posso
recorrer a última documentação incluída
no código fonte do kernel:
less
/usr/src/linux/Documentation/devices.txt
cd /dev
./MAKEDEV audio
(como root).
Restaura o dispositivo "audio" que eu de alguma forma já
havia criado. Veja também o comando anterior.
fdisk /dev/hda
(= "fixed disk[disco fixo]".
Como root.) O utilitário Linux de particionamento de discos
rígidos(O DOS tem um utilitário com o mesmo nome). No
exemplo acima, eu especifiquei que eu gostaria de particionar o
primeiro disco rígido na primeira interface IDE, Se eu fosse
você, eu faria um backup de todos os dados importantes antes de
usar fdisk em qualquer partição. Eu não conheço
ninguém que goste do fdisk (tanto a edição
Linux como a edição DOS)--Eu prefiro o cfdisk,
veja o próximo comando.
cfdisk /dev/hda
(como root) Utilitário de
particionamento de disco, baseado em menus. Mais fácil de usar
que o fdisk (veja o comando anterior). Discos físicos
podem conter partições primarias(máximo de 4 por
disco), e partições lógicas (nenhuma restrição
quanto ao número). Uma partição primaria
pode ser carregada(bootavel). Partições lógicas
devem estar contidas dentro de partições extendidas; as
partições extendidas não são usáveis
em si mesmas, elas contem as partições lógicas.
Ao particionar um disco, eu tipicamente : (1) crio uma partição
primaria (2) torno a partição primaria
carregável(bootavel) (3) crio uma partição
estendida (4) crio partições lógicas dentro da
partição expendida.
sfdisk -l -x |more
(como root) Lista a tabela
de partições(incluindo partições
extendidas) de todos os drives em meu sistema.
parted /dev/hda
Um utilitário de manipulação
de partição para Linux(ext2), e DOS (FAT e FAT32). Ele
cria, destrói, move, copia, reduz e estende partições.
Você deveria fazer um backup de seus dados e ler cuidadosamente
info parted antes de usa-lo.
fdformat /dev/fd0H1440
mkfs -c -t ext2 /dev/fd0
(=formatação de disquete, dois comandos, como root)
Faz uma formatação de baixo nível de um disquete
no primeiro drive de disquetes (/dev/fd0), alta densidade (1440 kB).
A seguir cria um sistema de arquivos Linux(-t ext2), verificando e
marcando os blocos ruins (-c ). Criar o sistema de arquivos é
equivalente a formatação de alto nível. Eu posso
formatar disquetes (também não padrão) em
diferentes densidades: execute ls /dev/fd0<Tab>. Asou
também capaz de formatar usando a densidade padrão(normalmente
1440k) usando fdformat /dev/fd0.
badblocks /dev/fd01440 1440
(como root) Verifica se
um disquete de alta densidade tem blocos ruins e mostra o resultado
na tela. O parâmetro "1440" especifica que 1440
blocos devem ser verificados. Este comando não afeta o
disquete.
fsck -t ext2 /dev/hda2
(=verifica sistema de
arquivos, como root) Verifica e repara um sistema de arquivos, por
exemplo, depois de um termino não padrão do sistema ou
devido a uma falha de energia. O exemplo acima verifica a partição
hda2, sistema de arquivos do tipo ext2. Você definitivamente
deve iniciar o Linux em modo monousuario para fazer isto (digite
"linux single" no prompt do LILO ou use init 1
como root para entrar em modo monousuario). Se forem encontrados
erros durante a verificação eu aceito os padrões
de reparação.
dd if=/dev/fd0H1440 of=floppy_image
dd
if=floppy_image of=/dev/fd0H1440
(dois comandos,
dd="duplicador de dados") Cria uma imagem de um disquete em
um arquivo chamado "floppy_image" no diretório
corrente. A seguir copio floppy_image (arquivo) para um
outro disquete. Funciona como o utilitário de DOS "DISKCOPY".
mkbootdisk --device /dev/fd0 2.4.2-3
Cria um disquete
de emergência. Normalmente esta opção é
oferecida a você durante a instalação do sistema.
O comando acima mostra como fazer o mesmo depois da instalação.
O nome de seu kernel (necessário no comando) pode ser
determinado usando-se ou uname -a ou ls /lib/modules
.
useradd nomedeusuario
passwd nomedeusuario
(como root) Cria uma nova conta (você deve ser root). Por
exemplo, useradd barbara Não se esqueça
de estabelecer uma password para o novo usuário no próximo
passo. O diretório padrão do usuário(que será
criado) é /home/nomedousuario. Você pode usar
também um comando equivalente adduser user_name
ls -l /home/peter
useradd peter -u 503 -g 503
(como root). Cria uma conta que casa com um diretório
já existente(talvez de uma instalação anterior).
Se o ID do usuário (mostrado para cada arquivo) era 503, eu
crio uma conta com um nome de usuário, o ID (UID) e o ID do
grupo (GID). Isto evita o trabalho com mudança de dono dos
arquivos.
userdel nomedousuario
Remove uma conta(você
deve ser root). O diretório padrão do usuário e
os correios ainda não entregues devem ser tratados em
separado(manualmente por que você tem de decidir sobre o que
fazer com os arquivos). Existe também o comando groupdel
para deletar grupos.
groupadd nomedegrupo
(como root) Cria um novo grupo
em seu sistema. Não essencial em uma maquina domestica, mas
pode ser muito útil mesmo em uma maquina domestica com um
pequeno numero de usuários.
Por exemplo, eu posso criar um grupo "amigos", a seguir edito o arquivo /etc/group, e adiciono meu nome de login e os nomes de meus amigos a linha que lista este grupo, de forma que a linha final contenha:
amigos:x:502:stan,pete,marie
A seguir, eu posso mudar as permissões em um arquivo selecionado de forma que o arquivo pertença a mim e ao grupo "amigos".
chgrp friends meuarquivo
Dai, os membros listados deste grupo tem acesso especial a estes arquivos que o resto do mundo não tem, por exemplo, permissão de leitura e gravação:
chmod g=rw,o= meuarquivo
A alternativa seria dar permissão de gravação para todos, o que definitivamente é inseguro mesmo em um computador domestico.
groups
Lista os grupos aos quais o usuário
corrente pertence. Ou eu poderia usar groups john para
listar a quais grupos o usuário john pertence.
usermod
groupmod
(como root) Dois
utilitários de linha de comando para modificar contas de
usuários e grupos sem edição manual dos arquivos
/etc/passwd /etc/shadow /etc/group e /etc/gshadow.
Normalmente não essenciais.
userconf
(como root) Ferramentas de configuração
de usuários dirigidas por menus(política de password,
modificação de grupo, adição de usuários,
etc.) É parte do pacote linuxconf, mas pode ser rodado
separadamente.
passwd
Muda a password de sua conta de usuário.
Se você for root, você pode então alterar a
password de qualquer usuário do sistema usando passwd
nomedeusuario
chfn
(="muda o nome completo"). Altera a
informação a respeito de você(nome completo,
telefone do escritório, numero de telefone, etc). Esta
informação é mostrada quando o comando finger
é executado em seu login.
chage -M 100 nomedeusuario
(= "muda a idade").
Estabelece que a password expira em 100 dias para o usuário
nomedeusuario .
quota nomedeusuario
setquota nomedeusuario
quotaon /dev/hda
quotaoff /dev/hda
Um
conjunto de comandos para manipular as quotas de disco. Normalmente
não usado em um computador doméstico. "quota
de disco" significa limites por usuário no uso de espaço
em disco. Os comandos (respectivamente) mostram a quota do usuário,
define a quota do usuário, liga o sistema de quotas para um
dado sistema de arquivos(dev/hda no exemplo acima), desliga o sistema
de quota. As distribuições típicas de
Linux que tenho visto estabeleceram um padrão: nenhum limite
para todos os usuários, e o sistema de quotas está
desligado para todos os sistemas de arquivos.
kuser
(como root, em um terminal X) Gerência
usuários e grupos usando uma interface gráfica. Bonita
e provavelmente cobre a maior parte do que você provavelmente
precisaria para gerenciar contas de usuários.
chmod perm nomedearquivo
(=muda modo) Altera as
permissões para os arquivos que você possui(a menos que
você seja root e neste caso você pode alterar qualquer
arquivo). Você pode tornar um arquivo acessível de três
maneiras: leitura (r), gravação (w), execução
(x) para três classe de usuários: dono (u), membros do
grupo ao qual o arquivo pertence (g), os demais, outros(o). Verifique
as permissões de acesso correntes usando:
ls -l
nomedearquivo
Se o arquivo é acessível
a todos os usuários em todos os modos ele mostrará :
rwxrwxrwx
O primeiro trio mostra as permissões
do arquivo para o dono do arquivo, o segundo trio para o grupo que
possui o arquivo, e o terceiro para os outros(resto do mundo).
Nenhuma permissão é mostrada como "-".
Ao
definir permissões, estes símbolos são usados:
"u"(=usuário ou dono do arquivo), "g"(=grupo
que possui o arquivo), "o"(=outros), "a" (=todos,
isto é, dono, grupo e outros), "="(=define a
permissão para), "+"(=adiciona a permissão),
"-"(=retira a permissão), "r"(=permissão
para leitura), "w"=(permissão para gravação,
significando a possibilidade de alteração do arquivo),
"x"(=permissão para executar o arquivo).
Por exemplo, este comando adicionará as permissões para leitura ao arquivo junk para todos (=dono+grupo+outros):
chmod a+r junk
Este comando removerá as permissões para executar o arquivo de outros:
chmod o-x junk
Clique aqui para maiores
informações.
Você pode estabelecer as
permissões padrões de arquivos para novos arquivos que
você venha a criar, use para isto o comando umask
(veja man umask).
chown novodono nomedearquivo
chgrp
novonomedegrupo nomedearquivo
Altera o dono do
arquivo e o grupo. Você deve usar estes dois comandos depois de
copiar um arquivo para uso por alguém mais. Somente o dono do
arquivo pode deleta-lo.
lsattr nomesdearquivos
Lista atributos para os
nomesdearquivos. Não é frequentemente usado por que a
maioria dos atributos interessantes não estão ainda
implementados. Os atributos podem ser alterados usando-se o comando
chattr. Os atributos são: A (=não atualize o
atime(access time[hora de acesso] quando o arquivo for modificado), S
(=atualizações síncronas), a (=somente acréscimo
ao final possível para este arquivo), c (=arquivo compactado a
nível de kernel, não implementado ainda), i (=arquivo
imutável), d (=não considerado para backup pelo
comando dump), s (=deleção segura, o arquivo é
preenchido com zeros binários), e u (não deletável,
não implementado ainda). Um uso interessante é tornar
um arquivo não deletável mesmo pelo root(até que
ele limpe este atributo).
pwck
grpck
(como root, dois comandos).
Verifica a integridade dos arquivos de password e grupos.
pwconv
grpconv
(como root) Raramente
você precisa destes comandos. Eles convertem arquivos de
password e grupos no formato antigo para criar arquivos
shadow(sombra) mais seguros.
rpm -ivh nomedopacote_versao.plataforma.rpm
(como
root) Instala um pacote(opção "i", deve ser a
primeira letra depois do hífen), enquanto detalha a execução
(opção "v'=verbose) e exibe o progresso da
instalação (opção "h"). rpm
significa "Redhat Package Manager"(Gerenciador de pacote
RedHat).
rpm -Uvh nomedopacote-versao.plataforma.rpm
(como
root) Atualiza (opção "U", deve ser a
primeira letra depois do hífen) um pacote mostrando
detalhes(opção -v) e o progresso ("h").da
execução.
rpm -ivh --force --nodep nomedopacote-versao.plataforma.rpm
(como root) Instala o pacote ignorando possíveis conflitos
e problemas de dependência.
rpm -e nomedopacote
(como root) Desinstala (opção
"e"=apaga) o pacote nomedopacote. Observem a ausência
do "-versao.plataforma.rpm" ao fim do nome do pacote (o
nome do pacote é o mesmo do nome do arquivo *.rpm file a
partir do qual o pacote foi instalado mas sem 0
hifen.versao.plataforma e "rpm").
rpm -qpi nomedopacote-versao.plataforma.rpm
Consulta
(opção "q", deve ser a primeira letra depois
do hífen o pacote ainda não instalado(opção
"p") de forma que ele mostre as informações
(opção "i") que o pacote contém.
rpm -qpl nomedopacote-versao.plataforma.rpm
Consulta
(opção "q", deve ser a primeira letra depois
do hífen)o pacote ainda não instalado (opção
"p") de forma que ele mostre a listagem (opção
"l") de todos os arquivos que o pacote contem.
rpm -qf nomedoarquivo
Encontra o nome do pacote ao
qual o arquivo nomedoarquivo pertence ou pertenceu. Útil se
acidentalmente eu apaguei um arquivo e agora eu preciso encontrar o
pacote correto e reinstala-lo.
rpm -qi nomedopacote
Consulta o pacote já
instalado de forma que ele mostre suas informações.
Observe ausência do -versao.plataforma.rpm no fim
do nome do pacote.
rpm -qai | more
Consulta todos os pacotes instalados
no sistema de forma que mostre suas informações. Em meu
sistema, eu tenho aproximadamente 600 pacotes instalados, porisso
teria que ter muito tempo para ler suas informações.
Para contar o numero de pacotes execute:
rpm -qa | grep -c ''
rpm -Va
Verifica (opção "V")
todos os pacotes (opção "a") instalados no
sistema. Isto lista arquivos que não foram modificados desde a
instalação. Eis a legenda da saída:
.
Teste executado
c Este é
um arquivo de configuração
5
checksum MD5 falhou
S O
tamanho do arquivo é diferente
L
Link simbólico foi modificado
T
Hora de modificação do arquivo foi alterada
D Arquivo de dispositivo está
modificado
U o Usuário
que possui o arquivo foi alterado
G
O Grupo que possui o arquivo foi alterado
M
As permissões e/ou tipo de arquivo foram modificados
kpackage
gnorpm
glint
(no
terminal X, como root, se você quer instalar pacotes, 3
comandos) Interfaces gráficas para o Red Hat Package Manager
(rpm). "glint" vem com RH5.2 e parece estar obsoleto agora,
gnorpm é o instalador gráfico "oficial"
RedHat, versões mais antigas são muito lentas e
confusas mas a versão mais recente (a que vem com RH7.0) está
bastante melhorada. kpackage é o programa "oficial"
KDE e tem se mostrado muito bom. Use qualquer um deles para ver quais
pacotes de software estão instalados em seu sistema e os ainda
não instalados estão disponíveis em seu CD
RedHat, mostre a informação a respeito dos pacotes e
instale-os, se você quiser( a instalação deve ser
feita como root root).
mount
Veja aqui
detalhes sobre a montagem de discos. Os exemplos são mostrados
nos próximos comandos.
mount -t auto /dev/fd0 /mnt/floppy
(como root) Monta
o disquete. O diretório /mnt/floppy deve existir,
estar vazio e não ser seu diretório corrente.
mount -t auto /dev/cdrom /mnt/cdrom
(como root) Monta
o CD. Você pode precisar de criar/modificar o arquivo
/dev/cdrom dependendo de onde seu CDROM está. O
diretório /mnt/cdrom deve existir, estar vazio e não
ser seu diretório corrente.
mount /mnt/floppy
(como usuário root) Monta
um disquete como usuário. O arquivo /etc/fstab
precisa ser configurado para permitir isto. O diretório
/mnt/floppy não deve ser seu diretório
corrente.
mount /mnt/cdrom
(como usuário ou root) Monta
um CD como usuário. O arquivo /etc/fstab precisa
estar configurado para permitir isto. O diretório /mnt/cdrom
não deve ser seu diretório corrente.
umount /mnt/floppy
Desmonta o disquete. O diretório
/mnt/floppy não deve ser seu diretório
corrente nem de ninguém mais. Dependendo de sua configuração
você pode ser capaz de desmontar um disco que foi montado por
outro usuário.
netconf
(como root) Uma ferramenta dirigida por menus
muito boa para sua rede.
ping nomedamaquina
Verifica se você
entrar em contato com uma outra maquina(forneça o nome da
maquina ou seu endereço IP), pressione <Ctrl>C para
terminar (sem <Ctrl>c, o comando continua sendo executado
indefinidamente). Como todos os outros comandos Linux, ping
tem opções incluindo o ataque "ping da
morte", quando você pinga alguns servidores e eles
caem--tente as opções -f e -s.
route -n
Mostra a tabela de roteamento do kernel.
host nome_do_host_a_ser_encontrado
nslookup
nome_do_host_a_ser_encontrado
dig
endereço_ip_a_ser_encontrado
(Três
comandos, use qualquer um.) Faz uma consulta ao servidor padrão
de nomes (DNS) por um nome Internet(ou endereço IP)
nome_do_host_a_ser_encontrado. Desta forma você pode
verificar se seu DNS funciona. Você pode também
encontrar o nome do host do qual você conhece apenas o endereço
IP..
traceroute host_a_ser_seguido
Mostra como suas
mensagens caminham até chegar ao host_a_ser_seguido(o
qual é nome de host ou um endereço IP).
mtr host_a_ser_seguido
(como root) Uma
poderosa e bela ferramenta que combina a funcionalidade dos velhos
comandos ping e traceroute(RH7.0)
nmblookup -A endereço_IP
Mostra o status de
uma máquina MS Windows em rede (com um nome NetBIOS).
Este comando é um equivalente ao comando nbtstat do
Windows.
ipfwadm -F -p m
(para RH5.2, veja o próximo
comando para RH6.0) Define as políticas de firewall IP para
mascaramento(não muito seguro, mas simples) Propósito:
todos os computadores de sua rede doméstica aparecerão
ao mundo externo como uma única maquina e, por exemplo, será
permitido a você navegar na Internet simultaneamente a partir
de suas máquinas.
echo 1 > /proc/sys/net/ipv4/ip_forward
ipfwadm-wrapper -F -p deny
ipfwadm-wrapper -F -a
m -S xxx.xxx.xxx.0/24 -D 0.0.0.0/0
(três comandos,
RH6.0). Faz o mesmo que o comando anterior. Substitua os "x"s
com os dígitos de seu endereço IP classe C que você
atribuiu a sua rede doméstica. Veja aqui
mais detalhes.
ipchains -P forward DENY
ipchains -A forward -s
xxx.xxx.xxx.0/24 -d 0.0.0.0/0 -j MASQ
(dois comandos,
RH7.0). O mesmo que os comandos anteriores, mas funciona sob
RH7.0.
ipchains -L
Lista todas as regras do firewall. Use-o
para verificar se sua definição de proteção
por firewall funciona.
iptables -L
O Linux kernel 2.4.x usa o novo comando
de firewall "iptables". O exemplo acima lista todas as
regras do firewall.
firewall-config
(como root, no Xterm). Uma
interface gráfica para customizar seu firewall.
ifconfig
(como root) Mostra informações
sobre as interfaces de rede ativas(ethernet, ppp, etc). Sua primeira
interface ethernet aparece como eth0, a segunda como eth1, etc, a
primeira interface ppp sobre modem é a ppp0, a segunda ppp1,
etc. A interface "lo" é a interface "loopback
only[para comunicação dentro da própria
maquina]" e que deve estar sempre ativa. Use as opções
(veja ifconfig --help) para configurar as interfaces.
ifup nome_da_interface
(/sbin/ifup para
rodar como um usuário comum) Inicia uma interface de rede.
E.g.:
ifup eth0
ifup ppp0
ifup ppp1
Os usuários pode iniciar ou desativar a interface ppp
somente quando a permissão é dada na configuração
do ppp(usando netconf ). Para iniciar uma interface ppp
(conexão dial-up), normalmente uso kppp disponível no
menu K" do KDE(ou digitando kppp em um terminal X).
ifdown interface_name
(/sbin/ifdown
para executar como um usuário normal). Desativa a interface de
rede. Exemplo, ifdown ppp0 Veja também o comando
anterior.
netstat | more
Mostra algumas informações
sobre o status de sua rede.
/usr/sbin/mtr --gtk
(como root, no terminal X se você
quer uma bela interface baseada em gtk). Ferramenta de diagnostico de
rede combinando o poder de traceroute e ping. Vem com o RH7.0.
nmap ip_number
Faz o mapeamento de suas portas
na máquina com número IP. REALMENTE muito útil
para estabelecer a segurança de sua configuração
de rede a medida em que você vê as portas que estão
abertas. nmap faz parte do CD "Linux
PowerTools{Ferramentas de poder do Linux)" do RH7.0, como uma
conveniente interface gráfica, , "nmapfe". nmap pode
também fazer a impressão digital do sistema.
Normalmente as pessoas(e seus provedores de acesso a Internet) não
gostam que suas portas sejam varridas(eles vem isto com uma sondagem
de alguém antes de lançar um ataque) --aprenda como
usar nmap em seu próprio computador e não em outros
caso contrario você logo ouvirá algo de seu provedor de
acesso (as queixas são dirigidas a ele)
ethereal
(como root, em um terminal X) Analisador de
rede --vê o trafego de rede passando por seu computador. Está
incluído no CD "Linux PowerTools" do RH7.0 O
uso do ethereal pode ser não ético em algumas
situações, e o uso não autorizado pode ser uma
ofensa digna de penalização.
tcpdump -i ppp0 -a -x
(como root) Mostra todo o
trafego de rede através da primeira interface (ppp0) sobre
linha telefônica como ascci e hexadecimal. Provavelmente muita
coisa é mostrada, . tcpdump é uma ferramenta
mais crua e pode ser útil para ferramentas customizadas para
escutar /registrar o que você precisa.
cdplay play 1
Toca a primeira trilha de um CD de
audio. Use cdplay para tocar o CD inteiro. Use cdplay
stop quando quiser interrompe-lo.
eject
Você ganha uma bandeja para café
de graça :))). (Ejeta a bandeja do CD ROM). Este
comando é padronizado para o cdrom, mas pode ser usado para
ejetar outras mídias removíveis especificando o ponto
de montagem do dispositivo. E.g., Posso ejetar o zipdisk de zipdrive
de porta paralela(como root) usando o comando: eject /dev/sda4
play meu arquivo.wav
Toca um musica gravada em um
arquivo wave.
rec my_file.wav
Grava um arquivo wave a partir
do microfone.
mpg123 my_file.mp3
Toca uma música
gravada em um arquivo mp3.
mpg123 -w my_file.wav my_file.mp3
Cria um
arquivo de audio wave a partir de um arquivo de audio mp3. Útil
se você quer gravar um CD de audio a partir de arquivos mp3 - -
você tem que converter os arquivos mp3 para o formato .wav
primeiro. Não fique surpreso se o processo de conversão
for lento --a descompactacao de mp3 é uma tarefa que exige
muita cpu.
xmms
(no terminal X) Bela interface gráfica
para o reprodutor mp3.
freeamp
(no terminal X) Um outra interface gráfica
para o reprodutor mp3.
lame arquivo_de_entrada arquivo_de_saída
MP3
encoder.
knapster
(no terminal X) Inicia o programa para
baixar arquivos mp3 que outros usuários do napster tenham
anunciados para serem baixados. Você pode compartilhar seus
arquivo mp3 também. Realmente legal, enquanto dura. Gnutella e
FreeNet logo os substituirá >eles conseguem ser ainda mais
legais.
cdparanoia -B "1-"
(CD ripper[leitor,
amostrador]) Le o conteúdo de um CD de audio e o salva
em arquivos .wav no diretório corrente, uma trilha por arquivo
.wav. O "1-" significa "a partir da trilha 1 até
o final". -B força a gravação de cada
trilha em um arquivo separado.
playmidi meu_arquivo.mid
Reproduz um arquivo
midi. playmidi -r meu_arquivo.mid
mostrará em modo texto efeitos na tela.
sox arquivo_de_audio um_outro_formato_de_arquivo_de_audio
(="intercâmbio de arquivos de som") Converte de
quase qualquer formato de audio para um outro(exceto mp3). Veja
man sox para ver a lista de arquivos de audio
suportados(muitos). sox também permite que você
adicione efeitos especiais aos seus arquivos de som.
kscd
(no terminal X ) Reprodutor de CD.
kmidi
(no terminal X) Reprodutor MIDI.
kmid
(no terminal X) reprodutor MIDI/caraoke.
kmix
(no terminal X) Mixer de sons.
studio
(no terminal X) Estúdio de som--edita
arquivos de sons, adiciona efeitos,etc. Disponível no CD Power
Tools do RH7.x.
extace
(no terminal X) Utilitário de
visualização de sons.
festival --tts my_file.txt
Diz o
conteúdo do arquivo meuarquivo.txt (texto ascii).
"festival" é um sintetizador de palavras que vem no
CD Power Tools do RedHat 7.0. Para dizer alguma coisa a partir da
linha de comando, você precisa executar "festival"
e então, no prompt "festival>", digitar o
comando apropriado (interpretador de linguagem "scheme"),
tal como neste exemplo (o negrito representa o prompt):
festival
festival>(SayText "good
dog, really good dog")
festival> (quit)
kghostview meuarquivo.ps
(no terminal X)
Mostra um arquivo postscript na tela. Posso também usar
o velho ghostview ou gv para a mesma finalidade.
Posso também imprimir o arquivo postscript a partir do
visualizador.
xpdf meuarquivo.pdf
(no terminal X) Visualiza
um arquivo pdf.
enscript meuarquivo.txt -U 2
Converte um arquivo
texto para postscript e o imprime na impressora padrão.
Poderia também enviar a saída convertida para um
arquivo postscript:
enscript meuarquivo.txt -U 2 -o
meuarquivo.ps
A opção -U 2 faz com que
enscript imprima 2 páginas lógicas em uma
pagina física o que me dá uma economia de papel, e cria
impressões compactas mais convenientes. Você pode
também selecionar 4 paginas por página, mais do que
isto torna a impressão difícil de se ler. enscript
é realmente flexível, veja man enscript para
uma seleção das varias opções de
formatação.
ps2pdf meuarquivo.ps meuarquivo.pdf
Cria um arquivo
pdf (Adobe portable document format[formato de documento portável
Adobe])a partir de um arquivo postscript.
mpage -2 meuarquivo.ps > novoarquivo.ps
Imprime o
arquivo postscript meuarquivo.ps, colocando duas páginas
lógicas em uma pagina física. Salva a saída no
arquivo novoarquivo.ps.
ps2ps arquivo.ps novoarquivo.ps
psnup -nup 2
-pletter novoarquivo.ps.ps novoarquivo2.ps
Uma outra forma
de criar um arquivo postscript contendo 2 páginas lógicas
em uma página física. Primeiro, uso o conversor ps2ps
para criar o arquivo postscript mais simples (ao custo dele ser
maior). A seguir, eu uso o utilitario psnup para criar o
novoarquivo2.ps o qual contém 2 páginas
lógicas por página física. Eu poderia
também colocar 4 ou 8 paginas lógicas por página
física.
gimp
(no terminal X) Um poderoso processador de
imagens. Requer algum aprendizado para usa-lo, mas é ótimo
para artistas, não há nada que não possa ser
feito com o gimp. Use o botão direito de seu mouse para ver os
menus locais, e aprenda como usar os layers(níveis). Salve
seus arquivos no formato nativo gimp *.xcf (para preservar os layers
para futura edição) e somente então salve-os
como png(ou qualquer outro formato) para uso. "A chave é
aprender como fazer a seleção apropriada."
gphoto
(no terminal X) Programa poderoso de edição
de fotografias e de aquisição de imagens de câmeras.
kpaint
(no terminal X) Program simples para pintura
bitmap("tipo paintbrush").
xfig
(no terminal X) Um programa simples de desenho.
Útil para fazer croquis ou diagramas.
dia
(no terminal X) Uma ferramenta para desenhar
diagramas a partir de componentes pré-existentes.
display minhafigura
(no terminal X) Mostra uma figura
para visualização somente. Você pode também
digitar display & e selecionar o arquivo a partir do
menu para ver a imagem, gira-la, alterar suas cores, aplicar alguns
efeitos, etc. display é parte do pacote
ImageMagick, junto com diversos outros utilitários descritos
abaixo.
identify -verbose minhafigura
Mostra a
descrição de um arquivo de imagem minhafigura:
o formato, tipo, classe, tamanho em pixels, número de cores,
tamanho em bytes, etc.
convert -geometry 60x80 minhafigura.gif
minhafigurareduzida.gif
Reduz uma figura para um tamanho
de 60x80 pixels. Veja abaixo um exemplo de como fazer a conversão
entre diferentes formatos de arquivos.
animate -delay 6x5 pic1 pic2 pic3
Exibição
continua de duas ou mais figuras em seqüencia. No exemplo
acima, os arquivos de imagens são chamados pic1, pic2 and
pic3, o intervalo entre as figuras é de 0.06 segundos, e a
seqüência inteira de apresentação é
repetida de 5 em 5 segundos.
combine pic1 pic2 combined_pic.miff
Combina duas ou
mais imagens em uma outra imagem. Você pode, por exemplo,
colocar um logotipo em cada imagem.
montage -geometry 800x600+0+0 minhafigura montage.miff
Cria uma imagem empilhada a partir de minhafigura de
forma que o tamanho total seja 800x600 pixels, com uma borda de
0x0. A saída é enviada para o arquivo montage.miff.
zgv minhafigura
Exibe uma figura para visualização
em uma tela vga(não é necessário o X).
giftopnm meuarquivo.giff > meuar