Escolar Documentos
Profissional Documentos
Cultura Documentos
www.linuxforce.com.br
Contedo
1 Conhecendo um novo mundo
. . . . . . . . . . . . . . . . . . . . . . . . . .
30
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3 Logon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4
Introduo ao Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
. . . . . . . . . . . . . . . . . . . 40
. . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.8 FC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.9 Logout
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
. . . . . . . . . . . . . . . . . . . . . . . . . 44
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4 Obtendo ajuda
52
Contedo
. . . . . . . . . . . . . . . . . . . . . . . . . 55
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2.2 Manuais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.2.3 Documentao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.3 Comandos de ajuda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.3.1 Comando help . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.3.2 Comando apropos . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3.3 Comando whatis . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.4 Comando man . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3.5 Comando info
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
69
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
. . . . . . . . . . . . . . . . . . 78
. . . . . . . . . . . . . . 81
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
83
Diretrio /boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Linux ONE
Pgina ii
Contedo
109
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
7.4 Praticando
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Administrao da Shell
122
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
9 Introduo a Redes
9.1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
138
Linux ONE
Pgina iii
Contedo
. . . . . . . . . . . . . . . . . . . . . . 142
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
. . . . . . . . . . . . . . . . . . . . . . 147
. . . . . . . . . . . . . . . . . . 148
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
10 Servidor SSH
157
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
11 TCP Wrappers
176
182
Linux ONE
Pgina iv
Contedo
Linux ONE
Pgina v
Contedo
223
. . . . . . . . . . . . . . . . . . . . . . . . . . . 232
. . . . . . . . . . . 251
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
268
. . . . . . . . . . . . . . . . 270
. . . . . . . . . . . . . . . . . . . . 272
Linux ONE
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Pgina vi
Contedo
. . . . . . . 281
285
293
. . . . . . . . . . . . . . . . 301
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
306
319
339
Linux ONE
Pgina vii
Contedo
Linux ONE
Pgina viii
Captulo 1
Conhecendo um novo mundo
Linux ONE
Pgina 2
Linux ONE
Pgina 3
Linux ONE
Pgina 4
tivos. Exemplos so: Debian, Slackware, Gentoo, Knoppix e CentOS, entre outras
de menor importncia.
Distribuies Corporativas - Mantidas por empresas que vendem o suporte ao seu
sistema. Exemplos: RedHat, Ubuntu, Suse e Mandriva.
Neste ponto vale ressaltar o fato de que o produto vendido pelas empresas que
comercializam sistemas GNU/Linux, so na verdade, os servios relacionados ao
sistema operacional, como suporte tcnico, garantias e treinamentos, ou seja, o expertise do sistema. Ento, de fato, no h produto algum sendo vendido, apenas os
servios relacionados aos softwares agregados na distribuio GNU/Linux.
a liberdade do software, garantida pela licena GPL, que perpetua o respeito dos
direitos definidos pela FSF. Isso porque, pela definio de Software Livre, nunca, em
hiptese alguma, permitido que o cdigo fonte seja negado ao cliente, ao receptor
do Software. Assim, por mais que uma empresa queira utilizar mecanismos pouco
ticos para fazer o seu prprio sistema GNU/Linux, enquanto ela estiver utilizando
softwares licenciados sob a licena GPL, ela ser obrigada a distribuir o cdigo fonte
dos programas.
Dentro do conjunto de Distribuies Livres, podemos dividi-las novamente em duas
outras categorias:
Convencionais
Live
Linux ONE
Pgina 5
O fator que favoreceu essa abordagem que, em uma distribuio Live praticamente todos os componentes j vm configurados, funcionando e com interfaces
agradveis aos usurios finais. Exemplos desse tipo de distribuio so o Knoppix, do qual se originaram diversas outras como o Kurumin ou Kalango, que so
verses traduzidas e adaptadas realidade brasileira.
Para entender um pouco mais sobre distribuies, necessrio lembrar de mais duas
caractersticas:
From scratch
Provenientes (Baseadas)
Distribuies From Scratch - So desenvolvidas do zero, ou seja, utilizam um kernel Linux, alguns programas GNU e a grande maioria das suas particularidades
desenvolvida especificamente para ela. Exemplos:
Debian ;
RedHat;
Gentoo;
Slackware;
Distribuies Provenientes (Baseadas) - Aproveitam ferramentas e bases j desenvolvidas por outras distribuies. Distribuies baseadas usam distribuies From
Scratch para alcanar seus objetivos mais rpido, dando maior ateno ao propsito
da distribuio. Exemplos: Ubuntu, DreamLinux, Kubuntu, Kurumin, Slax e BrDesktop, dentre outras.
Linux ONE
Pgina 6
Captulo 2
Instalao Desktop Debian e CentOS
Escolha do idioma:
Linux ONE
Pgina 8
Linux ONE
Pgina 9
Linux ONE
Pgina 10
Linux ONE
Pgina 11
Linux ONE
Pgina 12
Finalize o particionamento:
Linux ONE
Pgina 13
Tenha certeza que seu particionamento est correto, as alteraes sero gravadas
no disco e seus dados sero perdidos a partir daqui:
Caso tenha um repositrio de pacotes (espelho de rede) digite sim, caso contrrio
no:
Linux ONE
Pgina 14
Caso o repositrio externo no possa ser acessado devido a falta de conexo com a
internet, prossiga com a instalao:
Linux ONE
Pgina 15
Linux ONE
Pgina 16
Linux ONE
Pgina 17
Escolha o idioma:
Linux ONE
Pgina 18
Linux ONE
Pgina 19
Linux ONE
Pgina 20
Configurar rede:
Linux ONE
Pgina 21
Linux ONE
Pgina 22
Linux ONE
Pgina 23
Linux ONE
Pgina 24
Concluir a instalao:
Linux ONE
Pgina 25
Configurando o sistema:
Linux ONE
Pgina 26
Linux ONE
Pgina 27
Crie um usurio:
Linux ONE
Pgina 28
Linux ONE
Pgina 29
Captulo 3
Primeiros Passos
Primeiros Passos
importante entender cada uma dessas camadas para compreender o conjunto que
chamamos de Sistema Operacional.
Vamos descrever cada uma delas:
Hardware - Dispositivos que esto disponveis para o uso do sistema, tais como
cd-rom, placa de rede, controladora SCSI entre outros;
Kernel - O ncleo do sistema operacional, essa layer quem faz todas as interaes com o hardware da mquina, interpretando requisies feitas pelas camadas
acima desta;
Sistema Operacional - Essa layer tem como funo auxiliar e abrigar todos os
aplicativos das camadas superiores. Segundo Linus Torvalds essa layer no deve
ser notada pelo usurio final;
ttyN - Terminais Virtuais onde so executados os comandos e definidas as configuraes. As ttys interpretam os comandos dados por um humano e convertem os
Linux ONE
Pgina 31
Primeiros Passos
Linux ONE
Pgina 32
Primeiros Passos
Linux ONE
Pgina 33
Primeiros Passos
3.3 Logon
Logon a entrada do usurio, seja root ou comum, onde deve ser digitado seu
nome de usurio e logo depois sua senha. Caso voc digite algo de forma errada,
ir aparecer uma mensagem de erro e voc no ser logado autenticado - no
sistema.
importante perceber que quando se digita a senha, no aparece nenhum retorno,
como os famosos asteriscos. O objetivo evitar que um observador mais curioso
seja capaz de contar quantos caracteres sua senha possui.
Linux ONE
Pgina 34
Primeiros Passos
Linux ONE
Pgina 35
Primeiros Passos
cima e seta para baixo para ter acesso ao histrico de comandos. Inclusive o nome
do programa responsvel por manter essa lista history.
Outra funcionalidade muito utilizada, serve para rolar a nossa tela de modo que possamos ir para cima ou para baixo, parecido com o scroll Para rolarmos a tela para
cima, segura-se a tecla Shift e pressionamos o Page Up. Para rolarmos a tela
para baixo, segura-se a tecla Shift e pressionamos o Page Down. Isto til para
ver textos que rolaram rapidamente para cima e saram do nosso campo de viso.
A execuo de comandos com poderes administrativos, exige que o nvel do usurio
comum seja alterado. Uma das formas de fazer isso utilizando o comando su Super User. Veja sua descrio abaixo:
su - Para usar o comando su necessrio ter o password do administrador. Uma vez que o nvel tenha sido mudado ser possvel executar qualquer
comado com poderes de root.
$ su
# whoami
# who am i
Linux ONE
Pgina 36
Primeiros Passos
O comando whoami indica quem voc no momento root. Se voc utilizou o comando "su"para tornar-se outro usurio o comando "who am i"informa quem voc
realmente aluno, pois foi com ele que voc se logou na mquina antes de trocar
de usurio.
Ele tambm pode ser utilizado para trocar de usurio, ele no pedir a senha se voc
for usurio root:
# su - aluno
$ su -
Linux ONE
Pgina 37
Primeiros Passos
3.5.2 CentOS:
possvel utilizar o comando loadkeys para alterar o layout de teclado durante a
sesso mas, essa alterao ser temporria. Para trocar definitivamente o padro
de layout do teclado da mquina, altere o arquivo em /etc/sysconfig/keyboard.
1) Altere o layout de teclado para utilizar o padro brasileiro:
Linux ONE
Pgina 38
Primeiros Passos
# loadkeys -d br - abnt2
# loadkeys -d us - acentos
Linux ONE
Pgina 39
Primeiros Passos
CentOS
Linux ONE
Pgina 40
Primeiros Passos
# history
Linux ONE
Pgina 41
Primeiros Passos
3.8 FC
FC significa Find Command ou Fix Command pois ele executa as duas tarefas, encontrar e corrigir comandos. Para listar os comandos j digitados, guardados
no history, digite:
# fc -l
Por padro mostra os ltimos 16 comandos. Para visualizar uma lista de comandos
do 2 ao 6 faa:
# fc -l 2 6
# fc -l -20
# fc -l h
Linux ONE
Pgina 42
Primeiros Passos
3.9 Logout
Logout a sada do sistema. Ela feita por um dos comandos abaixo:
\$ logout
\$ exit
\$ <CTRL >+ D
Linux ONE
Pgina 43
Primeiros Passos
# shutdown -h now
# halt
# poweroff
A palavra halt vem do comando em assembly chamado HTL, que quer dizer parada de processamento. Assim, o GNU/Linux finalizar os programas e gravar os
dados remanescentes na memria no disco rgido. Quando for mostrada a mensagem power down, pressione o boto POWER em seu gabinete para desligar a
alimentao de energia do computador. Nunca desligue o computador diretamente
sem utilizar um dos comandos shutdown, halt ou poweroff, pois podem ocorrer perdas de dados ou falhas no sistema de arquivos de seu disco rgido, devido
a programas abertos e dados ainda no gravados no disco. Os comandos halt e
poweroff disparam uma srie de procedimentos, como encerramento de servios
e desligamento de sistemas de arquivos, que so executados antes da mquina ser
desligada.
Em computadores mais modernos o comando halt desliga completamente o computador, no sendo necessrio pressionar o boto Power.
Salve seus trabalhos para no correr o risco de perd-los durante o desligamento do
computador. E se puder, tenha um No-break.
O comando shutdown tem a seguinte sintaxe:
Linux ONE
Pgina 44
Primeiros Passos
# shutdown -h now
Ou
# shutdown -h 0
# shutdown -h 12
# shutdown -c
Linux ONE
Pgina 45
Primeiros Passos
# shutdown -r now
Ou
# shutdown -r 0
# shutdown -r 5
Acessando os diretrios
Linux ONE
Pgina 46
Primeiros Passos
# pwd
# cd
# cd ~
# cd /
# cd / etc
# cd ..
Linux ONE
Pgina 47
Primeiros Passos
# cd -
# cd ../../
Diretrio . e ..
Fique esperto para conhecer as diferenas entre o . e o .. e o que eles representam para o sistema. Os comandos de movimentao muitas vezes so grandes
alvos nas provas, uma boa interpretao desses comandos pode ser necessria,
pois voc pode precisar deles para resolver uma questo maior.
O comando ls utilizado para listar o contedo dos diretrios. Se no for especificado nenhum diretrio, ele ir mostrar o contedo daquele onde estamos no
momento. Lista o contedo do diretrio atual:
# ls
Linux ONE
Pgina 48
Primeiros Passos
Atalhos do bash A seguir, vamos testar algumas funcionalidades da linha de comando. No necessrio se preocupar em decor-los, com o passar do tempo,
pegamos um pouco mais de prtica:
Pressione a tecla Back Space para apagar um caractere esquerda do cursor;
Pressione a tecla Delete para apagar o caractere direita do cursor;
Pressione a tecla Home para ir ao comeo da linha de comando;
Pressione a tecla End para ir ao final da linha de comando;
Pressione as teclas Ctrl + A para mover o cursor para o incio da linha de
comandos;
Pressione as teclas Ctrl + E para mover o cursor para o fim da linha de
comandos;
Pressione as teclas Ctrl + U para apagar o que estiver esquerda do cursor.
O contedo apagado copiado e pode ser colado com Ctrl + y;
Pressione as teclas Ctrl + K para apagar o que estiver direita do cursor. O
contedo apagado copiado e pode ser colado com Ctrl + y;
Pressione as teclas Ctrl + l para limpar a tela e manter a linha de comando
na primeira linha. Mas se voc der um Shift + Page Up voc ainda consegue
enxergar o contedo. O Ctrl + l um atalho para o comando clear;
Pressione as teclas Ctrl + c para abrir uma nova linha de comando, na posio atual do cursor;
Pressione as teclas Ctrl + d para sair do Shell. Este equivalente ao
comando exit;
Linux ONE
Pgina 49
Primeiros Passos
Linux ONE
Pgina 50
Primeiros Passos
3.12 LAB1
Execute o script1.sh do Lab1
1- Configure o teclado que est desconfigurado e deixe permanente para que no
prximo reboot continue funcionando.
2 Foi agendado o desligamento da mquina para daqui a 10 minutos, cancele o
shutdown.
Linux ONE
Pgina 51
Captulo 4
Obtendo ajuda
Obtendo ajuda
Toda essa documentao que possumos no sistema GNU/Linux est disponvel no site: http://www.tldp.org (The Linux Documentation Project), o site oficial de
documentaes sobre GNU/Linux.
Um diferencial deste site ter a documentao em vrios idiomas e formatos: pdf,
html, txt e outros.
Linux ONE
Pgina 53
Obtendo ajuda
Linux ONE
Pgina 54
Obtendo ajuda
4.2.1 How-tos
Os How-tos so documentos que focam uma necessidade especfica, como montar
um firewall, instalar uma webcam, configurar placas de som, configurar um servidor web e muitos outros. Normalmente esses documentos so instalados junto com
suas respectivas aplicaes ou podem ter um pacote especfico para a documentao daquela aplicao. Os how-tos tambm so conhecidos como cook-books
- livro de receitas.
O diretrio de How-tos do GNU/Linux o /usr/share/doc. Se desejamos saber
como configurar um firewall, podemos consultar os arquivos do diretrio:
Na Internet existem diversos sites de how-tos para GNU/Linux. Dentre eles o mais
conhecido no Brasil o Viva o Linux, conhecido tambm como VOL:
http://www.vivaolinux.com.br
Muitas vezes o uso de how-tos ou cook-books, no agrega um bom conhecimento, pois trata-se somente de uma lista de afazeres para chegar a um objetivo.
Quando o software atualizado, todo aquele conhecimento fica dependente de um
novo how-to.
Linux ONE
Pgina 55
Obtendo ajuda
4.2.2 Manuais
Diferente dos How-tos os manuais no vo te mostrar um passo a passo ou mesmo
te dar uma lista de afazeres. O principal objetivo do manual te mostrar como as
funcionalidades daquele software podem ser usadas. Com o manual o aprendizado
para a utilizao da ferramenta facilitado, j que o mesmo possui alguns exemplos
de usabilidade. Esses manuais podem ser encontrados atravs do comando man,
o qual veremos ainda nesse captulo, um pouco mais adiante.
4.2.3 Documentao
A palavra documentao muito intensa. Quando falamos em documentar uma
ferramenta, estamos na realidade abrangendo uma srie de outros itens importantes,
dentre eles os How-tos e os manuais. Com a documentao de um projeto
possvel entender absolutamente tudo sobre o mesmo, ou seja, essa documentao
deve mostrar todas as partes relacionadas ao projeto.
Podemos, por exemplo, citar a documentao de um projeto de rede, onde deve
constar no s documentos como how-tos e manuais, mas sim todas as especificaes dos componentes, bem como cabos, switchs e routers dentre outros
detalhes muito importantes.
Como esse tipo de documentao muito especifica, devemos consultar o site de
cada projeto individualmente.
Linux ONE
Pgina 56
Obtendo ajuda
# help
Caso desejemos visualizar a ajuda rpida para somente um comando interno, usamos esta outra sintaxe:
# help [ comando ]
# help type
Linux ONE
Pgina 57
Obtendo ajuda
# help help
# [ comando ] -- help
Desse modo, caso desejemos visualizar uma ajuda rpida sobre um comando externo, devemos fazer da seguinte forma:
# ls -- help
O parmetro help pode ser utilizado em qualquer comando para ter uma consulta
rpida dos parmetros que ele pode nos oferecer. importante entender que help
na verdade um parmetro individual de cada comando, logo se um comando no
tiver esse parmetro existem outros meios para se obter ajuda. No se esquea de
estudar as diferenas entre comandos internos e externos.
Linux ONE
Pgina 58
Obtendo ajuda
Imagine que voc precise editar um arquivo, mas no sabe qual editor utilizar. Execute o apropos para procurar algum comando ou manual de um comando para edio:
# apropos editor
# man -k editor
# whatis [ comando ]
Voc sabe que tem um programa chamado vim, mas no sabe o que ele faz?
# whatis vim
Linux ONE
Pgina 59
Obtendo ajuda
# man -f vim
# catman
CentOS:
# makewhatis -v
Os comandos apropos e whatis utilizam a mesma base de dados, importante perceber isso. catman (Debian) e makewhatis (CentOS)
Linux ONE
Pgina 60
Obtendo ajuda
comum o exame cobrar mais dos nveis 1, 5 e 8 dos manuais! Ento lembrese de estudar binrios, arquivos de configurao e comandos administrativos.
# man [ comando ]
ou
Linux ONE
Pgina 61
Obtendo ajuda
# man [ se o ] [ comando ]
Essas informaes sobre as sees do comando man podem ser encontradas em seu prprio manual, digitando o comando man man.
Se for necessrio visualizar o manual do comando passwd, podemos fazer da seguinte forma:
# man passwd
Para navegar pelo manual, o comando man abre um arquivo que est compactado na pasta /usr/share/man/man1 para o passwd. Outros nveis de manuais,
dependem do comando ou arquivo.
O passwd conhecido no sistema GNU/Linux como um comando que adiciona ou
modifica a senha do usurio e, tambm, como o arquivo de usurios do sistema
(/etc/passwd).
Veremos agora o manual do arquivo de usurios passwd:
# man 5 passwd
Linux ONE
Pgina 62
Obtendo ajuda
Dentro desse diretrio possvel ver todas as divises dos manuais: os nveis, os
idiomas e mais. Todos os nveis de manuais possuem sua determinada introduo
que pode ser vista com o comando:
Podemos ver os manuais em diversos idiomas diferentes, desde que o pacote para o
idioma escolhido esteja instalado. Se nosso sistema estiver instalado em portugus,
o comando man ir trazer todas os manuais disponveis em portugus.
# man 7 undocumented
Podemos ver que para visualizar o manual do arquivo de usurio passwd precisamos informar em qual nvel de manual ele se encontra, pois j existe um passwd
no nvel 1, que o comando, ento ele aparece primeiro quando digitamos man
passwd sem indicar o nvel. Esse manual do arquivo passwd est compactado na
pasta /usr/share/man/man5.
Linux ONE
Pgina 63
Obtendo ajuda
# info
# info [ comando ]
# info vim
Linux ONE
Pgina 64
Obtendo ajuda
Para obter uma melhor visualizao, duas ferramentas de documentao foram desenvolvidas:
yelp -> Ferramenta grfica para visualizao de manuais de aplicativos grficos do
GNOME; (fornecido pelo pacote yelp)
xman -> Front-end para o comando man, que facilita a consulta das man pages;
(fornecido pelo pacote x11-apps)
Linux ONE
Pgina 65
Obtendo ajuda
ou
# whereis vim
Linux ONE
Pgina 66
Obtendo ajuda
# which vi
Linux ONE
Pgina 67
Obtendo ajuda
4.6 lab2
1 - Descubra qual o comando que existe no sistema para envio e recebimento de
e-mail com cinco letras.
2 - Envie um e-mail para aula.treinamentolinux@gmail.com Caso tenha dificuldades,
seu chefe deixou um arquivo chamado dica.txt, procure-o e leia-o para mais informaes.
Linux ONE
Pgina 68
Captulo 5
Aprendendo comandos do
GNU/Linux
Linux ONE
Pgina 70
5.2 O comando ls
O comando ls possui muitos parmetros, veremos aqui as opes mais utilizadas. A
primeira delas o -l que lista os arquivos ou diretrios de uma forma bem detalhada
(quem criou, data de criao, tamanho, dono e grupo ao qual cada um pertence):
1
2
# ls -l /
drwxr -xr - x4 root root 1024 2007 -01 -15 23:17 boot
Veja que a sada desse comando bem detalhada. Falando sobre os campos, para
o primeiro caractere temos algumas opes:
l => indica que se trata de um " link " ( como se fosse um atalho tamb m vamos falar sobre ele depois )
u => " sin nimo para o tipo c " indica que o arquivo um dispositivo
de caractere ( sem buffer )
FIFO - Sigla para First In, First Out, que em ingls significa primeiro a entrar, primeiro a sair. So amplamente utilizados para implementar filas de espera. Os elementos vo sendo colocados no final da fila e retirados por ordem de chegada. Pipes
(|) so um exemplo de implementao de FIFO.
Buffer - uma regio de memria temporria, usada para escrita e leitura de dados.
Normalmente, os buffers so utilizados quando existe uma diferena entre a taxa em
que os dados so recebidos e a taxa em que eles podem ser processados.
Linux ONE
Pgina 71
1
2
# ls -a / root
Veja que, da sada do comando anterior, alguns arquivos so iniciados por . (ponto).
Esses arquivos so ocultos. No Linux, arquivos e diretrios ocultos so iniciados
por um . (ponto). Listar arquivos de forma recursiva, ou seja, listar tambm os
subdiretrios que esto dentro do diretrio /:
# ls -R /
Linux ONE
Pgina 72
Como listar os arquivos que terminam com a palavra .conf dentro do diretrio
/etc?
Como buscar no diretrio raiz / todos os diretrios que terminem com a letra n?
# ls -ld /* n
Linux ONE
Pgina 73
# cd ~
# touch arq1
5.3.2 Curingas
O significado da palavra curinga no dicionrio o seguinte: carta de baralho, que
em certos jogos, muda de valor e colocao na sequncia. No sistema GNU/Linux
bem parecida a utilizao desse recurso. Os curingas so utilizados para especificar
um ou mais arquivos ou diretrios.
Eles podem substituir uma palavra completa ou somente uma letra, seja para listar,
copiar, apagar, etc. So usados cinco tipos de curingas no GNU/Linux:
! - exclui da opera o
Linux ONE
Pgina 74
10
X{ab ,01} - Faz refer ncia a sequ ncia de caracteres Xab ou X01 .
11
DICA: - A barra invertida serve para escapar um caracter especial, ela conhecida tambm como backslash.
# cd ~
# ls
Linux ONE
Pgina 75
arq1 arq1 . txt arq2 arq2 . txt arq3 arq3 . txt arq4 arq4 . new arq5
arq5 . new
Vamos listar todos os arquivos do diretrio /root. Podemos usar o curinga * para
visualizar todos os arquivos do diretrio:
# ls *
arq1 arq1 . txt arq2 arq2 . txt arq3 arq3 . txt arq4 arq4 . new arq5
arq5 . new
Para listarmos todos os arquivos do diretrio /root que tenham new no nome:
# ls * new *
Listar todos os arquivos que comeam com qualquer nome e terminam com .txt:
1
2
# ls *. txt
arq1 . txt arq2 . txt arq3 . txt
Listar todos os arquivos que comeam com o nome arq, tenham qualquer caractere
no lugar do curinga, e terminem com .txt:
1
2
# ls arq ?. txt
arq1 . txt arq2 . txt arq3 . txt
Para listar todos os arquivos que comeam com o nome arq, tenham qualquer caractere entre o nmero 1-3 no lugar da 4 letra e terminem com .txt. Neste caso,
se obtm uma filtragem mais exata, pois o curinga especifica qualquer caractere naquela posio e [ ] especifica um intervalo de nmeros ou letras que ser usado:
Linux ONE
Pgina 76
1
2
# ls *. new
# ls * new *
# ls arq ?. new
# ls arq [4 ,5].*
Existem muitas outras sintaxes possveis para obter o mesmo resultado. A mais indicada ser sempre aquela que atender necessidade com o menor esforo possvel.
A criatividade nesse momento conta muito. No exemplo anterior, a ltima forma resulta na busca mais especfica. O que pretendemos mostrar como visualizar mais
de um arquivo de uma s vez. O uso de curingas muito til e pode ser utilizado em
todas as aes do sistema operacional referentes aos arquivos e diretrios: copiar ,
apagar, mover e renomear.
Linux ONE
Pgina 77
# mkdir aula
A opo -p permite a criao de diretrios de forma recursiva. Para que um subdiretrio exista, o seu diretrio diretamente superior tem que existir. Portanto a criao
de uma estrutura como notas/abril/bimestre/prova exigiria a execuo de quatro
comandos mkdir.
Algo como:
# mkdir notas
A opo -p permite que toda essa estrutura seja criada em uma nica linha. Assim:
Linux ONE
Pgina 78
Exemplos:
Remover os arquivos com extenso txt:
# cd ~
# ls
# rm arq ?. txt
# ls
1
2
# rm -i arq4 . new
rm : remover arquivo comum vazio arq . new4 ?
# rm -r notas
Observao: Muita ateno ao usar o comando rm! Uma vez que os arquivos
e diretrios removidos no podem mais ser recuperados!
Linux ONE
Pgina 79
# rmdir aula
2
3
4
5
6
7
Uma opo do comando cp muito til em nosso dia-a-dia a opo -p, que faz
com que a cpia mantenha os meta-dados dos arquivos, ou seja, no modifica a
data e hora de criao, seus donos e nem suas permisses. Utilizar como root:
# su - aluno
$ touch teste
$ ls -l
$ exit
# cd / home / aluno
# cp -p teste teste2
# cp teste teste3
# ls -l teste2 teste3
Linux ONE
Pgina 80
# mv teste teste4
Movendo arquivo:
# mv teste4 / tmp
Renomeando diretrio:
# mv turma matematica
Movendo diretrio:
Linux ONE
Pgina 81
5.4 LAB3
Existe uma pasta /backup no servidor e os backups esto desorganizados, organizeos:
1- Criar a estrutura de diretrios a partir da raiz: /backup/
2 - Copiar os backups do diretrio /backup de acordo com a data utilizando os caracteres curingas e coloc-los em seus novos diretrios, organizados por perodos.
Linux ONE
Pgina 82
Captulo 6
FHS, Hierarquia dos Diretrios
vital entender bem sobre a FHS para prova, atravs dela que ns devemos fazer nossas atividades com o GNU/Linux em nosso dia-a-dia.
Linux ONE
Pgina 84
O arquivo pode ser um texto, uma imagem, planilha, etc. Os arquivos devem ser
identificados por nomes para que sejam localizados por quem deseja utiliz-los.
Um detalhe importante a ser observado que o GNU/Linux segue o padro POSIX que case sensitive, isto , ele diferencia letras maisculas e minsculas nos
arquivos e diretrios.
Linux ONE
Pgina 85
6.2.1 Diretrio /
# ls -- color /
A opo color do comando ls serve para deixar colorido a listagem, ex: azul -> diretrio branco -> arquivo regular verde -> arquivo executvel azul claro -> link simblico
vermelho -> arquivo compactado rosa -> imagem
Este o principal diretrio do GNU/Linux, e representado por uma / (barra).
no diretrio raiz que ficam todos os demais diretrios do sistema. Estes diretrios,
que vamos conhecer agora, so chamados de subdiretrios pois esto dentro do
diretrio /.
# ls / bin
Linux ONE
Pgina 86
# ls / boot
No diretrio /boot esto os arquivos estticos necessrios inicializao do sistema, e o gerenciador de boot. O gerenciador de boot um programa que permite
escolher e carregar o sistema operacional que ser iniciado.
# ls / dev
No diretrio /dev ficam todos os arquivos de dispositivos. O GNU/Linux faz a comunicao com os perifricos por meio de links especiais que ficam armazenados
nesse diretrio, facilitando assim o acesso aos mesmos.
Para verificar que seu mouse reconhecido como um arquivo, tente olhar o contedo
do arquivo /dev/input/mice:
Linux ONE
Pgina 87
Repare que os dados so binrios e no possvel ler o arquivo com o comando cat.
Caso seu terminal fique com caracteres estranhos utilize o comando reset para
resetar o shell:
# reset
# od / dev / psaux
O comando hexdump utilizado para visualizar o contedo de um arquivo nos formatos: hexadecimal, octal, decimal, ASCII. Este comando pode ser til para um
programador que deseja criar um programa conforme o movimento do mouse.
Linux ONE
Pgina 88
# ls / etc
Vamos dividir esta linha em campos, onde cada campo separado por : (dois
pontos), ento:
Linux ONE
Pgina 89
O comando more assim como o cat serve para ver o contedo de um arquivo que ,
geralmente, texto. A diferena entre o more e o cat que o more faz uma pausa
a cada tela cheia exibindo uma mensagem --More", dando uma oportunidade ao
usurio ler a tela.
Aperte enter para ir para a prxima linha ou espao para ir para a prxima pgina e
para sair digite q.
Uma alternativa ao uso do comando more seria o uso do comando less, que implementa as mesmas funcionalidades que more e mais algumas, como a possibilidade
de rolar a tela para cima e para o lado quando o texto ocupa mais de oitenta colunas.
A utilizao dos comandos less e more se faz de maneira semelhante.
Este arquivo possui as senhas criptografadas dos usurios do sistema. Existe uma
entada no arquivo para cada usurio do sistema com os seguintes campos:
Linux ONE
Pgina 90
pwunconv
# getent passwd
Linux ONE
Pgina 91
O comando getent obtm dados da base administrativa do sistema, seguindo a ordem de busca que est no arquivo /etc/nsswitch.conf:
# info libc " Name Service Switch " for information about this file .
7
8
passwd :
compat
group :
compat
shadow :
compat
12
hosts :
13
networks :
files
15
protocols :
db files
16
services :
db files
17
ethers :
db files
18
rpc :
db files
netgroup :
nis
10
11
14
19
20
Linux ONE
Pgina 92
# pwconv
# ls / lib
No diretrio /lib esto as bibliotecas compartilhadas e mdulos do kernel. As bibliotecas so funes que podem ser utilizadas por vrios programas.
Cada kernel tm seus prprios mdulos, que ficam em: /lib/modules/<verso do kernel>/kernel Separados por tipos em subdiretrios.
Para saber sua verso do kernel execute:
# uname -r
Linux ONE
Pgina 93
# ls / media
# ls / mnt
Linux ONE
Pgina 94
# ls / opt
Normalmente, utilizado por programas proprietrios ou que no fazem parte oficialmente da distribuio.
# ls / sbin
halt
ifconfig
init
iptables
Linux ONE
Pgina 95
$ /sbin/ifconfig eth0
Alterar IP da placa de rede:
$ /sbin/ifconfig eth0 192.168.200.100
Obs.: necessrio passar o caminho completo do comando, pois o diretrio /sbin
no consta na lista de diretrios de comandos do usurio comum que definida na
varivel PATH, iremos estudar esta varivel durante o curso.
# ls / srv
Diretrio para dados de servios fornecidos pelo sistema, cuja aplicao de alcance
geral, ou seja, os dados no so especficos de um usurio. Por exemplo:
/srv/www (servidor web)
/srv/ftp (servidor ftp)
# ls / tmp
Linux ONE
Pgina 96
TMPTIME =0
SULOGIN = no
DELAYLOGIN = no
UTC = yes
VERBOSE = no
FSCKFIX = no
Altere o valor da varivel TMPTIME para o nmero de dias que desejar manter os
dados aps o seu ltimo acesso.
Para alterar no CentOS:
flags =- umc
/ usr / sbin / tmpwatch " $flags " -x / tmp /. X11 - unix -x / tmp /. XIM - unix \
for d in / var /{ cache / man , catman }/{ cat ? , X11R6 / cat ? , local / cat ?}; do
if [ -d " $d " ]; then
8
9
10
11
done
Linux ONE
Pgina 97
# ls / usr
O diretrio /usr contm programas que no so essenciais ao sistema e que seguem o padro GNU/Linux, como, por exemplo, navegadores, gerenciadores de janelas, etc.
# ls / var
# ls / var / spool
Linux ONE
Pgina 98
arquivos de log
# ls / var / log
# ls / proc
O /proc um diretrio virtual, mantido pelo kernel, onde encontramos a configurao atual do sistema, dados estatsticos, dispositivos j montados, interrupes,
endereos e estados das portas fsicas, dados sobre as redes, etc.
Utilize os paginadores more ou less para visualizar alguns arquivos:
Linux ONE
Pgina 99
ao trabalho logo depois. Cada endereo uma espcie de campainha, que pode ser
tocada a qualquer momento. Se no fossem pelos endereos de IRQ, o processador
no seria capaz de ler as teclas digitadas no teclado, nem os clicks do mouse, a sua
conexo pararia toda vez que abrisse qualquer programa e assim por diante.
o arquivo que contm a lista do registro ISA direto dos canais em uso da acesso a
memria (DMA).
Os canais de DMA so utilizados apenas por dispositivos de legado (placas ISA, portas paralelas e drives de disquete) para transferir dados diretamente para a memria
RAM, reduzindo desta forma a utilizao do processador.
Neste arquivo encontramos informaes sobre os endereos das portas I/O (Input/Output).
Diferentemente dos endereos de IRQ, os endereos de I/O no so interrupes,
mas sim endereos utilizados para a comunicao entre os dispositivos. Cada dispositivo precisa de um endereo prprio mas, ao contrrio dos endereos de IRQ, existe
uma abundncia de endereos de I/O disponveis, de forma que eles raramente so
um problema.
# ls / sys
Linux ONE
Pgina 100
Pode-se dizer que esse diretrio um primo do diretrio /proc. Dentro do diretrio
/sys podemos encontrar o quase o mesmo contedo do /proc, mas de uma forma
bem mais organizada para ns administradores.
Esse diretrio est presente desde a verso 2.6 do kernel, ele agrupa informaes
sobre os dispositivos instalados, incluindo o tipo, fabricante, capacidade, endereos
usados e assim por diante. Estas informaes so geradas automaticamente pelo
kernel e permitem que os servios responsveis pela deteco de hardware faam
seu trabalho, configurando impressoras e criando cones no desktop para acesso ao
pendrive, por exemplo.
# ls / home
/ root
Os diretrios /root e /home podem estar disponveis no sistema, mas no precisam obrigatoriamente possuir este nome. Por exemplo, o diretrio /home poderia
se chamar /casa, que no causaria nenhum impacto na estrutura do sistema.
O /home contm os diretrios pessoais dos usurios cadastrados no sistema.
O /root o diretrio pessoal do super usurio root.
O root o administrador do sistema, e pode alterar as configuraes do sistema,
configurar interfaces de rede, manipular usurios e grupos, alterar a prioridade dos
processos, entre outras. Dica: Utilize uma conta de usurio normal em vez da conta
root para operar seu sistema.
Linux ONE
Pgina 101
programa Cavalo de Tria (programa que obtm poderes do super usurio) comprometendo a segurana do seu sistema sem que voc saiba.
-name [expresso] :
Procura pela [expresso] definida nos nomes de arquivos e diretrios processados.
-maxdepth [num] :
Limita a recursividade de busca na rvore de diretrios. Por exemplo, limitando a 1,
a busca ser feita apenas no diretrio especificado e no ir incluir nenhum subdiretrio.
Linux ONE
Pgina 102
-amin [num] :
Procura por arquivos que foram acessados [num] minutos atrs. Caso seja antecedido por -, procura por arquivos que foram acessados entre [num] minutos atrs e
o momento atual.
# find ~ - amin -5
-atime [num] :
Procura por arquivos que foram acessados [num] dias atrs. Caso seja antecedido
por -, procura por arquivos que foram acessados entre [num] dias atrs e a data
atual.
-uid [num] :
Procura por arquivos que pertenam ao usurio com o uid 1000 [num].
-user [nome] :
Procura por arquivos que pertenam ao usurio aluno [nome].
-perm [modo] :
Linux ONE
Pgina 103
-size [num] :
Procura por arquivos que tenham o tamanho [num]. O tamanho especificado em bytes. Voc pode usar os sufixos k, M ou G para representar o tamanho em Quilobytes,
Megabytes ou Gigabytes, respectivamente. O valor de [num] Pode ser antecedido de
+ ou - para especificar um arquivo maior ou menor que [num].
# find / - size +1 M
-type [tipo] :
Procura por arquivos do [tipo] especificado. Os seguintes tipos so aceitos:
b - bloco; c - caractere; d - diretrio; p - pipe; f - arquivo regular; l - link simblico; s
- socket.
Outros exemplos:
Procura no diretrio raiz e nos subdiretrios um arquivo/diretrio chamado grep
ignorando caso sensitivo:
Linux ONE
Pgina 104
Procura no diretrio atual e nos subdiretrios um arquivo com tamanho maior que
1000 kbytes (1Mbyte).:
Procura diretrios a partir do diretrio /etc e tambm executa um comando no resultado da busca com a opo exec, no exemplo o comando ls -ld:
- exec ls - ld {} \;
6.2.19 xargs
Outra forma de procurar por arquivos e/ou diretrios e executar um comando atravs do comando xargs que obtm como a entrada a sada ok do comando antes do
pipe e envia como stdin do prximo comando, no caso o ls -ld:
Linux ONE
Pgina 105
| xargs ls - ld
# ls / | xargs - n1
# ls / | xargs - n2
# ls / | xargs - n3
Voc percebeu que no primeiro comando ele listou o diretrio, jogando na tela um
nome de cada vez. O segundo comando far o mesmo s que com dois nomes na
mesma linha, e o terceiro com 3 nomes.
Tempo de execuo de um programa: time
O comando time permite medir o tempo de execuo de um programa. Sua sintaxe
: time [programa].
Exemplo:
Linux ONE
Pgina 106
# updatedb
Quando esse comando executado pela primeira vez costuma demorar um pouco.
Isso deve-se a primeira varredura do disco para a criao da primeira base de dados.
Para o comando locate, usamos a seguinte sintaxe:
# locate howto
Linux ONE
Pgina 107
6.3 Lab4
1 - Localizar diretrio httpd que est localizado dentro do diretrio que contm os
arquivos de configuraes do sistema, criar o diretrio /backup/confs e copi-lo para
l.
Linux ONE
Pgina 108
Captulo 7
Editores de texto
Editores de texto
Linux ONE
Pgina 110
Editores de texto
# nano [ arquivo ]
Ao ser chamado, este editor ir apresentar um tela em branco com um rodap semelhante a esse:
Vamos analisar essas funes:
Get Help - Apresenta uma tela de ajuda para os mais diversos comandos e
G
uma breve explicao sobre o editor;
X Exit - Sai do editor, lembrando que se o arquivo no estiver salvo, essa opo
ir te pedir para salv-lo;
WriteOut - Salva ou sobrescreve um arquivo;
J Justify - Justifica o arquivo inteiro;
Read File - Importa um arquivo;
R
Linux ONE
Pgina 111
Editores de texto
Para definirmos qual ser o editor padro no Debian podemos usar o aplicativo
update-alternatives.
Linux ONE
Pgina 112
Editores de texto
Linux ONE
Pgina 113
Editores de texto
7.4 Praticando
# vim texto
4
5
6
7
9
10
11
12
13
14
15
16
17
18
19
CTRL + R
20
21
: set number
22
23
:2 y
24
25
26
27
28
29
30
31
32
33
ou
Para for ar a
sa da sem salvar : : q !
Linux ONE
Pgina 114
Editores de texto
# vim texto
3
4
5
6
# vim texto
ou
5 dd
Para for ar :
:1 ,5 d
ou
x!
ou
Com o
d5d
3
4
# vim texto
q!
/ inser
# Buscar palavra " inser " dentro do arquivo acima do cursor , digite :
? inser
Linux ONE
Pgina 115
Editores de texto
Linux ONE
Pgina 116
Editores de texto
Linux ONE
Pgina 117
Editores de texto
Linux ONE
Pgina 118
Editores de texto
:q - Sai do editor;
:q! - Sai do editor sem salvar as alteraes realizadas.
2
3
:q => Sai .
10
11
12
13
14
Linux ONE
Pgina 119
Editores de texto
set number
syntax on
set hlsearch
Linux ONE
Pgina 120
Editores de texto
7.6 LAB5
1- Habilite permantemente a numerao das linhas no servidor CentOS.
2-Pratique o vim: Acesse o ip da mquina Dexter pelo navegador da mquina Debian.
Cadastre-se como cliente e edite o arquivo na mquina Dexter: /var/www/dexter/clientes.php Copie da linhas 41 at a linha 47 e cole na linha 48, cadastre seu nome e
um telefone fictcio, recarregue o site da aula.
Linux ONE
Pgina 121
Captulo 8
Administrao da Shell
Administrao da Shell
Linux ONE
Pgina 123
Administrao da Shell
Linux ONE
Pgina 124
Administrao da Shell
# ANSWER =42
Esse tipo de varivel que acabamos de definir conhecida como escalar e pode
receber valores numricos ou caracteres.
Para acessarmos o endereo de memria atribudo varivel ANSWER, em shell,
devemos utilizar o operador $ (cifro) antes do nome da varivel, ou seja, se desejarmos mostrar na tela o valor da varivel ANSWER devemos imprimir o contedo
armazenado no endereo de memria $ANSWER:
# echo $ANSWER
O comando echo usado para imprimir algo na tela ou direcionar para um arquivo.
Isso bastante til para automao. Na linha de comando o echo til para inspecionar variveis de ambiente, que so parmetros guardados em memria e que
definem o ambiente em uso.
Para imprimir algo na tela:
# echo algo
Linux ONE
Pgina 125
Administrao da Shell
# comando = ls
# echo $comando
Ou
# echo $comando
# echo $comando
Ou
# echo $( $comando )
Linux ONE
Pgina 126
Administrao da Shell
# echo $magica
# set
# clear
# env
# bash
Linux ONE
Pgina 127
9
10
Administrao da Shell
# echo $magica
# exit
Exporte a varivel:
# export magica
# set
# clear
# env
# bash
# echo $magica
# unset magica
# echo $magica
Para ficar permanente para todos e funcionar em qualquer terminal deve-se colocar
em um dos arquivos:
/ etc / profile
/ etc / environment
Linux ONE
Pgina 128
Administrao da Shell
Para ficar permanente para o usurio e funcionar em qualquer terminal deve-se colocar em um dos arquivos:
~/. bashrc
~/. bash_profile
~/. bash_login
~/. profile
# echo $PS1
Algumas variveis importantes: EDITOR -> define o editor que abrir um programa
que chama o editor padro. No debian, conseguimos fazer a alterao do editor atravs do comando update-alternatives config editor, que veremos ainda no curso.
# echo $EDITOR
# vipw
# vipw
# TMOUT =30
Linux ONE
Pgina 129
Administrao da Shell
# echo $HOME
# echo $HISTSIZE
# history
PATH -> define quais diretrios pesquisar e a ordem na qual eles so pesquisados
para encontrar um determinado comando:
# su - aluno
$ echo $PATH
$ ifconfig
$ whereis ifconfig
No utilizamos o which que traz apenas o caminho do binrio do comando porque ele
no iria encontrar o comando ifconfig em nosso PATH j o whereis traz da localizao
original. Repare que o comando ifconfig tem o seu binrio localizado em /sbin/ifconfig
que no est no nosso PATH, quer dizer, no estava porque agora vamos adicionlo:
Linux ONE
Pgina 130
Administrao da Shell
$ ifconfig
Isso no significa que voc tem a permisso de root para executar os comandos de
root. Tente derrubar sua placa de rede:
Linux ONE
Pgina 131
Administrao da Shell
8.4 Alias
Um recurso do shell que facilita muito a vida do usurio a definio de aliases.
Imagine que um usurio gosta de utilizar o comando ls sempre com os parmetros
- -color -h -l. O que seria dele se toda vez que fosse execut-lo tivesse que escrever
o comando com todos os parmetros?! Para resolver esse tipo de situao, basta
criar um alias para o comando ls que defina que cada vez que o usurio digitar um
simples ls ele ser sucedido pelas opes definidas, e o que ser executado ser
o comando ls - -color -h -l. Para criarmos esse alias, basta usarmos o comando
abaixo:
# alias ls = ls -- color -h -l
Dessa forma fica fcil criar seu prprio comando. Por exemplo, um que limpe a tela:
# alias c = clear
# c
# alias
Linux ONE
Pgina 132
Administrao da Shell
# unalias c
# c
Quando uma bash executada como uma shell de login interativo ela l e executa o arquivo /etc/profile, se ele existir. Esse arquivo deve conter as configuraes gerais que se aplicam a todos os usurios do sistema. Aps ler o /etc/profile,
ela ir procurar por um dos arquivos:
~/. bash_profile
~/. bash_login
~/. profile
Esses arquivos esto na home do usurio, executando o primeiro que estiver disponvel e tiver permisso de leitura. Alm desses, executa tambm o arquivo /.bashrc.
Perceba que esses so arquivos ocultos, pois esto precedidos por um (.)
Quando a bash estiver sendo terminada (usurio fazendo logout), o arquivo /.bash_logout
ser lido e executado, caso ele exista. Atravs deste arquivo, podemos automatizar
procedimentos como por exemplo limpar a tela ao se deslogar do sistema.
Quando uma bash chamada mas no uma shell de login, o arquivo chamado
ser apenas o /.bashrc.
Linux ONE
Pgina 133
Administrao da Shell
Sendo assim, para criar aliases ou definir variveis ou funes que sejam comuns
a todos os usurios, devemos inclu-las no arquivo /etc/profile. Caso o usurio no
queira utilizar o padro do sistema, alter-lo ou adicionar configuraes pessoais,
ele deve utilizar os arquivos /.bash_profile, /.bash_login, /.profile ou /.bashrc
para isso.
Para colocar alias ou variveis permanentes para seu usurio:
alias ls = ls -- color
2
3
Linux aula 2.6.32 -5 -486 # 1 Wed May 9 22:23:40 UTC 2011 i686
4
5
The programs included with the Debian GNU / Linux system are free
software ;
the exact distribution terms for each program are described in the
Linux ONE
Pgina 134
9
10
Administrao da Shell
1
2
Linux ONE
Pgina 135
Administrao da Shell
echo $SHELL
# su - aluno
A opo which bash substituda pelo seu resultado /bin/bash. No prximo login
o aluno estar no shell bash novamente.
Linux ONE
Pgina 136
Administrao da Shell
8.6 LAB6
Existem alguns comandos para gerar letras grandes ou desenhos, exemplo: banner,
figlet.
1- Altere os arquivos /etc/motd, /etc/issue, /etc/issue.net do servidor. Utilize o comando banner para gerar um aviso, copie sua sada para o arquivo /etc/issue. ex de
uso:
2- Altere a varivel TMOUT, que est com um tempo muito baixo, coloque um valor
razovel ex: 3, 5, 10 minutos de inatividade.
3- Verifique a shell do usurio root, altere para a shell bash.
Linux ONE
Pgina 137
Captulo 9
Introduo a Redes
Introduo a Redes
Apesar da nova verso da LPI ter diminudo os tpicos sobre TCP/IP, ele
ainda est presente na prova, e por isso dar ateno ao modelo OSI, uma boa
idia. O modelo OSI ser estudado com detalhes no treinamento Linux Reloaded.
Linux ONE
Pgina 139
Introduo a Redes
9.2 Entendendo o IP
O endereamento IP, como dever ser chamado, composto por 4 octetos e uma
mscara, que determina quantos endereos so destinados a host e quantos endereos so destinados a rede.
O GNU/Linux no diferente de outros sistemas operacionais. Para termos acesso
a Internet ou a comunicao em rede tambm precisamos ter nosso nmero IP. O
nmero IP est presente em todas as mquinas, mesmo nas que no tem conexo
com a Internet.
Isso possvel porque em todo GNU/Linux h uma interface lgica, chamada loopback (lo) cujo endereo IP 127.0.0.1 e que sempre deve estar devidamente
configurada.
Linux ONE
Pgina 140
Introduo a Redes
Linux ONE
Pgina 141
Introduo a Redes
O gateway da rede um host que conhece outros hosts que por sua vez
conhece outros, e assim por diante. Complicado?
O principal papel do gateway levar os pacotes TCP/IP para outras redes que os
hosts que os originaram, no conhecem. dessa forma que os pacotes saem de
uma rede privada para um rede Wan. Para que os pacotes possam transitar pela
Internet ou mesmo s por uma rede fechada necessrio um gateway. Mesmo
em uma rede local, o gateway a prpria mquina, pois todos os hosts esto
normalmente com a mesma configurao de IP, ou seja, mesma mscara, mesma
classe de IP, etc.
Linux ONE
Pgina 142
Introduo a Redes
ping 8.8.8.8
Se a resposta for positiva, voc no tem um problema de link, cheque seu DNS.
Suporte - Sr. Usurio, percebi que voc est acessando um site proibido pela
empresa, h algo errado?
Usurio - Eu?? .. No, no, tudo bem, a Internet j est normalizada.
Linux ONE
Pgina 143
Introduo a Redes
Linux ONE
Pgina 144
Introduo a Redes
# ifconfig
# ifconfig -a
Linux ONE
Pgina 145
Introduo a Redes
Para atribuir um endereo IP para uma placa de rede utilizamos esta sintaxe:
Exemplo:
# ifconfig eth0
O comando ifconfig calcula automaticamente a mscara, mas se voc precisar configurar uma mscara diferenciada, voc deve usar o parmetro netmask, assim:
# ifconfig eth0
Caso voc queira participar de uma outra rede, utilizando uma nica placa de rede,
crie uma interface virtual:
Linux ONE
Pgina 146
Introduo a Redes
Onde: :0 o nome da placa de rede virtual, poderia ser tambm :local, :net, ou
qualquer nome. Visualize a configurao da placa:
# ifconfig eth0 :0
Com esse comando possvel configurar a rota padro de sada da nossa rede. Para
listar todas as rotas traadas, podemos utilizar o comando abaixo:
# route -n
Linux ONE
Pgina 147
Introduo a Redes
Com ele podemos descobrir se as rotas necessrias para que nossa rede funcione
esto corretas.
Se desejarmos remover a rota padro, devemos utilizar o comando:
Esse comando se encarregar de remover a rota padro para a sada da rede, mas
lembre-se que essa rota obrigatria no processo de configurao de rede. Tente
pingar o gateway:
# ping 172.16.0.1
# ping
No foi possvel, porque? Para poder pingarmos um domnio necessrio configurarmos o DNS responsvel pela resoluo de nomes.
Para no ter que memorizar todos os endereos IP que precisamos acessar, foi criado um servio de rede chamado DNS. Este faz a traduo de nomes para endereos IP e vice-versa. Este servio de rede ser melhor detalhado no curso Linux Servers da Formao Linux Force. Para configurar os servidores de DNS na mquina
local, precisamos editar o arquivo de configuraes de DNS, chamado resolv.conf
localizado em /etc.
Linux ONE
Pgina 148
Introduo a Redes
Traceroute uma ferramenta que permite descobrir o caminho feito pelos pacotes
desde a sua origem at o seu destino.
Linux ONE
Pgina 149
Introduo a Redes
2
3
auto lo
5
6
auto eth0
address 192.168.0.100
netmask 255.255.255.0
10
broadcast 192.168.0.255
11
network 192.168.0.0
12
gateway 192.168.0.1
Reinicie o servio:
No CentOS:
Os arquivos de configurao das interfaces de rede no CentOS esto localizados em /etc/sysconfig/network-scripts/ifcfg-device. Onde device o nome da placa
de rede.
Vamos configurar a rede do servidor CentOS para que as mquinas possam se comunicar:
Linux ONE
Pgina 150
Introduo a Redes
2
3
DEVICE = eth0
BOOTPROTO = static
ONBOOT = yes
IPADDR =192.168.0.1
NETMASK =255.255.255.0
BROADCAST =192.168.0.255
NETWORK =192.168.0.0
Reinicie o servio:
Para ativar ou desabilitar uma placa de rede podemos usar a sintaxe, tanto no Debian
quanto no CentOS:
# ifconfig eth0 up
Exemplo:
# ifup eth0
# ifdown eth0
Linux ONE
Pgina 151
Introduo a Redes
IP
FQDN
HOSTNAME
ALIAS
hostname aula
Deslogue e logue para alterar o prompt. Para testar a resoluo de nomes pelo
arquivo hosts:
# hostname -i
Linux ONE
Pgina 152
Introduo a Redes
# hostname -f
# hostname -d
# hostname -v
aula
<host-
name>.<domainname>
Linux ONE
Pgina 153
Introduo a Redes
IP
FQDN
HOSTNAME
ALIAS
HOSTNAME = aula
# ping 192.168.0.1
Agora que j estamos com a rede configurada vamos tentar acessar a Internet.
Pingue o dns do google:
# ping 8.8.8.8
Linux ONE
Pgina 154
Introduo a Redes
Linux ONE
Pgina 155
Introduo a Redes
9.9 LAB7
1 - Criar interface virtual eth0:0 no servidor e no cliente, colocar automtico no boot,
fazer o ping entre os ips da nova placa.
Servidor: 10.0.0.1
Cliente: 10.0.0.100
Linux ONE
Pgina 156
Captulo 10
Servidor SSH
Servidor SSH
Linux ONE
Pgina 158
Servidor SSH
Linux ONE
Pgina 159
Servidor SSH
# ssh nome_usuario_remoto@ip_servidor
Outra opo se logar no servidor remoto com o mesmo nome de usurio que voc
est logado, desde que este mesmo usurio exista remotamente:
# ssh ip_servidor
Ou:
Linux ONE
Pgina 160
Servidor SSH
# ssh 192.168.0.1
# nmap localhost
# ssh
aluno@192 .168.0.1
Linux ONE
Pgina 161
Servidor SSH
Copiando arquivo:
Copiando diretrio:
# scp
Copiando arquivo:
# ls / tmp
Linux ONE
Pgina 162
Servidor SSH
Copiando diretrio:
# ls / tmp
Your public key has been saved in / root /. ssh / id_rsa . pub .
10
11
+ - -[ RSA 2048] - - - -+
12
13
. . o
14
. . . o
... Eo +
Linux ONE
. o . |
|
Pgina 163
15
| . .
16
|. +
o S
17
| *
18
|. ooo
19
| .o+o
20
21
+ - - - - - - - - - - - - - - - - -+
Servidor SSH
.=+
Obs.: A passphrase pode ser desde uma senha "normal", com 6 ou 12 caracteres, at uma frase complexa, sem limite de tamanho; o importante que no seja
algo fcil de adivinhar. Caso a passphrase no seja definida o acesso remoto ser
sem senha.
# ls / root /. ssh
id_rsa
id_rsa . pub
known_hosts
Depois de gerar seu par de chaves, falta o comando final, que instala a chave pblica
no servidor, permitindo que ela seja usada para autenticao:
Linux ONE
Pgina 164
Servidor SSH
Copiando a chave:
Em resumo, o que o ssh-copy-id faz nada mais do que copiar o contedo do arquivo ".ssh/id_rsa.pub", dentro do seu diretrio home, para o arquivo ".ssh/authorized_keys"dentro do diretrio home do servidor remoto, uma operao que tambm
pode ser realizada manualmente em caso de problemas.
Tente acessar o servidor:
2
3
# ssh - agent
Linux ONE
Pgina 165
Servidor SSH
Adicione a chave:
# ssh - add
Linux ONE
Pgina 166
Servidor SSH
Keyword Description Default AllowGroups Habilita acesso apenas para grupos especificados * AllowUsers Habilita acesso apenas para usurios especificados * DenyGroups Nega acesso apenas para grupos especificados none DenyUsers Nega acesso
apenas para usurios especificados none
Port - porta de acesso ao ssh
PermitRootLogin - habilita/nega acesso do usurio root por ssh
X11Forwading - habilita/nega acesso ao X
Banner /etc/issue.net - habilita banner do issue.net
LoginGraceTime - tempo para se logar no servidor
Alterando o arquivo:
3
4
See
6
7
# This sshd was compiled with PATH =/ usr / local / bin :/ bin :/ usr / bin
8
9
10
11
12
# default value .
13
14
AllowUsers suporte
15
Port 2222
16
# Protocol 2 ,1
17
Protocol 2
18
# AddressFamily any
Linux ONE
Pgina 167
19
# ListenAddress 0.0.0.0
20
# ListenAddress ::
Servidor SSH
21
22
23
24
25
26
27
28
# ServerKeyBits 768
29
# Logging
30
31
# SyslogFacility AUTH
32
SyslogFacility AUTHPRIV
33
# LogLevel INFO
34
# Authentication :
35
LoginGraceTime 15
36
PermitRootLogin no
37
# StrictModes yes
38
# MaxAuthTries 6
39
40
# RSAAuthentication yes
41
# PubkeyAuthentication yes
42
43
44
45
# RhostsRSAAuthentication no
46
47
# HostbasedAuthentication no
48
49
50
# IgnoreUserKnownHosts no
51
# Don t read the user s ~/. rhosts and ~/. shosts files
52
# IgnoreRhosts yes
53
Linux ONE
Pgina 168
Servidor SSH
54
55
# PasswordAuthentication yes
56
# PermitEmptyPasswords no
57
PasswordAuthentication yes
58
59
ChallengeResponseAuthentication no
60
# Kerberos options
61
# KerberosAuthentication no
62
# KerberosOrLocalPasswd yes
63
# KerberosTicketCleanup yes
64
# KerberosGetAFSToken no
65
# GSSAPI options
66
# GSSAPIAuthentication no
67
GSSAPIAuthentication yes
68
# GSSAPICleanupCredentials yes
69
GSSAPICleanupCredentials yes
70
71
72
73
74
75
# " PermitRootLogin without - password ". If you just want the PAM
account and
76
77
# ChallengeResponseAuthentication = no
78
# UsePAM no
79
UsePAM yes
80
81
82
83
Linux ONE
Pgina 169
84
85
# AllowTcpForwarding yes
86
# GatewayPorts no
87
# X11Forwarding no
88
X11Forwarding yes
89
# X11DisplayOffset 10
90
# X11UseLocalhost yes
91
# PrintMotd yes
92
# PrintLastLog yes
93
# TCPKeepAlive yes
94
# UseLogin no
95
# UsePrivilegeSeparation yes
96
# PermitUserEnvironment no
97
# Compression delayed
98
# ClientAliveInterval 0
99
# ClientAliveCountMax 3
100
# ShowPatchLevel no
101
# UseDNS yes
102
103
# MaxStartups 10
104
# PermitTunnel no
105
# ChrootDirectory none
106
107
Servidor SSH
108
109
110
Subsystem sftp
Reinicie o servio:
Linux ONE
Pgina 170
Servidor SSH
Agora ele no consegue identificar a porta do ssh, pois voc alterou a porta padro,
mas ainda existem parmetros do nmap que conseguem identificar:
A opo -p serve para passar um range de portas ou uma porta especfica a ser
escaneada.
Ele ainda no identificou qual o servio est sendo executado na porta, ento coloque a opo -sV para escanear a verso do programa:
Linux ONE
Pgina 171
Servidor SSH
-P - porta
Ao no se definir um destino aps os dois pontos : o arquivo ou diretrio ser
copiado para o diretrio home do usurio remoto.
Uma forma simples de encriptografar protocolos que em condies normais no suportam encriptao usar o SSH para criar tneis seguros, ligando uma das portas
da sua mquina porta do servidor onde o servio em questo est ativo.
Por exemplo, se algum se encontra dentro de uma instituio cuja conexo Internet protegida por um firewall que bloqueia determinadas portas de conexo, no
ser possvel, por exemplo, acessar e-mails via POP3, o qual utiliza a porta 110, nem
envi-los via SMTP, pela porta 25.
As duas portas essenciais so a 80, para HTTP e a 443, para HTTPS, as quais
garantem uma navegao em pginas da Web sem restries.
No h necessidade do administrador da rede deixar vrias portas abertas, uma vez
que conexes indesejadas e que comprometam a segurana da instituio possam
ser estabelecidas atravs das mesmas.
Contudo, isso compromete a dinamicidade de aplicaes na Internet. Um funcionrio
ou aluno que queira acessar painis de controle de sites, arquivos via FTP ou amigos
via Instant Messengers, por exemplo, no ter a capacidade de faz-lo, uma vez que
as respectivas portas para seus funcionamentos esto bloqueadas.
Para quebrar essa imposio rgida, porm necessria, o SSH oferece o recurso do
Tnel.
Acesse em seu navegador o ip do servidor:
Linux ONE
Pgina 172
Servidor SSH
http://192.168.0.1
Voc ver o site da dexter.com.br.
Por ssh vamos criar um tnel com esse servidor e mapear a porta 80 para a porta
12345 na nossa mquina local:
Lembre-se que estamos utilizando uma porta diferente da padro, e que o nico
usurio que pode se conectar o aluno:
Linux ONE
Pgina 173
Servidor SSH
# wall
minha mensagem
Linux ONE
Pgina 174
Servidor SSH
10.4 LAB8
1- Acesse o servidor por ssh
2- Acesse o diretrio onde ficam as imagens do site da aula: /var/www/intranet/menu
3- Renomeie o arquivo home.png para home.original.png
4- copie uma imagem do cliente para o servidor e substitua a imagem do home: arquivo a ser copiado: /usr/share/images/desktop-base/gnome-foot.png salve o arquivo
com o nome de home.png
5- Acesse o site e verifique se o cone para ir para o home mudou.
Linux ONE
Pgina 175
Captulo 11
TCP Wrappers
TCP Wrappers
Linux ONE
Pgina 177
TCP Wrappers
Linux ONE
Pgina 178
TCP Wrappers
PARANOID - Casa com qualquer nome de mquina que no case com seu endereo.
Isto geralmente ocorre quando algum servidor DNS est mal configurado ou quando
alguma mquina est tentando se passar por outra.
Na lista de clientes podem ser utilizados nomes ou endereos de mquinas, ou ento
padres que especificam um conjunto de mquinas. Se a cadeia de caracteres que
identifica um cliente inicia com um ponto ., um nome de mquina ir casar com
este padro sempre que o final desse nome casar com o padro especificado. Por
exemplo, se fosse utilizada a cadeia de caracteres .minhaorganizao, o nome de
mquina server.minhaorganizao casaria com o padro.
Similarmente, se a cadeia de caracteres termina com um ponto ., um endereo de
mquina ir casar com o padro quando seus campos numricos iniciais casarem
com a cadeia de caracteres especificada. Para exemplificar, se fosse utilizada a
cadeia de caracteres 192.168.220., todas as mquinas que tenham um endereo IP
que inicie com estes 3 conjuntos de nmeros iro casar com o padro (192.168.220.0
ao 192.168.220.255).
Alm destes mtodos, possvel identificar um cliente atravs do IP/mscara de
rede. Voc pode especificar, por exemplo, 192.168.220.0/255.255.255.128, e qualquer mquina com endereo IP entre 192.168.220.0 e 192.168.220.127 casaria com
o padro.
Linux ONE
Pgina 179
TCP Wrappers
# which sshd
sshd : ALL
Tente acessar seu servidor CentOS por ssh a partir da mquina Debian:
sshd : 192.168.0.100
Linux ONE
Pgina 180
TCP Wrappers
Linux ONE
Pgina 181
Captulo 12
Comandos avanados
Comandos avanados
Linux ONE
Pgina 183
Comandos avanados
Linux ONE
Pgina 184
Comandos avanados
> (maior): Direciona a sada do comando para um arquivo, substituindo o seu contedo, caso o arquivo j exista;
2> (dois-maior): Direciona as sadas de erro geradas pelo programa para um arquivo,
substituindo seu contedo, caso o arquivo j exista;
&> (e-maior): Direciona todas as sadas (normal e de erro) para um arquivo, substituindo seu contedo, caso ele j exista; & (e-maior-maior): Direciona todas as
sadas (normal e de erro) para um arquivo, adicionando o texto ao final do arquivo,
caso ele j exista;
Linux ONE
Pgina 185
Comandos avanados
# ls /
boot
lost + found
lib
tmp
bin
mnt
media
dev
repo
opt
lib64
proc
srv
root
selinux
var
sys
cdrom
home
etc
sbin
usr
# ls / > raiz
No aparece nada na tela porque o comando foi executado sem erros e sua sada
redirecionada para o arquivo raiz, confira:
# cat raiz
# cat raiz
Linux ONE
Pgina 186
Comandos avanados
Ao realizar o comando acima, a primeira interpretao do bash executar o comando: > raiz, ou seja, se no existe o arquivo, ele ser criado, e se j existe
sobrescrito. No caso ele sobrescreve o arquivo raiz, deixando-o em branco, e quando
o comando cat raiz executado, no h sada, pois o arquivo est zerado, no redirecionando nada.
Para evitar este problema execute o comando:
# set -o noclobber
# set +o noclobber
Linux ONE
Pgina 187
Comandos avanados
12.3.2 O direcionador
O direcionador direciona a sada padro de um comando para um arquivo. Caso o
arquivo exista, a sada adicionada ao final do arquivo.
# ls / >> hoje
Voc tambm pode utilizar o comando tr para deletar caracteres, vamos deletar as
vogais do arquivo:
Linux ONE
Pgina 188
Comandos avanados
2
3
# cat ls_naoexiste
Agora sim, nenhuma mensagem de erro foi exibida na tela, porque ela foi enviada
para o arquivo ls_naoexiste.err, vamos verificar o contedo dele:
Linux ONE
Pgina 189
Comandos avanados
12.3.5 O direcionador 2
Quando utilizamos o direcionador 2 ele redireciona apenas as mensagens de erro,
caso o arquivo no exista ser criado e caso j exista ser adicionada a sada ao
final do arquivo.
# cat
ls_naoexiste . err
Linux ONE
Pgina 190
Comandos avanados
# cat / etc /*
A sada mostra tanto o contedo dos arquivos quanto os erros por tentar ler
um diretrio com o comando cat.
Vamos enviar a sada deste comando para arquivos diferentes:
# cat msg_correto
# cat msg_errado
# cat
msg_total
Linux ONE
Pgina 191
Comandos avanados
Podemos usar os direcionadores > e 2> em conjunto, para gerar um arquivo com a
sada padro e outro com a sada de erros, dessa forma:
# cat / etc /*
A sada mostra tanto o contedo dos arquivos quanto os erros por tentar ler
um diretrio com o comando cat.
Vamos enviar a sada deste comando para arquivos diferentes:
# cat msg_ok
# cat msg_error
Linux ONE
Pgina 192
Comandos avanados
# cat ls_out
Assim como o redirecionador &> ele redireciona tanto a sada de stdout quanto a
sada de stderr para um nico arquivo, a diferena que, caso o arquivo no exista
ele ser criado e caso j exista ser adicionado a sada com comando ao final do
arquivo. Visualize o arquivo ls_out:
# cat ls_out
# cat ls_out
Linux ONE
Pgina 193
Comandos avanados
12.3.9 O direcionador |
Conhecido como pipe, ele envia o stdout de um comando para o stdin do prximo
comando para dar continuidade ao processamento, os dados enviados sero processados pelo prximo comando trazendo assim um resultado esperado.
Vamos usar novamente o comando tr para exemplificar, mas desta vez utilizando o
pipe:
Primeiro visualize o contedo do arquivo /etc/passwd:
A sada foi o stdout do comando. Vamos agora redirecionar este stdout para o comando tr:
Quando usado junto com o pipe |, o tee permite que a sada padro do comando
seja exibida na tela e enviada para um arquivo ao mesmo tempo. Veja a sada de um
comando e envie-a para um arquivo qualquer, caso o arquivo no exista, ser criado
e caso j exista ser sobrescrito, caso queira adicionar um arquivo j existente use
tee -a :
Linux ONE
Pgina 194
Comandos avanados
A sada aparece na tela e tambm foi direcionada para o arquivo arquivo.tee, visualizeo:
12.3.11 O direcionador
Temos ainda o direcionador , utilizado para marcar o fim de exibio de um bloco.
Um dos usos mais freqentes desse direcionador em conjunto com o comando
cat.
Voc pode editar um novo arquivo com o comando cat ou at mesmo adicionar contedo nele, veja:
Onde: EOF - indica que a edio do arquivo terminar quando em uma linha contiver apenas a sequncia EOF.
> arquivo_novo - direciona o que for digitado no arquivo para arquivo_novo. Ex:
2
3
Este
meu arquivo !
EOF
Linux ONE
Pgina 195
Comandos avanados
# cat arquivo_novo
Linux ONE
Pgina 196
Comandos avanados
12.4 dd
O comando dd dos sistemas baseados em Linux e Unix, um programa para copiar
e converter arquivos de um local para outro, servindo at para clonar dispositivos ou
reas de discos fixos ou removveis como CD(s), DVD(s), disquetes, HD(s), dispositivos USB entre outros.
12.4.1 Sintaxe:
Onde:
If - Input File = arquivo de origem
of - Output File = arquivo de destino
bs - Block Size = tamanho do bloco
count - nmero de blocos
Em sistemas operacionais do tipo Unix, /dev/zero um arquivo especial que fornece
quantos caracteres nulos (o NULL da tabela ASCII, 0x00; e no o caractere "dgito
zero", "0", 0x30) forem lidos dele. O fluxo de caracteres nulos gerado por este dispositivo pode, por exemplo, ser utilizado para sobreescrever informaes ou para gerar
um arquivo limpo de certo tamanho.
Linux ONE
Pgina 197
Comandos avanados
12.5 Contagem: wc
Grande parte dos arquivos de configurao e de dados usa uma linha por registro. A
contagem destas linhas pode nos fornecer informaes muito interessantes.
Por exemplo, a sada abaixo:
# wc / etc / passwd
Indica que o arquivo contm X linhas, Y blocos (palavras) e Z caracteres. Caso seja
necessrio apenas o nmero de linhas, o comando wc pode ser usado com o
parmetro -l, como abaixo:
# wc -l / etc / passwd
# wc -w / etc / passwd
# wc -l / etc / passwd
Linux ONE
Pgina 198
Comandos avanados
12.6 split
O comando split usado para dividir determinado arquivo em pedaos menores,
muito til quando se tem um arquivo maior do que um espao de armazenamento
como por exemplo um cd, voc pode dividir o arquivo para que ele caiba em dois ou
mais cds, por exemplo.
Vamos dividir o arquivo gerado pelo dd em partes de 300Kb:
# ls -lh xx *
Podemos dividir o arquivo por nmero de linhas e mudar seu prefixo tambm:
Verifique que foram gerados vrios arquivos com o prefixo pref, veja tambm o
nmero de linhas de cada um:
# wc -l pref *
Linux ONE
Pgina 199
Comandos avanados
# cat
Visualize o arquivo:
Linux ONE
Pgina 200
Comandos avanados
# file /
Linux ONE
Pgina 201
Comandos avanados
12.8 who
Determina quais usurios esto logados.
Verifique os usurios que esto logados no sistema:
# who
fabiano
tty7
fabiano
pts /0
Onde:
fabiano - usurio logado tty7 - terminal em que o usurio est logado 2011-08-11
23:01 - hora e data de login (:0) - Display
Linux ONE
Pgina 202
Comandos avanados
12.9 w
Mostra tempo que o sistema est ligado, mdia de carga do sistema, usurios logados.
# w
21:43:12 up 22:42 ,
USER
TTY
FROM
fabiano
tty7
:0
Thu23
22:41 m
:0.0
21:32
0.00 s
2 users ,
IDLE
JCPU
PCPU WHAT
6:27
0.53 s
0.22 s
0.02 s w
gnome - session
5
fabiano
Linux ONE
pts /0
Pgina 203
Comandos avanados
12.10 ln
O comando ln permite criar links. Existem dois tipos de links suportados pelo Linux,
os hard links e os links simblicos. Os links simblicos tm uma funo parecida
com os atalhos do Windows: eles apontam para um arquivo, mas se o arquivo
movido para outro diretrio, o link fica quebrado. Os hard links por sua vez so
semelhantes aos atalhos do OS/2 da IBM, eles so mais intimamente ligados ao
arquivo e so alterados junto com ele. Se o arquivo muda de lugar, o link automaticamente atualizado. Isto possvel porque nos sistemas de arquivos usados pelo
Linux cada arquivo possui um cdigo de identificao (chamado de inode), que nunca
muda. O sistema sabe que o arquivo renomeado o mesmo do atalho simplesmente
procurando-o pelo inode ao invs do nome.
Linux ONE
Pgina 204
Comandos avanados
12.11 Inodes
Cada diretrio e arquivo do Linux identificado para o kernel como um nmero de n
i (inode). Um inode , na realidade, uma estrutura de dados que possui informaes
sobre um determinado arquivo ou diretrio como, por exemplo, dono, grupo, tipo e
permisso de acesso.
O inode exclusivo somente para o dispositivo (partio) dentro do qual ele est
contido. Portanto, para identificar unicamente um arquivo, o kernel deve ter o nmero
de dispositivo e o inode do arquivo.
Um arquivo possui um nico inode, no importa por quantos nomes este arquivo
identificado no sistema. Logo, o conjunto de inodes que indica o nmero de
arquivos/diretrios que o sistema possui.
Linux ONE
Pgina 205
Comandos avanados
12.12 stat
Para saber o nmero do inode de um arquivo digite:
Size : 3020
Access : (0644/ - rw -r - -r - -)
Blocks : 8
IO Block : 4096
Inode : 4995196
arquivo comum
Links : 1
Onde:
linha 1 - nome do arquivo.
linha 2 - tamanho, tipo do arquivo.
linha 3 - localizao no dispositivo, nmero do inode.
linha 4 - permisses, dono, grupo.
Linux ONE
Pgina 206
Comandos avanados
Linux ONE
Pgina 207
Comandos avanados
# vim arquivo
# ls -i arquivo
11927685 arquivo
Onde:
-i - mostra nmero de inode do arquivo/diretrio
Criando o link simblico:
Linux ONE
Pgina 208
Comandos avanados
# ls -1 il arq *
11927715 lrwxrwxrwx 1 root root 7 2011 -08 -11 18:04 arq . simb lico ->
arquivo
Onde:
-1 - mostra um arquivo por linha -i - mostra nmero do inode do arquivo/diretrio -l modo estendido
Verifique que no possvel determinar qual a permisso olhando o arq.simblico.
Crie um diretrio:
# mkdir diretorio
# ls -di diretorio
11935762 diretorio
Onde:
-d - mostra informaes do diretrio -i - mostra nmero de inode do arquivo/diretrio
Criando o link simblico:
Linux ONE
Pgina 209
Comandos avanados
# ls
-1 dil dir *
11935762 drwxr - xr - x 2 root root 4096 2011 -08 -11 18:12 diret rio
Onde:
-1 - mostra um arquivo/diretorio por linha -d - mostra informaes do diretorio -i mostra nmero do inode do arquivo/diretrio -l - modo estendido
No possvel criar Hark links de arquivos e/ou diretrios que estejam em parties
diferentes, pois o range de numeros de inodes mudam de uma partio para outra,
ou seja, os Hark links no tero o mesmo nmero de inode, e tambm no possvel
criar Hard links de diretrios da mesma partio.
Criando o Hard link:
# ln
Linux ONE
Pgina 210
# ln
Comandos avanados
# ls -1 -i arq *
Onde:
-1 - mostra um arquivo por linha -i - mostra nmero do inode do arquivo/diretrio
12.13.2 nl
Existe um outro comando que tambm visualiza arquivo e numera as linhas, este
Comando o nl:
# nl / etc / passwd
# ls -l / etc | nl
# ls -l / etc | tail | nl
Linux ONE
Pgina 211
Comandos avanados
# vim bagun a
Gabriela
Barbara
Bruno
Victor
Alexandre
Bruno
Alfredo
Bruno
# cat bagun a
# sort bagun a
Linux ONE
Pgina 212
Comandos avanados
-n - classificao numrica;
-r - classifica na ordem invertida.
Para saber mais parmetros:
# man sort
Linux ONE
Pgina 213
Comandos avanados
1
2
Outra situao possvel procurar pelas entradas que no possuem a palavra procurada. Para isso, usamos o parmetro -v (inVerter), que inverte a filtragem do
comando grep:
Linux ONE
Pgina 214
Comandos avanados
-A [n] - After = Mostra n linhas depois; -B [n] - Before = Mostra n linhas antes;
O grep pode ser combinado com a sada de outros comandos com o uso do |
(pipe).
A seguir, o grep aplicado para filtrar quem est logado no primeiro terminal
(tty1):
root
tty1
12.14.2 egrep
Para uma busca mais avanada utilize o egrep. Por exemplo quero buscar por uma
linha que contenha a palavra root ou aluno:
Linux ONE
Pgina 215
Comandos avanados
12.14.3 fgrep
Ao utilizar o fgrep toda operao de expresso regular ser ignorada, tornando o
processo de localizao muito mais rpido. Visualize o contedo do arquivo /etc/shadow:
12.14.4 sed
O comando sed utilizado para procurar e substituir padres em texto, mostrando o
resultado em stdout.
No sed, a expresso fica circunscrita entre barras(/). Por exemplo: Deletar as linhas
comentadas do arquivo /etc/fstab:
Linux ONE
Pgina 216
Comandos avanados
Observe que voc tem que escapar o caracter /, pois este o separador dos campos.
Ou mais fcil, utilize outro separador de campos:
Observe ainda que em nenhum dos casos foi efetuada a troca de todas as instncias
da linha, somente a primeira que foi encontrada em cada linha, para que se possa
resolver este problema utilize a opo g de global:
Linux ONE
Pgina 217
Comandos avanados
Para efetuar a troca em uma linha especfica, aponte o nmero da linha, por exemplo
fazer a troca dos caracteres / por @ na primeira linha:
Onde:
-f - coluna 1,3 - coluna 1 e 3 -d - delimitador --output-delimiter- - delimitador da
sada do comando
# awk -F: { print $1 ," " , $4 } / etc / passwd > / root / gid
Linux ONE
Pgina 218
Comandos avanados
Onde:
-F - delimitador
print - imprime o valor da coluna especificada:
$1 - coluna1
$4 - coluna4
- delimitador da sada do comando
O awk suporta mais opes que o cut, por exemplo executar novamente a busca
anterior, mas desta vez trazer apenas os usurios que tenham uid inferior a 5:
# awk
-F :
( $3 <= 5)
$1 , $3 }
/ etc / passwd
Linux ONE
Pgina 219
Comandos avanados
12.15.2 paste
O comando paste, junta os arquivos na sada padro. Diferente do join, ele joga
os dois arquivos lado-a-lado.:
Linux ONE
Pgina 220
Comandos avanados
Linux ONE
Pgina 221
Comandos avanados
12.16 lab9
Seu chefe precisa de sua ajuda novamente:
1- Ele precisa do nome de todos os usurios comuns do servidor
2- Ele precisa salvar um arquivo de nome documentao de 1GB e s tem dois cds
de 700MB para armazenamento, ajude-o.
Linux ONE
Pgina 222
Captulo 13
Manipulando Hardware e Dispositivos
Linux ONE
Pgina 224
Linux ONE
Pgina 225
Agora se voc usa um kernel velho de verso anterior a 2.2.x, ao invs de ser
Linux ONE
Pgina 226
/dev/ttySX, vai ser /dev/cuaX. Ou seja, voc ter os equivalentes como /dev/cua0,
/dev/cua1, /dev/cua2 e /dev/cua3. E estes dispositivos /dev/cuaX so usados para
determinar os modems.
/dev/lpX Corresponde a porta da impressora ou porta de um servio paralelo. X o
nmero correspondente a porta... 0 = LPT1 por exemplo.
/dev/plipX Esse dispositivo corresponde a uma conexo de cabo paralelo. O X ser
o nmero correspondente a porta, como no exemplo anterior.
/dev/console Este um dispositivo especial, simbolizando os consoles (terminais
no-grficos).
/dev/null Este um dispositivo nulo, ou seja, tudo que voc mandar ou se referir a
ele ser descartado.
Seguindo essa classificao, os dois tipos mais comuns de serem manipulados so
os de bloco e de caracter; como exemplos deles temos os devices referentes a
dispositivos IDE conectados mquina (/dev/hda1, por exemplo) e o dispositivo
de acesso ao mouse (/dev/psaux, por exemplo).
Outros dispositivos de bloco importantes so os SCSI utilizados no apenas por discos SCSI mas tambm por dispositivos USB e SATA, uma vez que so acessados utilizando essa emulao. O nome destes dispositivos do tipo /dev/sd[letra][nmero]
e seguem a mesma lgica dos dispositivos IDE. Dessa forma, se houver um HD
SATA conectado mquina e mais nenhum outro dispositivo que utilize emulao
SCSI, sua localizao ser o device /dev/sda.
Os nomes dos dispositivos e a maneira como so representados na hierarquia do
diretrio /dev podem ser bastante confusos primeira vista. Com um pouco de
prtica, a nomenclatura usada far sentido.
Um mouse USB representado pelo arquivo /dev/input/mice, que pode ser traduzido como: dispositivo (DEV) de entrada (INPUT) do tipo apontador (MICE
outro termo para rato, em ingls). Um mouse PS/2 segue uma nomenclatura um
Linux ONE
Pgina 227
pouco mais complicada e representada pelo arquivo /dev/psaux, que pode ser
interpretado como dispositivo auxiliar na porta PS.
Para alguns dispositivos como o mouse, podemos realmente ver a interao com o
arquivo que representa o dispositivo. No exemplo abaixo, usamos o comando cat
para mostrar o contedo do arquivo de dispositivo de mouse (mexa o mouse depois
de pressionar ENTER, aps os comandos abaixo):
Para mouse USB:
Linux ONE
Pgina 228
Linux ONE
Pgina 229
Linux ONE
Pgina 230
Linux ONE
Pgina 231
Linux ONE
Pgina 232
Se houver, por exemplo, trs parties no disco, sendo duas primrias e uma estendida, o esquema de nomes ficar assim:
/dev/sda1 (Primria)
/dev/sda2 (Primria)
/dev/sda4 (Estendida)
Parties lgicas
Tambm chamadas de unidades lgicas, as parties lgicas residem dentro da partio estendida. As parties lgicas so numeradas a partir de 5. Em um disco
contendo duas parties primrias, a partio estendida e 3 parties lgicas, o esquema seria o seguinte:
/dev/sda1 (Primria)
/dev/sda2 (Primria)
/dev/sda4 (Estendida)
/dev/sda5 (Lgica)
/dev/sda6 (Lgica)
/dev/sda7 (Lgica)
Note que, neste caso, no h uma partio nomeada como /dev/sda4, pois os numeros de 1 a 4 so reservados para parties primrias e para a partio estendida.
Linux ONE
Pgina 233
Para interromper a sada do comando, que pode ser bastante demorada, pressione
a combinao de teclas Ctrl + c (mantenha a tecla Ctrl pressionada e pressione a
letra c). Caso a tela do seu console continue a mostrar caracteres estranhos, digite
reset.
O ltimo comando mostra uma sada que seres humanos no conseguem entender.
Linux ONE
Pgina 234
Linux ONE
Pgina 235
Linux ONE
Pgina 236
# fdisk [ dispositivo ]
Utilizando:
There is nothing wrong with that , but this is larger than 1024 ,
Command action
d delete a partition
Linux ONE
Pgina 237
10
11
12
13
14
15
16
17
Para criarmos uma nova partio devemos, antes, ver se temos espao disponvel
para isso, ou seja, precisamos imprimir a tabela de parties utilizando a letra p.
Se houver espao disponvel para a criao de uma nova partio basta pressionar
a letra n e informar o tipo da partio (primria ou estendida) e seu tamanho. 1
crie uma partio:
Comando - a o
l gica (5 ou superior )
3 inico da partio:
Linux ONE
Pgina 238
Uma vez executado esse comando, a tela do cfdisk se abrir como mostrado na
figura:
A utilizao do cfdisk bastante intuitiva, utilizando as setas para cima e para baixo
voc navega pela listagem das parties e, utilizando as setas para a esquerda e
direita, voc navega pelo menu na parte inferior da tela.
Para criar uma nova partio basta selecionar na listagem de parties a linha que
contm espao livre e entrar na opo New no menu inferior. Se ainda for possvel
Linux ONE
Pgina 239
criar parties primrias surgir a pergunta pelo tipo da partio, caso contrrio,
surgir a pergunta para especificar quanto espao deve ser destinado para essa
partio.
Crie duas parties primria de 1G cada.
Aps realizar todas as alteraes, escolha, no menu inferior, a opo Write para
salv-las. Uma pergunta pedindo que voc confirme as alteraes ir aparecer. Sua
resposta deve ser sim ou no com todas as trs letras! Afinal, voc o root e
sabe o que est fazendo.
Observe que a partio criada ainda no aparece, isto porque a tabela de particionamento do seu hd no foi relida, para no ter que reiniciar, instale o programa
parted:
# partprobe
Linux ONE
Pgina 240
Linux ONE
Pgina 241
Formatar o processo de preparar a mdia magntica, como discos rgidos e disquetes, para receber informao. Esse tipo de preparo de baixo nvel e consiste em
desenhar as trilhas e setores na mdia em questo. Aplicar o filesystem significa
criar uma estrutura lgica acima dessas trilhas e setores que permita organizar seus
arquivos em uma estrutura de diretrios e subdiretrios. Apesar das diferenas tcnicas, os dois processos assemelham-se por apagar todo o contedo da partio.
Portanto cuidado!
Para saber os FileSystem suportados pelo seu kernel:
Linux ONE
Pgina 242
xfs - Usado geralmente em banco de dados, tem suas vantagens com objetos muito
grandes.
iso9660 - O sistema de arquivos padro do CD-ROM.
msdos - Sistema de arquivos DOS.
umsdos - Sistema de arquivos para suportar arquivos DOS e Linux coexistentes.
vfat - Sistema de arquivos Windows (permite definio de nomes de arquivos com
at 32 caracteres).
nfs - Sistema de arquivos remoto NFS.
proc - Sistema de arquivos Linux Process Information.
jfs (Journaling File System) : criado pela IBM para uso em servidores corporativos,
teve seu cdigo liberado.
xfs : desenvolvido originalmente pela Silicon Graphics e posteriormente disponibilizado o cdigo fonte.
swap - Em alguns lugares ele mencionado como um Sistema de Arquivos, mas
SWAP um espao reservado para troca de dados com a memria RAM.
Linux ONE
Pgina 243
O FileSystem escolhido para ser utilizado no device deve ser suportado pelo kernel. Para consultar quais FileSystem so suportados pelo kernel em uso, basta
consultar o arquivo /proc/filesystems. Caso o FileSystem desejado no esteja na
lista, pode-se buscar por ele nos repositrios do GNU/Linux para instal-lo e ativ-lo
como mdulo do Kernel.
Linux ONE
Pgina 244
Linux ONE
Pgina 245
Aproxima para a unidade de medida mais prxima, mais legvel para o ser humano.
Mostra em bytes:
Mostra em kilobytes:
Mostra em megabytes:
Linux ONE
Pgina 246
# blkid
/ dev / sda1 : UUID = " f541a97e - ef19 -4 e47 - b305 - b535a75c932a " TYPE = " ext3 "
LABEL = " MAIN "
/ dev / sda3 : UUID = " 7 C444A56444A12F6 " TYPE = " ntfs " LABEL = " WIN "
/ dev / sda6 : UUID = " 69 ff8ed5 - c09b -49 b6 - b21d -328 e90243efa " TYPE = " ext3 "
LABEL = " HOME "
/ dev / sda7 : UUID = " 2 c070d34 -5 c6e -4504 -8 d4b -9 a8fa910548d " TYPE = " ext3 "
LABEL = " STORAGE "
/ dev / sda8 : UUID = " 489 B -5 A22 " TYPE = " vfat " LABEL = " CENTER "
Linux ONE
Pgina 247
2
3
lrwxrwxrwx 1 root root 10 2009 -03 -06 10:41 489 B -5 A22 -> ../../ sda8
Last mounted on :
Filesystem UUID :
0 xEF53
Filesystem revision # :
1 ( dynamic )
Filesystem features :
10
Filesystem flags :
signed_directory_hash
12
( none )
13
Filesystem state :
clean
Linux ONE
Pgina 248
14
Errors behavior :
Continue
15
Filesystem OS type :
Linux
16
Inode count :
18997248
17
Block count :
75981568
18
3799078
19
Free blocks :
20316303
20
Free inodes :
18593199
21
First block :
22
Block size :
4096
23
Fragment size :
4096
24
1005
25
32768
26
32768
27
8192
28
512
29
16
30
Filesystem created :
31
32
33
34
Mount count :
35
36
37
38
Last checked :
39
40
Check interval :
15552000 (6 months )
41
42
Lifetime writes :
468 GB
43
0 ( user root )
44
0 ( group root )
45
First inode :
11
46
Inode size :
47
28
48
28
49
Journal inode :
50
262883
Linux ONE
29
36
Sat Jun 18 18:34:53 2011
256
Pgina 249
51
half_md4
52
53
Journal backup :
inode blocks
Cheque a alterao:
Parties REISERFS:
Parties EXT2/EXT3/EXT4:
Linux ONE
Pgina 250
Parties NTFS:
Parties Fat16/Fat32:
Parties JFS:
Parties XFS:
Parties SWAP:
Linux ONE
Pgina 251
O comando usado para montar dispositivos mount. Sem o uso de nenhum parmetro, ele mostra os dispositivos de armazenamento que esto montados em seu
computador junto com a configurao usada para mont-los.
# mount
Para montar um dispositivo de armazenamento em seu ponto de montagem, o comando mount pode ser usado da seguinte forma:
# mount -t < tipo > -o < op es > < dispositivo > < ponto - de - montagem >
# man mount
Para que seja possvel acessar o contedo de algum dispositivo precisamos de quatro itens bsicos:
Saber o nome do dispositivo que ser acessado;
Saber o filesystem que ele est utilizando;
Ter um ponto de montagem;
Ter permisso de montagem.
determine o filesystem:
Uma vez determinado o nome do dispositivo, podemos executar o comando blkid
com o nome do dispositivo, e determinar qual filesystem ele est utilizando.
Linux ONE
Pgina 252
Caso no obtenha resposta porque a partio no tem um arquivo de sistema. determine o ponto de montagem:
Se no existir um ponto de montagem, basta criar um diretrio vazio no local apropriado, em geral no /media ou /mnt e executar o comando para mont-lo.
Vamos criar uma imagem ISO para simular um arquivo de cdrom:
Linux ONE
Pgina 253
Vamos criar um arquivo ISO, ou seja, o tipo de arquivo para CD-ROM. Para isso
utilizaremos o arquivo dd pra gerar um arquivo e genisoimage para aplicar o sistema
de arquivo ISO9660:
Montando a partio:
A opo -o loop utilizada quando se quer montar um arquivo ISO que est localizado no HD.
Para desmontar um dispositivo, o comando usado umount. Neste caso possvel
usar como parmetro o ponto de montagem ou o prprio dispositivo.
Visualizando que est montado:
# mount
Linux ONE
Pgina 254
# df
Desmontando:
Como usurio aluno abra outro terminale acesse o diretrio /media/cdrom:
Linux ONE
Pgina 255
$ cd / media / cdrom
ou de forma equivalente:
Verifique que no foi possvel, isto porque existe algum acessando o diretrio, para
descobrir quais os processos que esto utilizando o /media/cdrom faa:
-i : pede confirmao antes de matar um processo (usado junto com a opo -k).
-k : mata os processos que esto acessando o arquivo/diretrio especificado.
-u : identifica o usurio de cada processo.
Ou seja:
A letra que aparece logo aps o PID representa o tipo de acesso, onde podemos ter,
por exemplo:
Linux ONE
Pgina 256
Linux ONE
Pgina 257
# mkdir / teste
# cp -r / etc /* / teste
Desmontar a partio:
# umount / teste
Montando a partio:
Linux ONE
Pgina 258
# mount
Desmontar dispositivo:
# umount / teste
CentOS:
Linux ONE
Pgina 259
# mount
# mount
# df -h
Desmontar dispositivo:
# umount / teste
Linux ONE
Pgina 260
Linux ONE
Pgina 261
13.10 SWAP
Este tipo de partio utilizado para fornecer suporte a memria virtual ao GNU/Linux em adio a memria RAM instalada no sistema. Este tipo de partio identificado pelo tipo 82 nos programas de particionamento de disco para Linux. Somente
os dados na memria RAM so processados pelo processador, por ser mais rpida.
Desta maneira quando voc estiver executando um programa e a memria RAM
comear a encher, o GNU/Linux mover automaticamente os dados que no esto
sendo utilizados para a partio Swap e libera a memria RAM para continuar carregando os dados necessrios pelo programa. Quando os dados movidos para a
partio Swap so solicitados, o GNU/Linux move os dados da partio Swap para
a Memria. Por este motivo a partio Swap tambm chamada de rea de Troca
ou memria virtual. A velocidade em que os dados so movimentados da memria
RAM para a partio muito alta.
Vamos aproveitar a partio criada anteriormente e vamos aplicar o Swap ela:
ou
# swapon -s
Linux ONE
Pgina 262
O comando swap tem a opo -p que habilita a prioridade: -p, priority <n>
Quanto maior o nmero maior a prioridade que pode variar entre 0 e 32767.
Para desabilitar a partio swap:
Ou:
# swapon -s
Linux ONE
Pgina 263
< file system > < mount point > < type > < options > < dump > < pass >
proc
/ dev / sda1
/ boot
/ dev / sda2
/ dev / sda5
/ dev / sda6
ext3
defaults
defaults
# exemplo UUID :
/ proc
proc defaults 0
ext3
ext3
/ usr
/ var
defaults
ext3
defaults
10
11
# exemplo LABEL :
12
LABEL = SWAP
none
swap sw
As informaes que devem estar nesse arquivo, de acordo com o nmero da coluna,
so:
Localizao do filesystem, em geral o device ou endereo de rede;
Ponto de montagem;
Tipo do filesystem: ext3, reiserfs, xfs, etc;
Opes de montagem: defaults = rw, suid, dev, exec, auto, nouser e async. Ver
man mount;
Aceita os valores 0 ou 1 e informa que, havendo um sistema de backup (dump)
configurado, dever ser feito o seu backup;
Linux ONE
Pgina 264
# free
Mais detalhes:
# free -m
Linux ONE
Pgina 265
Informaes de swap:
Linux ONE
Pgina 266
13.12 LAB10
1- A partio swap no est sendo montada automaticamente na inicializao, crie
um LABEL para ela.
2- Coloque-a para ser montada toda vez que mquina for inicializada.
3- Monte a partio swap agora.
Linux ONE
Pgina 267
Captulo 14
Instalando, removendo e atualizando
programas
Linux ONE
Pgina 269
Linux ONE
Pgina 270
# mirros de seguran a
deb http :// security . debian . org / squeeze / updates main contrib
deb - src http :// security . debian . org / squeeze / updates main contrib
# mirros oficiais
deb ftp :// ftp . br . debian . org / debian / squeeze main contrib non - free
deb http :// linorg . usp . br / debian / squeeze main contrib non - free
# mirror multimidia
Linux ONE
Pgina 271
# aptitude update
ou
ou
# aptitude update
ou
Linux ONE
Pgina 272
Vamos primeiramente utilizar a ferramenta aptitude em seu modo visual, e logo aps
em seu modo texto, para instalar, remover e procurar pacotes.
# aptitude
Para procurarmos por um pacote que desejamos instalar, podemos fazer uma busca
pelo comando abaixo:
ou
Para buscar uma lista completa de pacotes disponveis para Debian acesse:
http://packages.debian.org
Vamos buscar por gerenciadores de janela, mas no sabemos quais existem, ento
prefira utilizar o apt-cache e faa a busca sempre em ingls:
Linux ONE
Pgina 273
Se fizer a busca com o aptitude, talvez voc no encontre o pacote que procura.
J no caso de saber o nome do programa que voc busca, voc pode utilizar diretamente o aptitude, por exemplo o programa ORCA para deficientes visuais:
O apt-cache traz mais opes, pois busca no nome do programa e no resumo do que
faz o mesmo.
Linux ONE
Pgina 274
ou
ou
Linux ONE
Pgina 275
ou
Repare que aps a remoo, os arquivos de configurao do samba, ainda continuam existindo no sistema:
# ls / etc / samba
Linux ONE
Pgina 276
ou
Agora iremos remover o samba e suas dependncias, assim como seus arquivos de
configurao:
Ou:
Linux ONE
Pgina 277
Linux ONE
Pgina 278
# aptitude upgrade
ou
Linux ONE
Pgina 279
Linux ONE
Pgina 280
O yum (Yellow dog Update, Modified) o gerenciador de pacotes usado por padro
no CentOS, no Fedora e no Red Hat Enterprise. O yum foi originalmente desenvolvido pela equipe do Yellow Dog (uma distribuio baseada no Red Hat, destinada a
computadores com chip PowerPC) e foi sistematicamente aperfeioado pela equipe
da Red Hat, at finalmente assumir o posto atual.
O yum trabalha de forma bem similar ao apt-get e aptitude, baixando os pacotes
a partir dos repositrios especificados nos arquivos de configurao, junto com as
dependncias necessrias. Assim como o apt-get e aptitude, ele capaz de solucionar conflitos automaticamente e pode ser tambm usado para atualizar o sistema.
Essencialmente, o yum e o apt-get/aptitude solucionaram o antigo problema das dependncias (um pacote precisa de outro, que por sua vez precisa de um terceiro) que
atormentava os usurios de distribuies mais antigas.
Diferente do gerenciador de pacotes do Debian que toda vez que modifica a lista de
repositrio necessrio fazer a atualizao da lista, o yum faz a atualizao automaticamente cada vez que uma instalao solicitada, checando os repositrios,
baixando os headers do pacotes e calculando as dependncias antes de confirmar a
instalao.
Os repositrios ficam em: /etc/yum.repos.d, vamos adicionar o repositrio do dag:
Linux ONE
Pgina 281
[ dag ]
gpgcheck =1
gpgkey = http :// dag . wieers . com / rpm / packages / RPM - GPG - KEY . dag . txt
enabled =1
Procurando um programa:
ou
A diferena entre as opes list e search que a primeira opo list ir trazer
os resultados que contenham o argumento passado na busca no nome do programa,
enquanto que a opo search trar como resultado tanto comandos, quanto resumo
do comando que contenham o argumento passado na busca.
Obtendo informaes do pacote:
Usando o yum para mostrar informaes de pacotes:
Linux ONE
Pgina 282
ou:
Linux ONE
Pgina 283
Remova o samba:
ou
# ls / etc / samba
O yum no tem uma opo purge como o apt-get e o aptitude, para remover as
dependncias e arquivos de configurao do pacote, tendo que serem removidos
posteriormente.
# yum update
Linux ONE
Pgina 284
Captulo 15
Compilando Programas
Compilando Programas
Linux ONE
Pgina 286
Compilando Programas
15.2 Configure
Em geral, sempre que pegamos o cdigo fonte de um programa ele vir com um
aplicativo chamado configure que ir executar uma verificao em seu sistema a fim
de verificar se ele dispe de todos os componentes bsicos para uma compilao
bem sucedida.
Alm disso, quando consultamos o help do configure ele ir nos mostrar todas as
funcionalidades que podemos compilar com o programa e todas as funcionalidades
que podemos retirar do mesmo para que ele se encaixe em nossas necessidades.
Alm da escolha das funcionalidades, ele nos permite informar a localizao de certos componentes que por ventura no encontre.
Uma vez que o processo de configure for encerrado com sucesso, ele ira gerar um
arquivo chamado Makefile, contm instrues de compilao e instalao entre outras.
Linux ONE
Pgina 287
Compilando Programas
15.3 Makefile
A Makefile em geral criada utilizando a ferramenta configure e o objetivo desta
automatizar os processos de compilao, verificao e instalao dos softwares.
A Makefile estruturada em sees; cada uma delas realiza alguma tarefa especfica. Em geral essas Makefiles vm com pelo menos trs sees padro: default,
install e clean. Algumas podem vir com test ou check ou alguma outra que o desenvolvedor ache relevante. Por isso devemos sempre ler a documentao do programa.
A forma de utilizao da Makefile , simplesmente, utilizar o comando make com o
nome de alguma das sees. Se nenhuma for especificada, ele ir executar a seo
default.
Instalao:
Para que possamos instalar um software a partir de seu cdigo fonte, o primeiro
passo que temos que seguir : fazer o download dele. Em geral fazemos isso acessando a pgina do desenvolvedor do programa. Neste captulo vamos realizar a compilao do software chamado nmap, que pode ser encontrado em http://www.insecure.org.
O procedimento de compilao de um programa parte do princpio que, atravs do
cdigo fonte do programa, qualquer um possa ter acesso ao cdigo e gerar o binrio
final a partir dele. O procedimento de compilao sempre bem parecido para todas
as aplicaes, porm, sempre que for compilar algum programa, devemos consultar o arquivo INSTALL ou o README que est sempre presente junto com o cdigo
fonte.
Vamos instalar os pacotes necessrios:
Linux ONE
Pgina 288
Compilando Programas
entre nele:
# wget http :// nmap . org / dist / nmap -5.51. tar . bz2
Qual o primeiro passo para compilar um programa?? Ler os arquivos README e INSTALL:
# vim README
# vim INSTALL
Obs.: Nem sempre ambos os arquivos estaro presentes, mas certamente um deles
sempre estar.
Agora que sabemos o que fazer, vamos executar. Para determinar quais so
os parmetros que podemos passar ao configure:
# ./ configure -- help
Como no estamos interessados na interface grfica do nmap, podemos informar ao configure que no queremos que o nmap a utilize:
Linux ONE
Pgina 289
Compilando Programas
Dica LPI: muito comum, quando compilamos um programa a partir de seu cdigo fonte, que alguns de seus requisitos no estejam presentes, ocasionando assim
um erro durante a execuo do configure. Quando isso ocorrer, deve-se identificar o
componente que est faltando, instal-lo e executar novamente o configure at que
ele termine com sucesso. Fique atento esse processo.
Quando o configure for executado com sucesso, podemos passar compilao, mas antes vamos conhecer o arquivo Makefile criado pelo configure:
# vim Makefile
# make
# make install
# nmap 192.168.200.254
Linux ONE
Pgina 290
Compilando Programas
# make clean
Para desinstalar:
# make uninstall
Linux ONE
Pgina 291
Compilando Programas
15.4 LAB11
1 - Executar script.
2 - Faa o download do pacote iptraf no servidor:
# wget ftp :// iptraf . seul . org / pub / iptraf / iptraf -3.0.0. bin . i386 . tar . gz
3 - Descompacte-o:
Linux ONE
Pgina 292
Captulo 16
Bibliotecas
Bibliotecas
Linux ONE
Pgina 294
Bibliotecas
# ldd $( which ls )
# ldd / bin / ln
Linux ONE
Pgina 295
Bibliotecas
Verificando tamanhos:
40 K / bin / ln
Note que um executvel esttico bem maior que o executvel dinmico, isso ocorre
pois o esttico j contm o que precisa dentro do prprio executvel. Obviamente,
bibliotecas compartilhadas tendem a gerar executveis menores, eles tambm usam
menos memria, ou seja, menos espao em disco usado.
Linux ONE
Pgina 296
Bibliotecas
Linux ONE
Pgina 297
Bibliotecas
ld-linux: prov as funes necessrias para a carga de bibliotecas dinmicas, durante a inicializao do programa.
Por default, essas duas bibliotecas so automaticamente includas e ligadas em
todos os programas. Ao usar uma biblioteca esttica, o linker encontra as partes
que os mdulos do programa precisam, e as cpia fisicamente no arquivo de sada
executvel que ele gera.
Para bibliotecas compartilhadas, no em vez disso, ele deixa uma nota na sada
dizendo quando este programa for executado, ele ter que carregar primeiro esta
biblioteca. Diversos programas, para no terem sempre que reinventar a roda,
usam bibliotecas, como a libc, por exemplo.
Apesar de parecer um termo complicado, trabalhar com bibliotecas compartilhadas
muito simples. Para isso necessrio saber em quais diretrios elas costumam estar,
quais bibliotecas determinado binrio utiliza e saber adicionar novas bibliotecas no
sistema.
Linux ONE
Pgina 298
Bibliotecas
# ldconfig -p
Linux ONE
Pgina 299
Bibliotecas
Linux ONE
Pgina 300
Bibliotecas
# export
LD_LIBRARY_PATH =/ caminho / para / bibliotecas1 :/ caminho / para / bibliotecas2
EX: Vamos criar um diretrio para nossas bibliotecas e copiar uma biblioteca que o
comando ping utiliza para l, como este novo diretrio no consta na lista de diretrios de bibliotecas, o comando no pode ser executado com sucesso, at que se
adicione este novo diretrio de bibliotecas:
Criando o diretrio novo para guardar bibliotecas:
# mkdir / bibliotecas
# ls / etc
Linux ONE
Pgina 301
Bibliotecas
# ldd / bin / ls
10
(0 xb7816000 )
# ls -l ls -l / lib / librt . so .1
# mv
/ lib / librt . so .1
/ bibliotecas
ls / etc
ping: error while loading shared libraries: librt.so.1 cannot open shared object file: No
such file or directory
Linux ONE
Pgina 302
Bibliotecas
No foi possvel executar o comando ls, pois a biblioteca compartilhada no pde ser
carregada por estar em um diretrio que no referenciado em /etc/ld.so.cache para
os linkadores carregarem-na.
Vamos checar as bibliotecas que faltam:
# ldd / bin / ls
Voc j imaginou ficar sem a librt.so.1? Sem essa lib, muitos recursos de movimentao pelo terminal no iram responder.
Nesses casos em que as bibliotecas esto em um diretrio diferente necessrio
dizer ao sistema para buscar bibliotecas l:
Adicione o caminho completo ao arquivo /etc/ld.so.conf ou crie um arquivo em /etc/ld.so.conf.d
com a extenso .conf:
2
3
/ bibliotecas
# ldconfig
Linux ONE
Pgina 303
Bibliotecas
# ls / etc
# ldd / bin / ls
Linux ONE
Pgina 304
Bibliotecas
16.7 lab12
1- O servidor Web parou de funcionar devido a uma biblioteca que no foi carregada,
descubra onde esta biblioteca est.
2- Adicione o diretrio onde est a biblioteca lista de bibliotecas do sistema.
3- Reinicie o servidor Web: /etc/init.d/httpd restart
Linux ONE
Pgina 305
Captulo 17
Instalao de Programas com DPKG
e RPM
pool
\_ stable
\_ main
4
5
\_ a
\_ alien
\ _ alien - < versao >. deb
6
7
\_ a2ps
\_ ...
\_ b
10
\_ ...
11
\_ z
12
\_ liba
13
\_ libb
14
\_ ...
15
\_ libz
16
\_ testing
17
\_ unstable
18
\_ contrib
Linux ONE
Pgina 307
Linux ONE
Pgina 308
Linux ONE
Pgina 309
# dpkg -- help
Ou:
No caso:
Linux ONE
Pgina 310
# dpkg -l | less
Para determinar qual pacote foi o responsvel por instalar um binrio no sistema,
digite:
# dpkg -s coreutils
Linux ONE
Pgina 311
# dpkg -c
# dpkg -r
flashplugin - nonfree
# dpkg -l
flashplugin - nonfree
# dpkg -P
flashplugin - nonfree
Linux ONE
Pgina 312
O aplicativo no pode ser instalado porque existem pr-requisitos para sua instalao, para resolver estas dependncias automaticamente, digite:
# aptitude -f
install
Ou:
# apt - get -f
install
# dpkg -l alien
# ls -lh
# aptitude clean
Linux ONE
Pgina 313
# aptitude -d install sl
ccze ; ls - lh
# cd / opt ; ls - lh
# file sl *
# file ccze *
Vamos agora copiar o arquivo .rpm para a mquina Dexter para poder instalar o
pacote.
Linux ONE
Pgina 314
# cd / opt
As opes -h e percent servem para mostrar uma barra de progressos e a porcentagem de concluso.
Instale o programa:
Linux ONE
Pgina 315
# rpm -e ccze
# rpm -qa
# rpm -q ccze
Para realizar uma atualizao de verso de algum programa podemos utilizar o comando:
Linux ONE
Pgina 316
# rpm -Va
Execute o comando:
Linux ONE
Pgina 317
Verifique que os logs esto saindo coloridos, o comando ccze serve para verificar
logs desta maneira.
Dica LPI: O comando tail mostra por padro as ltimas 10 linhas de um arquivo,
e em conjunto com a opo -f verifica em tempo real.
# rpm -Va
Linux ONE
Pgina 318
Captulo 18
Gerenciamento de Processos
Gerenciamento de Processos
# ps
# ps aux
Linux ONE
Pgina 320
Gerenciamento de Processos
o nome do usurio que iniciou determinado processo e a hora em que isso ocorreu;
x - exibe os processos que no esto associados a terminais;
Onde os campos so:
USER
UID
PID
PPID
\% CPU
\% MEM
VSZ
RSS
2
3
4
5
6
7
8
9
10
11
12
13
14
15
usada ( em KB ) ;
16
17
TTY
START
COMMAND
PRI
NI
18
19
20
21
22
23
24
25
valores de PRI ) ;
26
27
WCHAN
em modo suspenso ;
28
Linux ONE
Pgina 321
29
STAT
Gerenciamento de Processos
Linux ONE
Pgina 322
Gerenciamento de Processos
# top
Com o top podemos ver o horrio atual, quanto tempo a mquina est ligada, quantos
usurios esto logados, quantos processos esto em aberto, rodando, em espera e
zumbi:
0 stopped ,
0 zombie
0.0% st
4
Mem :
232288 k buffers
990248 k cache
# uptime
16:23:00 up
2:14 ,
3 users ,
Onde apresentado: 16:23:00 - hora atual up 2:14 - tempo que o sistema est ligado
3 users - nmero de usurios logados
Linux ONE
Pgina 323
Gerenciamento de Processos
load average: 0.45, 0.69, 0.74 - mdia de carga de processamento 1min atrs, 5
min atrs e 15min atrs.
Outro programa que nos ajuda a visualizar os processos o htop muito mais amigvel:
# htop
# pstree
# pgrep cron
ou
# pidof cron
Linux ONE
Pgina 324
Gerenciamento de Processos
Dica LPI: Uma listagem completa dos sinais possveis pode ser vista na seo
STANDARD SIGNALS do man 7 signal. Alguns dos sinais mais utilizados podem ser
vistos a seguir:
# man signal
Passando esses sinais aos processos podemos realizar tarefas desde, reiniciar o
processo at encerr-lo de forma forada. Para gerenciarmos processos temos alguns comandos: pkill:
Linux ONE
Pgina 325
Gerenciamento de Processos
# pkill cron
killall:
# killall cron
Vamos matar um processo e seus processos filho: Acesse a parte grfica e abra
o aplicativo Ekiga: Aplicativos - Internet - Ekiga Verifique qual o pid do ekiga:
# pgrep ekiga
1267
# kill -9 1267
Linux ONE
Pgina 326
Gerenciamento de Processos
# ekiga
Tente mexer na aplicao sem fech-la, agora voc consegue, mas repare que o
terminal onde estava rodando ficou livre e o processo continua em execuo, mas
onde foi parar este processo?
Quando enviamos o sinal pro processo continuar, ele continuou, mas em background
no terminal de onde foi executado, para visualizar este processo em background
utilizamos o comando jobs.
Execute o comando no terminal que voc executou o ekiga pela primeira vez:
# jobs
[1]+
Executando
Linux ONE
ekiga &
Pgina 327
Gerenciamento de Processos
# kill %1
Verifique que o processo foi terminado, lembrando que quando no passamos o sinal
utilizado o sinal 15 como padro:
# jobs
Lembra que quando executamos o comando ekiga o terminal ficou inutilizvel, pois
se cancela-se o aplicativo fecharia? Ns podemos executar um comando para ser
executado em background, liberando-se assim o terminal para uso:
Em vez de digitar ekiga e prender o terminal, execute-o em background:
# ekiga &
Agora voc j sabe para poder executar qualquer programa em backgroung, coloque
o caracter & no final do comando.
Verifique que o processo est em background:
Linux ONE
Pgina 328
# jobs
[1]+
Executando
Gerenciamento de Processos
ekiga &
# kill -19 %1
Se quisermos rodar novamente o programa ekiga, mas em foreground ou seja primeiro plano, isso mesmo, aquele que trava o terminal para sua execuo, faa:
Ou seja:
# fg 1
Verifique que o terminal ficou travado para a execuo do ekiga, se voc cancelar
o processo, o ekiga ser fechado. Quando estamos executando um programa no
terminal, ns podemos paus-lo sem utilizar o kill, mas como isso? Simples basta
digitar no terminal: ctrl+z.
crtl +z
# jobs
[1]+
Parado
Linux ONE
ekiga
Pgina 329
Gerenciamento de Processos
Ou seja:
# bg 1
# jobs
[1]+
Executando
ekiga &
Imagine agora que voc vai rodar um comando que ir demorar muito tempo e voc
no quer deixar o terminal logado para evitar que algum acesse o sistema, se voc
se deslogar o comando ir parar e no ir terminar, para resolver isso existe o comando nohup:
NOHUP
O nohup ignora os sinais de interrupo de conexo durante a execuo do comando
especificado. Assim, possvel o comando continuar a executar mesmo depois que
o usurio se desconectar do sistema.
Se a sada padro uma tty, esta sada e o erro padro so redirecionados para o
arquivo nohup.out (primeira opo) ou para o arquivo $HOME/nohup.out (segunda
opo). Caso nenhum destes dois arquivos possam ser criados (ou alterados se j
existem), o comando no executado.
O nohup no coloca o comando que ele executa em background. Isto deve ser feito
explicitamente pelo usurio.
Linux ONE
Pgina 330
Gerenciamento de Processos
Vamos executar um ping com o nohup e ver que ele continua sua execuo mesmo
aps fecharmos o terminal:
Execute novamente e verifique que o ping continua, pois o comando ainda no terminou de ser executado (1000 pings ao site treinamentolinux.com):
lsof
O comando lsof um dos mais importantes comandos para quem administra sistemas Linux, principalmente na rea de segurana. Este comando lista todos os
arquivos abertos por todos os processos. Aqui, quando eu falo arquivo, no so
apenas arquivos comuns, mas sim recursos que funcionam como arquivos (podem
ser abertos, mapeados na memria, entre outros). Isso inclui bibliotecas, sockets,
arquivos comuns, diretrios e por a vai.
Em outras palavras, este comando nos fornece um mapeamento completo do que o
programa est usando no sistema. Lembre-se que usando apenas o comando lsof,
esta lista fica muito grande, pois mostra todos os arquivos de todos os processos.
Por exemplo:
Linux ONE
Pgina 331
# lsof -n
COMMAND
PID
SIZE / OFF
3
init
init
init
init
init
init
init
10
init
11
init
rtd
DIR
8 ,1
root
txt
REG
8 ,1
REG
8 ,1
root
mem
root
mem
REG
8 ,1
root
mem
REG
8 ,1
root
mem
REG
8 ,1
root
mem
REG
8 ,1
31744
root
1572232
8 ,1
35712
DIR
97256
cwd
43552
root
51712
DEVICE
2 /
1
129800
TYPE
2 /
4096
5
FD
NODE NAME
4096
4
USER
Gerenciamento de Processos
root
mem
REG
8 ,1
Ver se algum processo est escutando uma porta na rede suspeita, ou conectado em algum lugar suspeito. Por exemplo, vrios scripts de invaso ficam
escondidos no sistema (com nomes de outros processos), conectados a servidores de IRC desconhecidos. Com o lsof, d pra saber que estes comando
Linux ONE
Pgina 332
Gerenciamento de Processos
# lsof
$ vim arquivo
Agora abra outro terminal e descubra quem est utilizando o comando vim no sistema:
Nos mostrar quais os arquivos so abertos por processos cujos nomes comeam
pela letra "k"(klogd, kswapd . . . );
Linux ONE
Pgina 333
Gerenciamento de Processos
# lsof -c k
Nos mostrar quais arquivos so abertos por processos cujo nome comea com
bash:
# lsof -c bash
Nos mostrar quais os arquivos so abertos por processos cujos nomes comeam por
"bash", mas exclui aqueles cujo proprietrio o usurio "aluno":
# lsof -u aluno
# lsof +p 1
# lsof +D / tmp
Linux ONE
Pgina 334
# ssh 192.168.200. X
Gerenciamento de Processos
# lsof -i
Linux ONE
:22
Pgina 335
Gerenciamento de Processos
# ekiga
ekiga
grep ekiga
0 12605
0 14116
Linux ONE
Pgina 336
Gerenciamento de Processos
<PID >
ekiga
grep ekiga
-20 12605
0
14440
# killall ekiga
Linux ONE
Pgina 337
Gerenciamento de Processos
18.4 LAB14
1- O servidor Apache est iniciando muitos processos, mas seu acesso no passa de
50 usurios. Mate os processos em excesso, acerte o arquivo /etc/httpd/conf/httpd.conf
para: StartServers 100 ServerLimit 50 Reinicie o servio do apache.
2- Acessar por ssh 3 mquinas
3- Usar lsof para descobrir quem est acessando a mquina
Linux ONE
Pgina 338
Captulo 19
Inicializao
Inicializao
Linux ONE
Pgina 340
Inicializao
19.2 System V
O Padro System V define, entre outras coisas, como deve ser a inicializao dos
servios do sistema. Ele trabalha com nveis de inicializao, os chamados runlevels, havendo oito deles que sero descritos posteriormente.
A inicializao do sistema se inicia com um boot loader no qual o usurio escolhe
qual sistema operacional ele ir iniciar na mquina. Uma vez escolhido, o boot loader
inicia o carregamento do kernel na memria RAM e passa o controle do sistema a
ele. Uma vez que o kernel j esteja controlando a mquina, iniciada a fase de
subir os servios necessrios para a utilizao do sistema. Este ltimo estgio que
trataremos aqui.
Linux ONE
Pgina 341
Inicializao
# runlevel
N 2
Onde:
N - nvel anterior, quando N significa que no houve mudana de nvel desde a
inicializao.
2 - nvel atual.
Linux ONE
Pgina 342
Inicializao
# init 3
# runlevel
2 3
# init 1
# runlevel
1 S
Linux ONE
Pgina 343
Inicializao
Linux ONE
Pgina 344
Inicializao
No Debian 6.0 todos os scripts de inicializao "/etc/init.d/"foram convertidos para ordenar a sequncia de boot baseado em um padro especificado na Linux Standard
Base (LSB). Com a adeso deste padro agora existe um cabealho em todos os
scripts de inicializao onde so indicadas as dependncias que ele necessita para
poder ser executado, fazendo com que o script inicie s depois de tais dependncias.
Esta funcionalidade ativada pelo comando insserv que ordena os scripts init.d
baseando-se nas suas dependncias declaradas nos cabealhos. Ou seja, para
Linux ONE
Pgina 345
Inicializao
adicionar/remover servios da inicializao no Debian 6.0 no se usa mais o "updaterc.d"e sim o "insserv"!
Vamos usar o comando head que mostra por padro as 10 primeiras linhas e verificar
o cabealho de inicializao do ssh:
#! / bin / sh
3
4
# Provides :
# Required - Start :
$remote_fs
$syslog
# Required - Stop :
$remote_fs
$syslog
# Default - Start :
2 3 4 5
# Default - Stop :
sshd
10
# Short - Description :
11
Linux ONE
Pgina 346
Inicializao
- Should-Stop: Defini que ir parar s depois que os servios declarados forem parados.
- Default-Start: Nveis para carregar o servio
- Default-Stop: Nveis para descarregar o servio
- Short-Description: Descrio rpido do script
- Description: Descrio mais detalhada do script
Valores genricos:
1
2
3
4
5
6
$local_fs
Todos os arquivos locais de sistema s o montados ..
$network
Baixo n vel de rede . ( placa de rede ; PCMCIA )
$named
Daemons que podem fornecer resolu o de nomes , como por exemplo :
DNS , NIS , LDAP .
7
8
9
10
11
12
13
14
$portmap
Daemon que fornece mapeamento de portas .
$remote_fs
Todos arquivos de sistema est o montados .
$syslog
Logs do sistema operacional .
$time
Daemons utilizados para definir a hora do sistema , como ntpdate ,
ntp , rdate .
15
$all
Suportado pelo insserv para iniciar depois que todos os outros scripts forem carregados na sequncia de inicializao. Somente trabalha para inicializar, para descarregar no possvel, pois nenhum script depende de todos.
Linux ONE
Pgina 347
Inicializao
# insserv - rv ssh
# insserv -v ssh
E de onde o insserv tira a prioridade de rodar os scripts? Exemplo do ssh ("/etc/init.d/../rc2.d/S18ssh") iniciando com prioridade 18? A que est a grande novidade,
Linux ONE
Pgina 348
Inicializao
voc no precisar mais editar essa prioridade na mo, o insserv vai calcular a prioridade de acordo com o tal cabealho verificando quais os scripts que sero iniciados
antes para que o script seja executado.
red hat
Red Hat: Nvel 0 desliga o sistema; Nvel 1 modo mono usurio; Nvel 2 multiusurio, sem NFS; Nvel 3 multi-usurio, com NFS, sem X; Nvel 4 no usado; Nvel
5 multi-usurio com NFS e X; Nvel 6 reinicializar o sistema;
# !/ bin / bash
# chkconfig : 2345 55 25
# processname : sshd
10
11
12
13
14
Onde:
Linux ONE
Pgina 349
Inicializao
# chkconfig :
<Nveis de execuo para inicializao> 2345 <ordem iniciar S> S55 <ordem parar
K> K25
- description: Descrio
- config Arquivos de configurao.
- pidfile Localizao do PID do processo.
Linux ONE
Pgina 350
Inicializao
# chkconfig -- list
Ou:
Nota: Estas linhas garantem que o servio do ssh esteja desabilitado no prximo
reboot. Para desligar o mesmo servio sem precisar reiniciar a mquina use o comando:
Linux ONE
Pgina 351
Inicializao
Se no desligares o servio com chkconfig, ele ser reinicializado da prxima vez que
o computador for reiniciado, mesmo que o tenhas parado atravs do script apropriado
(notar que stop um argumento de entrada para o mesmo script). Por isso para
parar imediatamente e desativar permanentemente o servio deves usar:
Ou:
# chkconfig sshd on
Ou:
Linux ONE
Pgina 352
Inicializao
Linux ONE
Pgina 353
Inicializao
19.7 LAB15
Rode o script e faa:
1- Coloque o servidor web para inicializar nos runlevels 3 e 5 e desligar nos runlevels:
0, 1 e 6.
Linux ONE
Pgina 354