Professional Documents
Culture Documents
-------------------
-------------------------------------------------------------------------------
Abstract
--------
Copyright Notice
----------------
-------------------------------------------------------------------------------
Contents
--------
1. Introdução
1.1. Antes de começar
1.2. Pré-requisitos para a utilização deste guia
1.3. Sistema Operacional
1.4. O Linux
1.4.1. Algumas Características do Linux
1.5. Distribuições do Linux
1.6. Software Livre
1.7. Processamento de Dados
1.8. O Computador
1.9. Conhecendo o Computador
1.9.1. Tipos de Gabinete
1.9.2. Painel Frontal
1.9.3. Monitor de Vídeo
1.10. Placa Mãe
1.10.1. Alguns componentes da placa mãe
1.11. Memória do Computador
1.11.1. Memória Principal
1.11.2. Memória Auxiliar
1.12. Discos
1.12.1. Discos Flexíveis
1.12.2. Disco Rígido
1.12.3. CD
1.13. Cuidados Básicos com o Computador e Disquetes
1.14. Dispositivos de Entrada e Saída
1.15. Ligando o computador
1.16. Desligando o computador
1.17. Reiniciando o computador
2. Explicações Básicas
2.1. Estrutura básica de diretórios do Sistema Linux
2.2. Curingas
3. Hardware
3.1. Placa de expansão
3.2. Nomes de dispositivos
3.3. Configuração de Hardware
3.3.1. IRQ - Requisição de Interrupção
3.3.1.1. Prioridade das Interrupções
3.3.2. DMA - Acesso Direto a Memória
3.3.2.1. Conflitos de DMA
3.3.3. I/O - Porta de Entrada/Saída
3.4. Hardwares configuráveis por jumpers, dip-switches,
jumperless e Plug-and-Play.
3.4.1. Jumpers
3.4.2. Dip-Switches
3.4.3. Jumperless (sem jumper)
3.4.4. Plug-and-Play
3.4.4.1. Entendendo o arquivo de configuração `isapnp.conf'
3.5. Listando as placas e outros hardwares em um computador
3.6. Conflitos de hardware
3.7. Barramento
3.8. Placas on-board / off-board
3.9. Hardwares específicos ou "For Windows"
3.10. Dispositivos específicos para GNU/Linux
3.11. Configurações de Dispositivos
3.11.1. Configurando uma placa de rede
3.11.2. Configurando uma placa de SOM no Linux
3.11.2.1. Reservando os recursos de hardware para sua placa de
som
3.11.2.2. Configurando uma placa de som usando o padrão OSS
3.11.3. Configurando um gravador de CD no Linux
3.11.3.1. Configurando o suporte a um gravador IDE
3.11.3.2. Configurando o suporte a um gravador SCSI
3.11.3.3. Testando o funcionamento
3.11.4. Configurando o gerenciamento de energia usando o APM
3.11.5. Configurando o gerenciamento de energia usando ACPI
3.11.6. Ativando WakeUP on Lan
5. Discos e Partições
5.1. Partições
5.2. Sistema de Arquivos
5.3. Partição EXT2 (Linux Native)
5.3.1. Criando um sistema de arquivos EXT2 em uma partição
5.3.2. Criando um sistema de arquivos EXT2 em um arquivo
5.4. Journaling
5.5. Partição EXT3 (Linux Native)
5.5.1. Criando um sistema de arquivos EXT3 em uma partição
5.5.2. Criando um sistema de arquivos EXT3 em um arquivo
5.5.3. Fazendo a conversão do sistema de arquivos EXT2 para
EXT3
5.5.4. Convertendo de EXT3 para EXT2
5.6. Sistema de arquivos reiserfs
5.6.1. Criando um sistema de arquivos reiserfs em uma partição
5.6.2. Criando um sistema de arquivos reiserfs em um arquivo
5.6.3. Nomeando uma partição de disco
5.6.4. Criando o diretório especial `lost+found'
5.6.5. dumpe2fs
5.6.6. Partição EXT2 ou Arquivo?
5.7. Partição Linux Swap (Memória Virtual)
5.7.1. Criando sistema de arquivos Swap em uma partição
5.7.2. Criando um sistema de arquivos Swap em um arquivo
5.7.3. Partição Swap ou Arquivo?
5.8. O sistema de arquivos `/proc'
5.9. LVM - Logical Volume Manager
5.9.1. Representação gráfica do LVM
5.9.2. Performance do LVM
5.9.3. Colocando LVM em seu sistema
5.9.4. Aumentando o tamanho de um volume lógico
5.9.5. Diminuindo um volume lógico
5.10. Formatando disquetes
5.10.1. Formatando disquetes para serem usados no Linux
5.10.2. Formatando disquetes compatíveis com o DOS/Windows
5.10.3. Programas de Formatação Gráficos
5.11. Pontos de Montagem
5.12. Identificação de discos e partições em sistemas Linux
5.13. Montando (acessando) uma partição de disco
5.13.1. fstab
5.14. Desmontando uma partição de disco
7. Execução de programas
7.1. Executando um comando/programa
7.2. path
7.3. Tipos de Execução de comandos/programas
7.4. Executando programas em seqüência
7.5. ps
7.6. top
7.7. Controle de execução de processos
7.7.1. Interrompendo a execução de um processo
7.7.2. Parando momentaneamente a execução de um processo
7.7.3. jobs
7.7.4. fg
7.7.5. bg
7.7.6. kill
7.7.7. killall
7.7.8. killall5
7.7.9. Sinais do Sistema
7.8. nohup
7.9. nice
7.10. fuser
7.11. tload
7.12. vmstat
7.13. pidof
7.14. pstree
7.15. Fechando um programa quando não se sabe como sair
7.16. Eliminando caracteres estranhos
15. Rede
15.1. O que é uma rede
15.2. Protocolo de Rede
15.3. Endereço IP
15.3.1. Classes de Rede IP
15.3.2. Para instalar uma máquina usando o Linux em uma rede
existente
15.3.3. Endereços reservados para uso em uma rede Privada
15.4. Interface de rede
15.4.1. A interface loopback
15.4.2. Atribuindo um endereço de rede a uma interface
(ifconfig)
15.5. Roteamento
15.5.1. Configurando uma rota no Linux
15.6. Resolvedor de nomes (DNS)
15.6.1. O que é um nome?
15.6.2. Arquivos de configuração usados na resolução de nomes
15.6.2.1. /etc/resolv.conf
15.6.2.2. /etc/host.conf
15.6.2.3. /etc/hosts
15.6.2.4. /etc/networks
15.6.3. Executando um servidor de nomes
15.7. Serviços de Rede
15.7.1. Serviços iniciados como Daemons de rede
15.7.2. Serviços iniciados através do inetd
15.7.2.1. /etc/inetd.conf
15.8. Segurança da Rede e controle de Acesso
15.8.1. /etc/ftpusers
15.8.2. /etc/securetty
15.8.3. O mecanismo de controle de acessos tcpd
15.8.3.1. /etc/hosts.allow
15.8.3.2. /etc/hosts.deny
15.8.3.3. /etc/hosts.equiv e /etc/shosts.equiv
15.8.3.4. Verificando a segurança do TCPD e a sintaxe dos
arquivos
15.8.4. Firewall
15.9. Outros arquivos de configuração relacionados com a rede
15.9.1. /etc/services
15.9.2. /etc/protocols
18. Compactadores
18.1. Extensões de arquivos compactados
18.2. gzip
18.3. tar
18.4. bzip2
21. Impressão
21.1. Portas de impressora
21.2. Imprimindo diretamente para a porta de impressora
21.3. Imprimindo via spool
21.4. Impressão em modo gráfico
21.4.1. Ghost Script
21.5. Magic Filter
21.5.1. Instalação e configuração do Magic Filter
21.5.2. Outros detalhes técnicos sobre o Magic Filter
28. Apêndice
28.1. Sobre este guia
28.2. Sobre o Autor
28.3. Referências de auxílio ao desenvolvimento do guia
28.4. Onde encontrar a versão mais nova do guia?
28.5. Colaboradores do Guia
28.6. Marcas Registradas
28.7. Futuras versões
28.8. Chave Pública PGP
-------------------------------------------------------------------------------
1. Introdução
-------------
* Particionamento de disco
gleydson (<gleydson@guiafoca.org>).
1.4. O Linux
------------
Isto quer dizer que você não precisa pagar nada para usar o Linux, e
não é crime fazer cópias para instalar em outros computadores, nós
inclusive incentivamos você a fazer isto. Ser um sistema de código
aberto pode explicar a performance, estabilidade e velocidade em que
novos recursos são adicionados ao sistema.
O código fonte aberto permite que qualquer pessoa veja como o sistema
funciona (útil para aprendizado), corrija alguma problema ou faça
alguma sugestão sobre sua melhoria, esse é um dos motivos de seu
rápido crescimento, do aumento da compatibilidade de periféricos (como
novas placas sendo suportadas logo após seu lançamento) e de sua
estabilidade.
A escolha de sua distribuição deve ser feita com muita atenção, não
adianta muita coisa perguntar em canais de IRC sobre qual é a melhor
distribuição, ser levado pelas propagandas, pelo vizinho, etc. O
melhor caminho para a escolha da distribuição, acredito eu, seria
perguntar as características de cada uma e porque essa pessoa gosta
dela ao invés de perguntar qual é a melhor, porque quem lhe responder
isto estará usando uma distribuição que se encaixa de acordo com suas
necessidade e esta mesma distribuição pode não ser a melhor para lhe
atender.
_Debian_
`http://www.debian.org/' - Distribuição desenvolvida e atualizada
através do esforço de voluntários espalhados ao redor do mundo,
seguindo o estilo de desenvolvimento `GNU/Linux'. Por este
motivo, foi adotada como a distribuição oficial do projeto _GNU_.
Possui suporte a língua Portuguesa, é a única que tem suporte a
10 arquiteturas diferentes (i386, Alpha, Sparc, PowerPc,
Macintosh, Arm, etc.) e aproximadamente 15 sub-arquiteturas. A
instalação da distribuição pode ser feita tanto através de
Disquetes, CD-ROM, Tftp, Ftp, NFS ou através da combinação de
vários destes em cada etapa de instalação.
_Conectiva_
`http://www.conectiva.com.br/' - É um sistema tipicamente para pc
e notebooks, com muitos pacotes de escritório e desenho e etc. É
necessário um conhecimento razoável do hardware que você possui,
pois ele *tenta* detectar sua placa de vídeo e rede, monitor e
teclado, mas nem sempre a escolha é acertada.
_Libranet_
`http://www.libranet.com/' - Distribuição baseada na Debian
GNU/Linux oferecendo as principais características da
distribuição Debian. São empacotadas os aplicativos mais
utilizados da Distribuição Debian em um único CD, você pode ter
um desktop completo sendo executado em pouco tempo.
_Slackware_
`http://www.slackware.com/' - Distribuição desenvolvida por
`Patrick Volkerding', desenvolvida para alcançar facilidade de
uso e estabilidade como prioridades principais. Foi a primeira
distribuição a ser lançada no mundo e costuma trazer o que há de
mais novo enquanto mantém uma certa tradição, provendo
simplicidade, facilidade de uso e com isso flexibilidade e poder.
Desde a primeira versão lançada em Abril de 1993, o Projeto
`Slackware Linux' tem buscado produzir a distribuição `Linux'
mais `UNIX-like', ou seja, mais parecida com UNIX. O Slackware
segue os padrões Linux como o Linux File System Standard, que é
um padrão de organização de diretórios e arquivos para as
distribuições.
`ftp://ftp.slackwarebrasil.org/linux/slackware/' - Ftp da
distribuição Slackware.
_SuSE_
`http://www.suse.com/' - Distribuição comercial Alemã com a
coordenação sendo feita através dos processos administrativos dos
desenvolvedores e de seu braço norte-americano. O foco da Suse é
o usuário com conhecimento técnico no Linux (programador,
administrador de rede, etc.) e não o usuário iniciante no Linux
(até a versão 6.2).
_Fedora_
`http://fedora.redhat.com/' - O Fedora Linux é a distribuição de
desenvolvimento aberto patrocinada pela RedHat e pela comunidade,
originada em 2002 e baseada em versão da antiga linha de produtos
RedHat Linux, a distribuição mais utilizada do mundo. Esta
distribuição não é suportada pela Red Hat como distribuição
oficial (ela suporta apenas a linha Red Hat Enterprise Linux),
devendo obter suporte através da comunidade ou outros meios.
`http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/iso/'
- Download da distribuição Fedora.
_Mandrake_
`http://www.mandrakelinux.com/' - Uma distribuição francesa que
se instala praticamente sozinha. Boa auto-detecção de
periféricos, inclusive web-cams.
`ftp://mandrake.mirrors.pair.com/Mandrakelinux/official/iso/move/2.0/i586/'
- Download da distribuição.
_Kurumin_
`http://guiadohardware.net/kurumin/index.php/' - Uma distribuição
baseada em Debian que roda diretamente a partir do CD, sendo
ideal para quem deseja testar uma distribuição Linux. Caso
gosto, pode ser instalada diretamente no disco rígido.
Distribuida a partir do CD, é maravilhosa e suporta boa
quantidade de hardwares disponíveis. A versão instalada possui
suporte a maioria dos winmodens mais encontrados no Brasil.
Isto faz com que muitos usuários se identifiquem como uma comunidade
separada de "usuários de Linux", distinta da comunidade de usuários
GNU. Eles usam todos os softwares GNU; de fato, eles usam quase todo
o sistema GNU; mas eles não pensam neles como usuários GNU, e
freqüentemente não pensam que a filosofia GNU está relacionada a eles.
Isto leva a outros problemas também -- mesmo dificultando cooperação
com a manutenção de programas. Normalmente quando usuários mudam um
programa GNU para fazer ele funcionar melhor em um sistema específico,
eles mandam a mudança para o mantenedor do programa; então eles
trabalham com o mantenedor explicando a mudança, perguntando por ela,
e às vezes reescrevendo-a para manter a coerência e mantenebilidade do
pacote, para ter o patch instalado.
Mas as pessoas que pensam nelas como "usuários Linux" tendem a lançar
uma versão "Linux-only" do programa GNU, e consideram o trabalho
terminado. Nós queremos cada e todos os programas GNU que funcionem
"out of the box" em sistemas baseados em Linux; mas se os usuários não
ajudarem, este objetivo se torna muito mais difícil de atingir.
Como deve o projeto GNU lidar com este problema? O que nós devemos
fazer agora para disseminar a idéia de que a liberdade para os
usuários de computador é importante?
Nós não devemos aceitar a idéia de duas comunidades separadas para GNU
e Linux. Ao contrário, devemos disseminar o entendimento de que
"sistemas Linux" são variantes do sistema GNU, e que os usuários
destes sistemas são tanto usuários GNU como usuários Linux (usuários
do kernel do Linux). Usuários que têm conhecimento disto irão
naturalmente dar uma olhada na filosofia GNU que fez estes sistemas
existirem.
1.8. O Computador
-----------------
São dispositivos que não dependem de uma fonte de energia para manter
os dados armazenados, os dados não são perdidos quando a fonte de
energia é desligada. As _Memórias Auxiliares_ são muito mais lentas
que as _Memórias Principais_ porque utilizam mecanismos mecânicos e
elétricos (motores e eletroímãs) para funcionar e fazer a
leitura/gravação dos dados.
Este tipo de memória é mais lento que a memória principal, é por este
motivo que os programas somente são carregados e executados na
_Memória Principal_.
1.12. Discos
------------
1.12.3. CD
----------
Observações:
* Salve seus trabalhos para não correr o risco de perde-los durante
a reinicialização do sistema.
* O botão reset do painel frontal do computador também reinicia o
computador, mas de uma maneira mais forte pois está ligado
diretamente aos circuitos da placa mãe e o sistema será
reiniciado imediatamente, não tendo nenhuma chance de finalizar
corretamente os programas, gravar os dados da memória no disco e
desmontar os sistemas de arquivos. O uso indevido da tecla reset
pode causar corrompimentos em seus arquivos e perdas.
Prefira o método de reinicialização explicado acima e use o botão
reset somente em último caso.
-------------------------------------------------------------------------------
2. Explicações Básicas
----------------------
`/bin'
Contém arquivos programas do sistema que são usados com
freqüência pelos usuários.
`/boot'
Contém arquivos necessários para a inicialização do sistema.
`/cdrom'
Ponto de montagem da unidade de CD-ROM.
`/dev'
Contém arquivos usados para acessar dispositivos (periféricos)
existentes no computador.
`/etc'
Arquivos de configuração de seu computador local.
`/floppy'
Ponto de montagem de unidade de disquetes
`/home'
Diretórios contendo os arquivos dos usuários.
`/lib'
Bibliotecas compartilhadas pelos programas do sistema e módulos
do kernel.
`/lost+found'
Local para a gravação de arquivos/diretórios recuperados pelo
utilitário `fsck.ext2'. Cada partição possui seu próprio
diretório `lost+found'.
`/mnt'
Ponto de montagem temporário.
`/proc'
Sistema de arquivos do kernel. Este diretório não existe em seu
disco rígido, ele é colocado lá pelo kernel e usado por diversos
programas que fazem sua leitura, verificam configurações do
sistema ou modificar o funcionamento de dispositivos do sistema
através da alteração em seus arquivos.
`/root'
Diretório do usuário `root'.
`/sbin'
Diretório de programas usados pelo superusuário (root) para
administração e controle do funcionamento do sistema.
`/tmp'
Diretório para armazenamento de arquivos temporários criados por
programas.
`/usr'
Contém maior parte de seus programas. Normalmente acessível
somente como leitura.
`/var'
Contém maior parte dos arquivos que são gravados com freqüência
pelos programas do sistema, e-mails, spool de impressora, cache,
etc.
2.2. Curingas
-------------
Não tem muito sentido usar o comando `ls' com "*" porque todos os
arquivos serão listados se o `ls' for usado sem nenhum Coringa.
-------------------------------------------------------------------------------
3. Hardware
-----------
Dispos. Dispos.
Linux DOS IRQ DMA I/O
01 Teclado - Fixa
08 Relógio em tempo real do CMOS - Não pode ser usado por nenhum
outro dispositivo.
09 Esta é uma ponte para IRQ2 e deve ser a última IRQ a ser
utilizada. No entanto pode ser usada por dispositivos.
Cada IRQ no sistema tem um número que identifica a prioridade que será
atendida pelo processador. Nos antigos sistemas XT as prioridades
eram identificadas em seqüência de acordo com as interrupções
existentes:
IRQ 0 1 2 3 4 5 6 7 8
PRI 1 2 3 4 5 6 7 8 9
IRQ 0 1 2 (9 10 11 12 13 14 15) 3 4 5 6 7 8
PRI 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
3.4.1. Jumpers
--------------
::|::
3.4.2. Dip-Switches
-------------------
3.4.4. Plug-and-Play
--------------------
########################################
# Logical device id CTL2011
#
# Descomente os valores desejados abaixo, selecionando a configuração requerida.
# Note que o valor padrão equivale ao primeiro parâmetro disponível (Minimum)
# "(CONFIGURE" inicia um bloco de configuração e finaliza com "(ACT Y)"
# Para ativar as configurações selecionadas, basta descomentar a linha
# "#(ACT Y)" no final do bloco de configuração.
#######################################
# Logical device id CTL7001
#
# Descomente os valores desejados abaixo, selecionando a configuração requerida.
# Note que o valor padrão equivale ao primeiro parâmetro disponível (Minimum)
# "(CONFIGURE" inicia um bloco de configuração e finaliza com "(ACT Y)"
# Para ativar as configurações selecionadas, basta descomentar a linha
# "#(ACT Y)" no final do bloco de configuração.
3.7. Barramento
---------------
Hoje em dia por causa do preço da placa mãe, é comum encontrar pessoas
que verificam somente o preço e sequer procuram saber ou conhecem a
qualidade das placas embutidas na placa mãe. Pior ainda é encontrar
vendedores despreparados que sequer sabem explicar o porque que uma
placa de som Sound Blaster 64 é mais cara que uma de modelo
genérico...
Se você tiver que comprar uma máquina com Windows instalado, leia
cuidadosamente a licença que acompanha o Windows; você pode rejeitar a
licença e obter um desconto de seu vendedor.
Deixe seu vendedor (se conhecer) saber que o que está comprando é para
um sistema `GNU/Linux'. Desta forma isto servirá de experiência para
que ele poderá recomendar o mesmo dispositivo a outras pessoas que
procuram bons dispositivos para sistemas `GNU/Linux'. Apóie
vendedores de hardwares amigos do `GNU/Linux'.
O padrão OSS é o presente por padrão desde que o suporte a som foi
incluído no kernel. Para configurar uma placa de som para usar este
sistema de som, primeiro compile seu kernel com o suporte ao módulo de
sua placa de som. Caso seja uma placa ISA, você provavelmente terá
que habilitar a seção "Open Sound System" para ver as opções
disponíveis (entre elas, a Sound Blaster e compatíveis). Uma olhada
na ajuda de cada módulo deve ajuda-lo a identificar quais placas cada
opção do kernel suporta.
Para configurar seu gravador de CD IDE para ser usado no `Linux', siga
os seguintes passos:
1. Tenha certeza que compilou o suporte as seguintes características
no kernel:
Em "ATA/IDE/MFM/RLL support" marque as opções:
* Include IDE/ATAPI CDROM support
* SCSI emulation support
Caso tenha um autentico gravador SCSI, não será preciso fazer qualquer
configuração de emulação, a unidade estará pronta para ser usada,
desde que seu suporte esteja no kernel. As seguintes opções do kernel
são necessárias para funcionamento de gravadores SCSI:
scsibus0:
0,0,0 0) 'CREATIVE' 'CD-RW RWXXXX ' '1.00' Removable CD-ROM
0,1,0 1) *
0,2,0 2) *
Caso não saiba quais módulos ACPI seu sistema aceita, marque o suporte
a todos e carregue-os. Após isto, entre no diretório `/proc/acpi' e
de um `ls' entrando nos diretórios e vendo se existem arquivos dentro
deles. Remova o módulo correspondente daqueles que não tiver
conteúdo.
Algumas das situações onde o WOL não funciona é quando sua rede é
controlada por Switches (devido a natureza de funcionamento deste
equipamentos) ou caso esteja atrás de um roteador que não faz proxy
arp.
-------------------------------------------------------------------------------
A sua aventura começa aqui, você deve ser uma pessoa cadastrada
no sistema (ter uma conta) para que poder entrar. No `login'
você digita seu nome (por exemplo, gleydson) e pressiona Enter.
Agora será lhe pedida a senha, repare que a senha não é mostrada
enquanto é digitada, isto serve de segurança e para enganar
pessoas que estão próximas de você "tocando" algumas teclas a
mais enquanto digita a senha e fazendo-as pensar que você usa uma
grande senha ;-) (com os asteriscos aparecendo isto não seria
possível).
DOS/Windows Linux
------------- ---------------
A: /dev/fd0
B: /dev/fd1
C: /dev/hda1
LPT1 /dev/lp0
LPT2 /dev/lp1
LPT3 /dev/lp2
COM1 /dev/ttyS0
COM2 /dev/ttyS1
COM3 /dev/ttyS2
COM4 /dev/ttyS3
Esta seção contém programas equivalentes para quem está vindo do `DOS'
e `Windows' e não sabe o que usar no `GNU/Linux'. Esta seção também
tem por objetivo permitir ao usuário que ainda não usa `GNU/Linux'
decidir se a passagem vale a pena vendo se o sistema tem os programas
que precisa.
-------------------------------------------------------------------------------
5. Discos e Partições
---------------------
5.1. Partições
--------------
São divisões existentes no disco rígido que marcam onde começa onde
termina um sistema de arquivos. Por causa destas divisões, nós
podemos usar mais de um sistema operacional no mesmo computador (como
o `GNU/Linux', `Windows' e `DOS'), ou dividir o disco rígido em uma ou
mais partes para ser usado por um único sistema operacional.
Lembre-se:
* Quando se apaga uma partição, você estará apagando TODOS os
arquivos existentes nela!
* A partição do tipo _Linux Native_ (Tipo 83) é a usada para
armazenar arquivos no `GNU/Linux'. Para detalhes veja Section
5.3, `Partição EXT2 (Linux Native)'.
* A partição do tipo _Linux Swap_ (Tipo 82) é usada como memória
virtual. Para detalhes veja Section 5.7, `Partição Linux Swap
(Memória Virtual)'.
* Em sistemas novos, é comum encontrar o `Windows' instalado em uma
partição que consome TODO o espaço do disco rígido. Uma solução
para instalar o `GNU/Linux' é apagar a partição `Windows' e criar
três com tamanhos menores (uma para o `Windows', uma para o
`GNU/Linux' e outra para a _Memória Virtual do Linux (SWAP)_. Ou
criar apenas 2 se você não quiser mais saber mais do `Windows'
;-)
A outra é usar o programa `FIPS' para diminuir o tamanho da
partição `Windows' (usando o espaço livre existente) e criar as 2
partições requeridas pelo `GNU/Linux' no espaço restante, sem
apagar o `Windows'. Esta técnica também é chamada de
`Reparticionamento não destrutivo' (e o outro obviamente
`Reparticionamento destrutivo'). Caso decida usar o `FIPS',
pegue a versão 2.0 ou superior do programa, pois funciona
nativamente com sistema de arquivos `FAT32' (você o encontra no
site de sua distribuição `GNU/Linux').
Você deve escolher este tipo de partição para armazenar seus arquivos,
é o padrão atualmente, é o mais rápido, não se fragmenta tão
facilmente pois permite a localização do melhor lugar onde o arquivo
se encaixa no disco, etc. Isto é útil para grandes ambientes
multiusuário onde várias pessoas gravam/apagam arquivos o tempo todo.
Após particionar seu disco rígido e criar uma (ou várias) partições
`EXT2', use o comando:
`mkfs.ext2 /dev/hda?'
Pronto! o que você gravar para `/mnt' será gravado dentro do arquivo
`/tmp/arquivo-ext2'. Como foi criado um sistema de arquivos `EXT2' em
`arquivo-ext2', você poderá usar todos os recursos da partição `EXT2'
normal, como permissões de arquivos e diretórios, links simbólicos,
etc.
* Você poderá usar apenas `-o loop' com o comando `mount', assim o
kernel gerenciará automaticamente os dispositivos de `loop'.
* Caso faça isto manualmente, lembre-se de usar dispositivos
`/dev/loop?' diferentes para cada arquivo que montar no sistema.
Pois cada um faz referência a um único arquivo.
5.4. Journaling
---------------
mkfs.ext3 /dev/hda1
ou
mkfs.ext2 -j /dev/hda1
Sua partição agora está montada como _ext3_, para conferir digite: `df
-T'.
_OBS:_ Caso a partição convertida para _ext3_ seja a raíz (`/'), tenha
certeza de incluir o suporte a _ext3_ embutido no kernel, caso
contrário, a partição será montada como _ext2_.
Para criar uma partição _reiserfs_, primeiro crie uma partição _ext2_
normal, e então use o comando:
`mkreiserfs /dev/hda?'
* Você poderá usar apenas `-o loop' com o comando `mount', assim o
kernel gerenciará automaticamente os dispositivos de `loop'.
* Caso faça isto manualmente, lembre-se de usar dispositivos
`/dev/loop?' diferentes para cada arquivo que montar no sistema.
Pois cada um faz referência a um único arquivo.
Onde:
_dispositivo_
Partição que terá o nome modificado
_nome_
Nome que será dado a partição (máximo de 16 caracteres). Caso
seja usado um nome de volume com espaços, ele deverá ser colocado
entre "aspas".
Se não for especificado um nome, o nome atual da partição será
mostrado. O nome da partição também pode ser visualizado através do
comando `dumpe2fs' (veja Section 5.6.5, `dumpe2fs').
`mklost+found'
5.6.5. dumpe2fs
---------------
Onde:
_partição_
Identificação da partição que será usada.
_opções_
-b
Mostra somente os blocos marcado como defeituosos no sistema de
arquivos especificado.
Este comando lista diversas opções úteis do sistema de arquivos como o
tipo do sistema de arquivos, características especiais, número de
inodos, blocos livres, tamanho do bloco, intervalo entre checagens
automáticas, etc.
`mkswap /dev/hda?'
A opção `-c' também pode ser usada com o `mkswap' para checar se
existem agrupamentos danificados na partição.
Observações:
Se utilizar mais que 1 partição `Swap', pode ser útil o uso da opção
`-p NUM' que especifica a prioridade em que a partição Swap será
usada. Pode ser usado um valor de prioridade entre 0 e 32767,
partições com número maior serão usadas primeiro, sendo que na
montagem automática através de "mount -a" podem ser designados números
negativos.
Procure usar o número maior para partições mais rápidas (elas serão
acessadas primeiro) e números maiores para partições mais lentas.
Caso precise desativar a partição Swap, use o comando: `swapoff
/dev/hda?'.
Também é possível criar um arquivo que poderá ser usado como memória
virtual. Veja passo a passo como fazer isso:
Observações:
* Podem ser usadas partições de troca e arquivos de troca juntos,
sem problemas.
* Caso seu sistema já tenha uma partição de `Swap', é recomendável
deixar o acesso ao arquivo `Swap' com uma prioridade menor
(usando a opção -p NUM com o comando `swapon').
Nele você tem todo o controle do que o seus sistema operacional está
fazendo, a configuração dos hardwares, interrupções, sistema de
arquivos montado, execução de programas, memória do sistema, rede,
etc.
_dispositivo_
Unidade de disquete que será formatada. Normalmente `/dev/fd0'
ou `/dev/fd1' especificando respectivamente a primeira e segunda
unidade de disquetes.
_opções_
-v [num]
Especifica o nível de detalhes que serão exibidos durante a
formatação do disquete. O nível 1 especifica um ponto mostrado
na tela para cada trilha formatada. Veja a página de manual do
`superformat' para detalhes.
-superverify
Verifica primeiro se a trilha pode ser lida antes de formata-la.
Este é o padrão.
--dosverify, -B
Verifica o disquete usando o utilitário `mbadblocks'. Usando
esta opção, as trilhas defeituosas encontradas serão
automaticamente marcadas para não serem utilizadas.
--verify_later, -V
Verifica todo o disquete no final da formatação.
--noverify, -f
Não faz verificação de leitura.
-b [trilha]
Especifica a trilha inicial que será formatada. O padrão é 0.
-e [trilha]
Especifica a trilha final que será formatada.
Na primeira vez que o `superformat' é executado, ele verifica a
velocidade de rotação da unidade e a comunicação com a placa
controladora, pois os discos de alta densidade são sensíveis a rotação
da unidade. Após o teste inicial ele recomendará adicionar uma linha
no arquivo `/etc/driveprm' como forma de evitar que este teste seja
sempre executado. OBS: Esta linha é calculada de acordo com a rotação
de usa unidade de disquetes, transferência de dados e comunicação com
a placa controladora de disquete. Desta forma ela varia de computador
para computador Note que não é necessário montar a unidade de
disquetes para formata-la.
/dev/hda1
| | ||
| | ||_Número que identifica o número da partição no disco rígido.
| ||
| | |_Letra que identifica o disco rígido (a=primeiro, b=segundo, etc...).
| |
| |_Sigla que identifica o tipo do disco rígido (hd=ide, sd=SCSI, xt=XT).
|
|_Diretório onde são armazenados os dispositivos existentes no sistema.
Onde:
_dispositivo_
Identificação da unidade de disco/partição que deseja acessar
(como `/dev/hda1' (disco rígido) ou `/dev/fd0' (primeira unidade
de disquetes).
_ponto de montagem_
Diretório de onde a _unidade de disco/partição_ será acessado. O
diretório deve estar vazio para montagem de um sistema de
arquivo. Normalmente é usado o diretório `/mnt' para
armazenamento de pontos de montagem temporários.
-t [tipo]
Tipo do sistema de arquivos usado pelo _dispositivo_. São
aceitos os sistemas de arquivos:
* _ext2_ - Para partições `GNU/Linux' usando o Extended File
System versão 2 (a mais comum).
* _ext3_ - Para partições `GNU/Linux' usando o Extended File
System versão 3, com suporte a journaling.
* _reiserfs_ - Para partições reiserfs, com suporte a
journaling.
* _vfat_ - Para partições `Windows 95' que utilizam nomes
extensos de arquivos e diretórios.
* _msdos_ - Para partições `DOS' normais.
* _iso9660_ - Para montar unidades de `CD-ROM'. É o padrão.
* _umsdos_ - Para montar uma partição `DOS' com recursos de
partições `EXT2', como permissões de acesso, links, etc.
Para mais detalhes sobre opções usadas com cada sistema de
arquivos, veja a página de manual _mount_.
-r
Caso for especificada, monta a partição somente para leitura.
-w
Caso for especificada, monta a partição como leitura/gravação. É
o padrão.
Existem muitas outras opções que podem ser usadas com o comando
`mount', mas aqui procurei somente mostrar o básico para "montar" seus
discos e partições no `GNU/Linux' (para mais opções, veja a página de
manual do `mount'). Caso você digitar `mount' sem parâmetros, serão
mostrados os sistemas de arquivos atualmente montados no sistema.
Esta mesma listagem pode ser vista em `/etc/mtab'. A remontagem de
partição também é muito útil, especialmente após reparos nos sistema
de arquivos do disco rígido. Veja alguns exemplos de remontagem
abaixo.
Exemplo de Montagem:
* Montar uma partição Windows (vfat) de `/dev/hda1' em `/mnt'
somente para leitura: `mount /dev/hda1 /mnt -r -t vfat'
* Montar a primeira unidade de disquetes `/dev/fd0' em `/floppy':
`mount /dev/fd0 /floppy -t vfat'
* Montar uma partição DOS localizada em um segundo disco rígido
`/dev/hdb1' em `/mnt': `mount /dev/hdb1 /mnt -t msdos'.
* Remontar a partição raíz como somente leitura: `mount -o
remount,rw /'
* Remontar a partição raíz como _leitura/gravação_ (a opção -n é
usada porque o `mount' não conseguirá atualizar o arquivo
`/etc/mtab' devido ao sistema de arquivos `/' estar montado como
somente leitura atualmente: `mount -n -o remount,rw /'.
5.13.1. fstab
-------------
Onde:
Sistema de Arquivos
Partição que deseja montar.
Ponto de montagem
Diretório do `GNU/Linux' onde a partição montada será acessada.
Tipo
Tipo de sistema de arquivos usado na partição que será montada.
Para partições `GNU/Linux' use _ext2_, para partições `DOS' (sem
nomes extensos de arquivos) use _msdos_, para partições `Win 95'
(com suporte a nomes extensos de arquivos) use _vfat_, para
unidades de CD-ROM use _iso9660_.
Opções
Especifica as opções usadas com o sistema de arquivos. Abaixo,
algumas opções de montagem para ext2/3 (a lista completa pode ser
encontrada na página de manual do `mount'):
* `defaults' - Utiliza valores padrões de montagem.
* `noauto' - Não monta os sistemas de arquivos durante a
inicialização (útil para CD-ROMS e disquetes).
* `ro' - Monta como somente leitura.
* `user' - Permite que usuários montem o sistema de arquivos
(não recomendado por motivos de segurança).
* `sync' é recomendado para uso com discos removíveis
(disquetes, zip drives, etc) para que os dados sejam
gravados imediatamente na unidade (caso não seja usada, você
deve usar o comando Section 10.22, `sync' antes de retirar o
disquete da unidade.
dump
Especifica a frequência de backup feita com o programa `dump' no
sistema de arquivos. 0 desativa o backup.
Ordem
Define a ordem que os sistemas de arquivos serão verificados na
inicialização do sistema. Se usar 0, o sistema de arquivos não é
verificado. O sistema de arquivos raíz que deverá ser verificado
primeiro é o raíz "/" (a não ser que você tenha um sistema de
arquivos de outro tipo que não é montado dentro do diretório raíz
e possui seu suporte embutido no kernel) .
Após configurar o `/etc/fstab', basta digitar o comando `mount
/dev/hdg' ou `mount /cdrom' para que a unidade de CD-ROM seja montada.
Você deve ter notado que não é necessário especificar o sistema de
arquivos da partição pois o `mount' verificará se ele já existe no
`/etc/fstab' e caso existir, usará as opções especificadas neste
arquivo. Para maiores detalhes veja as páginas de manual `fstab' e
`mount'.
Você pode tanto usar `umount /dev/hda1' como `umount /mnt' para
desmontar um sistema de arquivos `/dev/hda1' montado em `/mnt'.
-------------------------------------------------------------------------------
6.1. LILO
---------
boot=/dev/hda1
compact
install=text
map=/boot/map
vga=normal
delay=20
lba32
image=/vmlinuz
root=/dev/hda1
label=Linux
read-only
Para mostrar o aviso de `boot:', você deverá ligar as teclas Caps Lock
ou Scrool lock na partida ou pressionar a tecla `Shift' durante os
dois segundos de pausa. Outro método é incluir a opção `prompt' na
seção _global_ para que o aviso de `boot:' seja mostrado
automaticamente após carregar o `Lilo'.
image=/vmlinuz
root=/dev/hda1
label=linux
read-only
other=/dev/hda2
table=/dev/hda
label=dos
Observações:
* Caso o gerenciador de partida seja instalado no MBR do disco
rígido (boot=/dev/hda), o setor de boot do antigo sistema
operacional será substituído, retire uma cópia do setor de boot
para um disquete usando o comando `dd if=/dev/hda of=/floppy/mbr
bs=512 count=1' no `GNU/Linux' para salvar o setor de boot em um
disquete e `dd if=/floppy/mbr of=/dev/hda bs=446 count=1' para
restaura-lo. No `DOS' você pode usar o comando `fdisk /mbr' para
criar um novo Master Boot Record.
* Após qualquer modificação no arquivo `/etc/lilo.conf' , o comando
`lilo' deverá ser novamente executado para atualizar o setor de
partida do disco rígido. Isto também é válido caso o kernel seja
atualizado ou a partição que contém a imagem do kernel
desfragmentada.
* A limitação de 1024 cilindros do `Lilo' não existe mais a partir
da versão 21.4.3 (recomendada, por conter muitas correções) e
superiores.
* A reinstalação, formatação de sistemas `DOS' e `Windows' pode
substituir o setor de partida do HD e assim o gerenciador de
partida, tornando impossível a inicialização do `GNU/Linux'.
Antes de reinstalar o `DOS' ou `Windows', verifique se possui um
disquete de partida do `GNU/Linux'.
Para gerar um novo boot loader, coloque o disquete na unidade e
após o aviso `boot:' ser mostrado, digite `linux root=/dev/hda1'
(no lugar de `/dev/hda1' você coloca a partição raiz do
`GNU/Linux'), o sistema iniciará. Dentro do `GNU/Linux', digite
o comando `lilo' para gerar um novo setor de partida.
Agora reinicie o computador, tudo voltará ao normal.
`Global'
As opções por imagem iniciam com uma das seguintes opções: `image=',
`other=' ou `range='. Opções usadas por cada imagem:
6.2. GRUB
---------
No Linux No GRUB
/dev/hda (hd0)
/dev/hda1 (hd0,0)
/dev/hda2 (hd0,1)
/dev/hdb (hd1)
/dev/hdb1 (hd1,0)
/dev/hdb2 (hd1,1)
/dev/fd0 (fd0)
Para saber como o Linux trabalha com partições veja Section 5.12,
`Identificação de discos e partições em sistemas Linux'.
6.2.2.1. No MBR
---------------
# /sbin/grub-install /dev/hda
# cp /usr/share/doc/grub/examples/menu.lst /boot/grub
# mke2fs /dev/fd0
# mount /dev/fd0 /floppy -t ext2
# mkdir /floppy/grub
# cp /usr/lib/grub/i386-pc/stage[12] /floppy/grub
# cp /usr/share/doc/grub/examples/menu.lst /floppy/grub
# umount /floppy
# /sbin/grub
Neste momento o disquete está pronto. Note que o `menu.lst' que foi
copiado para ele é um arquivo de exemplo, sendo necessário que você o
configure de acordo com suas necessidades.
Parâmetros Globais
* `timeout' = Define um tempo (em segundos) de espera. Se
nenhuma tecla for pressionada, carrega a imagem padrão.
* `default' = Define qual será a opção padrão que deve ser
automaticamente selecionada quando nenhuma outra for
especificada em um tempo definido por timeout.
* `fallback' = Caso ocorra algum erro inesperado e a opção
padrão não possa ser carregada, este parâmetro define qual a
outra opção deve ser utilizada.
* `color' = Permite que você escolha as cores usadas no menu
de boot.
* `password' = Permite que você especifique uma senha. Está
será solicitada sempre que houver necessidade de realizar
uma função que não seja carregar as imagens disponíveis,
como por exemplo acessar a linha de comandos do GRUB. Você
pode utilizar também o parâmetro password para esconder um
arquivo que contenha outras configurações, como um menu.lst
secreto. O arquivo pode ter um nome qualquer.
Ex.: password = senha (hd0,0)/boot/grub/secret.conf
Você pode ter várias entradas do parâmetro "password" em um
mesmo arquivo sendo que uma delas é usada para bloquear o
acesso as imagens/linha de comandos e as outras usadas para
carregar arquivos de opções do GRUB. Quando você digitar
`p' para entrar com a senha, você pode digitar a senha que
protege as imagens/linha de comandos ou a que é utilizada
para carregar os arquivos de opções.
* `hiddenmenu' = Está opção faz com que o menu de opções não
seja mostrado e de boot na imagem especificada por "default"
depois de expirado o tempo definido em `timeout'. O usuário
pode requisitar o menu com as opções pressionando a tecla
<ESC> antes que o tempo definido em timeout expire.
title Dos
hide (hd0,0)
unhide (hd0,1)
rootnoverify (hd0,1)
chainloader +1
makeactive
* `map' = Alguns sistemas não permitem ser inicializados
quando não estão no primeiro disco (Dos, Win 9x, etc.).
Para resolver esta e outras situações o `GRUB' tem um
comando que permite enganar tal sistema mapeando as unidades
de disco do modo como lhe for mais conveniente.
Imagine que você tenha o primeiro disco (hd0) com o
GNU/Linux instalado e em um outro disco (hd1) com o
Windows/Dos instalado. O Windows/Dos não permitem serem
inicializados desta forma e como solução você poderia usar a
seguinte entrada no arquivo de configurações do GRUB:
title Windows
unhide (hd1,0)
rootnoverify (hd1,0)
chainloader +1
map (hd1) (hd0)
makeactive
Isso faz com que o disco (hd1), onde esta o Windows/Dos,
seja apresentado a este sistema como (hd0) "enganado" o
mesmo e possibilitando o boot.
# Muda as cores.
title Mudar as cores
color light-green/brown blink-red/blue
Exemplo: `append="mem=32m"'
6.4. syslinux
-------------
-------------------------------------------------------------------------------
7. Execução de programas
------------------------
7.2. path
---------
7.5. ps
-------
`ps [_opções_]'
Onde:
_opções_
a
Mostra os processos criados por você e de outros usuários do
sistema.
x
Mostra processos que não são controlados pelo terminal.
u
Mostra o nome de usuário que iniciou o processo e hora em que o
processo foi iniciado.
m
Mostra a memória ocupada por cada processo em execução.
f
Mostra a árvore de execução de comandos (comandos que são
chamados por outros comandos).
e
Mostra variáveis de ambiente no momento da inicialização do
processo.
w
Mostra a continuação da linha atual na próxima linha ao invés de
cortar o restante que não couber na tela.
--sort:_[coluna]_
Organiza a saída do comando `ps' de acordo com a coluna
escolhida. Você pode usar as colunas `pid, utime, ppid, rss,
size, user, priority'.
Pode ser especificada uma listagem em ordem inversa especificando
`--sort:[-coluna]'. Para mais detalhes e outras opções, veja a
página de manual.
As opções acima podem ser combinadas para resultar em uma listagem
mais completa. Você também pode usar pipes "|" para `filtrar' a saída
do comando `ps'. Para detalhes, veja Section 14.5, `| (pipe)'.
7.6. top
--------
`top [_opções_]'
Onde:
-d [tempo]
Atualiza a tela após o [tempo] (em segundos).
-s
Diz ao `top' para ser executado em modo seguro.
-i
Inicia o `top' ignorando o tempo de processos zumbis.
-c
Mostra a linha de comando ao invés do nome do programa.
A ajuda sobre o `top' pode ser obtida dentro do programa pressionando
a tecla `h' ou pela página de manual (`man top').
7.7.3. jobs
-----------
`jobs'
7.7.4. fg
---------
`fg [_número_]'
7.7.5. bg
---------
`bg [_número_]'
7.7.6. kill
-----------
Onde:
_número_
É o número de identificação do processo obtido com o comando
Section 7.5, `ps'. Também pode ser o número após o sinal de `%'
obtido pelo comando `jobs' para matar uma tarefa interrompida.
Veja Section 7.7.3, `jobs'.
_sinal_
Sinal que será enviado ao processo. Se omitido usa `-15' como
padrão.
_opções_
-9
Envia um sinal de destruição ao processo ou programa. Ele é
terminado imediatamente sem chances de salvar os dados ou apagar
os arquivos temporários criados por ele.
Você precisa ser o dono do processo ou o usuário root para termina-lo
ou destruí-lo. Você pode verificar se o processo foi finalizado
através do comando `ps'. Os tipos de sinais aceitos pelo `GNU/Linux'
são explicados em detalhes em Section 7.7.9, `Sinais do Sistema'.
7.7.7. killall
--------------
Onde:
_processo_
Nome do processo que deseja finalizar
_sinal_
Sinal que será enviado ao processo (pode ser obtido usando a
opção `-i').
_opções_
-i
Pede confirmação sobre a finalização do processo.
-l
Lista o nome de todos os sinais conhecidos.
-q
Ignora a existência do processo.
-v
Retorna se o sinal foi enviado com sucesso ao processo.
-w
Finaliza a execução do `killall' somente após finalizar todos os
processos.
Os tipos de sinais aceitos pelo `GNU/Linux' são explicados em detalhes
na Section 7.7.9, `Sinais do Sistema'.
7.7.8. killall5
---------------
`killall5 [_sinal_]'
O "-" significa que o sinal não está presente. Onde três valores são
listados, o primeiro é normalmente válido para o Alpha e Sparc, o do
meio para i386, PowerPc e sh, o último para o Mips. O sinal 29 é
SIGINFO/SIGPWR em um Alpha mas SIGLOST em um Sparc.
7.8. nohup
----------
7.9. nice
---------
Onde:
_comando/programa_
Comando/programa que terá sua prioridade ajustada.
_opções_
-n [numero]
Configura a prioridade que o programa será executado. Se um
programa for executado com maior prioridade, ele usará mais
recursos do sistema para seu processamento, caso tenha uma
prioridade baixa, ele permitirá que outros programas tenham
preferência. A prioridade de execução de um _programa/comando_
pode ser ajustada de -19 (a mais alta) até 19 (a mais baixa).
7.10. fuser
-----------
Onde:
_nome_
Especifica um nome de processo, diretório, arquivo, etc.
_opções_
-k
Finaliza os processos acessando o arquivo especificado. O sinal
desejado deve ser especificado com a opção `-signal [num]', ou o
sinal -9 será enviado como padrão. Não é possível matar o
próprio processo `fuser'.
-i
Pergunta antes de destruir um processo. Será ignorada caso a
opção `-k' não seja especificada.
-l
Lista todos os nomes de sinais conhecidos.
-m [nome]
Especifica um arquivo em um sistema de arquivos montado ou
dispositivo de bloco que está montado. Todos os processos
acessando aquele sistema de arquivos serão listados. Diretórios
são mostrados seguidos de uma `/'
-signal [número]
Usa o sinal especificado ao invés de -9 (SIGKILL) quando
finalizar processos.
-u
Acrescenta o nome do dono de cada processo ao PID.
-v
Os processos são mostrados em um estilo idêntico ao `ps'.
7.11. tload
-----------
`tload [_opções_]'
Onde:
_opções_
-s [número]
Mostra uma escala vertical com espaçamento especificado por
[número]. É recomendável o uso de números entre 1 e 10 para
melhor visualização da escala.
-d [número]
Especifica o intervalo entre atualizações, em segundos.
7.12. vmstat
------------
Onde:
_intervalo_
Número especificado em segundos entre atualizações.
_contagem_
Número de vezes que será mostrado.
Se não for especificado nenhum parâmetro, o `vmstat' mostra o status
da memória virtual e volta imediatamente para a linha de comando. A
descrição dos campos do `vmstat' são as seguintes:
_Processos_
r
Número de processos aguardando execução.
b
Número de processos em espera não interrompíveis.
w
Número de processos extraídos do arquivo de troca ou caso
contrário em execução.
_Memória_
swpd
A quantidade de memória virtual usada em Kb.
free
Quantidade de memória livre em Kb.
buff
Quantidade de memória usada como buffer em Kb.
_Memória Virtual_
si
Quantidade de memória gravada para o disco Kb/s.
so
Quantidade de memória retirada do disco em Kb/s.
_Entrada/Saída_
bi
Blocos enviados para um dispositivo de bloco (medido em blocos
por segundo).
bo
Blocos recebidos de um dispositivo de bloco (em blocos por
segundo).
_Sistema_
in
Número de interrupções por segundo, incluindo o clock.
cs
Número de mudanças de contexto por segundo.
_Porcentagem do total de tempo da CPU_
us
Tempo do usuário
sy
Tempo do sistema
id
Tempo ocioso
7.13. pidof
-----------
Onde:
_nome_
Nome do processo que seja obter o número PID
_opções_
-s
Retorna somente o primeiro PID encontrado.
-x
Retorna o PID do do shell que está executando o script
-o [PID]
Ignora o processo com aquele PID. O PID especial %PPID pode ser
usado para nomear o processo pai do programa `pidof', em outras
palavras
7.14. pstree
------------
Onde:
_pid_
Número do processo que terá sua árvore listada. Se omitido,
lista todos os processos.
_opções_
-a
Mostra opções passadas na linha de comando.
-c
Mostra toda a estrutura (inclusive sub-processos do processo
pai).
-G
Usa caracteres gráficos no desenho da árvore de processos.
-h
Destaca o processo atual e seus antecessores.
-H [pid]
Destaca o processo especificado.
-l
Não faz quebra de linha
-n
Classifica pelo número PID ao invés do nome.
-p
Mostra o número PID entre parênteses após o nome do processo.
-u
Mostra também o dono do processo.
-U
Usa o conjunto de caracteres Unicode para o desenho da árvore.
Isto pode também ocorrer com programadores que estão construindo seus
programas e por algum motivo não implementam uma opção de saída, ou
ela não funciona!
Caso isto não der certo, vamos partir para a força! ;-)
-------------------------------------------------------------------------------
8.1. ls
-------
onde:
_caminho/arquivo_
Diretório/arquivo que será listado.
_caminho1/arquivo1_
Outro Diretório/arquivo que será listado. Podem ser feitas
várias listagens de uma só vez.
_opções_
-a, --all
Lista todos os arquivos (inclusive os ocultos) de um diretório.
-A, --almost-all
Lista todos os arquivos (inclusive os ocultos) de um diretório,
exceto o diretório atual e o de nível anterior.
-B, --ignore-backups
Não lista arquivos que terminam com ~ (Backup).
--color=PARAM
Mostra os arquivos em cores diferentes, conforme o tipo de
arquivo. PARAM pode ser:
* _never_ - Nunca lista em cores (mesma coisa de não usar o
parâmetro --color).
* _always_ - Sempre lista em cores conforme o tipo de arquivo.
* _auto_ - Somente colore a listagem se estiver em um
terminal.
-d, --directory
Lista os nomes dos diretórios ao invés do conteúdo.
-f
Não classifica a listagem.
-F
Insere um caracter após arquivos executáveis ('*'), diretórios
('/'), soquete ('='), link simbólico ('@') e pipe ('|'). Seu uso
é útil para identificar de forma fácil tipos de arquivos nas
listagens de diretórios.
-G, --no-group
Oculta a coluna de grupo do arquivo.
-h, --human-readable
Mostra o tamanho dos arquivos em Kbytes, Mbytes, Gbytes.
-H
Faz o mesmo que `-h', mas usa unidades de 1000 ao invés de 1024
para especificar Kbytes, Mbytes, Gbytes.
-l
Usa o formato longo para listagem de arquivos. Lista as
permissões, data de modificação, donos, grupos, etc.
-n
Usa a identificação de usuário e grupo numérica ao invés dos
nomes.
-L, --dereference
Lista o arquivo original e não o link referente ao arquivo.
-o
Usa a listagem longa sem os donos dos arquivos (mesma coisa que
-lG).
-p
Mesma coisa que -F, mas não inclui o símbolo '*' em arquivos
executáveis. Esta opção é típica de sistemas `Linux'.
-R
Lista diretórios e sub-diretórios recursivamente.
--full-time
Lista data e hora completa.
Classificação da listagem
A listagem pode ser classificada usando-se as seguintes opções:
-f
Não classifica, e usa -au para listar os arquivos.
-r
Inverte a ordem de classificação.
-c
Classifica pela data de alteração.
-X
Classifica pela extensão.
-U
Não classifica, lista os arquivos na ordem do diretório.
Uma listagem feita com o comando `ls -la' normalmente é mostrada da
seguinte maneira:
-rwxr-xr-- 1 gleydson user 8192 nov 4 16:00 teste
8.2. cd
-------
`cd [_diretório_]'
onde:
Exemplos:
* Usando `cd' sem parâmetros ou `cd ~', você retornará ao seu
diretório de usuário (diretório home).
* `cd /', retornará ao diretório raíz.
* `cd -', retornará ao diretório anteriormente acessado.
* `cd ..', sobe um diretório.
* `cd ../[_diretório_]', sobe um diretório e entra imediatamente no
próximo (por exemplo, quando você está em `/usr/sbin', você
digita `cd ../bin', o comando `cd' retorna um diretório (`/usr')
e entra imediatamente no diretório `bin' (`/usr/bin').
8.3. pwd
--------
8.4. mkdir
----------
8.5. rmdir
----------
onde:
_caminho_
Caminho do diretório que será removido.
_diretório_
Nome do diretório que será removido.
É necessário que esteja um nível acima do diretório(s) que será(ão)
removido(s). Para remover diretórios que contenham arquivos, use o
comando `rm' com a opção `-r' (para maiores detalhes, veja Section
9.3, `rm').
-------------------------------------------------------------------------------
9.1. cat
--------
_diretório/arquivo_
Localização do arquivo que deseja visualizar o conteúdo.
_opções_
-n, --number
Mostra o número das linhas enquanto o conteúdo do arquivo é
mostrado.
-s, --squeeze-blank
Não mostra mais que uma linha em branco entre um parágrafo e
outro.
-
Lê a entrada padrão.
O comando `cat' trabalha com arquivos texto. Use o comando `zcat'
para ver diretamente arquivos compactados com `gzip'.
9.2. tac
--------
_diretório/arquivo_
Localização do arquivo que deseja visualizar o conteúdo
_opções_
-s [string]
Usa o [string] como separador de registros.
-
Lê a entrada padrão.
9.3. rm
-------
`rm [_opções_][_caminho_][_arquivo/diretório_]
[_caminho1_][_arquivo1/diretório1_]'
onde:
_caminho_
Localização do arquivo que deseja apagar. Se omitido, assume que
o arquivo esteja no diretório atual.
_arquivo/diretório_
Arquivo que será apagado.
_opções_
-i, --interactive
Pergunta antes de remover, esta é ativada por padrão.
-v, --verbose
Mostra os arquivos na medida que são removidos.
-r, --recursive
Usado para remover arquivos em sub-diretórios. Esta opção também
pode ser usada para remover sub-diretórios.
-f, --force
Remove os arquivos sem perguntar.
-- arquivo
Remove arquivos/diretórios que contém caracteres especiais. O
separador "--" funciona com todos os comandos do shell e permite
que os caracteres especiais como "*", "?", "-", etc. sejam
interpretados como caracteres comuns.
Use com atenção o comando `rm', uma vez que os arquivos e diretórios
forem apagados, eles não poderão ser mais recuperados.
Exemplos:
* `rm teste.txt' - Apaga o arquivo `teste.txt' no diretório atual.
* `rm *.txt' - Apaga todos os arquivos do diretório atual que
terminam com `.txt'.
* `rm *.txt teste.novo' - Apaga todos os arquivos do diretório
atual que terminam com `.txt' e também o arquivo `teste.novo'.
* `rm -rf /tmp/teste/*' - Apaga todos os arquivos e sub-diretórios
do diretório `/tmp/teste' mas mantém o sub-diretório
`/tmp/teste'.
* `rm -rf /tmp/teste' - Apaga todos os arquivos e sub-diretórios do
diretório `/tmp/teste', inclusive `/tmp/teste'.
* `rm -f -- --arquivo--' - Remove o arquivo de nome `--arquivo--'.
9.4. cp
-------
Copia arquivos.
onde:
_origem_
Arquivo que será copiado. Podem ser especificados mais de um
arquivo para ser copiado usando "Curingas" (veja Section 2.2,
`Curingas').
_destino_
O caminho ou nome de arquivo onde será copiado. Se o destino for
um diretório, os arquivos de origem serão copiados para dentro do
diretório.
_opções_
i, --interactive
Pergunta antes de substituir um arquivo existente.
-f, --force
Não pergunta, substitui todos os arquivos caso já exista.
-r
Copia arquivos dos diretórios e subdiretórios da origem para o
destino. É recomendável usar -R ao invés de -r.
-R, --recursive
Copia arquivos e sub-diretórios (como a opção -r) e também os
arquivos especiais FIFO e dispositivos.
-v, --verbose
Mostra os arquivos enquanto estão sendo copiados.
-s, --simbolic-link
Cria link simbólico ao invés de copiar.
-l, --link
Faz o link no destino ao invés de copiar os arquivos.
-p, --preserve
Preserva atributos do arquivo, se for possível.
-u, --update
Copia somente se o arquivo de origem é mais novo que o arquivo de
destino ou quando o arquivo de destino não existe.
-x
Não copia arquivos que estão localizados em um sistema de
arquivos diferente de onde a cópia iniciou.
O comando `cp' copia arquivos da ORIGEM para o DESTINO. Ambos origem
e destino terão o mesmo conteúdo após a cópia.
Exemplos:
`cp teste.txt teste1.txt'
Copia o arquivo `teste.txt' para `teste1.txt'.
`cp teste.txt /tmp'
Copia o arquivo `teste.txt' para dentro do diretório `/tmp'.
`cp * /tmp'
Copia todos os arquivos do diretório atual para `/tmp'.
`cp /bin/* .'
Copia todos os arquivos do diretório `/bin' para o diretório em
que nos encontramos no momento.
`cp -R /bin /tmp'
Copia o diretório `/bin' e todos os arquivos/sub-diretórios
existentes para o diretório `/tmp'.
`cp -R /bin/* /tmp'
Copia todos os arquivos do diretório `/bin' (exceto o diretório
`/bin') e todos os arquivos/sub-diretórios existentes dentro dele
para `/tmp'.
`cp -R /bin /tmp'
Copia todos os arquivos e o diretório `/bin' para `/tmp'.
9.5. mv
-------
Onde:
_origem_
Arquivo/diretório de origem.
_destino_
Local onde será movido ou novo nome do arquivo/diretório.
_opções_
-f, --force
Substitui o arquivo de destino sem perguntar.
-i, --interactive
Pergunta antes de substituir. É o padrão.
-v, --verbose
Mostra os arquivos que estão sendo movidos.
-u, --update
Move somente arquivos antigos, ou novos arquivos.
O comando `mv' copia um arquivo da _ORIGEM_ para o _DESTINO_
(semelhante ao `cp'), mas após a cópia, o arquivo de _ORIGEM_ é
apagado.
Exemplos:
`mv teste.txt teste1.txt'
Muda o nome do arquivo `teste.txt' para `teste1.txt'.
`mv teste.txt /tmp'
Move o arquivo teste.txt para `/tmp'. Lembre-se que o arquivo de
origem é apagado após ser movido.
`mv teste.txt teste.new' (supondo que `teste.new' já exista)
Copia o arquivo `teste.txt' por cima de `teste.new' e apaga
`teste.txt' após terminar a cópia.
-------------------------------------------------------------------------------
`clear'
10.2. date
----------
`date MesDiaHoraMinuto[AnoSegundos]'
Onde:
MesDiaHoraMinuto[AnoSegundos]
São respectivamente os números do mês, dia, hora e minutos sem
espaços. Opcionalmente você pode especificar o Ano (com 2 ou 4
dígitos) e os Segundos.
+[FORMATO]
Define o formato da listagem que será usada pelo comando `date'.
Os seguintes formatos são os mais usados:
* `%d' - Dia do Mês (00-31).
* `%m' - Mês do Ano (00-12).
* `%y' - Ano (dois dígitos).
* `%Y' - Ano (quatro dígitos).
* `%H' - Hora (00-24).
* `%I' - Hora (00-12).
* `%M' - Minuto (00-59).
* `%j' - Dia do ano (1-366).
* `%p' - AM/PM (útil se utilizado com %d).
* `%r' - Formato de 12 horas completo (hh:mm:ss AM/PM).
* `%T' - Formato de 24 horas completo (hh:mm:ss).
* `%w' - Dia da semana (0-6).
Outros formatos podem ser obtidos através da página de manual do
`date'.
Para maiores detalhes, veja a página de manual do comando `date'.
Se quiser mudar a Data para 25/12 e a hora para 08:15 digite: `date
12250815'
10.3. df
--------
`df [_opções_]'
onde:
_opções_
-a
Inclui sistemas de arquivos com 0 blocos.
-h, --human-readable
Mostra o espaço livre/ocupado em _MB, KB, GB_ ao invés de blocos.
-H
Idêntico a `-h' mas usa 1000 ao invés de 1024 como unidade de
cálculo.
-k
Lista em Kbytes.
-l
Somente lista sistema de arquivos locais.
-m
Lista em Mbytes (equivalente a --block-size=1048576).
--sync
Executa o `sync' antes de mostrar os dados.
-T
Lista o tipo de sistema de arquivos de cada partição
-t _tipo_
Lista somente sistema de arquivos do tipo _tipo_.
-x _tipo_
Não lista sistemas de arquivos do tipo _tipo_.
10.4. ln
--------
Onde:
_origem_
Diretório ou arquivo de onde será feito o link.
_link_
Nome do link que será criado.
_opções_
-s
Cria um link simbólico. Usado para criar ligações com o
arquivo/diretório de destino.
-v
Mostra o nome de cada arquivo antes de fazer o link.
-d
Cria um hard link para diretórios. Somente o root pode usar esta
opção.
Existem 2 tipos de links: _simbólicos_ e _hardlinks_.
* O _link simbólico_ cria um arquivo especial no disco (do tipo
link) que tem como conteúdo o caminho para chegar até o arquivo
alvo (isto pode ser verificado pelo tamanho do arquivo do link).
Use a opção `-s' para criar links simbólicos.
* O _hardlink_ faz referência ao mesmo inodo do arquivo original,
desta forma ele será perfeitamente idêntico, inclusive nas
permissões de acesso, ao arquivo original.
Ao contrário dos links simbólicos, não é possível fazer um
hardlink para um diretório ou fazer referência a arquivos que
estejam em partições diferentes.
Observações:
* Se for usado o comando `rm' com um link, somente o link será
removido.
* Se for usado o comando `cp' com um link, o arquivo original será
copiado ao invés do link.
* Se for usado o comando `mv' com um link, a modificação será feita
no link.
* Se for usado um comando de visualização (como o `cat'), o arquivo
original será visualizado.
Exemplos:
* `ln -s /dev/ttyS1 /dev/modem' - Cria o link `/dev/modem' para o
arquivo `/dev/ttyS1'.
* `ln -s /tmp ~/tmp' - Cria um link `~/tmp' para o diretório
`/tmp'.
10.5. du
--------
`du [_opções_]'
onde:
_opções_
-a, --all
Mostra o espaço ocupado por todos os arquivos.
-b, --bytes
Mostra o espaço ocupado em bytes.
-c, --total
Faz uma totalização de todo espaço listado.
-D
Não conta links simbólicos.
-h, --human
Mostra o espaço ocupado em formato legível por humanos (Kb, Mb)
ao invés de usar blocos.
-H
Como o anterior mas usa 1000 e não 1024 como unidade de cálculo.
-k
Mostra o espaço ocupado em Kbytes.
-m
Mostra o espaço ocupado em Mbytes.
-S, --separate-dirs
Não calcula o espaço ocupado por sub-diretórios.
-x
Não faz a contagem de diretórios em sistemas de arquivos
diferentes do atual.
10.6. find
----------
Onde:
_diretório_
Inicia a procura neste diretório, percorrendo seu sub-diretórios.
_opções/expressão_
-name [expressão]
Procura pelo nome [expressão] nos nomes de arquivos e diretórios
processados.
-depth
Processa os sub-diretórios primeiro antes de processar os
arquivos do diretório principal.
-maxdepth [num]
Faz a procura até [num] sub-diretórios dentro do diretório que
está sendo pesquisado.
-mindepth [num]
Não faz nenhuma procura em diretórios menores que [num] níveis.
-mount, -xdev
Não faz a pesquisa em sistemas de arquivos diferentes daquele de
onde o comando `find' foi executado.
-amin [num]
Procura por arquivos que foram acessados [num] minutos atrás.
Caso for antecedido por "-", procura por arquivos que foram
acessados entre [num] minutos atrás até agora.
-atime [num]
Procura por arquivos que foram acessados [num] dias atrás. Caso
for antecedido por "-", procura por arquivos que foram acessados
entre [num] dias atrás e a data atual.
-gid [num]
Procura por arquivos que possuam a identificação numérica do
grupo igual a [num].
-group [nome]
Procura por arquivos que possuam a identificação de nome do grupo
igual a [nome].
-uid [num]
Procura por arquivos que possuam a identificação numérica do
usuário igual a [num].
-user [nome]
Procura por arquivos que possuam a identificação de nome do
usuário igual a [nome].
-inum [num]
Procura por arquivos que estão localizados no inodo [num].
-links [num]
Procura por arquivos que possuem [num] links como referência.
-mmin [num]
Procura por arquivos que tiveram seu conteúdo modificado há [num]
minutos. Caso for antecedido por "-", procura por arquivos que
tiveram seu conteúdo modificado entre [num] minutos atrás até
agora.
-mtime [num]
Procura por arquivos que tiveram seu conteúdo modificado há [num]
dias. Caso for antecedido por "-", procura por arquivos que
tiveram seu conteúdo modificado entre [num] dias atrás até agora.
-ctime [num]
Procura por arquivos que teve seu status modificado há [num]
dias. Caso for antecedido por "-", procura por arquivos que
tiveram seu conteúdo modificado entre [num] dias atrás até agora.
-nouser
Procura por arquivos que não correspondam a identificação do
usuário atual.
-nogroup
Procura por arquivos que não correspondam a identificação do
grupo do usuário atual.
-perm [modo]
Procura por arquivos que possuam os modos de permissão [modo].
Os [modo] de permissão pode ser numérico (octal) ou literal.
-used [num]
O arquivo foi acessado [num] vezes antes de ter seu status
modificado.
-size [num]
Procura por arquivos que tiverem o tamanho [num]. [num] pode ser
antecedido de "+" ou "-" para especificar um arquivo maior ou
menor que [num]. A opção -size pode ser seguida de:
* `b' - Especifica o tamanho em blocos de 512 bytes. É o
padrão caso [num] não seja acompanhado de nenhuma letra.
* `c' - Especifica o tamanho em bytes.
* `k' - Especifica o tamanho em Kbytes.
-type [tipo]
Procura por arquivos do [tipo] especificado. Os seguintes tipos
são aceitos:
* `b' - bloco
* `c' - caracter
* `d' - diretório
* `p' - pipe
* `f' - arquivo regular
* `l' - link simbólico
* `s' - sockete
A maior parte dos argumentos numéricos podem ser precedidos por "+" ou
"-". Para detalhes sobre outras opções e argumentos, consulte a
página de manual.
Exemplo:
* `find / -name grep' - Procura no diretório raíz e sub-diretórios
um arquivo/diretório chamado `grep'.
* `find / -name grep -maxdepth 3' - Procura no diretório raíz e
sub-diretórios até o 3o. nível, um arquivo/diretório chamado
`grep'.
* `find . -size +1000k' - Procura no diretório atual e
sub-diretórios um arquivo com tamanho maior que 1000 kbytes
(1Mbyte).
* `find / -mmin 10' - Procura no diretório raíz e sub-diretórios um
arquivo que foi modificado há 10 minutos atrás.
* `find / -links 4' - Procura no diretório raíz e sub-diretórios,
todos os arquivos que possuem 4 links como referência.
10.7. free
----------
`free [_opções_]'
Onde:
_opções_
-b
Mostra o resultado em bytes.
-k
Mostra o resultado em Kbytes.
-m
Mostra o resultado em Mbytes.
-o
Oculta a linha de buffers.
-t
Mostra uma linha contendo o total.
-s [num]
Mostra a utilização da memória a cada [num] segundos.
O `free' é uma interface ao arquivo `/proc/meminfo'.
10.8. grep
----------
Onde:
_expressão_
palavra ou frase que será procurada no texto. Se tiver mais de 2
palavras você deve identifica-la com aspas "" caso contrário o
`grep' assumirá que a segunda palavra é o arquivo!
_arquivo_
Arquivo onde será feita a procura.
_opções_
-A [número]
Mostra o [número] de linhas após a linha encontrada pelo `grep'.
-B [número]
Mostra o [número] de linhas antes da linha encontrada pelo
`grep'.
-f [arquivo]
Especifica que o texto que será localizado, esta no arquivo
[arquivo].
-h, --no-filename
Não mostra os nomes dos arquivos durante a procura.
-i, --ignore-case
Ignora diferença entre maiúsculas e minúsculas no texto procurado
e arquivo.
-n, --line-number
Mostra o nome de cada linha encontrada pelo `grep'.
-U, --binary
Trata o arquivo que será procurado como binário.
Se não for especificado o nome de um arquivo ou se for usado um hífen
"-", `grep' procurará a string no dispositivo de entrada padrão. O
`grep' faz sua pesquisa em arquivos texto. Use o comando `zgrep' para
pesquisar diretamente em arquivos compactados com `gzip', os comandos
e opções são as mesmas.
10.9. head
----------
`head [_opções_]'
Onde:
-c [numero]
Mostra o [numero] de bytes do inicio do arquivo.
-n [numero]
Mostra o [numero] de linhas do inicio do arquivo. Caso não for
especificado, o `head' mostra as 10 primeiras linhas.
10.10. nl
---------
Mostra o número de linhas junto com o conteúdo de um arquivo.
Onde:
-f [opc]
Faz a filtragem de saída de acordo com [opc]:
a
Numera todas as linhas.
t
Não numera linhas vazias.
n
Numera linhas vazias.
texto
Numera somente linhas que contém o [texto].
-v [num]
Número inicial (o padrão é 1).
-i [num]
Número de linhas adicionadas a cada linha do arquivo (o padrão é
1).
10.11. more
-----------
`more [_arquivo_]'
10.12. less
-----------
`less [_arquivo_]'
Onde:
_arquivo_
É o nome do arquivo que será organizado. Caso não for
especificado, será usado o dispositivo de entrada padrão
(normalmente o teclado ou um "|").
_opções_
-b
Ignora linhas em branco.
-d
Somente usa letras, dígitos e espaços durante a organização.
-f
Ignora a diferença entre maiúsculas e minúsculas.
-r
Inverte o resultado da comparação.
-n
Caso estiver organizando um campo que contém números, os números
serão organizados na ordem aritmética. Por exemplo, se você
tiver um arquivo com os números
100
10
50
Usando a opção `-n', o arquivo será organizado desta maneira:
10
50
100
Caso esta opção _não_ for usada com o `sort', ele organizará como
uma listagem alfabética (que começam de `a' até `z' e do `0' até
`9')
10
100
50
-c
Verifica se o arquivo já esta organizado. Caso não estiver,
retorna a mensagem "disorder on _arquivo_".
-o _arquivo_
Grava a saída do comando `sort' no _arquivo_.
-m _arquivo1_ _arquivo2_
Combina o conteúdo de _arquivo1_ e _arquivo2_ gerando um único
arquivo. Os dois arquivos precisam estar ordenados antes de se
utilizar esta opção.
-i
Ignora os caracteres fora da faixa octal ASCII 040-0176 durante a
organização.
-t _caracter_
Usa _caracter_ como delimitador durante a organização de linhas.
Por padrão é usado um _espaço em branco_ como delimitador de
caracteres.
_+num1 -num2_
Especifica qual o campo dentro na linha que será usado na
organização. O(s) campo(s) usado(s) para organização estará
entre _+num1_ e _+num2_. O delimitador padrão utilizado é um
_espaço em branco_ (use a opção `-t' para especificar outro). A
contagem é iniciada em "0". Caso não for especificada, a
organização é feita no primeiro campo. Caso _-num2_ não seja
especificado, a organização será feita usando a coluna _+num1_
até o fim da linha.
-k _num1_, _num2_
Esta é uma alternativa ao método acima para especificar as chaves
de organização. O uso é idêntico, mas o delimitador é iniciado
em "1".
10.14. tail
-----------
`tail [_opções_]'
Onde:
-c [numero]
Mostra o [numero] de bytes do final do arquivo.
-n [numero]
Mostra o [numero] de linhas do final do arquivo.
10.15. time
-----------
`time [_comando_]'
10.16. touch
------------
Muda a data e hora que um arquivo foi criado. Também pode ser usado
para criar arquivos vazios. Caso o `touch' seja usado com arquivos
que não existam, por padrão ele criará estes arquivos.
Onde:
_arquivos_
Arquivos que terão sua data/hora modificados.
_opções_
-t MMDDhhmm[ANO.segundos]
Usa Minutos (MM), Dias (DD), Horas (hh), minutos (mm) e
opcionalmente o ANO e segundos para modificação do(s) arquivos ao
invés da data e hora atual.
-a, --time=atime
Faz o `touch' mudar somente a data e hora do acesso ao arquivo.
-c, --no-create
Não cria arquivos vazios, caso os _arquivos_ não existam.
-m, --time=mtime
Faz o `touch' mudar somente a data e hora da modificação.
-r [arquivo]
Usa as horas no [arquivo] como referência ao invés da hora atual.
Exemplos:
10.17. uptime
-------------
`uptime'
10.18. dmesg
------------
`dmesg|less'
10.19. mesg
-----------
`mesg [_y/n_]'
10.20. echo
-----------
`echo [_mensagem_]'
A opção `-n' pode ser usada para que não ocorra o salto de linha após
a mensagem ser mostrada.
10.21. su
---------
Permite o usuário mudar sua identidade para outro usuário sem fazer o
logout. Útil para executar um programa ou comando como root sem ter
que abandonar a seção atual.
`su [_usuário_]'
10.22. sync
-----------
`sync'
10.23. uname
------------
Retorna o nome e versão do kernel atual.
`uname'
10.24. reboot
-------------
Reinicia o computador.
10.25. shutdown
---------------
_hora_
Momento que o computador será desligado. Você pode usar `HH:MM'
para definir a hora e minuto, `MM' para definir minutos, `+SS'
para definir após quantos segundos, ou `now' para imediatamente
(equivalente a +0).
O `shutdown' criará o arquivo `/etc/nologin' para não permitir
que novos usuários façam login no sistema (com excessão do root).
Este arquivo é removido caso a execução do `shutdown' seja
cancelada (opção -c) ou após o sistema ser reiniciado.
_mensagem_
Mensagem que será mostrada a todos os usuários alertando sobre o
reinicio/desligamento do sistema.
_opções_
-h
Inicia o processo para desligamento do computador.
-r
Reinicia o sistema
-c
Cancela a execução do `shutdown'. Você pode acrescentar uma
mensagem avisando aos usuários sobre o fato.
-a
Permite que os nomes de usuários contidos no arquivo
`/etc/shutdown.allow' possam utilizar o `shutdown' para
reinicializar/desligar o sistema. Deve ser colocado um nome de
usuário por linha. O limite máximo de usuários neste arquivo é
de 32.
Este arquivo é útil quando o `shutdown' é usado para controlar o
pressionamento das teclas `CTRL+ALT+DEL' no `/etc/inittab'.
-k
Simula o desligamento/reinicio do sistema, enviando mensagem aos
usuários.
-f
Não executa a checagem do sistema de arquivos durante a
inicialização do sistema. Este processo é feito gravando-se um
arquivo `/fastboot' que é interpretado pelos scripts responsáveis
pela execução do `fsck' durante a inicialização do sistema.
-F
Força a checagem do sistema de arquivos durante a inicialização.
É gravado um arquivo chamado `/forcefsck' que é interpretado
pelos scripts responsáveis pela execução do `fsck' durante a
inicialização do sistema.
-n
Faz com que o `shutdown' ignore a execução do `init' fechando
todos os processos.
-t [num]
Faz com que o `shutdown' envie um sinal de término aos processos
e aguarde [num] segundos antes de enviar o sinal KILL.
O `shutdown' envia uma mensagem a todos os usuários do sistema
alertando sobre o desligamento durante os 15 minutos restantes e assim
permite que finalizem suas tarefas. Após isto, o `shutdown' muda o
nível de execução através do comando `init' para 0 (desligamento), 1
(modo monousuário), 6 (reinicialização). É recomendado utilizar o
símbolo "&" no final da linha de comando para que o `shutdown' seja
executado em segundo plano.
Exemplos:
* `"shutdown -h now"' - Desligar o computador imediatamente.
* `"shutdown -r now"' - Reinicia o computador imediatamente.
* `"shutdown 19:00 A manutenção do servidor será iniciada às
19:00"' - Faz o computador entrar em modo monousuário (init 1) às
19:00 enviando a mensagem _A manutenção do servidor será iniciada
às 19:00_ a todos os usuários conectados ao sistema.
* `"shutdown -r 15:00 O sistema será reiniciado às 15:00 horas"' -
Faz o computador ser reiniciado (init 6) às 15:00 horas enviando
a mensagem _O sistema será reiniciado às 15:00 horas_ a todos os
usuários conectados ao sistema.
* `shutdown -r 20' - Faz o sistema ser reiniciado após 20 minutos.
* `shutdown -c' - Cancela a execução do `shutdown'.
* `shutdown -t 30 -r 20' - Reinicia o sistema após 20 minutos,
espera 30 segundos após o sinal de término para enviar o sinal
KILL a todos os programas abertos.
10.26. wc
---------
Onde:
_arquivo_
Arquivo que será verificado pelo comando `wc'.
_opções_
-c, --bytes
Mostra os bytes do arquivo.
-w, --words
Mostra a quantidade de palavras do arquivo.
-l, --lines
Mostra a quantidade de linhas do arquivo.
A ordem da listagem dos parâmetros é única, e modificando a posição
das opções não modifica a ordem que os parâmetros são listados.
Exemplo:
* `wc /etc/passwd' - Mostra a quantidade de linhas, palavras e
letras (bytes) no arquivo `/etc/passwd'.
* `wc -w /etc/passwd' - Mostra a quantidade de palavras.
* `wc -l /etc/passwd' - Mostra a quantidade de linhas.
* `wc -l -w /etc/passwd' - Mostra a quantidade de linhas e palavras
no arquivo `/etc/passwd'.
10.27. seq
----------
Onde:
_primeiro_
Número inicial da seqüência.
_incremento_
Número utilizado para avançar na seqüência.
_último_
Número final da seqüência.
_opções_
-f, --format=[formato]
Formato de saída dos números da seqüência. Utilize o estilo do
printf para ponto flutuante (valor padrão: %g).
-s, --separator=[string]
Usa [string] para separar a seqüência de números (valor padrão:
\n).
-w, --equal-width
Insere zeros na frente dos números mantendo a seqüência alinhada.
Observações:
* Se [primeiro] ou [incremento] forem omitidos, o valor padrão 1
será utilizado.
* Os números recebidos são interpretados como números em ponto
flutuante.
* [incremento] deve ser positivo se [primeiro] for menor do que o
último, e negativo caso contrário.
* Quando utilizarmos a opção --format, o argumento deve ser
exatamente %e, %f ou %g.
Exemplos: `seq 0 2 10', `seq -w 0 10', `seq -f%f 0 10', `seq -s", " 0
10'
10.28. chattr
-------------
Onde:
_arquivos/diretórios_
Arquivos/Diretórios que terão os atributos modificados. Podem
ser usados curingas
_opções_
-R
Modifica atributos em subdiretórios
-V
Mostra detalhes sobre a modificação de atributos.
_atributos_
Os atributos de arquivos/diretórios podem ser especificados da
seguinte maneira:
* `+' - Adiciona o atributo
* `-' - Remove o atributo
* `=' - Define o atributo exatamente como especificado
Os atributos são os seguintes:
* `A' - Não modifica a hora de acesso de arquivos. Poder
aumentar consideravelmente a performance em Notebooks devido
a diminuição de I/O no disco rígido. Quando especificada em
diretórios, faz com que todos os arquivos e subdiretórios
residentes nele não tenham a hora de acesso modificada.
Este atributo funciona apenas em kernels 2.2 e superiores
* `a' - Append-Only - Arquivos com este atributo podem somente
ser gravados em modo incrementais (o conteúdo poderá somente
ser adicionado ao final do arquivo). Eles não poderão ser
removidos, renomeados e novos links não poderão ser criados
para estes arquivos.
Em diretórios faz com que os arquivos sejam apenas
adicionados. Somente o root pode especificar ou retirar
este atributo.
* `c' - Permite compactação nos arquivos especificados de
forma transparente para o usuário. Durante a leitura, o
kernel retorna dados descompactados e durante a gravação os
dados são compactados e gravados no disco.
Este atributo ainda não foi totalmente implementado no
código atual do kernel.
* `d' - Este atributo não é usado pelo kernel, mas faz com que
o programa `dump' evitar backup dos arquivos marcados com
este atributo.
* `i' - Imutável - Arquivos imutáveis não podem ser
modificados, os dados também não podem ser gravados para
estes arquivos, não podem ser removidos, renomeados. Até
mesmo o usuário root não poderá modificar estes arquivos.
Em diretórios, faz com que arquivos não possam ser
adicionados ou apagados. Somente o usuário root pode
especificar ou retirar este atributo.
* `s' - O arquivo especificado é marcado como "apagamento
seguro"; quando o arquivo é apagado, seus blocos são zerados
e gravados de volta no disco (eliminando qualquer
possibilidade de recuperação).
* `S' - Faz a gravação imediatamente para o arquivo
especificado. É como especificar a opção "sync" na montagem
do sistema de arquivos ext2, mas afeta somente os arquivos
especificados. Não tem efeito em diretórios.
* `u' - O arquivo especificado é marcado como recuperável.
Quando o arquivo é apagado, seu conteúdo é salvo para
permitir futura recuperação.
Este atributo ainda não foi implementado totalmente no
código atual do kernel.
Os atributos de arquivos/diretórios são visualizados através do
utilitário `lsattr'. Existem patches para os kernels da série 2.2 que
adicionam o suporte experimental aos atributos "c" e "u".
Exemplos:
* `chattr +AacdiSsu teste.txt' - Adiciona todos os atributos
* `chattr =ASs teste.txt' - Define os atributos para "ASs"
* `chattr +i -A teste.txt' - Retira o atributo "A" e adiciona "i"
* `chattr = teste.txt' - Retira todos os atributos
10.29. lsattr
-------------
Onde:
_arquivos/diretórios_
Arquivos/diretórios que deseja listar os atributos. Podem ser
usados curingas.
_opções_
-a
Lista todos os arquivos, incluindo ocultos (iniciando com um
".").
-d
Lista os atributos de diretórios ao invés de listar os arquivos
que ele contém.
-R
Faz a listagem em diretórios e subdiretórios.
-v
Mostra versões dos arquivos.
Caso seja especificado sem parâmetros, o `lsattr' listará os atributos
de todos os arquivos e diretórios do diretório atual. O `lsattr'
mostrará mensagens de erro caso seja usado em um diretório de pontos
de montagem ou arquivos que não sejam _ext2_.
10.30. cut
----------
Onde:
_arquivo_
Arquivo que será verificado pelo comando `cut'.
_opções_
-b, --bytes [bytes]
Mostra somente a lista de [bytes] do arquivo.
-c, --characters [numero]
Mostra somente o [número] de caracteres no arquivo. É semelhante
a opção "-b" mas tabs e espaços são tratados como qualquer
caracter.
-f, --field [campos]
Mostra somente a lista de [campos].
-d, --delimite [delimitador]
Para uso com a opção -f, os campos são separados pelo primeiro
caracter em [delimitador] ao invés de tabulações.
-s
Para uso com a opção -f, somente mostra linhas que contém o
caracter separador de campos.
Devem ser especificadas opções para o funcionamento deste comando. Os
bytes, campos e delimitadores podem ser especificados através de
intervalos de caracteres (usando a-z), através de vírgulas (a,b,d) ou
da combinação entre eles.
10.31. cmp
----------
Opções:
_arquivo1/arquivo2_
Arquivos que serão comparados.
_opções_
-l
Mostra o número do byte (hexadecimal) e valores diferentes de
bytes (octal) para cada diferença.
-s
Não mostra nenhuma diferença, só retorna o código de saída do
programa.
Use o comando `zcmp' para comparar diretamente arquivos binários/texto
compactados com `gzip'.
10.32. dirname
--------------
`dirname [_diretório/arquivo_]'
10.33. diff
-----------
Opções:
_diretório1/arquivo1 diretório2/arquivo2_
Arquivos /diretórios que serão comparados. Normalmente é usado
como primeiro arquivo/diretório o mais antigo e o mais novo como
segundo.
_opções_
-lines [num]
Gera a diferença com [num] linhas de contexto. Por padrão o
`diff' gera um arquivo com 2 linhas que é o mínimo necessário
para o correto funcionamento do `patch'.
-a
Compara os dois arquivos como arquivos texto.
-b
Ignora espaços em branco como diferenças.
-B
Ignora linhas em branco inseridas ou apagadas nos arquivos.
-i
Ignora diferenças entre maiúsculas e minúsculas nos arquivos.
-H
Usa análise heurística para verificar os arquivos.
-N
Em uma comparação de diretórios, se o arquivo apenas existe em um
diretório, trata-o como presente mas vazio no outro diretório.
-P
Em uma comparação de diretórios, se o arquivos apenas existe no
segundo diretório, trata-o como presente mas vazio no primeiro
diretório.
-q
Mostra somente se os dois arquivos possuem diferenças. Não
mostra as diferenças entre eles.
-r
Compara diretórios e sub-diretórios existentes.
-S [nome]
Inicia a comparação de diretórios pelo arquivo [nome]. É útil
quando cancelamos uma comparação.
-t
Aumenta a tabulação das diferenças encontradas.
-u
Usa o formato de comparação unificado.
Use o comando `zdiff' para comparar diretamente arquivos compactados
pelo utilitário `gzip'
Exemplo:
10.34. whereis
--------------
`whereis [_comando_]'
10.35. which
------------
`which [_comando_]'
-------------------------------------------------------------------------------
Este capítulo traz alguns comandos úteis para uso em rede e ambientes
multiusuário.
11.1. who
---------
`who [_opções_]'
onde:
_opções_
-H, --heading
Mostra o cabeçalho das colunas.
-i, -u, --idle
Mostra o tempo que o usuário está parado em Horas:Minutos.
-m, i am
Mostra o nome do computador e usuário associado ao nome. É
equivalente a digitar `who i am' ou `who am i'.
-q, --count
Mostra o total de usuários conectados aos terminais.
-T, -w, --mesg
Mostra se o usuário pode receber mensagens via `talk'
(conversação).
* + O usuário recebe mensagens via talk
* - O usuário não recebe mensagens via talk.
* ? Não foi possível determinar o dispositivo de terminal
onde o usuário está conectado.
11.2. Telnet
------------
onde:
_ip/dns_
Endereço IP do computador de destino ou nome DNS.
_porta_
Porta onde será feita a conexão. Por padrão, a conexão é feita
na porta _23_.
_opções_
-8
Requisita uma operação binária de 8 bits. Isto força a
operação em modo binário para envio e recebimento. Por
padrão, `telnet' não usa 8 bits.
-a
Tenta um login automático, enviando o nome do usuário lido
da variável de ambiente `USER'.
-d
Ativa o modo de debug.
-r
Ativa a emulação de rlogin.
-l [usuário]
Faz a conexão usando [usuário] como nome de usuário.
11.3. finger
------------
Onde:
_usuário_
Nome do usuário que deseja obter detalhes do sistema. Se não for
digitado o nome de usuário, o sistema mostra detalhes de todos os
usuários conectados no momento.
_usuário@host_
Nome do usuário e endereço do computador que deseja obter
detalhes.
-l
Mostra os detalhes de todos os usuários conectados no momento.
Entre os detalhes, estão incluídos o _nome do interpretador de
comandos_ (shell) do usuário, _diretório home_, _nome do
usuário_, _endereço_, etc. Estes dados são lidos de
`/etc/passwd'.
-p
Não exibe o conteúdo dos arquivos `.plan' e `.project'
Se for usado sem parâmetros, mostra os dados de todos os usuários
conectados atualmente ao seu sistema.
11.4. ftp
---------
Uma vez conectado a um servidor `ftp', você pode usar a maioria dos
comandos do `GNU/Linux' para operá-lo.
`ftp [_ip/dns_]'
11.5. whoami
------------
`whoami'
11.6. dnsdomainname
-------------------
11.8. talk
----------
Inicia conversa com outro usuário em uma rede local ou Internet. Talk
é um programa de conversação em tempo real onde uma pessoa vê o que a
outra escreve.
ou
`talk [_usuário@host_]'
Onde:
_usuário_
Nome de login do usuário que deseja iniciar a conversação. Este
nome pode ser obtido com o comando `who' (veja Section 11.1,
`who').
_tty_
O nome de terminal onde o usuário está conectado, para iniciar
uma conexão local.
_usuário@host_
Se o usuário que deseja conversar estiver conectado em um
computador remoto, você deve usar o nome do usuário@hosname do
computador.
Após o `talk' ser iniciado, ele verificará se o usuário pode receber
mensagens, em caso positivo, ele enviará uma mensagem ao usuário
dizendo como responder ao seu pedido de conversa. Veja Section 11.1,
`who'.
Para poder fazer a rolagem para cima e para baixo no `talk', pressione
`CTRL+P'(Previous - Tela anterior) e `CTRL+N' (Next - Próxima tela).
Você deve ter o daemon do `talk' instalado (`talkd') para receber
requisições de conversa.
11.9. ping
----------
`ping [_opções_][_IP/DNS_]'
onde:
_IP/dns_
Endereço IP ou nome DNS do endereço.
_opções_
-c [num]
Envia _num_ pacotes ao computador de destino.
-f
_Flood ping_. Envia novos pacotes antes de receber a resposta do
pacote anterior. Para cada requisição enviada, um "." é
mostrado na tela e para cada resposta recebida, um backspace é
mostrado. Somente o usuário root pode utilizar esta opção e pode
te auxiliar muito na detecção de erros de transmissão de pacotes
em interfaces das máquinas em sua rede.
-i [seg]
Aguarda [seg] segundos antes de enviar cada pacote.
-q
Não mostra as requisições enquanto são enviadas, somente mostra
as linhas de sumário no inicio e término do programa.
-s [tamanho]
Especifica o tamanho do pacote que será enviado.
-v, --verbose
Saída detalhada, tanto os pacotes enviados como recebidos são
listados.
Exemplo: `ping 192.168.1.1', `ping www.br.debian.org'.
11.10. rlogin
-------------
onde:
_IP/DNS_
Endereço IP ou DNS do computador que será acessado.
opções
-l [nome]
Entra com o user id [nome] no sistema.
`rlogin' é usado para executar comandos interativamente no computador
de destino (como se você estivesse sentado diante dele, muito
semelhante ao telnet). Para executar comandos não interativamente
veja Section 11.11, `rsh'.
11.11. rsh
----------
Onde:
_IP/DNS_
Endereço IP ou nome DNS do computador.
_comando_
Comando que será executado no computador local/remoto.
_opções_
-l [nome]
Entra no sistema usando o login [nome].
`rsh' é usado somente para executar comandos. Para usar um shell
interativo veja Section 11.2, `Telnet' e Section 11.10, `rlogin'.
11.12. w
--------
Mostra quem está conectado no sistema e o que cada um está fazendo.
`w [_opções_][_usuário_]'
onde:
_usuário_
Nome do usuário que deseja ver os detalhes. Se o usuário não for
digitado, o comando `w' mostra detalhes de todos os usuários
conectados no sistema.
_opções_
-h
Não mostra o cabeçalho
-u
Ignora os nomes de usuários enquanto verifica os processo atuais
e tempos de CPU.
-f
Mostra ou oculta o campo _FROM_ na listagem.
11.13. traceroute
-----------------
Onde:
_host/IP destino_
É o endereço para onde o pacote será enviado (por exemplo,
www.debian.org). Caso o tamanho do pacote não seja especificado,
é enviado um pacote de 38 bytes.
_opções_
-l
Mostra o tempo de vida do pacote (ttl)
-m [num]
Ajusta a quantidade máximas de ttl dos pacotes. O padrão é 30.
-n
Mostra os endereços numericamente ao invés de usar resolução DNS.
-p [porta]
Ajusta a porta que será usada para o teste. A porta padrão é
33434.
-r
Pula as tabelas de roteamento e envia o pacote diretamente ao
computador conectado a rede.
-s [end]
Usa o endereço IP/DNS [end] como endereço de origem para
computadores com múltiplos endereços IPs ou nomes.
-v
Mostra mais detalhes sobre o resultado do `traceroute'.
-w [num]
Configura o tempo máximo que aguardará por uma resposta. O
padrão é 3 segundos.
11.14. netstat
--------------
Mostra conexões de rede, tabela de roteamento, estatísticas de
interfaces, conexões masquerade, e mensagens.
`netstat [_opções_]'
Onde:
_opções_
-i [interface]
Mostra estatísticas da interface [interface].
-M, --masquerade
Se especificado, também lista conexões masquerade.
-n, --numeric
Usa endereços numéricos ao invés de tentar resolver nomes de
hosts, usuários e portas.
-c, --continuos
Mostra a listagem a cada segundo até que a `CTRL'+`C' seja
pressionado.
Se não for especificada nenhuma opção, os detalhes das conexões atuais
serão mostrados.
11.15. wall
-----------
`wall [_arquivo_]'
-------------------------------------------------------------------------------
12.1. adduser
-------------
Onde:
_usuário/grupo_
Nome do novo usuário que será adicionado ao sistema.
_opções_
-disable-passwd
Não executa o programa `passwd' para escolher a senha e somente
permite o uso da conta após o usuário escolher uma senha.
--force-badname
Desativa a checagem de senhas ruins durante a adição do novo
usuário. Por padrão o `adduser' checa se a senha pode ser
facilmente adivinhada.
--group
Cria um novo grupo ao invés de um novo usuário. A criação de
grupos também pode ser feita pelo comando `addgroup'.
-uid [num]
Cria um novo usuário com a identificação [num] ao invés de
procurar o próximo UID disponível.
-gid [num]
Faz com que o usuário seja parte do grupo [gid] ao invés de
pertencer a um novo grupo que será criado com seu nome. Isto é
útil caso deseje permitir que grupos de usuários possam ter
acesso a arquivos comuns.
Caso estiver criando um novo grupo com `adduser', a identificação
do novo grupo será [num].
--home [dir]
Usa o diretório [dir] para a criação do diretório home do usuário
ao invés de usar o especificado no arquivo de configuração
`/etc/adduser.conf'.
--ingroup [nome]
Quando adicionar um novo usuário no sistema, coloca o usuário no
grupo [nome] ao invés de criar um novo grupo.
--quiet
Não mostra mensagens durante a operação.
--system
Cria um usuário de sistema ao invés de um usuário normal.
Os dados do usuário são colocados no arquivo `/etc/passwd' após sua
criação e os dados do grupo são colocados no arquivo `/etc/group'.
12.2. addgroup
--------------
12.3. passwd
------------
Onde:
_usuário_
Nome do usuário/grupo que terá sua senha alterada.
_opções_
-g
Se especificada, a senha do grupo será alterada. Somente o root
ou o administrador do grupo pode alterar sua senha. A opção -r
pode ser usada com esta para remover a senha do grupo. A opção
-R pode ser usada para restringir o acesso do grupo para outros
usuários.
-x [dias]
Especifica o número máximo de dias que a senha poderá ser usada.
Após terminar o prazo, a senha deverá ser modificada.
-i
Desativa a conta caso o usuário não tenha alterado sua senha após
o tempo especificado por -x.
-n [dias]
Especifica o número mínimo de dias para a senha ser alterada. O
usuário não poderá mudar sua senha até que [dias] sejam atingidos
desde a última alteração de senha.
-w [num]
Número de dias antecedentes que o usuário receberá o alerta para
mudar sua senha. O alerta ocorre [num] dias antes do limite da
opção -x, avisando ao usuários quantos dias restam para a troca
de sua senha.
-l [nome]
Bloqueia a conta do usuário [nome]. Deve ser usada pelo root. O
bloqueio da conta é feito acrescentando um caracter a senha para
que não confira com a senha original.
-u [nome]
Desbloqueia a conta de um usuário bloqueada com a opção -l.
-S [nome]
Mostra o status da conta do usuário [nome]. A primeira parte é o
nome do usuário seguido de L(conta bloqueada), NP(sem senha), ou
P (com senha), a terceira parte é a data da última modificação da
senha, a quarta parte é a período mínimo, máximo, alerta e o
período de inatividade para a senha.
Procure sempre combinar letras maiúsculas, minúsculas, e números ao
escolher suas senhas. Não é recomendado escolher palavras normais
como sua senha pois podem ser vulneráveis a ataques de dicionários
cracker. Outra recomendação é utilizar _senhas ocultas_ em seu
sistema (_shadow password_).
12.4. newgrp
------------
Onde:
_-_
Se usado, inicia um novo ambiente após o uso do comando `newgrp'
(semelhante a um novo login no sistema), caso contrário, o
ambiente atual do usuário é mantido.
_grupo_
Nome do grupo ou número do grupo que será incluído.
Quando este comando é usado, é pedida a senha do grupo que deseja
acessar. Caso a senha do grupo esteja incorreta ou não exista senha
definida, a execução do comando é negada. A listagem dos grupos que
pertence atualmente pode ser feita usando o comando Section 12.12,
`id'.
12.5. userdel
-------------
Onde:
-r
Apaga também o diretório HOME do usuário.
OBS: Note que uma conta de usuário não poderá ser removida caso ele
estiver no sistema, pois os programas podem precisar ter acesso aos
dados dele (como UID, GID) no `/etc/passwd'.
12.6. groupdel
--------------
`groupdel [_grupo_]'
12.7. lastlog
-------------
`lastlog [_opções_]'
Onde:
_opções_
-t [dias]
Mostra somente os usuários que se conectaram ao sistema nos
últimos [dias].
-u [nome]
Mostra somente detalhes sobre o usuário [nome].
A opção -t substitui a opção -u caso sejam usadas.
12.8. last
----------
* Nome do usuário
`last [_opções_]'
Onde:
_opções_
-n [num]
Mostra [num] linhas. Caso não seja usada, todas as linhas são
mostradas.
-R
Não mostra o campo HostName.
-a
Mostra o hostname na última coluna. Será muito útil se combinada
com a opção -d.
-d
Usa o DNS para resolver o IP de sistemas remotos para nomes DNS.
-x
Mostra as entradas de desligamento do sistema e alterações do
nível de execução do sistema.
Onde:
`-'
Se usado, inicia um novo ambiente durante o uso do comando
(semelhante a um novo login e execução do comando), caso
contrário, o ambiente atual do usuário é mantido.
`grupo'
Nome do grupo que o comando será executado.
`comando'
Comando que será executado. O comando será executado pelo bash.
Quando este comando é usado, é pedida a senha do grupo que deseja
acessar. Caso a senha do grupo esteja incorreta ou não exista senha
definida, a execução do comando é negada.
NomedoGrupo:senha:GID:usuários
Onde:
NomedoGrupo
É o nome daquele grupo de usuários.
senha
Senha para ter acesso ao grupo. Caso esteja utilizando senhas
ocultas para grupos, as senhas estarão em `/etc/gshadow'.
GID
Identificação numérica do grupo de usuário.
usuarios
Lista de usuários que também fazem parte daquele grupo. Caso
exista mais de um nome de usuário, eles devem estar separados por
vírgula.
Deste modo para acrescentar o usuário "joao" ao grupo `audio' para ter
acesso aos dispositivos de som do Linux, acrescente o nome no final da
linha: "audio:x:100:joao". Pronto, basta digitar `logout' e entrar
novamente com seu nome e senha, você estará fazendo parte do grupo
`audio' (confira digitando `groups' ou `id').
12.11. chfn
-----------
Onde:
_usuário_
Nome do usuário.
_opções_
-f [nome]
Muda o nome completo do usuário.
-r [nome]
Muda o número da sala do usuário.
-w [tel]
Muda o telefone de trabalho do usuário.
-h [tel]
Muda o telefone residencial do usuário.
-o [outros]
Muda outros dados do usuário.
Caso o nome que acompanha as opções (como o nome completo) contenha
espaços, use "" para identifica-lo.
12.12. id
---------
Onde:
_usuário_
É o usuário que desejamos ver a identificação, grupos primários e
complementares.
_opções_
-g, --group
Mostra somente a identificação do grupo primário.
-G, --groups
Mostra a identificação de outros grupos que pertence.
-n, --name
Mostra o nome do usuário e grupo ao invés da identificação
numérica.
-u, --user
Mostra somente a identificação do usuário (user ID).
-r, --real
Mostra a identificação real de usuário e grupo, ao invés da
efetiva. Esta opção deve ser usada junto com uma das opções: -u,
-g, ou -G.
Caso não sejam especificadas opções, `id' mostrará todos os dados do
usuário.
Exemplo: `id', `id --user', `id -r -u'.
12.13. logname
--------------
`logname'
12.14. users
------------
`users'
12.15. groups
-------------
`groups [_usuário_]'
-------------------------------------------------------------------------------
Virou uma bagunça não? Vou explicar cada parte para entender o que
quer dizer as 10 letras acima (da esquerda para a direita):
* A primeira letra diz qual é o tipo do arquivo. Caso tiver um "d"
é um diretório, um "l" um link a um arquivo no sistema (veja
Section 10.4, `ln' para detalhes) , um "-" quer dizer que é um
arquivo comum, etc.
Veja o comando Section 13.7, `chmod' para detalhes sobre a mudança das
permissões de acesso de arquivos/diretórios.
O que isto que dizer é que mesmo que você seja o dono do arquivo e
definir o acesso do _dono_ (através do comando `chmod') como somente
leitura (r) mas o acesso dos _outros usuários_ como leitura e
gravação, você somente poderá ler este arquivo mas os outros usuários
poderão ler/grava-lo.
_OBSERVAÇÕES_:
* O usuário `root' não tem nenhuma restrição de acesso ao sistema.
* Se você tem permissões de gravação no diretório e tentar apagar
um arquivo que você não tem permissão de gravação, o sistema
perguntará se você confirma a exclusão do arquivo apesar do modo
leitura. Caso você tenha permissões de gravação no arquivo, o
arquivo será apagado por padrão sem mostrar nenhuma mensagem de
erro (a não ser que seja especificada a opção -i com o comando
`rm').
* Por outro lado, mesmo que você tenha permissões de gravação em um
arquivo mas não tenha permissões de gravação em um diretório, a
exclusão do arquivo será negada.
Isto mostra que é levado mais em consideração a permissão de acesso do
diretório do que as permissões dos arquivos e sub-diretórios que ele
contém. Este ponto é muitas vezes ignorado por muitas pessoas e
expõem seu sistema a riscos de segurança. Imagine o problema que
algum usuário que não tenha permissão de gravação em um arquivo mas
que a tenha no diretório pode causar em um sistema mal administrado.
Utilize uma conta de usuário normal ao invés da conta root para operar
seu sistema. Porque não usar a conta root? Bem, uma razão para
evitar usar privilégios root é por causa da facilidade de se cometer
danos irreparáveis como root. Outra razão é que você pode ser
enganado e rodar um programa _Cavalo de Tróia_ -- que é um programa
que obtém poderes do _super usuário_ para comprometer a segurança do
seu sistema sem que você saiba.
13.7. chmod
-----------
Onde:
_diretório/arquivo_
Diretório ou arquivo que terá sua permissão mudada.
_opções_
-v, --verbose
Mostra todos os arquivos que estão sendo processados.
-f, --silent
Não mostra a maior parte das mensagens de erro.
-c, --change
Semelhante a opção -v, mas só mostra os arquivos que tiveram as
permissões alteradas.
-R, --recursive
Muda permissões de acesso do _diretório/arquivo_ no diretório
atual e sub-diretórios.
ugoa+-=rwxXst
* _ugoa_ - Controla que nível de acesso será mudado.
Especificam, em ordem, usuário (u), grupo (g), outros (o),
todos (a).
* _+-=_ - _+_ coloca a permissão, _-_ retira a permissão do
arquivo e _=_ define a permissão exatamente como
especificado.
* rwx - _r_ permissão de leitura do arquivo. _w_ permissão de
gravação. _x_ permissão de execução (ou acesso a
diretórios).
`chmod' não muda permissões de links simbólicos, as permissões devem
ser mudadas no arquivo alvo do link. Também podem ser usados códigos
numéricos octais para a mudança das permissões de acesso a
arquivos/diretórios. Para detalhes veja Section 13.10, `Modo de
permissão octal'.
13.8. chgrp
-----------
Onde:
_grupo_
Novo grupo do _arquivo/diretório_.
_arquivo/diretório_
Arquivo/diretório que terá o grupo alterado.
_opções_
-c, --changes
Somente mostra os arquivos/grupos que forem alterados.
-f, --silent
Não mostra mensagens de erro para arquivos/diretórios que não
puderam ser alterados.
-v, --verbose
Mostra todas as mensagens e arquivos sendo modificados.
-R, --recursive
Altera os grupos de arquivos/sub-diretórios do diretório atual.
13.9. chown
-----------
Outro exemplo:
"chmod 40 teste"
13.11. umask
------------
A umask (_user mask_) são 3 números que definem as permissões iniciais
do `dono', `grupo' e `outros usuários' que o arquivo/diretório
receberá quando for criado ou copiado. Digite `umask' sem parâmetros
para retornar o valor de sua umask atual.
A umask tem efeitos diferentes caso o arquivo que estiver sendo criado
for _binário_ (um programa executável) ou _texto_ Veja a tabela a
seguir para ver qual é a mais adequada a sua situação:
---------------------------------------------
| | ARQUIVO | DIRETÓRIO |
| UMASK |----------------------| |
| | Binário | Texto | |
|------------------------------|------------|
| 0 | r-x | rw- | rwx |
| 1 | r-- | rw- | rw- |
| 2 | r-x | r-- | r-x |
| 3 | r-- | r-- | r-- |
| 4 | --x | -w- | -wx |
| 5 | --- | -w- | -w- |
| 6 | --x | --- | --x |
| 7 | --- | --- | --- |
---------------------------------------------
-------------------------------------------------------------------------------
14.1. >
-------
Por exemplo, você pode usar o comando `ls' para listar arquivos e usar
`ls >listagem' para enviar a saída do comando para o arquivo
`listagem'. Use o comando `cat' para visualizar o conteúdo do arquivo
`listagem'.
14.2. >>
--------
14.3. <
-------
14.4. <<
--------
14.5. | (pipe)
--------------
Você pode notar pelo exemplo acima (`ls -la|more') que ambos `ls' e
`more' são comandos porque estão separados por um "|"! Se um deles
não existir ou estiver digitado incorretamente, será mostrada uma
mensagem de erro.
14.7. tee
---------
`_comando_|tee [_arquivo_]'
-------------------------------------------------------------------------------
15. Rede
--------
15.3. Endereço IP
-----------------
+--------------------------------------------------------+
| Classe | Máscara de | Endereço da Rede |
| | Rede | |
+--------------------------------------------------------+
| A | 255.0.0.0 | 0.0.0.0 - 127.255.255.255 |
| B | 255.255.0.0 | 128.0.0.0 - 191.255.255.255 |
| C | 255.255.255.0 | 192.0.0.0 - 223.255.255.255 |
|Multicast| 240.0.0.0 | 224.0.0.0 - 239.255.255.255 |
+--------------------------------------------------------+
15.3.2. Para instalar uma máquina usando o Linux em uma rede existente
----------------------------------------------------------------------
Se você estiver construindo uma rede privada que nunca será conectada
a Internet, então você pode escolher qualquer endereço que quiser. No
entanto, para sua segurança e padronização, existem alguns endereços
IP's que foram reservados especificamente para este propósito. Eles
estão especificados no RFC1597 e são os seguintes:
+---------------------------------------------------------+
| ENDEREÇOS RESERVADOS PARA REDES PRIVADAS |
+---------------------------------------------------------+
| Classe | Máscara de | Endereço da Rede |
| de Rede | Rede | |
+---------+---------------+-------------------------------+
| A | 255.0.0.0 | 10.0.0.0 - 10.255.255.255 |
| B | 255.255.0.0 | 172.16.0.0 - 172.31.255.255 |
| C | 255.255.255.0 | 192.168.0.0 - 192.168.255.255 |
+---------------------------------------------------------+
Você deve decidir primeiro qual será a largura de sua rede e então
escolher a classe de rede que será usada.
ifconfig lo 127.0.0.1
15.5. Roteamento
----------------
OK, viu como o roteamento funciona? cada computador mantém uma lista
de regras especiais de roteamento, chamada _tabela de roteamento_.
Esta tabela contém colunas que tipicamente contém no mínimo três
campos, o primeiro é o _endereço de destino_, o segundo é o _nome da
interface_ que o datagrama deve ser roteado e o terceiro é
opcionalmente o _endereço IP_ da outra máquina que levará o datagrama
em seu próximo passo através da rede. No `GNU/Linux' você pode ver a
tabela de roteamento usando um dos seguintes comandos:
cat /proc/net/route
route -n
netstat -r
Para adicionar uma rota padrão para um endereço que não se encontre na
tabela de roteamento, utiliza-se o _gateway padrão da rede_. Através
do gateway padrão é possível especificar um computador (normalmente
outro gateway) que os pacotes de rede serão enviados caso o endereço
não confira com os da tabela de roteamento. Para especificar o
computador 192.168.1.1 como _gateway padrão_ usamos:
O _DNS_ foi criado com o objetivo de tornar as coisas mais fáceis para
o usuário, permitindo assim, a identificação de computadores na
Internet ou redes locais através de nomes (é como se tivéssemos apenas
que decorar o nome da pessoa ao invés de um número de telefone). A
parte responsável por traduzir os nomes como `www.nome.com.br' em um
endereço IP é chamada de _resolvedor de nomes_.
15.6.2.1. /etc/resolv.conf
--------------------------
15.6.2.2. /etc/host.conf
------------------------
order hosts,bind
multi on
nospoof on
spoofalert on
15.6.2.3. /etc/hosts
--------------------
# /etc/hosts
127.0.0.1 localhost loopback
192.168.0.1 maquina.dominio.com.br
Você pode especificar mais que um nome de computador por linha como
demonstrada pela primeira linha, a que identifica a interface
loopback. Certifique-se de que a entrada do nome de domínio neste
arquivo aponta para a interface de rede e não para a interface
loopback, ou terá problema com o comportamento de alguns serviços.
15.6.2.4. /etc/networks
-----------------------
Nome_da_Rede Endereço_da_Rede
loopnet 127.0.0.0
localnet 192.168.1.0
amprnet 44.0.0.0
15.7.2.1. /etc/inetd.conf
-------------------------
Seu formato é também muito simples. É um arquivo texto com cada linha
descrevendo um serviço que deseja oferecer. Qualquer texto em uma
linha seguindo uma "#" é ignorada e considerada um comentário. Cada
linha contém sete campos separados por qualquer número de espaços em
branco (tab ou espaços). O formato geral é o seguinte:
serviço
É o serviço relevante a este arquivo de configuração pego do
arquivo `/etc/services'.
tipo_soquete
Este campo descreve o tipo do soquete que este item utilizará,
valores permitidos são: `stream', `dgram', `raw', `rdm', ou
`seqpacket'. Isto é um pouco técnico de natureza, mas como uma
regra geral, todos os serviços baseados em _tcp_ usam `stream' e
todos os protocolos baseados em _udp_ usam `dgram'. Somente
alguns tipos de daemons especiais de servidores usam os outros
valores.
protocolo
O protocolo é considerado válido para esta item. Isto deve bater
com um item apropriado no arquivo `/etc/services' e tipicamente
será tcp ou udp. Servidores baseados no Sun RPC (_Remote
Procedure Call_), utilizam rpc/tcp ou rpc/udp.
opções
Existem somente duas configurações para este campo. A
configuração deste campo diz ao _inetd_ se o programa servidor de
rede libera o soquete após ele ser iniciado e então se inetd pode
iniciar outra cópia na próxima requisição de conexão, ou se o
inetd deve aguardar e assumir que qualquer servidor já em
execução pegará a nova requisição de conexão.
Este é um pequeno truque de trabalho, mas como uma regra, todos
os servidores tcp devem ter este parâmetro ajustado para _nowait_
e a maior parte dos servidores udp deve tê-lo ajustado para
_wait_. Foi alertado que existem algumas excessões a isto, assim
deixo isto como exemplo se não estiver seguro.
O _número_ especificado após o "." é opcional e define a
quantidade máxima de vezes que o serviço poderá ser executado
durante 1 minuto. Se o serviço for executado mais vezes do que
este valor, ele será automaticamente desativado pelo inetd e uma
mensagem será mostrada no log do sistema avisando sobre o fato.
Para reativar o serviço interrompido, reinicie o `inetd' com:
`killall -HUP inetd'. O valor padrão é `40'.
usuário
Este campo descreve que conta de usuário usuário no arquivo
`/etc/passwd' será escolhida como _dono_ do daemon de rede quando
este for iniciado. Isto é muito útil se você deseja diminuir os
riscos de segurança. Você pode ajustar o usuário de qualquer
item para o usuário _nobody_, assim se a segurança do servidor de
redes é quebrada, a possibilidade de problemas é minimizada.
Normalmente este campo é ajustado para _root_, porque muitos
servidores requerem privilégios de usuário root para funcionarem
corretamente.
caminho_servidor
Este campo é o caminho para o programa servidor atual que será
executado.
argumentos_servidor
Este campo inclui o resto da linha e é opcional. Você pode
colocar neste campo qualquer argumento da linha de comando que
deseje passar para o daemon servidor quando for iniciado.
Uma dica que pode aumentar significativamente a segurança de seu
sistema é comentar (colocar uma `#'no inicio da linha) os serviços que
não serão utilizados.
15.8.1. /etc/ftpusers
---------------------
15.8.2. /etc/securetty
----------------------
O programa `tcpd' que você deve ter visto listado no mesmo arquivo
`/etc/inetd.conf', oferece mecanismos de registro e controle de acesso
para os serviços que esta configurado para proteger. Ele é um tipo de
firewall simples e fácil de configurar que pode evitar tipos
indesejados de ataques e registrar possíveis tentativas de invasão.
Ele procura nos arquivos de regras até que uma regra confira. Se
nenhuma regra conferir, então ele assume que o acesso deve ser
permitido a qualquer um. Os arquivos que ele procura em seqüência
são: `/etc/hosts.allow' e `/etc/hosts.deny'. Eu descreverei cada um
destes arquivos separadamente.
15.8.3.1. /etc/hosts.allow
--------------------------
# /etc/hosts.allow
#
# lista de serviços: lista de hosts : comando
lista de serviços
É uma lista de nomes de serviços separados por vírgula que esta
regra se aplica. Exemplos de nomes de serviços são: `ftpd',
`telnetd' e `fingerd'.
lista de hosts
É uma lista de nomes de hosts separada por vírgula. Você também
pode usar endereços IP's aqui. Adicionalmente, você pode
especificar nomes de computadores ou endereço IP usando
caracteres coringas para atingir grupos de hosts.
Exemplos incluem: `gw.vk2ktj.ampr.org' para conferir com um
endereço de computador específico, `.uts.edu.au' para atingir
qualquer endereço de computador finalizando com aquele string.
Use 200.200.200. para conferir com qualquer endereço IP
iniciando com estes dígitos. Existem alguns parâmetros especiais
para simplificar a configuração, alguns destes são: `ALL' atinge
todos endereços, `LOCAL' atinge qualquer computador que não
contém um "." (ie. está no mesmo domínio de sua máquina) e
`PARANOID' atinge qualquer computador que o nome não confere com
seu endereço (falsificação de nome). Existe também um último
parâmetro que é também útil: o parâmetro `EXCEPT' lhe permite
fazer uma lista de exceções. Isto será coberto em um exemplo
adiante.
comando
É um parâmetro opcional. Este parâmetro é o caminho completo de
um comando que deverá ser executado toda a vez que esta regra
conferir. Ele pode executar um comando para tentar identificar
quem esta conectado pelo host remoto, ou gerar uma mensagem via
E-Mail ou algum outro alerta para um administrador de rede que
alguém está tentando se conectar.
Existem um número de expansões que podem ser incluídas, alguns
exemplos comuns são: %h expande o endereço do computador que está
conectado ou endereço se ele não possuir um nome, %d o nome do
daemon sendo chamado.
Se o computador tiver permissão de acessar um serviço através do
`/etc/hosts.allow', então o `/etc/hosts.deny' não será consultado e o
acesso será permitido.
Como exemplo:
# /etc/hosts.allow
#
# Permite que qualquer um envie e-mails
in.smtpd: ALL
# Permitir telnet e ftp somente para hosts locais e myhost.athome.org.au
in.telnetd, in.ftpd: LOCAL, myhost.athome.org.au
# Permitir finger para qualquer um mas manter um registro de quem é
in.fingerd: ALL: (finger @%h | mail -s "finger from %h" root)
15.8.3.2. /etc/hosts.deny
-------------------------
# /etc/hosts.deny
#
# Bloqueia o acesso de computadores com endereços suspeitos
ALL: PARANOID
#
# Bloqueia todos os computadores
ALL: ALL
Evita também A TODO CUSTO uso de nomes de usuários (a não ser para
negar o acesso), pois é fácil forjar o login, entrar no sistema tomar
conta de processos (como por exemplo do servidor `Apache' rodando sob
o usuário `www-data' ou até mesmo o _root_), causando enormes
estragos.
ALL: 127.0.0.1
in.talkd, in.ntalkd: ALL
in.fingerd: 192.168.1. EXCEPT 192.168.1.30
ALL: ALL
Como pode ver o TCPD ajuda a aumentar a segurança do seu sistema, mas
não confie nele além do uso em um sistema simples, é necessário o uso
de um firewall verdadeiro para controlar minuciosamente a segurança do
seu sistema e dos pacotes que atravessam os protocolos, roteamento e
as interfaces de rede. Se este for o caso aprenda a trabalhar a fundo
com firewalls e implemente a segurança da sua rede da forma que melhor
planejar.
15.8.4. Firewall
----------------
15.9.1. /etc/services
---------------------
name
Uma palavra simples que representa o nome do serviço sendo
descrito.
porta/protocolo
Este campo é dividido em dois sub-campos.
* `porta' - Um número que especifica o número da porta em que
o serviço estará disponível. Muitos dos serviços comuns tem
designados um número de serviço. Estes estão descritos no
RFC-1340.
* `protocolo' - Este sub-campo pode ser ajustado para _tcp_ ou
_udp_. É importante notar que o item _18/tcp_ é muito
diferente do item _18/udp_ e que não existe razão técnica
porque o mesmo serviço precisa existir em ambos.
Normalmente o senso comum prevalece e que somente se um
serviço esta disponível em ambos os protocolos _tcp_ e
_udp_, você precisará especificar ambos.
apelidos
Outros nomes podem ser usados para se referir a entrada deste
serviço.
comentário
Qualquer texto aparecendo em uma linha após um caracter "#" é
ignorado e tratado como comentário.
15.9.2. /etc/protocols
----------------------
-------------------------------------------------------------------------------
16.1. O Kernel
--------------
Caso você tenha um dispositivo (como uma placa de som) que tem suporte
no `GNU/Linux' mas não funciona veja Section 16.3, `Como adicionar
suporte a Hardwares e outros dispositivos no kernel'.
16.2. Módulos
-------------
São partes do kernel que são carregadas somente quando são solicitadas
por algum aplicativo ou dispositivo e descarregadas da memória quando
não são mais usadas. Este recurso é útil por 2 motivos: Evita a
construção de um kernel grande (estático) que ocupe grande parte da
memória com todos os drivers compilados e permite que partes do kernel
ocupem a memória somente quando forem necessários.
Quando seu hardware não funciona mas você tem certeza que é suportado
pelo `GNU/Linux', é preciso seguir alguns passos para faze-lo
funcionar corretamente:
16.4. kmod
----------
16.5. lsmod
-----------
16.6. insmod
------------
Onde:
módulo
É o nome do módulo que será carregado.
opções_módulo
Opções que serão usadas pelo módulo. Variam de módulo para
módulo, alguns precisam de opções outros não, tente primeiro
carregar sem opções, caso seja mostrada uma mensagem de erro
verifique as opções usadas por ele. Para detalhes sobre que
opções são suportadas por cada módulo, veja a sua documentação no
código fonte do kernel em `/usr/src/linux/Documentation'
16.7. rmmod
-----------
16.8. modprobe
--------------
Onde:
módulo
É o nome do módulo que será carregado.
opções_módulo
Opções que serão usadas pelo módulo. Variam de módulo para
módulo, alguns precisam de opções outros não, tente primeiro
carregar sem opções, caso seja mostrada uma mensagem de erro
verifique as opções usadas por ele. Para detalhes sobre que
opções são suportadas por cada módulo, veja a sua documentação no
código fonte do kernel em `/usr/src/linux/Documentation'
16.9. depmod
------------
16.10. modconf
--------------
Será que vou precisar recompilar o meu kernel? você deve estar se
perguntando agora. Abaixo alguns motivos para esclarecer suas
dúvidas:
3. Como usuário `root', digite `make config'. Você também pode usar
`make menuconfig' (configuração através de menus) ou `make
xconfig' (configuração em modo gráfico) mas precisará de pacotes
adicionais para que estes dois funcionem corretamente.
image = /vmlinuz
root = /dev/hda1
label = 1
read-only
Depois da modificação:
boot=/dev/hda
prompt
timeout=200
delay=200
map=/boot/map
install=menu
image = /vmlinuz
root = /dev/hda1
label = 1
read-only
image = /vmlinuz-new
root = /dev/hda1
label = 2
read-only
Se você digitar `1' no aviso de `boot:' do `Lilo', o kernel
antigo será carregado, caso digitar `2' o novo kernel será
carregado. Para detalhes veja Section 6.1.1, `Criando o
arquivo de configuração do LILO' e Section 6.1.3, `Um
exemplo do arquivo de configuração lilo.conf'.
5. Execute o comando `lilo' para gravar o novo setor de boot
para o disco rígido.
6. Reinicie o computador
7. Carregue o novo kernel escolhendo a opção `2' no aviso de
`boot:' do `Lilo'. Caso tiver problemas, escolha a opção
`1' para iniciar com o kernel antigo e verifique os passos
de configuração (o arquivo `lilo.conf' foi modificado
corretamente?.
Em alguns casos (como nos kernels empacotados em distribuições
`GNU/Linux') o código fonte do kernel é gravado em um diretório
chamado `kernel-source-xx.xx.xx'. É recomendável fazer um link com um
diretório `GNU/Linux', pois é o padrão usado pelas atualização do
código fonte através de patches (veja Section 16.13, `Aplicando
Patches no kernel').
Seu conteúdo é uma lista de módulos (um por linha) que serão
carregados na inicialização do sistema. Os módulos carregados pelo
arquivo `/etc/modules' pode ser listados usando o comando `lsmod'
(veja Section 16.5, `lsmod'.
16.12.2. modules.conf
---------------------
alias sound sb
options sb io=0x220 irq=5 dma=1 dma16=5 mpuio=0x330
permitirá que seja usado somente o comando `modprobe sb' para ativar a
placa de som.
Para aplicar um patch que atualizará seu kernel 2.2.13 para a versão
2.2.14 você deve proceder da seguinte forma:
* Descompacte o código fonte do kernel 2.2.13 em `/usr/src/linux'
ou certifique-se que existe um link simbólico do código fonte do
kernel para `/usr/src/linux'.
* Copie o arquivo `patch-2.2.14.gz' de ftp://ftp.kernel.org/ para
`/usr/src'.
* Use o comando `gzip -dc patch-2.2.14|patch -p0 -N -E' para
atualizar o código fonte em `/usr/src/linux' para a versão
2.2.14.
Alternativamente você pode primeiro descompactar o arquivo
`patch-2.2.14.gz' com o `gzip' e usar o comando `patch -p0 -N -E
<patch-2.2.14' para atualizar o código fonte do kernel. O
`GNU/Linux' permite que você obtenha o mesmo resultado através de
diferentes métodos, a escolha é somente sua.
-------------------------------------------------------------------------------
Data|Hora|Máquina|daemon|mensagem
17.2.1. syslogd
---------------
`syslogd [_opções_]'
_opções_
-f
Especifica um arquivo de configuração alternativo ao
`/etc/syslog.conf'.
-h
Permite redirecionar mensagens recebidas a outros servidores de
logs especificados.
-l [computadores]
Especifica um ou mais computadores (separados por ":") que
deverão ser registrados somente com o nome de máquina ao invés do
FQDN (nome completo, incluindo domínio).
-m [minutos]
Intervalo em _minutos_ que o syslog mostrará a mensagem
`--MARK--'. O valor padrão padrão é 20 minutos, 0 desativa.
-n
Evita que o processo caia automaticamente em background.
Necessário principalmente se o `syslogd' for controlado pelo
`init'.
-p [soquete]
Especifica um soquete UNIX alternativo ao invés de usar o padrão
`/dev/log'.
-r
Permite o recebimento de mensagens através da rede através da
porta UDP 514. Esta opção é útil para criar um servidor de logs
centralizado na rede. Por padrão, o servidor `syslog' rejeitará
conexões externas.
-s [domínios]
Especifica a lista de domínios (separados por ":") que deverão
ser retirados antes de enviados ao log.
Na distribuição `Debian', o daemon `syslogd' é iniciado através do
script `/etc/init.d/sysklogd'.
#
# Primeiro alguns arquivos de log padrões. Registrados por facilidade
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* /var/log/mail.log
user.* -/var/log/user.log
uucp.* -/var/log/uucp.log
#
# Registro de logs do sistema de mensagens. Divididos para facilitar
# a criação de scripts para manipular estes arquivos.
#
mail.info -/var/log/mail.info
mail.warn -/var/log/mail.warn
mail.err /var/log/mail.err
#
# Alguns arquivos de registro "pega-tudo".
# São usadas "," para especificar mais de uma prioridade (por
# exemplo, "auth,authpriv.none") e ";" para especificar mais de uma
# facilidade.nível que será gravada naquele arquivo.
# Isto permite deixar as regras consideravelmente menores e mais legíveis
#
*.=debug;\
auth,authpriv.none;\
news.none;mail.none -/var/log/debug
*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages
#
# Emergências são enviadas para qualquer um que estiver logado no sistema. Isto
# é feito através da especificação do "*" como destino das mensagens e são
# enviadas através do comando wall.
#
*.emerg *
#
# Eu gosto de ter mensagens mostradas no console, mas somente em consoles que
# não utilizo.
#
#daemon,mail.*;\
# news.=crit;news.=err;news.=notice;\
# *.=debug;*.=info;\
# *.=notice;*.=warn /dev/tty8
17.2.2. klogd
-------------
`klogd [_opções_]'
_opções_
-d
Ativa o modo de depuração do daemon
-f [arquivo]
Envia as mensagens do kernel para o arquivo especificado ao invés
de enviar ao daemon do `syslog'
-i
Envia um sinal para o daemon recarregar os símbolos de módulos do
kernel.
-I
Envia um sinal para o daemon recarregar os símbolos estáticos e
de módulos do kernel.
-n
Evita a operação em segundo plano. Útil se iniciado pelo `init'
-k [arquivo]
Especifica o arquivo que contém os símbolos do kernel. Exemplos
deste arquivo estão localizados em `/boot/System.map-xx.xx.xx'.
A especificação de um arquivo com a opção `-k' é necessária se desejar
que sejam mostradas a tabela de símbolos ao invés de endereços
numéricos do kernel.
17.3. logger
------------
Este comando permite enviar uma mensagem nos log do sistema. A
mensagem é enviada aos logs via daemon `syslogd' ou via soquete do
sistema, é possível especificar a prioridade, nível, um nome
identificando o processo, etc. Seu uso é muito útil em shell scripts
ou em outros eventos do sistema.
Onde:
_mensagem_
Mensagem que será enviada ao daemon _syslog_
_opções_
-i
Registra o PID do processo
-s
Envia a mensagem ambos para a saída padrão (STDOUT) e syslog.
-f [arquivo]
Envia o conteúdo do arquivo especificado como _mensagem_ ao
syslog.
-t [nome]
Especifica o nome do processo responsável pelo log que será
exibido antes do PID na mensagem do syslog.
-p [prioridade]
Especifica a prioridade da mensagem do syslog, especificada como
`facilidade.nível'. Veja os tipos de prioridade/níveis em
Section 17.2.1.1, `Arquivo de configuração `syslog.conf''. O
valor padrão _prioridade.nível_ é _user.notice_
Mais detalhes sobre o funcionamento sobre o daemon de log do sistema
`syslogd', pode ser encontrado em Section 17.2.1, `syslogd'
-------------------------------------------------------------------------------
18. Compactadores
-----------------
18.2. gzip
----------
Onde:
arquivos
Especifica quais arquivos serão compactados pelo `gzip'. Caso
seja usado um `-', será assumido a entrada padrão. Curingas
podem ser usados para especificar vários arquivos de uma só vez
(veja Section 2.2, `Curingas').
Opções
-d, --decompress [arquivo]
Descompacta um arquivo.
-f
Força a compactação, compactando até mesmo links.
-l [arquivo]
Lista o conteúdo de um arquivo compactado pelo `gzip'.
-r
Compacta diretórios e sub-diretórios.
-c [arquivo]
Descompacta o arquivo para a saída padrão.
-t [arquivo]
Testa o arquivo compactado pelo `gzip'.
-[num], --fast, --best
Ajustam a taxa de compactação/velocidade da compactação. Quanto
melhor a taxa menor é a velocidade de compactação e vice versa.
A opção `--fast' permite uma compactação rápida e tamanho do
arquivo maior. A opção `--best' permite uma melhor compactação e
uma velocidade menor.
O uso da opção `-[número]' permite especificar uma compactação
individualmente usando números entre 1 (menor compactação) e 9
(melhor compactação). É útil para buscar um bom equilibro entre
taxa de compactação/velocidade (especialmente em computadores
muito lentos).
Quando um arquivo é compactado pelo `gzip', é automaticamente
acrescentada a extensão `.gz' ao seu nome.
Exemplos:
* `gzip -9 texto.txt' - Compacta o arquivo `texto.txt' usando a
compactação máxima (compare o tamanho do arquivo compactado
usando o comando `ls -la').
* `gzip -d texto.txt.gz' - Descompacta o arquivo `texto.txt'
* `gzip -c texto.txt.gz' - Descompacta o arquivo `texto.txt' para a
tela
* `gzip -9 *.txt' - Compacta todos os arquivos que terminam com
`.txt'
* `gzip -t texto.txt.gz' - Verifica o arquivo `texto.txt.gz'.
18.3. tar
---------
Onde:
arquivo-destino
É o nome do arquivo de destino. Normalmente especificado com a
extensão `.tar' caso seja usado somente o arquivamento ou
`.tar.gz'/`.tgz' caso seja usada a compactação (usando a opção
`-z').
arquivos-origem
Especifica quais arquivos/diretórios serão compactados.
opções
-c, --create
Cria um novo arquivo `.tar'
-t, --list
Lista o conteúdo de um arquivo `.tar'
-u, --update
Atualiza arquivos compactados no arquivo `.tar'
-f, --file [HOST:]F
Usa o arquivo especificado para gravação ou o dispositivo
`/dev/rmt0'.
-j, --bzip2
Usa o programa `bzip2' para processar os arquivos do `tar'
-l, --one-file-system
Não processa arquivos em um sistema de arquivos diferentes de
onde o `tar' foi executado.
-M, --multi-volume
Cria/lista/descompacta arquivos em múltiplos volumes. O uso de
arquivos em múltiplos volumes permite que uma grande cópia de
arquivos que não cabe em um disquete, por exemplo, seja feita em
mais de um disquete.
-o
Grava o arquivo no formato VT7 ao invés do ANSI.
-O, --to-stdout
Descompacta arquivos para a saída padrão ao invés de gravar em um
arquivo.
--remove-files
Apaga os arquivos de origem após serem processados pelo `tar'.
-R, --record-number
Mostra o número de registros dentro de um arquivo `tar' em cada
mensagem.
--totals
Mostra o total de bytes gravados com a opção `--create'.
-v
Mostra os nomes dos arquivos enquanto são processados.
-V [NOME]
Inclui um [NOME] no arquivo `tar'.
-W, --verify
Tenta verificar o arquivo gerado pelo `tar' após grava-lo.
x
Extrai arquivos gerados pelo `tar'
-X [ARQUIVO]
Tenta apagar o [ARQUIVO] dentro de um arquivo compactado `.tar'.
-Z
Usa o programa `compress' durante o processamento dos arquivos.
-z
Usa o programa `gzip' durante o processamento dos arquivos.
--use-compress-program [PROGRAMA]
Usa o [PROGRAMA] durante o processamento dos arquivos. Ele deve
aceitar a opção `-d'.
-[0-7][lmh]
Especifica a unidade e sua densidade.
A extensão precisa ser especificada no arquivo de destino para a
identificação correta:
* Arquivos gerados pelo `tar' precisam ter a extensão `.tar'
* Caso seja usada a opção `-j' para compactação, a extensão deverá
ser `.tar.bz2'
* Caso seja usada a opção `-z' para compactação, a extensão deverá
ser `.tar.gz' ou `.tgz'
* Caso seja usada a opção `-Z' para a compactação, a extensão
deverá ser `.tar.Z' ou `.tgZ'
É importante saber qual qual o tipo de compactador usado durante a
geração do arquivo `.tar' pois será necessário especificar a opção
apropriada para descompacta-lo (para detalhes veja Section 18.1,
`Extensões de arquivos compactados').
Exemplos:
* `tar -cf index.txt.tar index.txt' - Cria um arquivo chamado
`index.txt.tar' que armazenará o arquivo `index.txt'. Você pode
notar digitando `ls -la' que o arquivo `index.txt' foi somente
arquivado (sem compactação), isto é útil para juntar diversos
arquivos em um só.
* `tar -xf index.txt.tar' - Desarquiva o arquivo `index.txt' criado
pelo comando acima.
* `tar -czf index.txt.tar.gz index.txt' - O mesmo que o exemplo de
arquivamento anterior, só que agora é usado a opção `-z'
(compactação através do programa `gzip'). Você agora pode notar
digitando `ls -la' que o arquivo `index.txt' foi compactado e
depois arquivado no arquivo `index.txt.tar.gz' (você também pode
chama-lo de `index.txt.tgz' que também identifica um arquivo
`.tar' compactado pelo `gzip')
* `tar -xzf index.txt.tar.gz' - Descompacta e desarquiva o arquivo
`index.txt.tar.gz' criado com o comando acima.
* `gzip -dc index.tar.gz | tar -xf -' - Faz o mesmo que o comando
acima só que de uma forma diferente: Primeiro descompacta o
arquivo `index.txt.tar.gz' e envia a saída do arquivo
descompactado para o `tar' que desarquivará o arquivo
`index.txt'.
* `tar -cjf index.txt.tar.bz2 index.txt' - Arquiva o arquivo
`index.txt' em `index.txt.tar.bz2' compactando através do `bzip2'
(opção -j).
* `tar -xjf index.txt.tar.bz2' - Descompacta e desarquiva o arquivo
`index.txt.tar.bz2' criado com o comando acima.
* `bzip2 -dc index.txt.tar.bz2 | tar -xf -' - Faz o mesmo que o
comando acima só que de uma forma diferente: Primeiro descompacta
o arquivo `index.txt.tar.bz2' e envia a saída do arquivo
descompactado para o `tar' que desarquivará o arquivo
`index.txt'.
* `tar -t index.txt.tar' - Lista o conteúdo de um arquivo `.tar'.
* `tar -tz index.txt.tar.gz' - Lista o conteúdo de um arquivo
`.tar.gz'.
18.4. bzip2
-----------
É um novo compactador que vem sendo cada vez mais usado porque
consegue atingir a melhor compactação em arquivos texto se comparado
aos já existentes (em conseqüência sua velocidade de compactação
também é menor; quase duas vezes mais lento que o `gzip'). Suas
opções são praticamente as mesmas usadas no `gzip' e você também pode
usa-lo da mesma forma. A extensão dos arquivos compactados pelo
`bzip2' é a `.bz2'
Onde:
arquivos
Especifica quais arquivos serão compactados pelo `bzip2'. Caso
seja usado um `-', será assumido a entrada padrão. Curingas
podem ser usados para especificar vários arquivos de uma só vez
(veja Section 2.2, `Curingas').
Opções
-d, --decompress [arquivo]
Descompacta um arquivo.
-f
Força a compactação, compactando até mesmo links.
-l [arquivo]
Lista o conteúdo de um arquivo compactado pelo `bzip2'.
-r
Compacta diretórios e sub-diretórios.
-c [arquivo]
Descompacta o arquivo para a saída padrão.
-t [arquivo]
Testa o arquivo compactado pelo `bzip2'.
-[num], --fast, --best
Ajustam a taxa de compactação/velocidade da compactação. Quanto
melhor a taxa menor é a velocidade de compactação e vice versa.
A opção `--fast' permite uma compactação rápida e tamanho do
arquivo maior. A opção `--best' permite uma melhor compactação e
uma velocidade menor.
O uso da opção `-[número]' permite especificar uma compactação
individualmente usando números entre 1 (menor compactação) e 9
(melhor compactação). É útil para buscar um bom equilibro entre
taxa de compactação/velocidade (especialmente em computadores
muito lentos).
Quando um arquivo é compactado pelo `bzip2', é automaticamente
acrescentada a extensão `.bz2' ao seu nome. As permissões de acesso
dos arquivos são também armazenadas no arquivo compactado.
Exemplos:
* `bzip2 -9 texto.txt' - Compacta o arquivo `texto.txt' usando a
compactação máxima (compare o tamanho do arquivo compactado
usando o comando `ls -la').
* `bzip2 -d texto.txt.bz2' - Descompacta o arquivo `texto.txt'
* `bzip2 -c texto.txt.bz2' - Descompacta o arquivo `texto.txt' para
a saída padrão (tela)
* `bzip2 -9 *.txt' - Compacta todos os arquivos que terminam com
`.txt'
* `bzip2 -t texto.txt.bz2' - Verifica o arquivo `texto.txt.bz2'.
-------------------------------------------------------------------------------
19.1. dpkg
----------
19.1.1. Pacotes
---------------
19.1.3. Dependências
--------------------
A checagem de pacotes com este tipo de problema pode ser feita através
do comando:
Use o comando:
`dpkg --get-selections'
Use o comando:
Use o comando:
19.2. apt
---------
Segue abaixo uma relação de servidores que podem ser colocados em seu
arquivo `sources.list':
# Non-US da Stable
deb ftp://ftp.debian.org.br/debian-non-US stable/non-US main non-free contrib
# Kde 1 e 2
# deb ftp://kde.tdyc.com/pub/kde/debian woody main crypto optional qt1apps
Este comando pode ser usado com alguma freqüência se estiver usando a
distribuição stable e sempre se estiver usando a unstable (os pacotes
são modificados com muita freqüência). Sempre utilize o `apt-get
update' antes de atualizar toda a distribuição.
apt-cdrom add
A cópia dos arquivos pelo `apt' pode ser feita via `FTP', `HTTP' ou
através de uma cópia local dos arquivos no disco rígido (um _mirror_
local). Em nenhuma circunstância os pacotes existentes em seu sistema
serão removidos ou sua configuração apagada durante um `upgrade' na
distribuição.
export LANG=C
export LC_ALL=C
export LC_MESSAGES=C
O utilitário `apt-cache' pode ser usado para esta função. Ele também
possui outras utilidades interessante para a procura e manipulação da
lista de pacotes.
usr/bin/perlcc interpreters/perl
usr/bin/psmandup text/a2ps
usr/bin/pdiff text/a2ps
usr/bin/psset text/a2ps
usr/bin/composeglyphs text/a2ps
usr/bin/a2psj text/a2ps-perl-ja
usr/bin/a2ps text/a2ps
usr/bin/fixps text/a2ps
usr/bin/ogonkify text/a2ps
usr/bin/fixnt text/a2ps
usr/bin/card text/a2ps
usr/bin/texi2dvi4a2ps text/a2ps
-------------------------------------------------------------------------------
Exemplo: Para criar uma variável chamada `TESTE' que contenha o valor
`123456' digite: `export TESTE=123456'. Agora para ver o resultado
digite: `echo $TESTE' ou `set|grep TESTE'. Note que o `$' que
antecede o nome `TESTE' serve para identificar que se trata de uma
variável e não de um arquivo comum.
20.3. alias
-----------
Permite criar um apelido a um comando ou programa. Por exemplo, se
você gosta de digitar (como eu) o comando `ls --color=auto' para ver
uma listagem longa e colorida, você pode usar o comando `alias' para
facilitar as coisas digitando: `alias ls='ls --color=auto'' (não se
esqueça da meia aspa 'para identificar o comando'). Agora quando você
digitar `ls', a listagem será mostrada com cores.
Se quiser utilizar isto toda vez que entrar no sistema, veja Section
20.5, `Arquivo `.bash_profile'' e Section 20.6, `Arquivo `.bashrc''.
Caso o `bash' seja carregado através de um shell que não requer login
(um terminal no X, por exemplo), o seguinte arquivo é executado:
`~/.bashrc'.
LANG=pt_BR
LC_ALL=pt_BR
LC_MESSAGES=pt_BR
-------------------------------------------------------------------------------
21. Impressão
-------------
Hora da diversão:
* Copie os arquivos `tiger.ps.gz' e `alphabet.ps.gz' do diretório
`/usr/share/doc/gs/examples' (sistemas `Debian') para `/tmp' e
descompacte-os com o comando `gzip -d tiger.ps.gz e gzip -d
alphabet.ps.gz'. Se a sua distribuição não possui arquivos de
exemplo ou você não encontra nenhuma referência de onde se
localizam, mande um e-mail que os envio os 2 arquivos acima (são
32Kb).
* O Ghost Script requer um monitor EGA, VGA ou superior para a
visualização dos seus arquivos (não tenho certeza se ele funciona
com monitores CGA ou Hércules Monocromático) .
Para visualizar os arquivos na tela digite:
gs tiger.ps
gs alphabet.ps
Para sair do `Ghost Script' pressione `CTRL+C'. Neste ponto você
deve ter visto um desenho de um tigre e (talvez) letras do
alfabeto.
Se o comando `gs alphabet.ps' mostrou somente uma tela em branco,
você se esqueceu de instalar as fontes do Ghost Script (estão
localizadas no pacote `gsfonts' na distribuição Debian).
* Para imprimir o arquivo `alphabet.ps' use o comando:
gs -q -dSAFER -dNOPAUSE -sDEVICE=epson -r240x72 -sPAPERSIZE=legal -sOutputFile=/dev/lp0
alphabet.ps
O arquivo `alphabet.ps' deve ser impresso. Caso aparecerem
mensagens como `Error: /invalidfont in findfont' no lugar das
letras, você se esqueceu de instalar ou configurar as fontes do
Ghost Script. Instale o pacote de fontes (`gsfonts' na `Debian')
ou verifique a documentação sobre como configurar as fontes.
Cada uma das opções acima descrevem o seguinte:
* `-q, -dQUIET' - Não mostra mensagens de inicialização do
Ghost Script.
* `-dSAFER' - É uma opção para ambientes seguros, pois
desativa a operação de mudança de nome e deleção de arquivo
e permite somente a abertura dos arquivos no modo somente
leitura.
* `-dNOPAUSE' - Desativa a pausa no final de cada página
processada.
* `-sDEVICE=dispositivo' - Dispositivo que receberá a saída do
Ghost Script. Neste local pode ser especificada a marca o
modelo de sua impressora ou um formato de arquivo diferente
(como pcxmono, bmp256) para que o arquivo `.ps' seja
convertido para o formato designado.
Para detalhes sobre os dispositivos disponíveis em seu Ghost
Script, digite `gs --help|less' ou veja a página de manual.
Normalmente os nomes de impressoras e modelos são
concatenados, por exemplo, bjc600 para a impressora _Canon
BJC 600_, epson para impressoras padrão epson, stcolor para
_Epson Stylus color_, etc.
O Hardware-HOWTO contém referências sobre hardware
suportados pelo `GNU/Linux', tal como impressoras e sua
leitura pode ser útil.
* `-r<ResH>x<ResV>' - Define a resolução de impressão (em dpi)
Horizontal e Vertical. Os valores dependem de sua
impressora.
* `-sPAPERSIZE=tamanho' - Tamanho do papel. Podem ser usados
a4, legal, letter, etc. Veja a página de manual do gs para
ver os outros tipos suportados e suas medidas.
* `-sOutputFile=dispositivo' - Dispositivo que receberá a
saída de processamento do gs. Você pode especificar
* `arquivo.epson' - Nome do arquivo que receberá todo o
resultado do processamento. O `arquivo.epson' terá
toda a impressão codificada no formato entendido por
impressoras epson e poderá ser impresso com o comando
`cat arquivo.epson >/dev/lp0'.
Uma curiosidade útil: É possível imprimir este arquivo
em outros sistemas operacionais, tal como o `DOS'
digitando: `copy /b arquivo.eps prn' (lembre-se que o
`DOS' tem um limite de 8 letras no nome do arquivo e 3
na extensão. Você deve estar compreendendo a
flexibilidade que o `GNU/Linux' e suas ferramentas
permitem, isso é só o começo.
* `impressao%d.epson' - Nome do arquivo que receberá o
resultado do processamento. Cada página será gravada
em arquivos separados como `impressao1.epson',
`impressao2.epson'.
Os arquivos podem ser impressos usando os mesmos
métodos acima.
* `/dev/lp0' para uma impressora em `/dev/lp0'
* `-' para redirecionar a saída de processamento do `gs'
para a saída padrão. É útil para usar o gs com pipes
`|'.
* `\|lpr' - Envia a saída do Ghost Script para o daemon
de impressão. O objetivo é deixar a impressão mais
rápida.
Se você é curioso ou não esta satisfeito com as opções
mostradas acima, veja a página de manual do `gs'.
:if=/etc/magicfilter/epson9-filter
Não tenho nenhum contrato de divulgação com a _epson_ :-) estou usando
esta marca de impressora porque é a mais tradicional e facilmente
encontrada. A linha que começa com `:if' no `magicfilter' identifica
um arquivo de filtro de impressão.
#! /usr/sbin/magicfilter
#
# Magic filter setup file for 9-pin Epson (or compatible) printers
#
# This file is in the public domain.
#
# This file has been automatically adapted to your system.
#
# wild guess: native control codes start with ESC
0 \033 cat
# PostScript
0 %! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit
0 \004%! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit
# PDF
0 %PDF fpipe /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- $FILE -c quit
# TeX DVI
0 \367\002 fpipe /usr/bin/dvips -X 120 -Y 72 -R -q -f
# compress'd data
0 \037\235 pipe /bin/gzip -cdq
# troff documents
0 .\?\?\040 fpipe `/usr/bin/grog -Tps $FILE`
0 .\\\" fpipe `/usr/bin/grog -Tps $FILE`
0 '\\\" fpipe `/usr/bin/grog -Tps $FILE`
0 '.\\\" fpipe `/usr/bin/grog -Tps $FILE`
0 \\\" fpipe `/usr/bin/grog -Tps $FILE`
Você deve ter notado que para cada tipo de arquivo existe o respectivo
programa que é executado, basta você modificar as opções usadas nos
programas neste arquivo (como faria na linha de comando) para afetar o
comportamento da impressão.
-------------------------------------------------------------------------------
22.1. Acentuação
----------------
Note que os mapas de teclado usados em modo texto são diferentes dos
usados em modo gráfico. Geralmente os mapas de teclados para o modo
gráfico tem uma letra `X' no nome.
_Mapa de Teclados_
Debian 2.2 (Potato)
Verifique se possui o arquivo de _mapa de teclado_
correspondente ao seu modelo. Um mapa de teclado são
arquivos com a extensão `.map' ou `.kmap' que fazem a
tradução do código enviado pelo teclado para um caracter que
será exibido na tela além de outras funções como o "Dead
Keys" (pressionamento de uma tecla que não gera nenhum
caracter mas afetará o próximo caracter gerado - como na
acentuação, quando você aperta o `'' não aparece nada mas
após apertar a letra `A' um caracter `Á' é exibido. A
combinação `'' + `A' é um _Dead Key_ e está definido no
arquivo do mapa de teclados).
Os tipos de teclados mais usados aqui no Brasil são o
_padrão EUA_ e o _ABNT2_. O teclado _padrão EUA_ é o modelo
usado nos Estados Unidos e você precisará apertar `''+`C'
para gerar um _Cedilha (ç)_, enquanto o teclado ABNT2 possui
todas as teclas usadas no Brasil (semelhante a uma máquina
de escrever) e o _Cedilha_ possui sua própria tecla após a
letra `L'. O mapa de teclados correspondente ao teclado
_padrão EUA_ é o `br-latin1' enquanto o _ABNT2_ é o
`br-abnt2'.
Se não tiver o arquivo correspondente ao seu teclado ou não
encontra-lo, você poderá copia-lo de
http://www.guiafoca.org/download/outros/Consolemaps_tar.gz,
este arquivo possui 3 mapas de teclados para os 2 teclados
Brasileiros mais usados e um de Portugal (raramente usado no
Brasil). Descompacte o arquivo `Consolemaps_tar.gz' para um
local em seu sistema (por exemplo: `/tmp') com o comando:
`tar -xzvf Consolemaps_tar.gz'. Note que este arquivo serve
somente para a configuração no modo texto (console), veja a
seção seguinte para configurar a acentuação no modo gráfico.
Debian 3.0 (Woody)
Digite `dpkg-reconfigure console-data'. Após a tela
inicial, selecione a opção `Select Keymap from Arch List',
`qwerty' e selecione os passos seguintes de acordo com seu
tipo de teclado:
* `Us Internacional' - Selecione `US American' na lista
de opções e em seguida `Standard' e `US International
(ISO-8859-1)'.
* `ABNT2 (com cedilha)' - Selecione `Brazilian' na lista
de opções.
Esta linha diz ao sistema que _fonte_ deve carregar para mostrar
os caracteres na tela. A fonte de caracteres deve ser compatível
com o idioma local, pois nem todas suportam caracteres
acentuados. A fonte preferível para exibir os caracteres
acentuados é a `lat1u-16', o `-16' no nome do arquivo significa o
tamanho da fonte. As fontes de tela estão disponíveis no
diretório `/usr/share/consolefonts'.
set meta-flag on
_Mapa de Teclados_
Verifique se possui o arquivo de mapa de teclado para o modo
gráfico que corresponde ao seu teclado. Um arquivo de mapa de
teclado faz a tradução do código enviado pelo teclado para um
caracter que será exibido na tela. Este tipo de arquivo é
identificado com a extensão `.map'. Se não tiver este arquivo ou
não encontra-lo, você pode copia-lo de
http://www.guiafoca.org/download/outros/Xmodmaps_tar.gz, este
arquivo possui 3 mapas de teclados para os 2 teclados Brasileiros
mais usados e um de Portugal. Descompacte o arquivo
`Xmodmaps_tar.gz' para um local em seu sistema (por exemplo:
`/tmp') com o comando: `tar -xzvf Xmodmaps-tar.gz'. Note que os
mapas de teclado do `Xmodmaps_tar.gz' somente servem para a
configuração no modo gráfico (X-Window).
_Acentuação no X_
Para acentuar no X você precisará descompactar e copiar o arquivo
de mapa de teclado adequado ao seu computador em cima do arquivo
`/etc/X11/Xmodmap' que já está em seu sistema. No meu caso, eu
usei o seguinte comando (após descompactar o arquivo): `"cp
`Xmodmap.us+' `/etc/X11/Xmodmap'"'. Agora você precisa reiniciar
o servidor X para que as alterações façam efeito (ou digite
`xmodmap /etc/X11/Xmodmap' no `xterm' para aplicar as alterações
na seção atual).
_Acentuação no XDM_
Para acentuar no `XDM', inclua as seguintes linhas no arquivo
`/etc/X11/xdm/Xsetup_0':
sysmodmap=/etc/X11/Xmodmap
if [ -r $sysmodmap ]; then
xmodmap $sysmodmap
fi
Uma boa escolha para uma melhor qualidade e maior velocidade é _16
bits_. O motivo disto é que quanto maior a qualidade e a resolução,
mais tempo será levado para os pixels serem atualizados no monitor.
Veja abaixo como configurar o número de cores para quem esta iniciando
o X-Window pelo modo texto e `XDM'.
Uma maneira mais prática de iniciar sempre com uma mesma resolução é
incluir um `alias' no arquivo `.bashrc' em seu diretório: `alias
startx='startx -- -bpp 8''
eu a modifiquei para
Lembre-se: Quanto mais cores usar e maior for sua resolução, mais
lento ficará a velocidade de vídeo. Por este motivo alguns jogos se
recusam a funcionar com mais de 8 bits de cores.
-------------------------------------------------------------------------------
23.1.1. fsck.ext2
-----------------
Onde:
dispositivo
É o local que contém o sistema de arquivos `EXT2/EXT3' que será
verificado (partições, disquetes, arquivos).
opções
-c
Faz o `fsck.ext2' verificar se existem agrupamentos danificados
na unidade de disco durante a checagem.
-d
Debug - Mostra detalhes de processamento do `fsck.ext2'.
-f
Força a checagem mesmo se o sistema de arquivos aparenta estar em
bom estado. Por padrão, um sistema de arquivos que aparentar
estar em bom estado não são verificados.
-F
Grava os dados do cache no disco antes de iniciar.
-l [arquivo]
Inclui os blocos listados no [arquivo] como blocos defeituosos no
sistema de arquivos. O formato deste arquivo é o mesmo gerado
pelo programa `badblocks'.
-L [arquivo]
Faz o mesmo que a opção `-l', só que a lista de blocos
defeituosos do dispositivo é completamente limpa e depois a lista
do [arquivo] é adicionada.
-n
Faz uma verificação de `somente leitura' no sistema de arquivos.
Com esta opção é possível verificar o sistema de arquivos
montado. Será assumido `não' para todas as perguntas e nenhuma
modificação será feita no sistema de arquivos.
Caso a opção `-c' seja usada junto com `-n', `-l' ou `-L', o
sistema de arquivos será verificado e permitirá somente a
atualização dos setores danificados não alterando qualquer outra
área.
-p
Corrige automaticamente o sistema de arquivos sem perguntar. É
recomendável fazer isto manualmente para entender o que
aconteceu, em caso de problemas com o sistema de arquivos.
-v
Ativa o modo verbose (mais mensagens são mostradas durante a
execução do programa).
-y
Assume `sim' para todas as questões.
Caso sejam encontrados arquivos problemáticos e estes não possam ser
recuperados, o `fsck.ext2' perguntará se deseja salva-los no diretório
`lost+found'. Este diretório é encontrado em todas as partições
_ext2_. Não há risco de usar o `fsck.ext3' em uma partição `EXT2'.
23.2. reiserfsck
----------------
_dispositivo_
Dispositivo que contém o sistema de arquivos `reiserfs' que será
verificado.
_opções_
-a
Mostra detalhes sobre o sistema de arquivos e sai
-j arquivo
Especifica um arquivo de Journal alternativo usado pelo sistema
de arquivos.
-q quiet
Não exibe mensagens sobre o status da checagem do sistema de
arquivos.
-S
Constrói a árvore de todos os blocos do dispositivo.
O `reiserfsck' possui outros modos de operação além de checagem (o
padrão), para detalhes veja a página de manual do programa.
23.3. fsck.minix
----------------
Onde:
dispositivo
Partição, disquete ou arquivo que contém o sistema de arquivos
`Minix' que será verificado
opções
-f
Verifica o sistema de arquivos mesmo se ele estiver perfeito.
-r
Permite reparo manual do sistema de arquivos
-a
Permite um reparo automático do sistema de arquivos. É
recomendado fazer o reparo manual.
-v
Verbose - Mostra detalhes durante a execução do programa
-s
Exibe detalhes sobre os blocos de root.
23.4. badblocks
---------------
Onde:
dispositivo
Partição, disquete ou arquivo que contém o sistema de arquivos
que será verificado.
opções
-b [tamanho]
Especifica o [tamanho] do bloco do dispositivo em bytes
-o [arquivo]
Gera uma lista dos blocos defeituosos do disco no [arquivo].
Este lista pode ser usada com o programa `fsck.ext2' junto com a
opção `-l'.
-s
Mostra o número de blocos checados durante a execução do
`badblocks'.
-v
Modo verbose - São mostrados mais detalhes.
-w
Usa o modo leitura/gravação. Usando esta opção o `badblocks'
procura por blocos defeituosos gravando alguns padrões (0xaa,
0x55, 0xff, 0x00) em cada bloco do dispositivo e comparando seu
conteúdo.
Nunca use a opção `-w' em um dispositivo que contém arquivos pois
eles serão apagados!
23.5. defrag
------------
Permite desfragmentar uma unidade de disco. A fragmentação é o
armazenamento de arquivos em áreas não seqüenciais (uma parte é
armazenada no começo a outra no final, etc), isto diminui o desempenho
da unidade de disco porque a leitura deverá ser interrompida e feita a
movimentação da cabeça para outra região do disco onde o arquivo
continua, por este motivo discos fragmentados tendem a fazer um grande
barulho na leitura e o desempenho menor.
Onde:
dispositivo
Partição, arquivo, disquete que contém o sistema de arquivos que
será desfragmentado.
-d
Debug - serão mostrados detalhes do funcionamento
-n
Não mostra o mapa do disco na desfragmentação. É útil quando
você inicializa por disquetes e recebe a mensagem "Failed do open
term Linux" ao tentar executar o `e2defrag'.
-r
Modo somente leitura. O defrag simulará sua execução no sistema
de arquivos mas não fará nenhuma gravação. Esta opção permite
que o defrag seja usado com sistema de arquivos montado.
-s
Cria um sumário da fragmentação do sistema de arquivos e
performance do desfragmentador.
-v
Mostra detalhes durante a desfragmentação do sistema de arquivos.
Caso mais de uma opção -v seja usada, o nível de detalhes será
maior.
-i [arquivo]
Permite definir uma lista de prioridades em que um arquivo será
gravado no disco, com isto é possível determinar se um arquivo
será gravado no começo ou final da unidade de disco. Esta lista
é lida do [arquivo] e deve conter uma lista de prioridades de
-100 a 100 para cada inodo do sistema de arquivos. Arquivos com
prioridade alta serão gravados no começo do disco.
Todos os inodos terão prioridade igual a zero caso a opção `-i'
não seja usada ou o inodo não seja especificado no [arquivo]. O
[arquivo] deverá conter uma série de linhas com um número (inodo)
ou um número prefixado por um sinal de igual seguido da
prioridade.
-p [numero]
Define o [numero] de buffers que serão usados pela ferramenta de
desfragmentação na realocação de dados, quanto mais buffers mais
eficiente será o processo de realocação. O número depende de
quantidade memória RAM e Swap você possui. Por padrão 512
buffers são usados correspondendo a 512Kb de buffer (em um
sistema de arquivos de blocos com 1Kb).
Não é recomendável apagar um arquivo de log pois ele pode ser criado
com permissões de acesso indevidas (algumas distribuições fazem isso).
Você pode usar o comando: `echo -n >arquivo' ou o seguinte shell
script para zerar todos os arquivos de LOG de uma só vez (as linhas
iniciante com `#' são comentários):
#! /bin/sh
cd /var/log
for l in `ls -p|grep '/'`; do
echo -n >$l &>/dev/null
echo Zerando arquivo $l...
done
echo Limpeza dos arquivos de log concluída!
Uma situação que você deve ter se deparado (ou algum dia ainda vai se
deparar) é precisar alterar a senha de root e não sabe ou não lembra a
senha atual. Esta situação também pode ser encontrada quando ocorre
uma falha de disco, falha elétrica, reparos em uma máquina que não
detém sua manutenção, etc. A melhor notícia é que a alteração da
senha de root é possível e não apresenta problema qualquer para o
sistema. Existem várias formas para se fazer isto, a forma que
descreverei abaixo assume que você tem acesso a um outro dispositivo
de partida que não seja o HD do Linux (_CD-ROM_, _disquetes_, _outro
disco rígido_, etc). Assim, mesmo que encontre uma senha de BIOS em
uma máquina, poderá colocar o disco rígido em outra máquina e executar
estes procedimentos.
23.11. cron
-----------
Onde:
Minuto
Valor entre 0 e 59
Hora
Valor entre 0 e 23
Dia do Mês
Valor entre 0 e 31
Mês
Valor entre 0 e 12 (identificando os meses de Janeiro a Dezembro)
Dia da Semana
Valor entre 0 e 7 (identificando os dias de Domingo a Sábado).
Note que tanto 0 e 7 equivalem a Domingo.
usuário
O usuário especificado será usado para executar o comando (o
usuário deverá existir).
comando
Comando que será executado. Podem ser usados parâmetros normais
usados na linha de comando.
Os campos do arquivo são separados por um ou mais espaços ou
tabulações. Um asterisco `*' pode ser usado nos campos de data e hora
para especificar todo o intervalo disponível. O hífen `-' serve para
especificar períodos de execução (incluindo a o número inicial/final).
A vírgula serve para especificar lista de números. Passos podem ser
especificados através de uma `/'. Veja os exemplos no final desta
seção.
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
00 10 * * * root sync
# Executa o comando sync todo o dia as 10:00
00 06 * * 1 root updatedb
# Executa o comando updatedb toda segunda-feira as 06:00.
10,20,40 * * * * root runq
# Executa o comando runq todos os dias e a toda a hora em 10, 20 e 40 minutos.
*/10 * * * * root fetchmail
# Executa o comando fetchmail de 10 em 10 minutos todos os dias
15 0 25 12 * root echo "Feliz Natal"|mail john
# Envia um e-mail as 0:15 todo o dia 25/12 para john desejando um feliz natal.
30 5 * * 1-6 root poff
# Executa o comando poff automaticamente as 5:30 de segunda-feira a sábado.
23.12. at
---------
-------------------------------------------------------------------------------
OBS: Somente modifique aquilo que tem certeza do que está fazendo, um
valor modificado incorretamente poderá causar falhas na segurança de
sua rede ou no sistemas de arquivos do disco.
Este diretório contém uma lista de arquivos que são executados pelo
programa `update-menu' para criar os menus dos programas.
24.6. Arquivo `/etc/menu-methods/menu-translate'
------------------------------------------------
O método _loopback_
É usado para configurar a interface _loopback_ (lo) IPv4.
O método _static_
É usado para configurar um endereço IPv4 fixo para a interface.
As opções que podem ser usadas com o métodos _static_ são as
seguintes (opções marcadas com * no final são requeridas na
configuração):
address _endereço_ *
Endereço IP da Interface de rede (por exemplo, 192.168.1.1).
netmask _máscara_ *
Máscara de rede da Interface de rede (por exemplo,
255.255.255.0).
broadcast _endereço_
Endereço de Broadcast da interface (por exemplo,
192.168.1.255).
network _endereço_
Endereço da rede (por exemplo, 192.168.0.0).
gateway _endereço_
Endereço do gateway padrão (por exemplo, 192.168.1.10). O
gateway é o endereço do computador responsável por conectar
o seu computador a outra rede. Use somente se for
necessário em sua rede.
O método _dhcp_
Este método é usado para obter os parâmetros de configuração
através de um servidor DHCP da rede através das ferramentas:
`dhclient', `pump' (somente Kernels 2.2.x) ou `dpcpcp' (somente
kernels 2.0.x e 2.2.x)
hostname _nome_
Nome da estação de trabalho que será requisitado. (pump,
dhcpcd)
leasehours _leasttime_
Lease time preferida em horas (pump)
leasetime _leasetime_
Lease time preferida em segundos (dhcpcd)
vendor _vendedor_
Identificador do vendedor (dhcpcd)
cliente _identificação_
Identificação do cliente (dhcpcd)
O método _bootp_
Este método pode ser usado para obter um endereço via `bootp':
bootfile `arquivo'
Diz ao servidor para utilizar `arquivo' como arquivo de
inicialização
server _endereço_
Especifica o endereço do servidor `bootp'.
hwaddr _endereço_
Usa _endereço_ como endereço de hardware no lugar do
endereço original.
Contém arquivos de configuração usados pelo daemon pppd para fazer uma
conexão com uma rede PPP externa, criados manualmente ou através do
`pppconfig'.
O terceiro campo deve conter uma lista de terminais tty (para logins
locais), nomes de computadores, nomes de domínios (iniciando com um
`.'), endereço IP de computadores ou endereço IP de redes (finalizando
com `.'). Também pode ser usada a palavra `ALL', `LOCAL' e `EXCEPT'
(atinge somente máquinas locais conhecidas pelo sistema).
# Todas as outras contas que não se encaixam nas regras acima, podem acessar de
# qualquer lugar
O `tipo' pode ser `soft' para o limite mínimos e `hard' para o limite
máximo. O campo `item' pode ser um dos seguintes:
* `core' - limita o tamanho do arquivo core (KB)
* `data' - tamanho máximo de dados (KB)
* `fsize' - Tamanho máximo de arquivo (KB)
* `memlock' - Espaço máximo de endereços bloqueados na memória (KB)
* `nofile' - Número máximo de arquivos abertos
* `rss' - Tamanho máximo dos programas residentes (KB)
* `stack' - Tamanho máximo de pilha (KB)
* `cpu' - Tempo máximo usado na CPU (MIN)
* `nproc' - Número máximo de processos
* `as' - Limite de espaço de endereços
* `maxlogins' - Número máximo de logins deste usuário
* `priority' - Prioridade que os programas deste usuário serão
executados
* soft core 0
* hard rss 10000
@student hard nproc 20
@faculty soft nproc 20
@faculty hard nproc 50
ftp hard nproc 0
@student - maxlogins 4
Veja Section 23.11, `cron' para mais detalhes sobre o formato deste
arquivo e outras opções.
ALL: ALL
Contém uma lista de endereços reservados que não deverão ser usados
pelo `isapnp'.
-------------------------------------------------------------------------------
11. Agora digite o número do telefone para fazer conexão com o seu
provedor de acesso.
Este arquivo é lido pelo `fetchmail' na ordem que foi escrito. Veja a
explicação abaixo sobre o arquivo exemplo:
* A palavra `poll' especifica o servidor de onde suas mensagens
serão baixadas, o servidor especificado no exemplo é
`pop3.seuprovedor.com.bt'. A palavra `skip' pode ser
especificada, mas as mensagens no servidor especificado por
`skip' somente serão baixadas caso o nome do servidor de
mensagens for especificado através da linha de comando do
`fetchmail'.
* `protocol' é o protocolo que será usado para a transferência de
mensagens do servidor. O `fetchmail' utilizará a auto-detecção
de protocolo caso este não seja especificado.
* `user' define o nome do usuário no servidor
pop3.seuprovedor.com.br, que no exemplo acima é `gleydson'.
* `password' define a senha do usuário `gleydson' (acima),
especificada como `sua_senha' no exemplo.
* `keep' é opcional e serve para não apagar as mensagens do
servidor após baixa-las (útil para testes e acesso a uma única
conta de e-mail através de vários locais, como na empresa e sua
casa por exemplo).
* `fetchall' baixa todas as mensagens do provedor marcadas como
lidas e não lidas.
* `is gleydson here' é um modo de especificar que as mensagens
obtidas de `pop3.seuprovedor.com.br' do usuário `gleydson' com a
senha `sua_senha' serão entregues para o usuário local `gleydson'
no diretório `/var/mail/gleydson'.
As palavras `is' e `here' são completamente ignoradas pelo
`fetchmail', servem somente para dar um tom de linguagem natural
na configuração do programa e da mesma forma facilitar a
compreensão da configuração.
Se possuir várias contas no servidor `pop3.seuprovedor.com.br', não é
necessário repetir toda a configuração para cada conta, ao invés disso
especifique somente os outros usuários do mesmo servidor:
poll pop3.seuprovedor.com.br protocol pop3
user gleydson password sua_senha keep fetchall is gleydson here
user conta2 password sua_senha2 fetchall is gleydson here
user conta3 password sua_senha3 fetchall is gleydson here
Agora você pode usar um programa MUA como o `mutt' ou `pine' para ler
localmente as mensagens. O armazenamento de mensagens no diretório
`/var/mail' é preferido pois permite a utilização de programas de
notificação de novos e-mais como o `comsat', `mailleds', `biff', etc.
PATH=/usr/bin:/bin:/usr/local/bin:
MAILDIR=$HOME/Mail
DEFAULT=$MAILDIR/mbox
LOGFILE=$MAILDIR/log
:0:
* ^Subject:.*Linux
mensagens-linux
Se quiser que o `procmail' seja executado pelo MDA local, basta criar
um arquivo `~/.forward' no diretório do usuário e incluir a linha
`exec /usr/bin/procmail' (note que em algumas implementações do
`exim', o `procmail' é executado automaticamente caso um arquivo
`~/.procmailrc' seja encontrado, caso contrário será necessário
adicionar a linha "/usr/bin/procmail" ao arquivo `~/.forward' (somente
`exim').
-------------------------------------------------------------------------------
26.3. Iniciando o X
-------------------
26.4. Servidor X
----------------
-------------------------------------------------------------------------------
_onde:_
_seção_
É a seção de manual que será aberta, se omitido, mostra a
_primeira_ seção sobre o comando encontrada (em ordem crescente).
_comando/arquivo_
Comando/arquivo que deseja pesquisar.
A navegação dentro das páginas de manual é feita usando-se as teclas:
* q - Sai da página de manual
* PageDown ou f - Rola 25 linhas abaixo
* PageUP ou w - Rola 25 linhas acima
* SetaAcima ou k - Rola 1 linha acima
* SetaAbaixo ou e - Rola 1 linha abaixo
* r - Redesenha a tela (refresh)
* p ou g - Inicio da página
* h - Ajuda sobre as opções da página de manual
* s - Salva a página de manual em formato texto no arquivo
especificado (por exemplo: `/tmp/ls').
6. Jogos
`info [_comando/programa_]'
Ajuda rápida, é útil para sabermos quais opções podem ser usadas com o
comando/programa. Quase todos os comandos/programas `GNU/Linux'
oferecem este recurso que é útil para consultas rápidas (e quando não
precisamos dos detalhes das páginas de manual). É útil quando se sabe
o nome do programa mas deseja saber quais são as opções disponíveis e
para o que cada uma serve. Para acionar o _help on line_, digite:
`[_comando_] --help'
27.4. help
----------
Ajuda rápida, útil para saber que opções podem ser usadas com os
_comandos internos_ do interpretador de comandos. O comando `help'
somente mostra a ajuda para comandos internos, para ter uma ajuda
similar para comandos externos, veja Section 27.3, `Help on line'.
Para usar o `help' digite:
`help [_comando_]'
27.5. apropos/whatis
--------------------
`apropos [_descrição_]'
27.6. locate
------------
`locate [_expressão_]'
27.7. which
-----------
`which [_programa/comando_]'.
`/usr/doc/`[_programa_]''.
27.9. FAQ
---------
`/usr/doc/FAQ/`[_programa_]''.
27.10. RFC's
------------
0001
PADRÕES OFICIAIS DO PROTOCOLO INTERNET. J. Reynolds, R.
Braden. Março 2000. (Formato: TXT=86139 bytes) (Deixa obsoleto
RFC2500, RFC2400, RFC2300, RFC2200, RFC2000, RFC1920, RFC1880,
RFC1800, RFC1780, RFC1720, RFC1610, RFC1600, RFC1540, RFC1500,
RFC1410, RFC1360, RFC1280, RFC1250, RFC1200, RFC1140, RFC1130,
RFC1100, RFC1083) (Também RFC2600)
0002
Números designados. J. Reynolds, J. Postel. Outubro 1994.
(Formato: TXT=458860 bytes) (Também RFC1700)
0003
Requerimentos do sistema. R. Braden. Outubro 1989. (Formato:
TXT=528939 bytes) (Também RFC1122, RFC1123)
0004
Requerimentos do Gateway. R. Braden, J. Postel. Junho 1987.
(Formato: TXT=125039 bytes) (Também RFC1009)
0005
Protocolo Internet. J. Postel. Setembro 1981. (Formato:
TXT=241903 bytes) (Também RFC0791, RFC0950, RFC0919, RFC0922,
RFC792, RFC1112)
0006
User Datagram Protocol. J. Postel. Agosto 1980. (Formato:
TXT=5896 bytes) (Também RFC0768)
0007
Transmission Control Protocol. J. Postel. September 1981.
(Formato: TXT=172710 bytes) (Também RFC0793)
0008
Protocolo Telnet. J. Postel, J. Reynolds. Maio 1983.
(Formato: TXT=44639 bytes) (Também RFC0854, RFC0855)
0009
File Transfer Protocol. J. Postel, J. Reynolds. Outubro 1985.
(Formato: TXT=148316 bytes) (Também RFC0959)
0010
SMTP Service Extensions. J. Klensin, N. Freed, M. Rose, E.
Stefferud & D. Crocker. Novembro 1995. (Formato: TXT=23299
bytes) (Deixa obsoleto RFC1651) (Também RFC821, RFC1869)
0011
Standard for the format of ARPA Internet text messages. D.
Crocker. 13-Ago-1982. (Formato: TXT=109200 bytes) (Deixa
obsoleto RFC1653) (Também RFC0822)
0012
Network Time Protocol. D. Mills. Setembro 1989. (Formato:
TXT=193 bytes) (Também RFC1119)
0013
Domain Name System. P. Mockapetris. Novembro 1987. (Formato:
TXT=248726 bytes) (Também RFC1034, RFC1035)
0014
Mail Routing and the Domain System. C. Partridge. Janeiro
1986. (Formato: TXT=18182 bytes) (Também RFC0974)
0015
Simple Network Management Protocol. J. Case, M. Fedor, M.
Schoffstall, J. Davin. Maio 1990. (Formato: TXT=72876 bytes)
(Também RFC1157)
0016
Structure of Management Information. M. Rose, K. McCloghrie.
Maio 1990. (Formato: TXT=82279 bytes) (Deixa obsoleto RFC1065)
(Também RFC1155)
0017
Management Information Base. K. McCloghrie, M. Rose. March
1991. (Formato: TXT=142158 bytes) (Deixa obsoleto RFC1158)
(Também RFC1213)
0018
Exterior Gateway Protocol. D. Mills. Abril 1984. (Formato:
TXT=63836 bytes) (Também RFC0904)
0019
NetBIOS Service Protocols. NetBIOS Working Group. Março 1987.
(Formato: TXT=319750 bytes) (Também RFC1001, RFC1002)
0020
Echo Protocol. J. Postel. Maio 1983. (Formato: TXT=1237
bytes) (Também RFC0862)
0021
Discard Protocol. J. Postel. Maio 1983. (Formato: TXT=1239
bytes) (Também RFC0863)
0022
Character Generator Protocol. J. Postel. Maio 1983. (Formato:
TXT=6842 bytes) (Também RFC0864)
0023
Quote of the Day Protocol. J. Postel. Maio 1983. (Formato:
TXT=1676 bytes) (Também RFC0865)
0024
Active Users Protocol. J. Postel. Maio 1983. (Formato:
TXT=2029 bytes) (Também RFC0866)
0025
Daytime Protocol. J. Postel. Maio 1983. (Formato: TXT=2289
bytes) (Também RFC0867)
0026
Time Server Protocol. J. Postel. Maio 1983. (Formato:
TXT=3024 bytes) (Também RFC0868)
0027
Binary Transmission Telnet Option. J. Postel, J. Reynolds.
Maio 1983. (Formato: TXT=8965 bytes) (Também RFC0856)
0028
Echo Telnet Option. J. Postel, J. Reynolds. Maio 1983.
(Formato: TXT=10859 bytes) (Também RFC0857)
0029
Suppress Go Ahead Telnet Option. J. Postel, J. Reynolds. Maio
1983. (Formato: TXT=3712 bytes) (Também RFC0858)
0030
Status Telnet Option. J. Postel, J. Reynolds. Maio 1983.
(Formato: TXT=4273 bytes) (Também RFC0859)
0031
Timing Mark Telnet Option. J. Postel, J. Reynolds. Maio 1983.
(Formato: TXT=7881 bytes) (Também RFC0860)
0032
Extended Options List Telnet Option. J. Postel, J. Reynolds.
Maio 1983. (Formato: TXT=3068 bytes) (Também RFC0861)
0033
Trivial File Transfer Protocol. K. Sollins. Julho 1992.
(Formato: TXT=24599 bytes) (Também RFC1350)
0034
Routing Information Protocol. C. Hedrick. Junho 1988.
(Formato: TXT=91435 bytes) (Também RFC1058)
0035
ISO Transport Service on top of the TCP (Version: 3). M. Rose,
D. Cass. Maio 1978. (Formato: TXT=30662 bytes) (Também
RFC1006)
0036
Transmission of IP and ARP over FDDI Networks. D. Katz.
Janeiro 1993. (Formato: TXT=22077 bytes) (Também RFC1390)
0037
An Ethernet Address Resolution Protocol. David C. Plummer.
Novembro 1982. (Formato: TXT=21556 bytes) (Também RFC0826)
0038
A Reverse Address Resolution Protocol. Ross Finlayson, Timothy
Mann, Jeffrey Mogul, Marvin Theimer. Junho 1984. (Formato:
TXT=9345 bytes) (Também RFC0903)
0039
Interface Message Processor: Especificações para a Interconexão
de um computador e um IMP (Revisado). BBN. Dezembro 1981.
(fora de linha)
0040
Host Access Protocol specification. Bolt Beranek and Newman.
Agosto 1993. (Formato: TXT=152740 bytes) (Deixa obsoleto
RFC0907) (Também RFC1221)
0041
Standard for the transmission of IP datagrams over Ethernet
networks. C. Hornig. Abril 1984. (Formato: TXT=5697 bytes)
(Também RFC0894)
0042
Standard for the transmission of IP datagrams over experimental
Ethernetnetworks. J. Postel. Abril 1984. (Formato: TXT=4985
bytes) (Também RFC0895)
0043
Standard for the transmission of IP datagrams over IEEE 802
networks. J. Postel, J.K. Reynolds. Agosto 1993. (Formato:
TXT=34359 bytes) (Deixa obsoleto RFC0948) (Também RFC1042)
0044
DCN Local-Network Protocols. D.L. Mills. Agosto 1993.
(Formato: TXT=65340 bytes) (Também RFC0891)
0045
Internet Protocol on Network System's HYPERchannel: Protocol
Specification. K. Hardwick, J. Lekashman. Augosto 1993.
(Formato: TXT=100836 bytes) (Também RFC1044)
0046
Transmitting IP traffic over ARCNET networks. D. Provan.
Agosto 1993. (Formato: TXT=16565 bytes) (Deixa obsoleto RFC1051)
(Também RFC1201)
0047
Nonstandard for transmission of IP datagrams over serial lines:
SLIP. J.L. Romkey. Agosto 1993. (Formato: TXT=12578 bytes)
(Também RFC1055)
0048
Standard for the transmission of IP datagrams over NetBIOS
networks. L.J. McLaughlin. Agosto 1993. (Formato: TXT=5579
bytes) (Também RFC1088)
0049
Standard for the transmission of 802.2 packets over IPX networks.
L.J. McLaughlin. Agosto 1993. (Formato: TXT=7902 bytes)
(Também RFC1132)
0050
Definitions of Managed Objects for the Ethernet-like Interface
Types. F. Kastenholz. Julho 1994. (Formato: TXT=39008, bytes)
(Deixa obsoleto RFC1623, RFC1398) (Também RFC1643)
0051
The Point-to-Point Protocol (PPP). W. Simpson, Editor. Julho
1994. (Formato: TXT=151158 bytes) (Deixa obsoleto: RFC1549)
(Também RFC1661, RFC1662)
0052
The Transmission of IP Datagrams over the SMDS Service. D.
Piscitello, J. Lawrence. Março 1991. (Formato: TXT=24662
bytes) (Também RFC1209)
0053
Post Office Protocol - Version 3. J. Myers & M. Rose. Maio
1996. (Formato: TXT=47018 bytes) (Deixa Obsoleto: RFC1725)
(Também RFC1939)
0054
OSPF Version 2. J. Moy. Abril 1998. (Formato: TXT=447367
bytes) (Também RFC2328)
0055
Multiprotocol Interconnect over Frame Relay. C. Brown, A.
Malis. Setembro 1998. (Formato: TXT=74671 bytes) (Deixa
Obsoleto: RFC1490, RFC1294) (Também RFC2427)
0056
RIP Version 2. G. Malkin. Novembro 1998. (Formato: TXT=98462
bytes) (Atualiza RFC1723, RFC1388) (Também RFC2453)
0057
RIP Version 2 Protocol Applicability Statement. G. Malkin.
Novembro 1994. (Formato: TXT=10236 bytes) (Também RFC1722)
0058
Structure of Management Information Version 2 (SMIv2. K.
McCloghrie, D. Perkins, J. Schoenwaelder. Abril 1999.
(Formato: TXT=89712 bytes) (Deixa Obsoleto RFC1902) (Também
RFC2578, RFC2579)
0059
Remote Network Monitoring Management Information Base. S.
Waldbusser. Maio 2000. (Formato: TXT=198676 bytes) (Deixa
Obsoleto RFC1757) (Também RFC2819)
-------------------------------------------------------------------------------
28. Apêndice
------------
A versão que esta lendo agora foi gerada com as seguintes opções:
* Descrição detalhada de comandos
* Opções usadas em comandos e programas
* Observações
* Exemplos para a melhor compreensão do assunto discutido.
e contém o(s) nível(is) de aprendizado (Iniciante, Intermediário e
Avançado):
* Iniciante
* Intermediário
O _Foca GNU/Linux_ é atualizado freqüentemente, por este motivo
recomendo que preencha a ficha do aviso de atualizações na página web
em Página Oficial do guia Foca GNU/Linux (http://www.guiafoca.org) no
fim da página principal. Após preencher a ficha do aviso de
atualizações, eu te enviarei um e-mail sobre o lançamento de novas
versões do guia e o que foi modificado, desta forma você poderá
decidir em copia-la caso a nova versão contém modificações que
considera importantes.
Minha chave PGP segue abaixo, ela também pode ser encontrada em
http://pgp.ai.mit.edu. Se você deseja saber mais sobre o PGP,
recomendo um excelente documento encontrado na seção `Apostilas' em
http://www.cipsga.org.br/
mQGiBDl7WYgRBACsQNtIozvf8XId+xEpF2D1x7nqgFdJyn1QA2VzXg0/OZ9DewXj
qr7ChEIoyyzAmxBSubE/jdtkAb9+2LsE9+OXgzJvBc4luYpv+HG2IXlMPujI9drO
ubLlK6xqPiakBgqBTS74rp/ZEEAGQsr0sug7b8nsXHMk+spyGkjsU8pPWwCgltai
4vfmBDMZMqBYvUoksVxbaKcD/ApAMghgE53KAAKFtwXI0o7K1DJmdZBufCvGDbEB
Y3MVS4BI+aXxoP5zQpEmQ5+lYOZ8RjPL9pNUJa9nOQtjf7Kiw/41BPDtlZXCeRR5
OcQTit0lYRCLGam7FZ22uliwh0h/3lpf4olMff3qeLqv1DECbo8Qsdn6yxynLihE
OA9kA/9K1sqiIl/+gXM3/Sjz8EcrwQNklV3MoaETbDmukbXcOEUjdqfFr1xARM5W
8SKoVrWO5y1oa1e9XcQuK6g8c7KeJsK/GEWYiRwX2X2AqdBC2ZzVfJSmgpguZJHn
ltMdYZhPwZaCsNPdQSlem3UrGupL0pbpT7PqkvyAHBH2itB9X7RKR2xleWRzb24g
TWF6aW9saSBkYSBTaWx2YSAoQ2hhdmUgUEdQIFBlc3NvYWwpIDxnbGV5ZHNvbkBl
c2NlbHNhbmV0LmNvbS5icj6IVgQTEQIAFgUCOXtZiAQLCgQDAxUDAgMWAgECF4AA
CgkQpWvD35hbooFdwgCfQijPTW5VH+Cep1HIBvyuw9uMg7wAoI/RYW0tkjjnhrgH
8+Zqx6AgGlQ/iEYEEBECAAYFAjnlrPAACgkQoUSye+uc2tWZPgCfVgR4lbd8XPBm
bjPupLzB3EYAPI8AoJomkfsgz+NuUZy1mD6pI1Ptc/fDiEYEEBECAAYFAjm4FfUA
CgkQco65AkzGCoF34gCgsVcH4b3s6kfCtjD7iMMhkubnDnUAoL2UiorB3Z/m3f9A
RZiRMhQUclMRiEYEEBECAAYFAjm4ITAACgkQt1anjIgqbEupXgCg1/NjvT562Hgt
/ft5JETOf3yOFywAn1SmK3unyhMU5GU9d49MNM3fNgBtiEYEEBECAAYFAjnFWrYA
CgkQORwuc54x+1t8VQCeMZTCla98rrI60EnlkAvb9AaScm4AnA4V795vcVlr3ix9
f6fcl5YGamKciEYEEBECAAYFAjvSF6sACgkQUZATEoypqPVQ7wCbBTRiSGGMzMTd
KJotfRKf5aoUAr0AoIAX0oE5XEEFm7Ea0IQqG91T9TvXtDtHbGV5ZHNvbiBNYXpp
b2xpIGRhIFNpbHZhIChEZXZlbG9wZXIpIDxnbGV5ZHNvbkBkZWJpYW4ub3JnPohX
BBMRAgAXBQI7BR7fBQsHCgMEAxUDAgMWAgECF4AACgkQpWvD35hbooESRACcCliY
yxR02KEBYs8cxKav9L0wlzwAn2Z9DWAbqi9Mv4fqPqZ7mViSMRbeiEYEEBECAAYF
AjsauX0ACgkQt1anjIgqbEvBEACffJxYfK22YPQ8ZkcjIc85BCiPLuUAnRq1EE9i
ukdUHPUo0vzHBeiN355miEYEEBECAAYFAjxEY28ACgkQGERS+iaKCE2fgwCeNGNV
Mpa1EWgXF+Hj15gidVjaVCAAn187X6eATJAVzspveNSf/Ny1iuFnuQENBDl7WasQ
BACxhBiSFOGa8tv7MOn0XVa6WCViBuQs9QJx2ZnMrx/KssRHMsNXnps+i+zVENqr
1Lz5zPpP7eWgrUy6B7/V9R4LV8nwHC1lZrR/1xyJ6G5j9RLSbYInZCLIAFUMlAar
iTThMhvXM+Pf7SXPj+ivrP9EYPSLxqTs1K/dWAbrDK/QiwADBQP9Hgc3EOw+7luB
/bXWssQp70bF9yvZLCGOgIE/rZIbOXumXkPlV7FTDgv+h47Bgcj2KDPEM98LUyxG
GcJAmrC9gWH7mYEUFNn1bGD+qHRwJ7+xj45NXBJDOBbHzTDS8QhacCRGW1CvRVgP
8ycPDOv/hmGfAJEzqzUkSO1uBcPmmXSIRgQYEQIABgUCOXtZqwAKCRCla8PfmFui
gQHnAJ4kDKHKvG9s9OjGV6RvszTDGE51igCcCZn0rO/Si0ek97bTCIusQzJF/pA=
=bvnT
-----END PGP PUBLIC KEY BLOCK-----
-------------------------------------------------------------------------------