LPIC 101
por Luciano Antonio Siqueira
Quem se Destina
O presente material destina-se todos que desejam obter a certificao Linux LPI nvel 1. No
entanto, o guia tambm poder ser til a quem no pretende obter a certificao, mas interessa-se
em aprofundar seus conhecimentos em administrao de sistemas GNU/Linux.
Contribuies
Todos leitores so convidados a contribuir para o guia. Sugestes para aprofundar os tpicos e
exerccios para cada objetivo sero muito bem vindos.
Caso identifique informaes incorretas, erros de ortografia ou outros equvocos, informe o autor:
<lcnsqr em yahoocombr>
Informaes de Copyright
Copyright (c) Luciano Antonio Siqueira.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
Leia The GNU Manifesto se voc quiser saber porqu essa licena foi escolhida para esse material.
O guia foi escrito com todo esforo para garantir a confiabilidade das informaes contidas. No
entanto, as informaes aqui contidas so oferecidas sem qualquer garantia, expressa ou implcita.
O responsvel pelo material aqui apresentado no se responsabiliza por possveis danos causados ou
alegao do gnero em relao este livro. Tampouco a leitura deste guia garantia de sucesso na
obteno da certificao LPI nvel 1.
5
Introduo
Pr-requisitos
Para melhor utilizao deste guia, presume-se que o leitor j esteja familiarizado com o sistema
GNU/Linux. Portanto, os assuntos so abordados de maneira direta, com objetivo de serem apenas
referncia rpida para posterior estudo e exerccio mais aprofundados. O material foi escrito e
testado num computador rodando Linux Slackware 10.2.
6
Tpico 101: Hardware e Arquitetura
Objetivo 1.101.1: Configurao de Atributos Fundamentais de
BIOS
Peso: 1
Recursos de Hardware
O hardware bsico do sistema configurado atravs do utilitrio de configurao de BIOS, que
pode ser acessado no incio do boot da mquina. Atravs deste utilitrio, possvel liberar e
bloquear perifricos integrados, ativar proteo bsica contra erros (proteo bsica contra vrus e
S.M.A.R.T.) e configurar endereos I/O, IRQ e DMA.
IRQ: Requisio de Interrupo do dispositivo para a CPU, que interrompe a atividade em
andamento e processa a instruo enviada pelo dispositivo.
I/O: Endereo especfico no mapa de memria do sistema. A CPU ir se comunicar com o
dispositivo lendo e escrevendo neste endereo.
DMA: Canal que permite certos dispositivos acesso direto memria sem intermdio da
CPU.
Recursos padro utilizados por dispositivos comuns:
Dispositivo Porta I/O IRQ
/dev/ttyS0 0x03f8 4
/dev/ttyS1 0x02f8 3
/dev/ttyS2 0x03e8 4
/dev/ttyS3 0x02e8 3
/dev/lp0 0x378 7
/dev/lp1 0x278 5
Placa de Som 0x220 -
comum que algumas mquinas, como servidores dedicados, sejam acessados apenas remotamente
e no tenham um teclado conectado. Em caso de algum problema que faa a mquina desligar,
como interrupo no fornecimento de energia, importante que a mquina reinicie e volte a operar
normalmente. Alguns BIOS procuram por um teclado e interrompem o boot caso no o encontrem.
Para esse tipo de mquina sem teclado, imprescindvel que o BIOS esteja configurado para no
checar por teclado durante o boot.
O kernel do Linux armazena informaes sobre recursos de dispositivos no diretrio /proc, nos
arquivos:
/proc/dma
/proc/interrupts
/proc/ioports
/proc/pci
7
Tpico 101: Hardware e Arquitetura
8
Tpico 101: Hardware e Arquitetura
# dmesg
(...)
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
parport0: PC-style at 0x378 (0x778) [PCSPP(,...)]
parport0: irq 7 detected
lp0: using parport0 (polling).
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
Floppy drive(s): fd0 is 1.44M
(...)
Modems
Para utilizar um modem externo, tudo que precisa ser considerado a porta serial a qual ele est
conectado. Se o modem for PCI interno, precisar-se- saber qual a porta I/O e a interrupo
utilizadas pelo mesmo. Isso pode ser conseguido com o comando lspci -v.
Para configurar a porta serial do modem interno, usa-se o comando setserial. Para checar se
uma porta serial est em uso, usa-se setserial -g dispositivo.
Checando portas serias com setserial:
# setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
No caso do exemplo, apenas a primeira porta serial (/dev/ttyS0) est em uso. s demais podem
ser atribudos os valores de recursos do modem conseguidos atravs do comando lspci -v.
Por exemplo, se os valores relativos ao modem forem I/O 0xdc80 e IRQ 9 pode-se atribuir esses
valores porta /dev/ttyS3, que est livre:
# setserial /dev/ttyS3 port 0xdc80 irq 9 autoconfig
e cria-se um link simblico /dev/modem para /dev/ttyS3:
# ln -s /dev/ttyS3 /dev/modem
O comando setserial tambm usado para controlar a velocidade da porta serial.
Usar /dev/ttyS3 a 115kb:
# setserial /dev/ttyS3 spd_vhi
Argumentos setserial de velocidade:
spd_hi
56kb quando solicitado for 38.4
spd_vhi
9
Tpico 101: Hardware e Arquitetura
Placas de Som
H dois tipos principais de suporte a placas de som no GNU/Linux, OSS (Open Sound System) e
ALSA (Advanced Linux Sound Architeture).
Para encontrar o dispositivo de som:
# lspci | grep -i audio
00:0f.0 Multimedia audio controller: C-Media Electronics Inc CM8738 (rev 10)
Caso o dispositivo no pde ser encontrado dessa forma, toda a sada de dmesg e lspci pode ser
consultada para procurar o dispositivo correspondente ao udio.
Identificada a placa, possvel carregar o mdulo correspondente, seja ele OSS ou ALSA. A
entrada em /etc/modules.conf referente ao primeiro dispositivo de udio encontrado
10
Tpico 101: Hardware e Arquitetura
11
Tpico 101: Hardware e Arquitetura
ISDN
H vrias maneiras de se usar ISDN no GNU/Linux. A mais simples empregar um dispositivo
ISDN externo que disca, autentica e abre a sesso sozinho, disponibilizando a conexo pela
interface ethernet. Se o computador est ligado diretamente conexo ISDN, necessrio um
dispositivo chamado Terminal Adapter (TA).
Em TAs conectados porta serial e em alguns dispositivos USB, aparecer uma interface de
comandos AT exatamente como se o TA fosse um modem. simples porm pouco eficiente.
Outra maneira mais eficiente de usar uma linha ISDN usar um adaptador (PCI, ISA, PCCARD)
conectado diretamente ao barramento da mquina. O utilitrio isdn4linux incorpora muitos dos
percalos de uma conexo ISDN e a estabelece com se fosse uma interface de rede convencional.
12
Tpico 101: Hardware e Arquitetura
DSL
Como na conexo ISDN, o mais simples que um dispositivo DSL externo estabelea a conexo e
aja como um roteador para a mquina. Se voc possui um modem DSL e seu provedor usa PPPoE
(Point to Point Protocol over Ethernet) voc precisar de um cliente PPPoE. Neste caso, a
ferramenta de conexo para DSL o pppoe.
13
Tpico 102: Instalao do GNU/Linux e
Administrao de Pacotes
Objetivo 1.102.1: Criao de Esquemas de Parties de Disco
Peso: 5
Para acessar recursos em disco o sistema utiliza um mecanismo chamado montagem. Em sistemas
UNIX, significa anexar um disco a um diretrio, chamado ponto de montagem. Para o usurio, os
recursos aparecem como uma rvore de diretrios e subdiretrios.
A raiz da rvore de diretrios representada por uma barra / . necessariamente o primeiro
diretrio a ter um dispositivo anexado. Depois de montada a raiz, os diretrios contidos neste
dispositivo podero ser pontos de montagem para outros dispositivos.
Processo de montagem:
1. O carregador de boot carrega o kernel e transmite as informaes sobre a localizao do
dispositivo raiz.
2. Os demais dispositivos so montados conforme as instrues encontradas em
/etc/fstab.
Etapas da criao do layout de disco:
Criar parties de tamanho especfico
Escolher o sistema de arquivos
Determinar um ponto de montagem para cada partio
Duas parties o mnimo exigido em sistemas GNU/Linux, uma que ser a raiz / e outra que
ser a partio de troca swap. Muitas vezes, pode haver um terceira partio pequena, no incio do
disco, apenas para armazenar o kernel e o carregador de boot secundrio. Fora essas, no h regras
inflexveis quanto criao de parties, devendo ser avaliado o melhor esquema para a funo que
o sistema desempenhar.
A partio raiz deve ser do tipo Linux Native, cujo cdigo 83 (0x83). Tudo no sistema poder
existir diretamente no dispositivo raiz. No entanto, certos tipos de arquivos so processados de
formas bem distintas de outros arquivos. Em certos casos, interessante criar uma partio distinta
para certo diretrio, principalmente em servidores que so muito exigidos. Essa estratgia tambm
impede que os dados no disco se fragmentem muito.
Outra questo o backup. Enquanto certos arquivos no necessitam de backup, outros exigem-no.
Mesmo dentre os quais realizado o backup, alguns so pouco alterados durante um determinado
perodo enquanto que outros so constantemente alterados ou criados. A criao de parties
diferentes para cada diretrio que comporte um tipo distinto de arquivos facilita as operaes de
criao e recuperao de backup.
Sugestes de diretrios que podem estar em outros dispositivos/parties:
/var
Este diretrio contm os as filas de email e impresso, que so muito manipuladas. H
tambm os arquivos de log, cujo contedo est em constante alterao e crescimento.
/usr
15
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
A Partio Swap
Uma partio swap identificada pelo cdigo 82 (0x82), atribudo quando da sua criao.
Geralmente, a partio swap do mesmo tamanho que o montante de memria RAM no sistema.
Para servidores, esses nmero pode ser maior. Uma partio swap muito maior que isso
provavelmente no ter o espao excedente utilizado. possvel haver mais de uma partio de
swap.
prefervel criar parties de swap nos dispositivos mais rpidos, se possvel em dispositivos
distintos daqueles que tm seus dados muito acessados pelo sistema.
Tambm possvel criar grandes arquivos como rea de swap, o que geralmente feito em
situaes emergenciais, quando o sistema ameaa ficar sem memria disponvel:
# dd if=/dev/zero of=emerg.swp bs=1024k count=32
32+0 registros de entrada
32+0 registros de sada
# mkswap emerg.swp
Setting up swapspace version 1, size = 33550 kB
no label, UUID=543baaad-d660-4a5d-881d-fb7f1485b992
# swapon emerg.swp
# cat /proc/swaps
Filename Type Size Used
Priority
/dev/hda2 partition 160640 39760 -1
/root/emerg.swp file 32760 0 -2
LILO
O LILO (Linux Loader) dividido em trs componentes:
16
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
17
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
GRUB
O grub (Grand Unified Bootloader) uma alternativa ao lilo. Tambm instalado na MBR; pelo
comando /sbin/grub ou pelo /sbin/grub-install, que obtm as instrues de
/boot/grub/grub.conf.
Principais sees de /boot/grub/grub.conf:
global
default imagem de boot padro (comea por 0)
timeout tempo de espera para iniciar o boot, em segundos
imagem
title nome para a imagem
root localizao do carregador de segundo estgio e do kernel (hd0,0 = /dev/hda)
kernel caminho para o kernel partir de root
ro read-only
initrd caminho para a imagem initrd
Diferente do lilo, o comando grub-install no precisa ser executado toda vez que forem
feitas alteraes ao arquivo /boot/grup/grub.conf. Uma vez instalado, o carregador de boot
do grub l o arquivo /boot/grub/grub.conf diretamente.
18
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
# umount /mnt/floppy
O disquete de boot est pronto. importante lembrar que disquetes de boot criados dessa forma s
funcionaram na prpria mquina onde foram feitos. Caso sejam feitas alteraes no kernel ou
localizao da partio raiz, as configuraes devero ser adequadas e o lilo reinstalado no disquete.
A maioria das distribuies GNU/Linux fornece Cds de boot para instalao do sistema. Esses
mesmos Cds podem ser usados para acessar e dar boot num sistema j instalado e que possa estar
inacessvel por uma falha do carregador de boot. Para iniciar um sistema j instalado, os seguintes
parmetros so passados no prompt de boot:
boot: linux root=/dev/hda3 noinitrd ro
Onde linux o nome do kernel e /dev/hda3 a partio raiz. J dentro do sistema,
possvel reinstalar o carregador de boot.
Geralmente ser necessrio alterar a seqncia dos dispositivos de boot no BIOS da mquina
sempre que um dispositivo de boot alternativo for utilizado.
Para fazer o backup da MBR, basta copiar os primeiros 512kb do disco, o que pode ser feito
usando o comando dd:
# dd if=/dev/hda of=mbr.backup bs=1k count=512
Este backup pode ser guardado num disquete e depois restaurado para a MBR:
# dd if=mbr.backup of=/dev/hda
19
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
z gzip
j bzip2
Criar um arquivo tar programa.tar.bz2 contendo o diretrio ./programa/ e seu contedo,
compactando com bzip2:
$ tar cjf programa.tar.bz2 ./programa/
20
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
21
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
22
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
Assinaturas de Pacotes
possvel checar a assinatura de todo pacote distribudo como parte de um projeto. Se a
distribuio for Fedora, por exemplo, as chaves so incorporadas ao banco de dados do rpm com o
comando
# rpm --import /usr/share/rhn/RPM-GPG-KEY-FEDORA
Assim, todo pacote copiado do servidor fedora pode ser checado:
# rpm --checksig <nome do pacote>
Integridade do Pacote
A integridade do pacote checada usando a opo -V. A opo -Va checa todos os pacotes. A
anlise feita tendo como referncia os arquivos originais do pacote.
Significado dos caracteres retornados pela verificao:
. Teste bem sucedido
? O teste no pde ser realizado
S O tamanho do arquivo mudou
M A permisso ou o tipo do arquivo mudou
5 A soma MD5 do arquivo diferente
D O dispositivo foi modificado
L O link simblico foi modificado
U O dono do arquivo mudou
G O grupo do arquivo mudou
T A data do arquivo mudou
23
Tpico 102: Instalao do GNU/Linux e Administrao de Pacotes
Atualizar um pacote:
# rpm -Uvh xyz.rpm
24
Tpico 103: Comandos GNU e Unix
Objetivo 1.103.3: Trabalhando na Linha de Comando
Peso: 5
A maneira mais direta de interagir com o computador usando a linha de comando. O prompt do
shell (terminando em $ ou # para o usurio root) indica que est pronto para receber instrues.
O shell o ambiente que faz o intermdio entre o usurio e os recursos do computador, como um
ambiente de programao em tempo real para executar tarefas. O shell padro no GNU/Linux o
bash (Born Again Shell). Os procedimentos aqui mostrados se referem ao bash.
As instrues do shell geralmente seguem o formato: comando [opes] {argumentos}
Alguns comandos embutidos do shell:
alias
Cria um codinome para um comando, no formato
$ alias codinome='nome_do_programa --opes'
til para facilitar a entrada de comandos recorrentes que levam muitos argumentos. Usar alias
sem argumentos mostra quais aliases existem e seus contedos.
exec
O comando iniciado atravs de exec no se torna um processo filho do shell, mas toma seu lugar.
Dessa forma, o shell finalizado quando o comando terminar.
O shell interpreta a primeira palavra na linha de comando como um comando. O caminho completo
ou relativo para o comando precisa ser fornecido, a menos que o comando esteja localizado em um
dos diretrios contidos na varivel de ambiente PATH. Se o programa encontra-se no diretrio de
trabalho atual e fora dos diretrio contidos em PATH, ele precisar ser invocado comeando por ./
:
$ ./programa_local
Variveis
As variveis usadas no shell so semelhantes s usadas em linguagens de programao. Nomes de
variveis so limitadas a caracteres alfanumricos.
Criar/Modificar uma varivel (espaos no devem ser usados):
$ nome_da_varivel=valor_da_varivel
25
Tpico 103: Comandos GNU e Unix
Exemplo de env:
# env
(...)
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bi
n
LC_COLLATE=C
PWD=/root
INPUTRC=/etc/inputrc
JAVA_HOME=/usr/lib/java
LANG=pt_BR
(...)
Se uma varivel pode ser acessada por qualquer processo ou shell, chamada de varivel global.
Variveis pr-definidas
DISPLAY
Usado pelo X para saber onde executar os aplicativos clientes
HISTFILE
Caminho para o histrico de comandos do usurio (geralmente $HOME/.bash_history)
HOME
Caminho para o diretrio pessoal do usurio
LOGNAME
O nome que o usurio usou para entrar no sistema
PATH
Lista de diretrios nos quais programas sero procurados caso tenham sido solicitados sem o
caminho completo ou relativo
PWD
26
Tpico 103: Comandos GNU e Unix
O diretrio atual
SHELL
O shell utilizado (neste caso, /bin/bash)
TERM
O tipo de emulador de terminal utilizado
Variveis especiais
$! PID do ltimo processo filho
$$ PID do shell atual
$? Retorna 0 se o ltimo comando foi bem sucedido, caso contrrio retorna 1
~ Corresponde ao diretrio pessoal do usurio atual
~alaor Corresponde ao diretrio pessoal do usurio chamado alaor
Histrico de comandos
Para mostrar o histrico de comandos digitados pelo usurio atual, usa-se o comando history.
History um comando embutido do bash.
possvel usar atalhos no estilo do emacs para listar o histrico:
Ctrl+p Linha anterior
Ctrl+n Prxima linha
Ctrl+b Volta um caracter
Ctrl+f Avana um caracter
Ctrl+a Comeo da linha
Ctrl+e Fim da linha
Outros atalhos:
!! roda o ltimo comando
!a roda o ltimo comando que comea pela letra a
!2 roda o comando na 2 posio do histrico
!-2 roda o penltimo comando
^termo1^termo2 roda o ltimo comando substituindo termo1 por termo2
O arquivo ~/.profile contm personalizaes do bash para o usurio, como aliases e variveis
particulares.
Exemplo de entrada em ~/.profile :
alias ls='ls --color'
Dessa forma, o alias para ls ser permanente.
27
Tpico 103: Comandos GNU e Unix
Comandos Seqenciais
Executar trs comandos em seqncia, independente do resultado de cada um:
$ Comando1 ; comando2 ; comando3
Executar o comando seguinte apenas se o anterior foi bem sucedido (se retornou 0):
$ comando1 && comando2 && comando3
Executar o comando seguinte apenas se o anterior no foi bem sucedido (se retornou diferente de
0):
$ comando1 || comando2 || comando3
28
Tpico 103: Comandos GNU e Unix
$ tac texto_simples
criado com cat
texto simples
head
Mostra o comeo de arquivos. Por padro, as 10 primeiras linhas so mostradas. A quantidade de
linhas a serem mostradas indicada pela opo -n :
$ head -n 5 /etc/passwd
root:x:0:0::/root:/bin/bash
bin:x:1:1:bin:/bin:
daemon:x:2:2:daemon:/sbin:
adm:x:3:4:adm:/var/log:
lp:x:4:7:lp:/var/spool/lpd:
A opo -c especifica o nmero de caracteres (bytes) a serem mostrados no lugar de linhas:
$ head -c 5 /etc/passwd
root:
tail
Mostra o final de arquivos. Por padro, as 10 ltimas linhas so mostradas. A quantidade de linhas a
serem mostradas indicada pela opo -n :
$ tail -n 1 texto_simples
criado com cat
A opo -c especifica o nmero de caracteres (bytes) a serem mostrados no lugar de linhas. A para
que o fim do arquivo seja mostrado continuamente, a medida que mais texto adicionado au final
do mesmo, usa-se a opo -f (de follow). O sinal + indica que a leitura deve ser feita a partir da
linha de nmero especificado aps o +:
$ tail +35 /etc/group
console::101:
messagebus:x:102:
haldaemon:x:103:haldaemon
wc
Conta linhas, palavras ou caracteres, com as opes -l, -w e -c respectivamente. Quando usado
sem argumentos, mostra esses trs valores na sequncia.
$ wc texto_simples
2 5 29 texto_simples
$ wc -l texto_simples
2 texto_simples
$ wc -w texto_simples
5 texto_simples
$ wc -c texto_simples
29 texto_simples
nl
Numera linhas, como cat -b. O argumento -ba faz numerar todas as linhas. O argumento -bt
apenas as que no estejam em branco
$ nl texto_simples
1 texto simples
2 criado com cat
expand
29
Tpico 103: Comandos GNU e Unix
Substitui espaos de tabulao (TABs) por espaos simples, mantendo a mesma distncia aparente.
Contar os caracteres de /etc/fstab e comparar ao mesmo arquivo filtrado por expand:
$ wc -c /etc/fstab
773 /etc/fstab
$ expand /etc/fstab | wc -c
820
unexpand
Substitui dois ou mais espaos simples por espaos de tabulao (TABs).
hexdump
Mostra arquivos binrios. A opo -C torna a sada mais legvel, mostrando a coluna de endereo
hexadecimal, seguida pela coluna dos dados do arquivo (valores hexadecimais sequenciais
separados a cada dois bytes) e por ltimo a coluna que mostra esses mesmos bytes no formato
ASCII.
Examinando o comeo do arquivo /bin/cat:
$ hexdump -C /bin/cat | head
00000000 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
00000010 02 00 03 00 01 00 00 00 70 8b 04 08 34 00 00 00 |........p...4...|
00000020 90 39 00 00 00 00 00 00 34 00 20 00 07 00 28 00 |.9......4. ...(.|
00000030 19 00 18 00 06 00 00 00 34 00 00 00 34 80 04 08 |........4...4...|
00000040 34 80 04 08 e0 00 00 00 e0 00 00 00 05 00 00 00 |4.............|
00000050 04 00 00 00 03 00 00 00 14 01 00 00 14 81 04 08 |................|
00000060 14 81 04 08 13 00 00 00 13 00 00 00 04 00 00 00 |................|
00000070 01 00 00 00 01 00 00 00 00 00 00 00 00 80 04 08 |................|
00000080 00 80 04 08 cd 35 00 00 cd 35 00 00 05 00 00 00 |....5..5......|
00000090 00 10 00 00 01 00 00 00 d0 35 00 00 d0 c5 04 08 |........5....|
A palavra ELF no incio da coluna ASCII indica que este um arquivo executvel no formato elf
Executable and Linkable Format.
split
Divide um arquivo em arquivos menores seguindo critrios como tamanho ou nmero de linhas. A
opo -l indica o nmero de linhas de cada parte do arquivo dividido. A opo -b indica qual o
tamanho de cada parte. Um prefixo para as partes pode ser indicado aps o nome do arquivo a ser
divido:
Dividir um arquivo em partes de 1024Kb usando o prefixo parte_:
$ split -b 1024k arquivo original parte_
Esse comando criar arquivos chamados parte_aa, parte_ab, parte_ac, etc. Para concatenar
novamente o arquivo, usa-se cat:
$ cat parte_* > nome do arquivo
Ser criado um arquivo de contedo idntico ao do arquivo original.
uniq
Mostra o contedo de arquivos suprimindo linhas seqenciais repetidas.
cut
Delimita um arquivo em colunas, em determinado nmero de caracteres ou por posio de campo.
30
Tpico 103: Comandos GNU e Unix
31
Tpico 103: Comandos GNU e Unix
arq1:
1 a1 x1
2 b1 y1
3 c1 z1
arq2:
1 a2 x2
2 b2 y2
3 c2 z2
32
Tpico 103: Comandos GNU e Unix
Diretrios e Arquivos
Arquivos podem ser acessados tanto por seu caminho absoluto quanto seu caminho relativo.
Caminhos absolutos so aqueles iniciados pela barra da raiz ( / ), e caminhos relativos so aqueles
que tomam por referncia o diretrio atual. O ponto . refere-se ao diretrio atual, e .. refere-
se ao diretrio contendo o diretrio atual.
O comando ls usado para listar arquivos e contedo de um diretrio. A opo -l exibe detalhes
sobre o(s) arquivo(s), -s mostra o tamanho em kilobytes e -d mostra o diretrio, e no seu
contedo.
Exemplo de sada de ls -l:
$ ls -l /etc/X11/xinit/
total 20
-rw-r--r-- 1 root root 321 2006-01-14 17:33 README.Xmodmap
lrwxrwxrwx 1 root root 15 2006-03-20 22:31 xinitrc -> xinitrc.fluxbox
-rwxr-xr-x 1 root root 556 2003-03-16 19:59 xinitrc.blackbox
-rwxr-xr-x 1 root root 560 2006-03-07 03:32 xinitrc.fluxbox
-rwxr-xr-x 1 root root 799 2006-01-14 17:30 xinitrc.twm
-rwxr-xr-x 1 root root 788 2005-07-21 15:27 xinitrc.wmaker
A primeira coluna mostra o tipo e as permisses do arquivo, a segunda coluna mostra o nmero de
links fsicos (hard links) para o arquivo, a terceira e a quarta mostram o dono e o grupo aos quais o
arquivo pertence, a quinta mostra o tamanho em bytes, a sexta e a stima mostram a data e a hora da
ltima modificao do arquivo e a oitava coluna mostra o nome do arquivo. Se o arquivo for um
link simblico, uma seta mostra o arquivo para o qual ele aponta.
O comando cp utilizado para copiar arquivos. Suas opes principais so:
-i Modo interativo. Pergunta antes de sobrescrever um arquivo.
-p Copia tambm os atributos do arquivo original.
-r Copiar recursivamente o contedo do diretrio de origem.
importante saber que quando copiando um diretrio recursivamente, o uso da barra / no final
do diretrio de origem far com que apenas o contedo do diretrio seja copiado/movido para o
destino e o no uso da barra far com que o diretrio de origem e seu contedo sejam copiados no
destino.
Exemplo de cp:
$ cp tux.xcf icons/
Copia o arquivo tux.xcf para o diretrio icons no diretrio atual.
O comando mv move e renomeia arquivos. Usado com a opo -i pede por confirmao antes de
sobrescrever um arquivo de destino.
33
Tpico 103: Comandos GNU e Unix
Exemplo de mv:
$ mv imagem.jpg ../fotos/
Move o arquivo imagem.jpg para o diretrio fotos que est no mesmo diretrio onde est
contido o diretrio atual (um nvel acima).
Para alterar a data de um arquivo, utiliza-se o comando touch. Usado sem argumentos, touch
altera a data e a hora de criao e modificao de um arquivo para os valores atuais do sistema. Para
alterar apenas a data de modificao, usa-se a opo -m, e para alterar apenas a data de acesso, usa-
se a opo -a. O argumento passado com -t usa outro valor de tempo:
Mudar a data e hora para janeiro, 01 00:01
$ touch -t '01010001' texto_simples
$ ls -l texto_simples
-rw-r--r-- 1 luciano users 29 2006-01-01 00:01 texto_simples
No bash, o comando para retornar o diretrio atual o pwd. O comando cd muda para o diretrio
especificado ou vai para o diretrio pessoal quando nenhum diretrio for especificado.
O comando mkdir cria diretrios. Para criar uma rvore de diretrios recursivamente, usa-se a
opo -p:
$ mkdir -p caminho/completo/para/dir
Para alterar as permisses do diretrio no ato da criao, as mesmas so transmitidas ao mkdir
com a opo -m.
Criar diretrio sem qualquer tipo de acesso para o grupo ou outros:
$ mkdir -m 700 exclusivo
$ ls -ld exclusivo/
drwx------ 2 luciano users 48 2006-03-20 21:42 exclusivo/
Diretrios vazios podem ser apagados pelo comando rmdir. Para apagar uma rvore de diretrios
vazios, usa-se a opo -p.
Para apagar diretrios com contedo, usa-se rm -r, e para forar a remoo, a opo -f
utilizada.
34
Tpico 103: Comandos GNU e Unix
-user usurio
Dono do arquivo
-atime -/+n
Data de ltimo acesso ao arquivo, menor ou maior que n. n corresponde a n*24 horas.
-ctime -/+n
Data de criao do arquivo, menor ou maior que n. n corresponde a n*24 horas.
-mtime -/+n
Data de modificao do arquivo, menor ou maior que n. n corresponde a n*24 horas.
-amin -/+n
Data de ltimo acesso ao arquivo, menor ou maior que n. n corresponde a minutos.
-cmin -/+n
Data de criao do arquivo, menor ou maior que n. n corresponde a minutos.
-mmin -/+n
Data de modificao do arquivo, menor ou maior que n. n corresponde a minutos.
-newer arquivo
O arquivo procurado foi criado/modificado mais recentemente que arquivo.
-perm modo
O arquivo procurado tem permisso mode
-perm -modo
O arquivo procurado tem todos as permisses listadas em mode
-perm +modo
O arquivo procurado tem qualquer das permisses listadas em mode
Exemplo: Encontrar todos os arquivos do tipo link em /usr/lib criados h menos de 24 horas:
$ find /usr/lib -type l -ctime -1
/usr/lib/libssl.so
/usr/lib/libcrypto.so
/usr/lib/libssl.so.0
/usr/lib/libcrypto.so.0
35
Tpico 103: Comandos GNU e Unix
$ ls /etc/host*
/etc/host.conf
/etc/hosts
/etc/hosts.allow
/etc/hosts.deny
/etc/hosts.equiv
O caracter ? substitui apenas um caractere:
$ ls /dev/fd?
/dev/fd0 /dev/fd1 /dev/fd2 /dev/fd3
O uso de colchetes [] indica uma lista de caracteres:
$ ls /dev/hd[abc]
/dev/hda /dev/hdb /dev/hdc
Chaves {} indicam uma lista de termos separados por vrgula:
$ ls /dev/{hda,fd0}
/dev/fd0 /dev/hda
O uso de exclamao antes de um coringa o exclui da operao:
$ ls /dev/fd[!01]
/dev/fd2 /dev/fd3
Coringas precedidos de barra invertida \ no desempenham funo substitutiva:
$ ls /dev/fd\[\!01\]
ls: /dev/fd[!01]: Arquivo ou diretrio no encontrado
Entre aspas duplas, apenas os caracteres especiais |, / e $ tm efeito. Entre aspas simples
apenas o caracter especial \ tem efeito.
Redirecionamento
Para redirecionar a sada padro de um comando para um arquivo, utiliza-se o smbolo > aps o
mesmo, que deve indicar o arquivo a ser criado com os dados referidos:
$ cat texto_simples > clone_texto_simples
Se o arquivo existir previamente, ser sobrescrito. Para adicionar os valores sem apagar o contedo
existente, usa-se >>.
36
Tpico 103: Comandos GNU e Unix
Para redirecionar o contedo de um arquivo para a entrada padro de um comando, usa-se <.
Neste caso, o fluxo dos dados segue da direita para a esquerda. especialmente til para utilizar
com comandos como o tr que no l arquivos diretamente:
$ tr ' ' '-' < clone_texto_simples
texto-simples
criado-com-cat
O contedo redirecionado por padro o de stdout. Para especifar stderr usa-se 2>. Para
redirecionar ambos simultaneamente, usa-se &>.
Canalizao
possvel enviar a sada de um comando para a entrada de outro comando simultaneamente,
utilizando o caracter de canalizao |. preciso que o programa de origem dos dados os
direcione para a sada padro. Isso varia para cada programa, e geralmente se d passando o
argumento de destino como um trao - ou simplesmente ocultando o argumento de sada. Da
mesma forma, alguns programas precisam que seja especificada a origem dos dados atravs de
stdin. Todas essas informaes podem ser obtidas consultando o manual do programa.
Exemplo: Extrair a terceira msica de um CD com o programa cdparanoia canalizando o
udio atravs do programa oggenc para armazenar a msica no formato Ogg Vorbis.
$ cdparanoia -d /dev/cdrom 3 - | oggenc - -o 03.ogg
Por fim, possvel redirecionar simultaneamente a sada tanto para um arquivo quanto para stdout,
atravs do comando tee. Para tal, canaliza-se a sada do comando para o comando tee e a este
um nome de arquivo para armazenar a sada:
$ cat /etc/passwd | tee cpia_passwd
O contedo de /etc/passwd ser mostrado na tela e copiado no arquivo cpia_passwd.
possvel tambm usar a sada de um comando como argumento para outro, usando aspas
invertidas:
$ ls -dl `cat /etc/ld.so.conf`
drwxr-xr-x 5 root root 7464 2006-01-14 17:35 /usr/X11R6/lib
drwxr-xr-x 2 root root 712 2006-03-17 12:26 /usr/i486-slackware-linux/lib
drwxr-xr-x 2 root root 688 2005-10-29 22:53 /usr/lib/qt/lib
drwxr-xr-x 16 root root 7272 2006-03-21 02:49 /usr/local/lib
Resultado idntico conseguido usando $():
$ ls -dl $(cat /etc/ld.so.conf)
drwxr-xr-x 5 root root 7464 2006-01-14 17:35 /usr/X11R6/lib
drwxr-xr-x 2 root root 712 2006-03-17 12:26 /usr/i486-slackware-linux/lib
drwxr-xr-x 2 root root 688 2005-10-29 22:53 /usr/lib/qt/lib
drwxr-xr-x 16 root root 7272 2006-03-21 02:49 /usr/local/lib
O comando xargs desempenha funo parecida, passando os dados que recebe via stdin como
argumento para um segundo comando.
Exemplo do xargs acompanhando a execuo do find:
37
Tpico 103: Comandos GNU e Unix
38
Tpico 103: Comandos GNU e Unix
# pidof crond
2404
kill
Envia sinais de controle para processos. O sinal padro quando nenhum sinal informado
SIGTERM, de valor numrico 15, que pede ao programa em questo para finalizar. O processo no
necessariamente obedece ao sinal, a menos que o sinal seja SIGKILL. Em alguns casos, o sinal
SIGHUP pode ser interpretado como ordem para o processo reler seu(s) arquivo(s) de
configurao.
Exemplo de kill:
# kill -SIGTERM 4902
Envia o sinal SIGTERM para o processo de PID 4902
Sinais comuns:
SIGHUP
Termina ou reinicia o processo. Valor numrico 1.
SIGINT
Interrompe o processo, igual a Ctrl+c. Valor numrico: 2.
SIGQUIT
Fecha o processo. Valor numrico: 3.
SIGKILL
Fora a finalizao o processo. Valor numrico: 9.
SIGTERM
Pede ao processo para finalizar. Valor numrico: 15.
killall
Tem funo igual a de kill, porm usa o nome do processo no lugar do PID. Com a opo -l
lista os sinais possveis.
# killall -SIGHUP cupsd
Neste exemplo, o daemon cupsd ir reler seus arquivos de configurao.
39
Tpico 103: Comandos GNU e Unix
$ ogg123 -q 03-geraldo_vandr-fica_mal_com_deus.ogg
Ctrl+z pressionado
[1]+ Stopped ogg123 -q 03-geraldo_vandr-fica_mal_com_deus.ogg
$ bg 1
[1]+ ogg123 -q 03-geraldo_vandr-fica_mal_com_deus.ogg &
$
O nmero mostrado antes do comando identifica a tarefa. Este nmero passado para fg e bg para
especificar a tarefa desejada. Se houver apenas uma tarefa na sesso atual, fg e bg podem ser
usados sem argumentos. Para usar o nome do programa no lugar de seu nmero de tarefa, basta
preced-lo por %?:
$ bg %?ogg123
O comando jobs lista as tarefas existentes na sesso atual do bash. especialmente til quando h
mais de uma tarefa em andamento.
possvel iniciar programas diretamente em segundo plano, adicionando o smbolo & ao seu
final.
$ ogg123 -q 10-geraldo_vandr-berimbau.ogg &
[2] 5375
Os nmeros mostrados correspondem ao nmero da tarefa e ao PID, respectivamente.
O nmero de uma tarefa pode ser usado como argumento do comando kill desde que precedido do
smbolo %:
$ kill %2
Quando um usurio sai do sistema, um sinal SIGHUP enviado a todos os processos ele
pertencentes. Para que esse sinal no interrompa o processo do usurio aps este sair do sistema, o
comando deve ser invocado atravs do nohup:
$ nohup wget ftp://transferncia/muito/demorada.tar.bz2 &
nohup: appending output to `nohup.out'
As sadas stdout e stderr sero redirecionadas para o arquivo nohup.out, criado no mesmo
diretrio em que o comando foi executado.
40
Tpico 103: Comandos GNU e Unix
41
Tpico 103: Comandos GNU e Unix
Exemplo: Mostrar apenas linhas contendo caracteres (inverter a busca por linhas que no
possuam caracteres
$ grep -v '^$' /etc/lilo.conf
sed
O comando sed mais utilizado para procurar e substituir padres em textos, mostrando o
resultado em stdout. Sintaxe do sed:
sed [opes] comando e expresso regular [arquivo original]
No sed, a expresso regular fica circunscrita entre barras /.
Exemplo:
$ sed -e '/^#/d' /etc/lilo.conf
Mostra o arquivo /etc/lilo.conf sem linhas comeadas por # (linhas de comentrio). A
letra d ao lado da expresso regular um comando sed que indica a excluso de linhas contendo
o respectivo padro.
Exemplo: substituir o termo hda por sdb:
$ sed -e 's/hda/sdb/g' /etc/lilo.conf
42
Tpico 103: Comandos GNU e Unix
43
Tpico 103: Comandos GNU e Unix
44
Tpico 104: Dispositivos, Sistemas de Arquivos
GNU/Linux e Padro FHS
Objetivo 1.104.1:Criao de Parties e Sistemas de Arquivos
Peso: 3
Discos IDE podem conter at 4 parties fsicas, das quais uma pode ser estendida. A partio
estendida pode ser dividida em parties lgicas. Pode haver um mximo de 46 parties num disco
IDE e 16 num disco SCSI.
fdisk
O fdisk o programa padro para manipular parties no GNU/Linux. Com a opo -l lista os
dispositivos e as parties existentes:
# fdisk -l
45
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
Partio Swap
Aps a partio swap ser criada pelo fdisk, ela precisa ser formatada com o comando mkswap:
Formata como swap a partio /dev/hda2:
# mkswap /dev/hda2
Aps criada e formatada, uma partio swap precisa ser ativada para ser usada como memria
swap. O comando swapon -a ativa todas parties swap que constarem em /etc/fstab. As
entradas referentes parties swap em /etc/fstab no tm ponto de montagem.
Exemplo de entrada de partio swap em /etc/fstab:
/dev/hda2 swap swap defaults 0 0
Normalmente, todas as parties swap contidas em /ect/fstab so ativadas pelos scripts de
inicializao do sistema. Para ativar ou desativar essa partio manual manualmente, usa-se
46
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
Uso do Disco
df
Mostra o espao disponvel em cada dispositivo. A anlise feita diretamente no
dispositivo. Por padro, mostra o espao em unidades de 1kb. A opo -h usa medidas
apropriadas para tornar a sada mais inteligvel.
du
Mostra o espao ocupado. Sem argumentos, mostra o uso de cada diretrio no sistema. Um
diretrio especfico pode ser indicado atravs da opo -s. A opo -h usa medidas
apropriadas para tornar a sada mais inteligvel.
47
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
/etc/fstab
Durante os procedimentos de carregamento do sistema, o arquivo /etc/fstab que determina
os pontos de montagem dos dispositivos. Cada linha corresponde a um dispositivo, contendo os
seguintes termos separados por tabulaes ou espaos:
1. Dispositvo
2. Ponto de montagem (swap se for uma partio de swap)
3. Tipo de sistema de arquivos
4. Opes
5. Dump (0 ou 1). Determina se dispositivo dever ser considerado pelo comando dump. Se
ausente, 0 considerado.
6. fsck (1 ou 2). Determina a ordem da checagem feita pelo fsck durante o boot. Para a
partio raiz (/), deve ser 1. Se ausente, 0 presumido e a checagem no ser feita no boot.
Para permitir que usurios comuns montem e desmontem dispositivos geralmente, o caso de
dispositivos removveis deve-se incluir a opo users para o respectivo dispositivo.
Exemplo:
/dev/cdrom /mnt/cdrom auto noauto,users,ro 0 0
A palavra auto na posio referente ao sistema de arquivos indica que o sistema de arquivos
deve ser identificado automaticamente.
mount
O comando mount usado sem argumentos mostra os dispositivos montados e outros detalhes,
como ponto de montagem e tipo do sistema de arquivos. Tambm usado para montar dispositivos
manualmente:
# mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom
O comando do exemplo monta o dispositivo /dev/cdrom contendo mdia com sistema de
arquivos iso9660 no diretrio /mnt/cdrom, com permisso somente-leitura (ro).
Para montar manualmente um dispositivo que conste em /etc/fstab, basta fornecer para o
comando mount a localizao do dispositivo ou do diretrio alvo. Para desmontar um dispositivo,
o comando umount utilizado tendo como argumento o dispositivo ou o diretrio alvo a ser
desmontado. Usado com a opo -a, mount monta todos os dispositivos em /etc/fstab
(exceto os marcados com a opo noauto).
Opes de montagem
As opes de montagem so as mesmas para /etc/fstab e para mount diretamente. Se mais de
uma opo for fornecida, devero ser separadas por vrgula.
48
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
rw ou ro
Gravvel ou somente leitura
noauto
No montado automaticamente
users
O dispositivo poder ser montado e desmontado por usurios comuns
user
Apenas quem montou ter permisso de desmontar
owner
As permisses do dispositivo montado se adequaro ao usurio que o montou
usrquota
Habilita o uso de quotas de disco para usurio
grpquota
Habilita o uso de quotas de disco para grupo
remount
Remonta um dispositivo montado com outras opes. til para remontar um dispositivo
como somente leitura, por exemplo.
49
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
repquota -a.
50
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
Permisses Octais
Permisses podem ser manejadas mais eficientemente atravs de um formato numrico, chamado
octal. O nmero octal consiste numa seqncia dgitos, cada um representando as permisses para o
usurio, grupo e outros, nessa ordem.
Permisses octais (numricas) e suas permisses correspondentes:
Dgito Leitura Escrita Execuo
0 - - -
1 - - sim
2 - sim -
3 - sim sim
4 sim - -
5 sim - sim
6 sim sim -
7 sim sim sim
Assim, o comando:
$ chmod 0664 texto_simples
Mudar as permisses do arquivo texto_simples para -rw-rw-r--, ou seja, leitura e escrita
para o usurio, leitura e escrita para o grupo e somente leitura para outros.
Para mudar recursivamente todo os arquivos dentro de um diretrio especificado, utiliza-se o
chmod com a opo -R.
umask
umask o filtro de permisses para criao de arquivos. As permisses para novos arquivos
criados so aplicadas calculando as permisses padro do sistema (0666 para arquivos e 0777
para diretrios) menos as permisses umask.
umask sem argumentos mostra a mscara atual de criao de arquivos. Para mudar, basta fornecer
a nova mscara como argumento.
Em sistemas onde os grupos iniciais dos usurios so particulares, a mscara poder ser 002, o que
subtrair das permisses padro do sistema a permisso 2 (w escrita), na categoria outros (o).
Dessa forma, os arquivos sero criados com as permisses 0664.
Em sistemas onde o grupo inicial de todos os usurios o grupo users, a mscara poder ser
0022, o que subtrair das permisses padro do sistema a permisso 2 (w escrita), nas categoria
grupo (g) e outros (o). Dessa forma, os arquivos sero criados com as permisses 0644, limitando
a permisso de escrita apenas ao usurio dono do arquivo.
51
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
suid e sgid
Todos processos so vinculados ao usurio que os iniciou. Dessa forma, um programa pode
trabalhar com um arquivo apenas at onde as permisses deste arquivo permitem ao usurio.
Algumas tarefas, no entanto, exigem que um usurio altere ou acesse arquivos aos quais no tem a
permisso necessria. Por exemplo, alterar a prpria senha exige que o arquivo /etc/passwd
seja alterado e as permisses de /etc/passwd s permitem escrita ao usurio dono (root):
$ ls -l /etc/passwd
-rw-r--r-- 1 root root 814 2006-03-15 14:04 /etc/passwd
Para contornar essa condio, existe um bit de permisso especial chamado suid. Arquivos
executveis que possuam a permisso suid sero executados em nome do dono do arquivo, e no
em nome de quem os executou. A permisso suid representada pela letra s, no campo
referente ao dono do arquivo (u):
$ ls -l /usr/bin/passwd
-rws--x--x 1 root bin 37880 2004-06-21 16:20 /usr/bin/passwd
A Permisso sticky
O inconveniente em usar diretrios compartilhados que um usurio poderia apagar algum ou todo
o contedo inadvertidamente. Para evitar que isso acontea, existe o modo de permisso stick, que
inibe usurios de apagarem arquivos que no tenham sido criados por eles mesmos. o caso do
diretrio /tmp:
$ ls -ld /tmp
drwxrwxrwt 21 root root 1312 2006-03-23 22:51 /tmp
A letra t nas permisses para demais usurios demonstra o uso da permisso sticky. Se apenas a
permisso sticky existir, aparecer a letra T maiscula.
Exemplo: Usar a permisso sticky no diretrio comunitario
$ chmod o+t comunitario/
52
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
Atributos chattr
possvel estabelecer algumas regras para o tratamento de arquivos em sistemas do tipo ext2, os
chamados atributos do arquivo. Para listar esses atributos, usa-se o comando lsattr. Para
alterar esses atributos, usa-se o comando chattr. Cada atributo especificado por uma letra
precedida do sinal +, - ou =, que adiciona, retira ou torna exclusivo o atributo no arquivo/diretrio
especificado.
Atributo Descrio
A No modifica a data de acesso
a O arquivo no poder ter seu contedo sobregravado. Apenas o
superusurio ou um programa capacitado por
CAP_LINUX_IMMUTABLE podero alterar essa opo.
c O kernel automaticamente comprime os dados para gravar e
descomprime para ler
D Um diretrio com essa funo grava imediatamente os dados ao disco,
como se a opo de montagem dirsync fosse aplicada a um subconjunto
de arquivos
d Essa opo exclui o arquivo de um backup via dump
i No poder ser alterado, apagado ou renomeado. Nenhum link poder
t-lo como alvo. Apenas o superusurio ou um programa capacitado
por CAP_LINUX_IMMUTABLE podero alterar essa opo.
j Todos os dados sero gravados ao jornal ext3 antes de serem
propriamente gravados
s Se o arquivo for apagado, todos seus blocos so zerados no disco
S Alteraes no arquivo so gravadas imediatamente no disco
u Aps a remoo do arquivo, o contedo do arquivo preservado,
53
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
Atributo Descrio
possibilitando recuperao.
Os atributos c, s e u no so de fato suportados.
Exemplo: Atribuir i ao arquivo texto_simples
$ chattr +i texto_simples
54
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
55
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
56
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
/proc
Armazena informaes do kernel em tempo de execuo
Podem ser pontos de montagem para outras parties e/ou dispositivos:
/boot
Kernel e mapas do sistema e os carregadores de boot de segundo estgio
/home
Os diretrios dos usurios
/root
Diretrio do superusurio
/tmp
Arquivos temporrios
/usr
Contedo para uso dos usurios. Programas, bibliotecas, documentos, etc.
/usr/local e /opt
Programa adicionais. Tambm podem conter as bibliotecas necessrias para os programas
adicionais.
/var/www e /var/ftp
Pginas HTML e diretrios para FTP annimo.
/var
Dados de programas como configuraes variantes e logs. Contm diretrio compartilhados
(ex: /var/spool/mail) e no compartilhados (ex: /var/log)
Encontrando Arquivos
find
find diretrio critrio [-exec comando {} \;]
O argumento diretrio indica onde o find deve iniciar a busca e critrio pode ser o nome do
arquivo /diretrio a ser procurado e/ou uma regra para a busca.
Critrios comuns para o find:
-type
Tipo do arquivo (d para diretrio, f para arquivo comum e l para link)
-name nome
Nome do arquivo
-user usurio
Dono do arquivo
-atime -/+n
57
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
Data de ltimo acesso ao arquivo, menor ou maior que n. n corresponde a n*24 horas.
-ctime -/+n
Data de criao do arquivo, menor ou maior que n. n corresponde a n*24 horas.
-mtime -/+n
Data de modificao do arquivo, menor ou maior que n. n corresponde a n*24 horas.
-amin -/+n
Data de ltimo acesso ao arquivo, menor ou maior que n. n corresponde a minutos.
-cmin -/+n
Data de criao do arquivo, menor ou maior que n. n corresponde a minutos.
-mmin -/+n
Data de modificao do arquivo, menor ou maior que n. n corresponde a minutos.
-newer arquivo
O arquivo procurado foi criado/modificado mais recentemente que arquivo.
-perm modo
O arquivo procurado tem permisso mode.
-perm -modo
O arquivo procurado tem todos as permisses listadas em mode.
-perm +modo
O arquivo procurado tem qualquer das permisses listadas em mode.
locate
Atravs do locate, todo caminho de arquivo ou diretrio contendo a expresso fornecida como
argumento ser mostrado. A busca significativamente mais rpida em relao ao find pois o
locate realiza a busca no seu banco de dados - /var/lib/slocate/slocate.db e no
diretamente no disco. Esse banco de dados precisa ser sempre atualizado atravs do comando
updatedb, o que geralmente feito por um agendamento cron dirio, mas que pode ser executado
manualmente. O arquivo de configurao para o updatedb o /etc/updatedb.conf. Nele
constam informao como que diretrios e sistemas de arquivos ignorar na atualizao do banco de
dados.
Exemplo de /etc/updatedb.conf:
# /etc/updatedb.conf: slocate configuration file
58
Tpico 104: Dispositivos, Sistemas de Arquivos GNU/Linux e Padro FHS
59
Tpico 110: O Sistema de Janelas X
Objetivo 1.110.1: Instalar e Configurar o X11R6
Peso: 5
Existem basicamente duas opes para o X11R6: Xfree86 e X.Org. Em termos prticos, no h
diferena entre eles, apenas em alguns detalhes de arquitetura e configurao. O X11R6 o
ambiente grfico de janelas no GNU/Linux.
Compatibilidade de Hardware
O primeiro passo antes de usar o X11R6 verificar a compatibilidade de hardware. Em
http://www.xfree86.org/4.1.0/Status.html pode ser encontrada a lista de dispositivos compatveis.
Ainda que o dispositivo no seja totalmente compatvel, possvel utiliz-lo no modo VESA
Framebuffer, se o mesmos suportar (a grande maioria dos dispositivos aceita esse modo).
Instalando o X11R6
O mais comum que o X11R6 j venha instalado junto com a distribuio. Para instalar
manualmente, os pacotes binrios podem ser encontrados em
ftp://ftp.xfree86.org/pub/XFree86/4.1.0/binaries/, em subdiretrios correspondentes a arquitetura
desejada (axp=alpha, ix86=Intel 80x86) e verso da biblioteca Gnu C. Para auxiliar no processo de
instalao, h o script Xinstall.sh, disponvel no diretrio common do servidor servidor FTP.
Verificar quais binrios adequados:
$ sh Xinstall.sh -check
Os arquivos de instalao fundamentais so Xbin.tgz, Xlib.tgz, Xman.tgz, Xdoc.tgz,
Xfnts.tgz, Xfenc.tgz, Xetc.tgz, Xvar.tgz, Xserv.tgz e Xmod.tgz.
Os arquivos devem ser descompactados em /usr/X11R6. O diretrio /usr/X11R6/bin deve
constar na varivel PATH e o diretrio /usr/X11R6/lib deve constar no cache de bibliotecas do
ls.so.
Configurando o X11R6
Configurar o X11R6 significa criar um arquivo /etc/X11/XF86Config ou
/etc/X11/xorg.conf, que deve conter informaes sobre caminhos para arquivos de sistema,
mouse, teclado, monitor e dispositivo de vdeo.
Ferramentas de configurao para o XFree86
XFree86 -autoconfig
Configura o servidor X automaticamente. Se bem sucedido, ser possvel mover o cursor do
mouse na tela. Ctrl+Alt+backspace fecha a sesso do X. O arquivo de configurao ainda
no foi escrito por essa ferramenta.
XFree86 -configure
Alternativa ao anterior
xf86cfg
61
Tpico 110: O Sistema de Janelas X
Se no ocorrerem problemas, uma sesso X ser iniciada com uma janela de configurao
mostrando o diagrama de configurao do servidor X.
xf86config
Interface interativa de texto para entrar as informaes de configurao manualmente.
Ferramentas de Configurao para o X.Org
X -configure
O servidor X carrega cada mdulo de dispositivo, testa o driver e salva o resultado para o
arquivo xorg.conf.new no diretrio do usurio (provavelmente /root)
xorgcfg
Se no ocorrerem problemas, uma sesso X ser iniciada com uma janela de configurao
mostrando o diagrama de configurao do servidor X.
xorgconfig
Interface interativa de texto para entrar as informaes de configurao manualmente.
Ajustes da Configurao
Aps configurar o servidor X, pode ser necessrio corrigir o posicionamento da tela. Para isso,
existe o aplicativo xvidtune. Atravs de uma interface interativa, possvel reposicionar a tela.
Encontrada a posio adequada, os valores retornados no terminal virtual devem ser includos como
opo Modeline, na seo Monitor do arquivo /etc/X11/XF86Config ou
/etc/X11/xorg.conf.
Outro item que pode precisar ser includo manualmente o funcionamento da roda do mouse. Na
seo referente ao mouse em /etc/X11/XF86Config ou /etc/X11/xorg.conf. incluir a
opo ZaxisMapping, como no exemplo:
Section "InputDevice"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/mouse"
Option "ZAxisMapping" "4 5"
EndSection
62
Tpico 110: O Sistema de Janelas X
ServerFlags
Opes globais para o servidor X, no formato Option Nome Valor.
Module
Carregamento dinmico de mdulos. Load nome do mdulo.
InputDevice
Dispositivos de entrada. Deve haver uma seo InputDevice para cada dispositivo. Os
itens obrigatrios nessa seo so Identifier e Driver. Identifier um nome
nico para identificao do dispositivo. Os valores mais comuns para Driver so
Keyboard e Mouse. Outros itens so opcionais e so descritos com Option. Option
CorePointer indica que o dispositivo o apontador (mouse) primrio. Option
CoreKeyboard indica que o dispositivo o teclado primrio. O caminho para o
dispositivo indicado com Option Device /dev/xxx.
Device
Dispositivo de vdeo. Vrias sees Device podem indicar vrios dispositivos de vdeo, e
deve haver ao menos um. Os itens obrigatrios nessa seo so Identifier e Driver.
Identifier um nome nico para identificao do dispositivo. Driver especifica o
drive do dispositivo de vdeo, disponveis em
/usr/X11R6/lib/modules/drivers/. Outros itens comuns so BusID (ex.:
Option BusID PCI:1:0:0) e VideoRam (Ex.: Option VideoRam 8192).
Monitor
O arquivo de configurao pode ter vrias sees Monitor. Deveria haver pelo menos
uma, mas se no houver uma padro ser criada. A nica opo obrigatria
Identifier. Outras opes so UseModes, HorizSync, VertRefresh e
ModeLine.
Modes
Modos de tela disponveis para monitor. No obrigatria.
Screen
Agrega dispositivo e monitor. Pode haver mais de uma seo Screen. Apenas as opes
Identifier e Device (indicando um dispositivo de vdeo de uma seo Device
existente) so obrigatrias.
Display (Subseo de screen)
A subseo Display define, entre outras coisas, que resoluo usar para cada
profundidade de cor.
ServerLayout
Agrega as sees Screen e InputDevice para formar uma configurao completa do
servidor X.
DRI
Seo opcional que fornece informao sobre a Infraestrutura de Renderizao Direta
(DRI). Para que usurios comuns possam utilizar o DRI, incluir o item Mode 0666 nesta
seo.
63
Tpico 110: O Sistema de Janelas X
Vendor
Informaes e configuraes personalizadas
Fontes
H dois sistemas de fontes, Core e Xft. No sistema Core as fontes so manipuladas no servidor e no
sistema Xft no cliente. O sistema Xft mais avanado e permite usar fontes Type1, OpenType,
TrueType, Speedo e CID, com suporte a anti-aliasing (cantos arredondados). O X.Org inclui
suporte nativo ao sistema Xft.
64
Tpico 110: O Sistema de Janelas X
65
Tpico 110: O Sistema de Janelas X
Login grfico:
id:5:initdefault:
O login grfico passar ento a ser controlado por um gerenciador de display.
H trs Gerenciadores de Display principais:
xdm Padro do X
gdm Gnome
kdm Kde
Os respectivos arquivos de configurao encontram-se em:
/etc/X11/xdm/*
/etc/X11/gdm/*
/etc/X11/kdm/*
xdm
O xdm faz parte dos programas do sistema de janelas X. O arquivo de configurao principal o
xdm-config. O caminho do programa /usr/bin/xdm. Alm de permitir o login local,
tambm permite que o login seja realizado atravs da rede. Para tanto, usado o protocolo XDMCP
( desativado por padro). O xdm precisa estar rodando (o que j acontece caso o runlevel do
sistema seja 5) e configurado adequadamente para responder pedidos de login. O host remoto,
atravs do comando X -query nome_do_servidor, solicitar o pedido de conexo.
Arquivos de configurao
/etc/X11/xdm/Xresources
A aparncia do xdm pode ser modificada atravs deste arquivo. Fontes, cores e mensagens pode ser
includas ou alteradas. Exemplo de contedo:
xlogin*borderwidth:3
xlogin*greeting:Bem vindo ao login grfico
xlogin*namePrompt:login:\040
xlogin*greetColor:blue
xlogin*foreground:black
xlogin*background:white
/etc/X11/xdm/Xsetup_0
Script executado antes do login, com permisso de super-usurio (root). Usado para definir
cores/imagens de fundo e disparar aplicativos.
/etc/X11/xdm/Xservers
Mapeia um display para um host. Geralmente contm apenas a indicao para o display local:
:0 local /usr/X11R6/bin/X
Pode tambm ser usado para automaticamente enviar requerimento de login para hosts remotos
rodando o X. O servidor X ocupar primeiro /dev/tty livre.
/etc/X11/xdm/Xaccess
Controla o acesso remoto via XDMCP. possvel estabelecer regras para pedidos de conexo
remotos.
66
Tpico 110: O Sistema de Janelas X
gdm
O executvel do gdm encontra-se em /usr/bin/gdm. O arquivos de configurao so
Sessions , gdm.conf e Init/Default, que corresponde ao Xresources. O arquivo
gdm.conf controla a maioria das funes do xdm.
kdm
Os arquivos do kdm muitas vezes esto em /usr/share/config/kdm. O executvel
/usr/bin/kdm. Sua configurao em muito parecida com a do xdm, sendo o arquivo kdmrc o
principal.
Menus
Uma das funes de um gerenciador de janelas fornecer menus de acesso programas (menu
root) e controle de janelas (menu window). O menu root acessado clicando na rea de trabalho, o
menu window clicando na barra ou no boto do ttulo da janela.
A configurao dos menus varia para cada gerenciador de janelas. De uma forma geral, arquivos de
configurao de menus tm seu contedo disposto de forma hierrquica, discriminando o tipo do
67
Tpico 110: O Sistema de Janelas X
Emulador de Terminal
O emulador de terminal um programa que permite interagir com o shell como num terminal de
texto convencional. O emulador de terminal mais comum o xterm. H alternativas interessantes
como o rxvt que mais leve que o xterm e o aterm que possui mais opes de
configurao.
Os padres de aparncia e comportamento do xterm so determinados no arquivo
/etc/X11/app-defaults/XTerm. Essas caractersticas podem ser alteradas atravs de
argumentos para o xterm ou atravs dos arquivos ~/.Xresources ou ~/.Xdefaults.
Exemplo de ~/.Xresources:
XTerm*font: -misc-fixed-*-*-*-*-18-*-*-*-*-*-iso8859-1
XTerm*foreground: grey70
XTerm*background: black
XTerm*visualBell: true
Nesse exemplo alterada a fonte, as cores de fundo e de letra e o bipe de sistema inibido para dar
lugar a uma sinalizao visual. Para que essas alteraes tenham efeito, necessrio aglutinar as
configuraes ao banco de dados de recursos do servidor X. Essa tarefa realizada
automaticamente (se houver alteraes no arquivo) toda vez que o X inicia ou manualmente, com o
comando:
$ xrdb -merge ~/.Xresources
H ferramentas que auxiliam a criao de arquivos de recursos, no s para o emulador de terminal,
mas para uma variedade de outros programas:
xwininfo
Retorna informaes sobre uma janela, inclusive informaes de posio e tamanho.
editres
Permite testar as configuraes e posteriormente salv-las num arquivo.
68
Tpico 110: O Sistema de Janelas X
DISPLAY Remoto
Em ambientes de rede, possvel redirecionar a janela de um programa para ser mostrada e
controlada em um outro host da rede. A varivel de ambiente DISPLAY determina onde as janelas
de programas sero mostradas e controladas.
A varivel DISPLAY possui o seguinte formato:
hostname:displaynumber.screennumber
Em estaes de trabalho convencionais onde o usurio est logado ao prprio host local e s h um
conjunto de monitor e teclado/mouse, a varivel DISPLAY :0.0, o que significa que os
programas sero mostrados e controlados no nico display (entendido como o conjunto
monitor/teclado/mouse) no host local. Displaynumber e screennumber so teis, por exemplo, para
operar com monitores adicionais instalados no host.
Se o usurio est logado no servidor por uma estao remota chamada debian, atravs de uma
conexo XDMCP (login remoto via xdm), a varivel DISPLAY para este usurio dever ser
debian:0.0, de forma que os programas executados por ele (programas oriundos do servidor)
sejam mostrados e controlados na estao remota.
Por segurana, apenas o usurio e no mesmo host que iniciou a sesso X poder abrir programas no
respectivo display, a menos que outros usurios/hosts sejam autorizados a faz-lo. Essa
exclusividade garantida atravs do MIT-MAGIC-COOKIE-1, um cookie que gerado toda vez
que uma sesso X inicia e armazenado em ~/.Xauthority.
A maneira mais convencional de se autorizar outros a acessar um mesmo display usando o
comando xhost, que libera/bloqueia o acesso para outros usurios/hosts ao display local:
Permitir a outros usurio no host local acessarem o display:
69
Tpico 110: O Sistema de Janelas X
# xhost +local:
70
Apndice 1
Objetivos detalhados para o exame 101
Estes so os objetivos oficiais para o exame 101, disponveis atravs do site http://www.lpi.org/. A
opo por deixar os objetivos em ingls para ater-se ao formato original, visto que os objetivos
oficiais so publicados apenas nesse idioma.
The following is a partial list of the used files, terms and utilities:
/proc/ioports
/proc/interrupts
/proc/dma
/proc/pci
1.101.3 Configure Modem and Sound cards
Comment this objective!
Weight: 1
Description: Candidates should be able to configure modem and soundcard settings.
Key knowledge area(s):
Ensure devices meet compatibility requirements (particularly that the modem is not an
71
Apndice 1
unsupported win-modem).
Verify that correct resources are used by the cards.
Configure modem for outbound dial-up.
Set serial port speeds.
The following is a partial list of the used files, terms and utilities:
/proc/dma
/proc/interrupts
/proc/ioports
/proc/pci
lspci
lsusb
1.101.4 Setup non-IDE Devices
Comment this objective!
Weight: 1
Description: Candidates should be able to configure non-IDE devices as SCSI, SATA, USB
drives using the special BIOS as well as the necessary Linux tools.
Key knowledge area(s):
Differentiate between the various types of non-IDE devices.
Manipulate BIOS to detect used and available SCSI IDs.
Set the correct hardware ID for different devices, especially the boot device.
Configure BIOS settings to control the boot sequence when both non-IDE and IDE devices
are present .
The following is a partial list of the used files, terms and utilities:
SCSI ID
/proc/scsi/
scsi_info
1.101.5 Setup different PC expansion cards
Comment this objective!
Weight: 3
Description: Candidates should be able to configure various cards for the various expansion
slots.
Key knowledge area(s):
Know the differences between coldplug and hotplug devices.
Determine hardware recources for devices.
The following is a partial list of the used files, terms and utilities:
The appropriate subdirectories of /proc
hotplug configuration files, terms and utilities
lspci
lsusb
1.101.6 Configure Communication Devices
Comment this objective!
Weight: 1
Description: Candidates should be able to install and configure different internal and
72
Apndice 1
external communication devices like modems, ISDN adapters and DSL modems.
Key knowledge area(s):
Verification of compatibility requirements (such as the modem is not a winmodem).
Correctly set IRQs, DMAs and I/O Ports of the cards to avoid conflicts between devices.
Load and configure suitable device drivers.
Set serial port speed.
Setup modem for outbound PPP connections.
The following is a partial list of the used files, terms and utilities:
/proc/dma
/proc/interrupts
/proc/ioports
setserial
1.101.7 Configure USB devices
Comment this objective!
Weight: 1
Description: Candidates should be able to activate USB support, use and configure different
USB devices.
Key knowledge area(s):
Identify and load the correct USB driver module.
Demonstrate knowledge of the USB layer architecture and the modules used in the different
layers.
The following is a partial list of the used files, terms and utilities:
lspci
xHCI modules
lsusb
/etc/usbmgr/
usbmodules
/etc/hotplug
udev configuration files, utilities and documentation
The following is a partial list of the used files, terms and utilities:
/ (root) filesystem
/var filesystem
73
Apndice 1
/home filesystem
swap space
mount points
partitions
1.102.2 Install a boot manager
Comment this objective!
Weight: 1
Description: Candidates should be able to select, install and configure a boot manager.
Key knowledge area(s):
Providing alternative boot locations and backup boot options (for example, using a boot
floppy or a bootable CDROM).
Install and configure a boot loader such as GRUB or LILO.
Interact with the boot loader.
The following is a partial list of the used files, terms and utilities:
/boot/grub/grub.conf
/boot/grub/menu.lst
grub-install
MBR
superblock
first stage boot loader
/etc/lilo.conf
lilo
1.102.3 Make and install programs from source
Comment this objective!
Weight: 5
Description: Candidates should be able to build and install an executable program from
source. This objective includes being able to unpack a file of sources. Candidates should be
able to make simple customizations to the Makefile, for example changing paths or
adding extra include directories, either in the raw Makefile or using the configure
tools.
Key knowledge area(s):
Unpack a file of sources using typical compression utilities.
Make simple customizations to Makefile such as changing paths or adding extra include
directories.
Apply parameters to a configure script.
Know where sourses are stored by default.
Compile a RPM oder DPKG software package using sources.
The following is a partial list of the used files, terms and utilities:
RPM and DPKG commands
/usr/src/
gunzip
gzip
bzip2
tar
configure
74
Apndice 1
make
1.102.4 Manage shared libraries
Comment this objective!
Weight: 3
Description: Candidates should be able to determine the shared libraries that executable
programs depend on and install them when necessary.
Key knowledge area(s):
Identify shared libraries.
Identify the typical locations of system libraries.
Load shared libraries.
The following is a partial list of the used files, terms and utilities:
ldd
ldconfig
/etc/ld.so.conf
LD_LIBRARY_PATH
1.102.5 Use Debian package management
Comment this objective!
Weight: 8
Description: Candidates should be able to perform package management using the Debian
package tools.
Key knowledge area(s):
Install, upgrade and uninstall Debian binary packages.
Find packages containing specific files or libraries which may or may not be installed.
Obtain package information like version, content, dependencies, package integrity and
installation status (whether or not the package is installed).
The following is a partial list of the used files, terms and utilities:
unpack
configure
/etc/dpkg/dpkg.cfg
/var/lib/dpkg/*
/etc/apt/apt.conf
/etc/apt/sources.list
dpkg
dselect
dpkg-reconfigure
apt-get
alien
1.102.6 Use Red Hat Package Manager (RPM)
Comment this objective!
Weight: 8
Description: Candidates should be able to perform package management using RPM based
tools.
Key knowledge area(s):
75
Apndice 1
The following is a partial list of the used files, terms and utilities:
/etc/rpmrc
/usr/lib/rpm/*
rpm
grep
The following is a partial list of the used files, terms and utilities:
.
bash
echo
env
exec
export
pwd
set
unset
~/.bash_history
~/.profile
1.103.2 Process text streams using filters
Comment this objective!
Weight: 6
Description: Candidates should should be able to apply filters to text streams.
Key knowledge area(s):
Send text files and output streams through text utility filters to modify the output using
standard UNIX commands found in the GNU textutils package.
76
Apndice 1
The following is a partial list of the used files, terms and utilities:
cat
cut
expand
fmt
head
hexdump
join
nl
paste
pr
sed
sort
split
tac
tail
tr
unexpand
uniq
wc
1.103.3 Perform basic file management
Comment this objective!
Weight: 3
Description: Candidates should be able to use the basic Linux commands to manage files
and directories.
Key knowledge area(s):
Copy, move and remove files and directories individually.
Copy multiple files and directories recursively.
Remove files and directories recursively.
Use simple and advanced wildcard specifications in commands.
Using find to locate and act on files based on type, size, or time.
The following is a partial list of the used files, terms and utilities:
cp
find
mkdir
mv
ls
rm
rmdir
touch
file globbing
1.103.4 Use streams, pipes and redirects
Comment this objective!
Weight: 5
Description: Candidates should be able to redirect streams and connect them in order to
77
Apndice 1
efficiently process textual data. Tasks include redirecting standard input, standard output and
standard error, piping the output of one command to the input of another command, using
the output of one command as arguments to another command and sending output to both
stdout and a file.
Key knowledge area(s):
Redirecting standard input, standard output and standard error.
Pipe the output of one command to the input of another command.
Use the output of one command as arguments to another command.
Send output to both stdout and a file.
The following is a partial list of the used files, terms and utilities:
tee
xargs
<
<<
>
>>
|
` ` (back ticks)
1.103.5 Create, monitor and kill processes
Comment this objective!
Weight: 5
Description: Candidates should be able to perform basic process management.
Key knowledge area(s):
Run jobs in the foreground and background.
Start a process that will run without being associated to a terminal.
Signal a program to continue running after logout.
Monitor active processes.
Select and sort processes for display.
Send signals to processes.
Kill processes including processes that did not terminate correctly after an X session has
closed
The following is a partial list of the used files, terms and utilities:
&
bg
fg
jobs
kill
nohup
ps
top
killall
1.103.6 Modify process execution priorities
Comment this objective!
Weight: 3
Description: Candidates should should be able to manage process execution priorities.
78
Apndice 1
The following is a partial list of the used files, terms and utilities:
nice
ps
renice
top
1.103.7 Search text files using regular expressions
Comment this objective!
Weight: 3
Description: Candidates should be able to manipulate files and text data using regular
expressions. This objective includes creating simple regular expressions containing several
notational elements. It also includes using regular expression tools to perform searches
through a filesystem or file content.
Key knowledge area(s):
Create simple regular expressions containing several notational elements.
Use regular expression tools to perform searches through a filesystem or file content.
The following is a partial list of the used files, terms and utilities:
grep
sed
1.103.8 Perform basic file editing operations using vi
Comment this objective!
Weight: 1
Description: Candidates should be able to edit text files using vi. This objective includes vi
navigation, basic vi modes, inserting, editing, deleting, copying and finding text.
Key knowledge area(s):
Navigate a document using vi.
Use basic vi modes (Command, Insert, Replace).
Insert, edit, delete, copy and find text.
The following is a partial list of the used files, terms and utilities:
vi
/, ?
h,j,k,l
G, H, L
i, c, d, dd, p, o, a
ZZ, :w!, :q!, :e!
:!
79
Apndice 1
Weight: 3
Description: Candidates should be able to configure disk partitions and then create
filesystems on media such as hard disks. This includes the handling of swap partitions.
Key knowledge area(s):
Use various mkfs commands to set up partitions and create various filesystems, including
ext2, ext3, reiserfs, vfat and xfs.
The following is a partial list of the used files, terms and utilities:
fdisk
mkfs
mkswap
1.104.2 Maintain the integrity of filesystems
Comment this objective!
Weight: 3
Description: Candidates should be able to maintain a standard filesystem, as well as the
extra data associated with a journaling filesystem.
Key knowledge area(s):
Verify the integrity of filesystems.
Monitor free space and inodes.
Repair simple filesystem problems.
The following is a partial list of the used files, terms and utilities:
du
df
fsck
e2fsck
mke2fs
debugfs
dumpe2fs
tune2fs
1.104.3 Control mounting and unmounting filesystems
Comment this objective!
Weight: 3
Description: Candidates should be able to configure the mounting of a filesystem.
Key knowledge area(s):
Manually mount and unmount filesystems.
Configure filesystem mounting on bootup.
Configure user mountable removeable filesystems such as tape drives, floppies and
CDROMs.
The following is a partial list of the used files, terms and utilities:
/etc/fstab
mount
umount
1.104.4 Managing disk quota
80
Apndice 1
The following is a partial list of the used files, terms and utilities:
quota
edquota
repquota
quotaon
1.104.5 Use file permissions to control access to files
Comment this objective!
Weight: 5
Description: Candidates should be able to control file access through the proper use of
permissions.
Key knowledge area(s):
Manage access permissions on regular and special files as well as directories.
Use access modes such as suid, sgid and the sticky bit to maintain security.
Use the group field to grant file access to workgroups.
Basic knowledge of ACL.
Know how to change the default file creation mode of the shell.
The following is a partial list of the used files, terms and utilities:
chmod
umask
chattr (where applicable)
1.104.6 Manage file ownership
Comment this objective!
Weight: 1
Description: Candidates should be able to control user and group ownership of files. This
objective includes the ability to change the user and group owner of a file as well as the
default group owner for new files.
Key knowledge area(s):
Manage access permissions on regular and special files as well as directories.
Use the group field to grant file access to workgroups.
The following is a partial list of the used files, terms and utilities:
chmod
chown
chgrp
1.104.7 Create and change hard and symbolic links
Comment this objective!
Weight: 1
81
Apndice 1
Description: Candidates should be able to create and manage hard and symbolic links to a
file.
Key knowledge area(s):
Create links.
Identify hard and/or softlinks.
Copying versus linking files.
Use links to support system administration tasks.
The following is a partial list of the used files, terms and utilities:
ln
1.104.8 Find system files and place files in the correct location
Comment this objective!
Weight: 5
Description: Candidates should be thouroughly familiar with the Filesystem Hierarchy
Standard (FHS), including typical file locations and directory classifications.
Key knowledge area(s):
Understand the correct locations of files under the FHS.
Find files and commands on a Linux system.
Know the location and propose of impotant file and directories as defind in the FHS.
The following is a partial list of the used files, terms and utilities:
find
locate
slocate
updatedb
whereis
which
/etc/updatedb.conf
The following is a partial list of the used files, terms and utilities:
xorgcfg
xorgconfig
/etc/X11/xorg.conf XF86Setup
xf86config
82
Apndice 1
xvidtune
/etc/X11/XF86Config
.Xresources
1.110.2 Setup a display manager
Comment this objective!
Weight: 3
Description: Candidates should be able setup and customize a display manager. This
objective covers the display managers XDM (X Display Manger), GDM (Gnome Display
Manager) and KDM (KDE Display Manager).
Key knowledge area(s):
Turn the display manager on or off.
Change the display manager greeting.
Change default color depth for the display manager.
Configure display managers for use by X-stations.
The following is a partial list of the used files, terms and utilities:
/etc/inittab
/etc/X11/xdm/*
/etc/X11/kdm/*
/etc/X11/gdm/*
1.110.4 Install & Customize a Window Manager Environment
Comment this objective!
Weight: 5
Description: Candidates should be able to customize a system-wide desktop environment
and/or window manager.
Key knowledge area(s):
Demonstrate an understanding of customization procedures for window manager menus
and/or desktop panel menus.
Select and configuring the desired x-terminal (xterm, rxvt, aterm etc.).
Verify and resolve library dependency issues for X applications.
Export the X-display to a client workstation.
The following is a partial list of the used files, terms and utilities:
.xinitrc
.Xdefaults
xhost
DISPLAY environment variable
83
Apndice 2
GNU Free Documentation License
GNU Free Documentation License
Version 1.2, November 2002
0. PREAMBLE
We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a free
program should come with manuals providing the same freedoms that the
software does. But this License is not limited to software manuals;
it can be used for any textual work, regardless of subject matter or
whether it is published as a printed book. We recommend this License
principally for works whose purpose is instruction or reference.
This License applies to any manual or other work, in any medium, that
contains a notice placed by the copyright holder saying it can be
distributed under the terms of this License. Such a notice grants a
world-wide, royalty-free license, unlimited in duration, to use that
work under the conditions stated herein. The "Document", below,
refers to any such manual or work. Any member of the public is a
licensee, and is addressed as "you". You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.
85
Apndice 2
(or to related matters) and contains nothing that could fall directly
within that overall subject. (Thus, if the Document is in part a
textbook of mathematics, a Secondary Section may not explain any
mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.
The "Cover Texts" are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License. A Front-Cover Text may
be at most 5 words, and a Back-Cover Text may be at most 25 words.
The "Title Page" means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page. For works in
formats which do not have any title page as such, "Title Page" means
the text near the most prominent appearance of the work's title,
preceding the beginning of the body of the text.
86
Apndice 2
The Document may include Warranty Disclaimers next to the notice which
states that this License applies to the Document. These Warranty
Disclaimers are considered to be included by reference in this
License, but only as regards disclaiming warranties: any other
implication that these Warranty Disclaimers may have is void and has
no effect on the meaning of this License.
2. VERBATIM COPYING
You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no other
conditions whatsoever to those of this License. You may not use
technical measures to obstruct or control the reading or further
copying of the copies you make or distribute. However, you may accept
compensation in exchange for copies. If you distribute a large enough
number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and
you may publicly display copies.
3. COPYING IN QUANTITY
If you publish printed copies (or copies in media that commonly have
printed covers) of the Document, numbering more than 100, and the
Document's license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all these Cover
Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
the back cover. Both covers must also clearly and legibly identify
you as the publisher of these copies. The front cover must present
the full title with all words of the title equally prominent and
visible. You may add other material on the covers in addition.
Copying with changes limited to the covers, as long as they preserve
the title of the Document and satisfy these conditions, can be treated
as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.
It is requested, but not required, that you contact the authors of the
87
Apndice 2
4. MODIFICATIONS
You may copy and distribute a Modified Version of the Document under
the conditions of sections 2 and 3 above, provided that you release
the Modified Version under precisely this License, with the Modified
Version filling the role of the Document, thus licensing distribution
and modification of the Modified Version to whoever possesses a copy
of it. In addition, you must do these things in the Modified Version:
A. Use in the Title Page (and on the covers, if any) a title distinct
from that of the Document, and from those of previous versions
(which should, if there were any, be listed in the History section
of the Document). You may use the same title as a previous version
if the original publisher of that version gives permission.
B. List on the Title Page, as authors, one or more persons or entities
responsible for authorship of the modifications in the Modified
Version, together with at least five of the principal authors of the
Document (all of its principal authors, if it has fewer than five),
unless they release you from this requirement.
C. State on the Title page the name of the publisher of the
Modified Version, as the publisher.
D. Preserve all the copyright notices of the Document.
E. Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.
F. Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.
G. Preserve in that license notice the full lists of Invariant Sections
and required Cover Texts given in the Document's license notice.
H. Include an unaltered copy of this License.
I. Preserve the section Entitled "History", Preserve its Title, and add
to it an item stating at least the title, year, new authors, and
publisher of the Modified Version as given on the Title Page. If
there is no section Entitled "History" in the Document, create one
stating the title, year, authors, and publisher of the Document as
given on its Title Page, then add an item describing the Modified
Version as stated in the previous sentence.
J. Preserve the network location, if any, given in the Document for
public access to a Transparent copy of the Document, and likewise
the network locations given in the Document for previous versions
it was based on. These may be placed in the "History" section.
You may omit a network location for a work that was published at
least four years before the Document itself, or if the original
publisher of the version it refers to gives permission.
K. For any section Entitled "Acknowledgements" or "Dedications",
Preserve the Title of the section, and preserve in the section all
the substance and tone of each of the contributor acknowledgements
and/or dedications given therein.
L. Preserve all the Invariant Sections of the Document,
unaltered in their text and in their titles. Section numbers
or the equivalent are not considered part of the section titles.
M. Delete any section Entitled "Endorsements". Such a section
may not be included in the Modified Version.
N. Do not retitle any existing section to be Entitled "Endorsements"
or to conflict in title with any Invariant Section.
88
Apndice 2
5. COMBINING DOCUMENTS
You may combine the Document with other documents released under this
License, under the terms defined in section 4 above for modified
versions, provided that you include in the combination all of the
Invariant Sections of all of the original documents, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy. If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of
Invariant Sections in the license notice of the combined work.
6. COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents
released under this License, and replace the individual copies of this
89
Apndice 2
You may extract a single document from such a collection, and distribute
it individually under this License, provided you insert a copy of this
License into the extracted document, and follow this License in all
other respects regarding verbatim copying of that document.
8. TRANSLATION
9. TERMINATION
You may not copy, modify, sublicense, or distribute the Document except
as expressly provided for under this License. Any other attempt to
copy, modify, sublicense or distribute the Document is void, and will
automatically terminate your rights under this License. However,
parties who have received copies, or rights, from you under this
License will not have their licenses terminated so long as such
90
Apndice 2
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
91