Escolar Documentos
Profissional Documentos
Cultura Documentos
450 Linux Essentials (+atualizado 2012) PDF
450 Linux Essentials (+atualizado 2012) PDF
Linux Essentials
www.4linux.com.br
Contedo
GNU/Linux: A Origem
2.1
Distribuies GNU/Linux
. . . . . . . . . . . . . . . . . . . .
Distribuies Corporativas . . . . . . . . . . . . . . . . . . . .
Distribuies Convencionais . . . . . . . . . . . . . . . . . . .
Distribuies Live . . . . . . . . . . . . . . . . . . . . . . . . .
GNU/Linux: A Origem
2.1 Conhecendo um Novo Mundo
Utilizar um sistema GNU/Linux muito mais do que optar por uma soluo isenta de
custos de licena. usufruir de uma filosofia que antecedeu o software proprietrio,
e que permitiu, por exemplo, que a Internet crescesse de forma livre como a conhecemos hoje. Como usurio de Software Livre, precisamos compreender um pouco mais
sobre essa ideologia e como ela promoveu o surgimento das vrias distribuies.
O sistema GNU/Linux frequentemente chamado apenas pelo seu segundo nome:
Linux. Entretanto, essa designao no faz justia a todos os desenvolvedores que
vm construindo o sistema operacional como um todo.
GNU, que um acrnimo recursivo de GNUs Not Unix. Trata-se, de um grupo que
foi fundado em 1984 por seu idealizador, Richard Stallman, com o intuito de criar
um sistema operacional Unix-like desprovido de amarras e travas ao seu uso. Os
desenvolvedores GNU criaram uma srie de programas bsicos para um sistema
operacional funcional, como editores de texto e compiladores. Entretanto, havia um
pedao de cdigo essencial, que ainda no tinha sido criado: o kernel.
Em 1991, um jovem finlands chamado Linus Torvalds disponibilizou para o mundo
a primeira verso do Linux, um kernel Unix-like. A partir desse ponto, foi possvel
unir o kernel Linux com os softwares GNU, originando o sistema operacional que
chamamos de GNU/Linux.
O mundo GNU/Linux no apenas um conjunto de programas. Ele traz consigo
4Linux www.4linux.com.br
uma filosofia de Mundo Livre e colaborativo, no qual as pessoas podem utilizar esses
softwares irrestritamente, acima de tudo, aprender com eles, uma vez que seu cdigo
fonte deve ser disponvel a todos que queiram melhor-lo ou apenas aprender com
ele. Para que esse mundo continue livre, Richard Stallman fundou a FSF - Free
Software Foundation, que criou e mantm a licena GNU GPL - GNU General
Public License. Esta licena define, de modo simplificado, que o Software deve
respeitar quatro princpios bsicos, aqui chamados de liberdades. So elas:
Liberdade 0 - liberdade para rodar o programa para quaisquer propsitos;
Liberdade 1 - liberdade para estudar como o programa trabalha e adapt-lo s
suas necessidades. Ter acesso ao cdigo fonte essencial para isso;
Liberdade 2 - liberdade de redistribuir cpias de forma que voc possa ajudar
outras pessoas;
Liberdade 3 - liberdade para melhorar o programa e disponibilizar as melhorias para o pblico, de forma que toda a comunidade possa se beneficiar. Ter
acesso ao cdigo fonte essencial tambm para isso.
Atualmente a GPL est disponvel em trs verses, GPLv1, GPLv2 e GPLv3. Fique
por dentro de suas diferenas em:
http://www.gnu.org/licenses/gpl.html
http://www.gnu.org/licenses/gpl-howto.pt-br.html
Para mais informaes a respeito do kernel - Linux - podem ser obtidas no site oficial
de seus mantenedores:
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
http://www.kernel.org
Informaes sobre os projetos GNU e FSF podem ser obtidas nos seus respectivos
sites:
http://www.gnu.org http://www.fsf.org
Voc j deve ter ouvido falar em Debian, RedHat, Slackware, Suse, Mandriva, Ubuntu,
CentOS dentre outras. Mas, o que realmente isso? O que so todos esses nomes? Essas so distribuies GNU/Linux. Uma distribuio nada mais do que o
kernel Linux, softwares GNU e outros outros aplicativos que so desenvolvidos por
outras comunidades ou grupos, reunidos em um sistema operacional que tem peculiaridades que o diferencia de outros sistemas operacionais GNU/Linux, fazendo-os
nicos.
Mas, por que existem tantas distribuies? Justamente porque se voc no se identifica com nenhuma delas, voc livre para fazer a sua prpria. Por exemplo, em
1993, um rapaz chamado Patrick Volkerding, juntou o kernel e vrios outros aplicativos em uma distribuio chamada Slackware, que foi a primeira a ser distribuda em
CD. A partir desse ponto, foram surgindo diversas outras distribuies que de alguma
forma diferiam da filosofia do Slackware: como Debian ou RedHat.
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
Distribuies Corporativas
Mantidas por empresas que vendem o suporte ao seu sistema. Exemplos: RedHat,
Ubuntu, Suse e Mandriva.
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 cobrar por suas verses
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
Distribuies Convencionais
Distribuies Live
So distribudas em mdias com o intuito de rodarem a partir delas, sem a necessidade de serem instaladas no HD. As distribuies Live ficaram famosas pois tm
a inteno de fornecer um sistema GNU/Linux totalmente funcional, de forma fcil e sem colocar em risco o sistema operacional original da mquina. 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, "Ubuntu"entre
outras.
Para entender um pouco mais sobre distribuies, necessrio lembrar de mais duas
caractersticas:
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
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, Slax e Linux Mint
Pgina 8
Linux Essentials
455
Linux Essentials
www.4linux.com.br
Contedo
Primeiros Passos
3.1 Introduo terica
A figura abaixo procura demonstrar como o Sistema Operacional GNU/Linux se organiza em layers - camadas:
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;
4Linux www.4linux.com.br
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
mesmos para uma linguagem que a mquina entenda;
DM - A layer de Display Manager responsvel por gerenciar os logins - validao de usurios - na interface grfica e escolher o tipo de ambiente grfico que
deve ser executado;
Desktop Environment - Mais conhecido como Ambiente de Trabalho, responsvel por abrigar todos os programas que necessitam de um ambiente grfico para
funcionar.
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
funo correspondente a um nmero de terminal do 1 ao 6. Esse o comportamento padro e, pode ser mudado. (o stimo, por default, usado pelo ambiente
grfico - Xorg)
O GNU/Linux possui mais de 63 terminais virtuais, mas deles, apenas 6 esto disponveis, inicialmente por motivos de economia de memria RAM. Se voc estiver
usando o modo grfico, deve segurar Ctrl + Alt enquanto pressiona uma tecla de
atalho de F1 a F6.
Um exemplo prtico: se voc estiver utilizando o sistema no terminal 1, pressione
Ctrl + Alt + F2, e veja na primeira linha, nome e verso do sistema operacional,
nome da mquina e o terminal no qual voc est. Voc pode utilizar quantos terminais quiser, do F1 ao F6 (inclusive utilizando o X) e pode ficar saltando de terminal
para terminal.
3.1.2 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.
3.1.3 Shell
No Mundo GNU/Linux, utilizamos o Shell, que funciona como interpretador de comandos. Ele a interface entre o usurio e o kernel do sistema e por meio dele,
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
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
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.
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
Ele tambm pode ser utilizado para trocar de usurio, ele no pedir a senha se voc
for usurio root:
# su - aluno
$ su -
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
# loadkeys -d br - abnt2
# loadkeys -d us - acentos
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
O terminal do GNU/Linux permite que voc guarde 500 comandos por padro no
Debian e 1000 comandos no CentOS.
# history
Comando 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:
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
# 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
3.1.7 Logout
$ logout
$ exit
$ <CTRL >+ D
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
# 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 Essentials
Pgina 13
4Linux www.4linux.com.br
tempo - tempo em minutos que voc deseja para comear a executar a ao.
mensagem - Mensagem que voc quer disparar para todos os terminais logados
com o objetivo de avisar aos usurios que o sistema ser desligado ou reiniciado.
Exemplos
Desligar agora:
# shutdown -h now
Ou
# shutdown -h 0
Desligar daqui 12 minutos notificando os demais usurios logagos com uma mensagem:
# shutdown -h 12
# shutdown -c
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
Utilize comandos e no o boto liga/desliga. Prefira um dos mtodos de reinicializao explicados acima e use o boto reset somente em ltimo caso.
Exemplos
Reiniciar agora:
# shutdown -r now
Ou
# shutdown -r 0
# shutdown -r 5
Linux Essentials
Pgina 15
4Linux www.4linux.com.br
# pwd
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.
Listar o contedo do diretrio atual:
# ls
# cd
# cd ~
# cd /
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
# cd / etc
# cd ..
# cd -
# cd ../../
Diretrio . e ..
Linux Essentials
Pgina 17
4Linux www.4linux.com.br
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.
Atalhos do bash
Pgina 18
Linux Essentials
4Linux www.4linux.com.br
Linux Essentials
Pgina 19
Obtendo ajuda
4.2 Introduo terica
O ritmo de gerao de conhecimento e informao tem sido vertiginoso nos ltimos
cinquenta anos, especialmente na rea tecnolgica. Por isso fundamental saber
onde buscar informaes para manter-se sempre atualizado. Neste captulo, vamos
aprender a consultar as documentaes existentes e como buscar informaes sobre
o que precisamos.
O Sistema Operacional GNU/Linux possui uma vasta biblioteca de documentao.
Antes de recorrermos a ajuda de outras pessoas, devemos lembrar que podemos
ter a respostas que precisamos no prprio sistema, bem a nossa frente, ao teclar de
um simples comando. Essa documentao em grande parte dos casos de extrema
qualidade.
O GNU/Linux cresceu porque a comunidade contribui para o sistema e sua documentao. Essa comunidade no tem medo ou receio de compartilhar informaes
e disponibiliza o que foi desenvolvido no prprio sistema. muito importante reforar
que no Software Livre, as pessoas nunca ocultam seu know-how, ou seja, voc
pode perguntar a vontade, desde que saiba o que e onde perguntar.
A documentao do GNU/Linux pode ser vista tambm como fonte de conhecimento,
onde pode-se aprender muito sobre cada um dos servios e comandos disponveis.
Essa ajuda provida por meio dos manuais, as famosas Man Pages.
20
4Linux www.4linux.com.br
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.
4.3.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:
Linux Essentials
Pgina 21
4Linux www.4linux.com.br
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.
4.3.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.3.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.
Pgina 22
Linux Essentials
4Linux www.4linux.com.br
# help
Caso desejemos visualizar a ajuda rpida para somente um comando interno, usamos esta outra sintaxe:
# help [ comando ]
Linux Essentials
Pgina 23
4Linux www.4linux.com.br
# help type
# 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.
Pgina 24
Linux Essentials
4Linux www.4linux.com.br
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
Linux Essentials
Pgina 25
4Linux www.4linux.com.br
# whatis [ comando ]
Voc sabe que tem um programa chamado vim, mas no sabe o que ele faz?
# whatis vim
# man -f vim
# catman
CentOS:
# makewhatis -v
Pgina 26
Linux Essentials
4Linux www.4linux.com.br
Os comandos apropos e whatis utilizam a mesma base de dados, importante perceber isso. catman (Debian) e makewhatis (CentOS)
Linux Essentials
Pgina 27
4Linux www.4linux.com.br
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
# 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).
Pgina 28
Linux Essentials
4Linux www.4linux.com.br
# man 5 passwd
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.
J se nosso sistema estiver em ingls preciso usar o parmetro -L pt_BR, para
que possamos ver os manuais em nosso idioma:
# man 7 undocumented
Linux Essentials
Pgina 29
4Linux www.4linux.com.br
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.
# info
# info [ comando ]
Pgina 30
Linux Essentials
4Linux www.4linux.com.br
# info vim
ou
Linux Essentials
Pgina 31
4Linux www.4linux.com.br
# whereis vim
# which vi
Pgina 32
Linux Essentials
455
Linux Essentials
www.4linux.com.br
Contedo
Aprendendo Comandos do GNU/Linux
4.1
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1
O comando ls
. . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.2
Criar arquivo . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.3
Curingas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.4
Criando diretrios . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1.5
Removendo arquivos/diretrios
4.1.6
Copiar arquivos/diretrios . . . . . . . . . . . . . . . . . . . . 13
4.1.7
. . . . . . . . . . . . . . . . 12
15
4.2
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.3
. . . . . . . . . . . . . . . . . . . . 17
4.3.1
Diretrio / . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.2
Diretrio /bin . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.3
Diretrio /boot . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.3.4
Diretrio /dev . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.3.5
Diretrio /etc . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.3.6
Diretrio /lib . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.3.7
Diretrio /media . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.3.8
Diretrio /mnt . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.3.9
Diretrio /opt . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
. . . . . . . . . . . . . . . . . . . . . . . . . . 27
4Linux www.4linux.com.br
Contedo
Localizao no sistema:
. . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.4.1
Find . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.4.2
Locate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Linux Essentials
Pgina 3
Aprendendo Comandos do
GNU/Linux
4.1 Introduo terica
Comandos so instrues passadas ao computador para executar uma determinada
tarefa. No mundo *NIX (GNU/Linux,Unix), o conceito de comandos diferente do
padro MS-DOS. Um comando qualquer arquivo executvel, que pode ser ou no
criado pelo usurio.
Uma das tantas vantagens do GNU/Linux a variedade de comandos que ele oferece, afinal, para quem conhece comandos, a administrao do sistema acaba se
tornando um processo mais rpido.
O Shell o responsvel pela interao entre o usurio e o sistema operacional,
interpretando os comandos.
no Shell que os comandos so executados.
4.1.1 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):
4Linux www.4linux.com.br
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.
Socket - um meio de comunicao por software entre um computador e outro.
uma combinao de um endereo IP, um protocolo e um nmero de porta do protocolo.
O campo rwxr-xr-x lista as permisses, enquanto os campos root indicam quem
o usurio e grupo dono desse diretrio que, no nosso caso, o administrador do
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
sistema, o usurio root. O nmero antes do dono indica o nmero de hard links,
um assunto abordado apenas em cursos mais avanados.
O campo 1024 indica o tamanho do arquivo, e o campo 2007-01-15 23:17 informa
a data e hora em que o diretrio foi criado. Finalmente, no ltimo campo temos o
nome do arquivo ou diretrio listado, que, no nosso exemplo, o boot.
Com relao aos diretrios, importante ressaltar que o tamanho mostrado no
corresponde ao espao ocupado pelo diretrio e seus arquivos e subdiretrios. Esse
espao aquele ocupado pela entrada no sistema de arquivos que corresponde ao
diretrio.
A opo -a lista todos arquivos, inclusive os ocultos:
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 /
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?
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
# ls -ld /* n
# cd / srv
4.1.3 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 Essentials
Pgina 7
4Linux www.4linux.com.br
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 / srv
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
1
2
# ls
curriculo1 . txt
curriculo2 . txt
curriculo3 . txt
curriculo4 . new
curriculo5 . new
Vamos listar todos os arquivos do diretrio /srv. Podemos usar o curinga * para
visualizar todos os arquivos do diretrio:
1
2
# ls *
curriculo1 . txt
curriculo2 . txt
curriculo3 . txt
curriculo4 . new
curriculo5 . new
Para listarmos todos os arquivos do diretrio /srv que tenham new no nome:
# ls * new *
Listar todos os arquivos que comeam com qualquer nome e terminam com .txt:
1
2
# ls *. txt
curriculo1 . txt curriculo2 . txt curriculo3 . txt procedimentos . txt
Listar todos os arquivos que comeam com o nome curriculo, tenham qualquer
caractere no lugar do curinga, e terminem com .txt:
1
2
# ls curriculo ?. txt
curriculo1 . txt curriculo2 . txt curriculo3 . txt
Para listar todos os arquivos que comeam com o nome curriculo, tenham qualquer
caractere entre o nmero 1-3 no lugar da 4 letra e terminem com .txt. Neste
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
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:
1
2
# ls *. new
# ls * new *
# ls curriculo ?. new
# ls curriculo [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.
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
# cd / srv
# mkdir Suporte
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 Rh/Processos/Cvs exigiria a execuo de trs comandos
mkdir.
Algo como:
# mkdir Rh
# mkdir Rh / Processos
# mkdir Rh / Processos / Cv \ s
A opo -p permite que toda essa estrutura seja criada em uma nica linha. Assim:
# mkdir -p Rh / Processos / Cv \ s
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
# cd / srv
# ls
# rm curriculo ?. txt
# ls
1
2
# rm -i curriculo4 . new
rm : remover arquivo comum vazio curriculo4 . new ?
# rm -r Rh
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
Observao: Muita ateno ao usar o comando rm! Uma vez que os arquivos
e diretrios removidos no podem mais ser recuperados!
# rmdir Suporte
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:
Linux Essentials
Pgina 13
# su - aluno
$ touch teste
$ ls -l
$ exit
# cd / home / aluno
# cp -p teste teste2
# cp teste teste3
# ls -l teste2 teste3
4Linux www.4linux.com.br
# mv teste teste4
Movendo arquivo:
# mv teste4 / tmp
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
Renomeando diretrio:
# cd / srv
# mv Financeiro financeiro
Movendo diretrio:
# mv financeiro / srv / Rh /
Linux Essentials
Pgina 15
16
4Linux www.4linux.com.br
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.
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 Essentials
Pgina 17
4Linux www.4linux.com.br
4.3.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
Pgina 18
Linux Essentials
4Linux www.4linux.com.br
Esse um diretrio pblico, sendo assim, os comandos que esto nele podem ser
utilizados por qualquer usurio do sistema. Entre os comandos, esto:
/bin/ls;
/bin/cp;
/bin/mkdir;
/bin/cat;
Qualquer usurio pode executar estes comandos:
# 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
Linux Essentials
Pgina 19
4Linux www.4linux.com.br
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:
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
Pgina 20
Linux Essentials
4Linux www.4linux.com.br
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.
# ls / etc
Vamos dividir esta linha em campos, onde cada campo separado por : (dois
pontos), ento:
Linux Essentials
Pgina 21
4Linux www.4linux.com.br
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.
Pgina 22
Linux Essentials
4Linux www.4linux.com.br
Este arquivo possui as senhas criptografadas dos usurios do sistema. Existe uma
entada no arquivo para cada usurio do sistema com os seguintes campos:
pwunconv
Linux Essentials
Pgina 23
4Linux www.4linux.com.br
# getent passwd
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
Pgina 24
Linux Essentials
4Linux www.4linux.com.br
# 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 Essentials
Pgina 25
4Linux www.4linux.com.br
# ls / media
# ls / mnt
Pgina 26
Linux Essentials
4Linux www.4linux.com.br
# ls / opt
Normalmente, utilizado por programas proprietrios ou que no fazem parte oficialmente da distribuio.
# ls / sbin
halt
ifconfig
init
iptables
Linux Essentials
Pgina 27
4Linux www.4linux.com.br
$ /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
Pgina 28
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 29
4Linux www.4linux.com.br
# 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
Pgina 30
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 31
4Linux www.4linux.com.br
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
Pgina 32
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 33
4Linux www.4linux.com.br
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.
Pgina 34
Linux Essentials
4Linux www.4linux.com.br
-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].
Linux Essentials
Pgina 35
4Linux www.4linux.com.br
-perm [modo] :
Procura por arquivos que possuem os modos de permisso [modo]. Os [modo] de
permisso podem ser numrico (octal) ou literal.
-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:
Pgina 36
Linux Essentials
4Linux www.4linux.com.br
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 {} \;
Xargs
Linux Essentials
Pgina 37
4Linux www.4linux.com.br
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:
| 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:
Pgina 38
Linux Essentials
4Linux www.4linux.com.br
4.4.2 Locate
O comando locate um comando rpido de busca de arquivos, porm no usa
busca recursiva na sua rvore de diretrios. Ele utiliza uma base de dados que
criada pelo comando updatedb, para que a busca seja mais rpida. Por padro, a
atualizao da base de dados agendado no cron do sistema para ser executada
diariamente.
Para utiliz-lo, primeiro necessrio criar a sua base de dados usando a seguinte
sintaxe:
# 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
/ usr / share / doc / python2 .4 - xml / xml - howto . txt . gz / usr / share / vim / vim64 /
doc / howto . txt
Linux Essentials
Pgina 39
455
Linux Essentials
www.4linux.com.br
Contedo
Comandos Avanados I
5.1
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.1
. . . . . . . . .
5.1.2
Alterando os redirecionamentos . . . . . . . . . . . . . . . .
5.1.3
O direcionador . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.4
O direcionador < . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.5
O direcionador 2> . . . . . . . . . . . . . . . . . . . . . . . .
5.1.6
O direcionador 2 . . . . . . . . . . . . . . . . . . . . . . . . 10
5.1.7
O direcionador 2>&1 . . . . . . . . . . . . . . . . . . . . . . . 10
5.1.8
O direcionador &> . . . . . . . . . . . . . . . . . . . . . . . . 12
5.1.9
O direcionador & . . . . . . . . . . . . . . . . . . . . . . . . 13
5.1.10 O direcionador | . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.1.11 O direcionador tee . . . . . . . . . . . . . . . . . . . . . . . . 14
5.1.12 O direcionador . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.1.13 Comando dd . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.1.14 Comando wc . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.1.15 Comando split . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5.1.16 Comando file . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1.17 Comando who . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1.18 Comando w . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.1.19 Comando ln . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.1.20 Inodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.1.21 Comando stat . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.1.22 Link simblico . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.1.23 Hard links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.1.24 Comando nl . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4Linux www.4linux.com.br
Contedo
Linux Essentials
Pgina 3
Comandos Avanados I
No mundo GNU/Linux, a maioria das operaes so realizadas por meio de comandos escritos. Em geral, eles permitem um maior controle e flexibilidade de operaes,
alm de poderem ser includos em scripts. Neste captulo iremos aprender alguns
comandos avanados.
No linux, voc pode ler dados de um arquivo ou terminal ou escrever dados para
um arquivo ou terminal. O linux tem trs tipos de fluxo de dados: entrada(INPUT),
sada(OUTPUT) e a ltima para imprimir diagnsticos ou mensagens de erro.
Por padro, a entrada de dados e comandos no Shell feita pelo teclado, a sada
destes retornada na tela. Eventuais erros so exibidos na tela tambm. Porm
voc pode alterar a sada padro que a tela e envi-la para um arquivo ou outra
localizao.
Os termos geralmente usados so: 0 - Entrada de dados, representada por stdin
(Standard Input); 1 - Sada de dados, representada por stdout (Standard Output);
2 - Sada de erros, representada por stderr (Standard Error);
4Linux www.4linux.com.br
> (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 Essentials
Pgina 5
4Linux www.4linux.com.br
O direcionador >
# 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
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 7
4Linux www.4linux.com.br
5.1.3 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:
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 9
4Linux www.4linux.com.br
5.1.6 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
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
# 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 Essentials
Pgina 11
4Linux www.4linux.com.br
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
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
# 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 Essentials
Pgina 13
4Linux www.4linux.com.br
5.1.10 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 :
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
A sada aparece na tela e tambm foi direcionada para o arquivo arquivo.tee, visualizeo:
5.1.12 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 Essentials
Pgina 15
4Linux www.4linux.com.br
# cat arquivo_novo
5.1.13 Comando 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.
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
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
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.
5.1.14 Comando 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 -c / etc / passwd
Linux Essentials
Pgina 17
4Linux www.4linux.com.br
# 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 *
Pgina 18
Linux Essentials
4Linux www.4linux.com.br
# cat
Visualize o arquivo:
# file /
Linux Essentials
Pgina 19
4Linux www.4linux.com.br
# 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
5.1.18 Comando 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
pts /0
5.1.19 Comando 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
Pgina 20
Linux Essentials
4Linux www.4linux.com.br
5.1.20 Inodes
Linux Essentials
Pgina 21
4Linux www.4linux.com.br
Size : 3020
Access : (0644/ - rw -r - -r - -)
Blocks : 8
IO Block : 4096
Inode : 4995196
arquivo comum
Links : 1
Onde:
Pgina 22
Linux Essentials
4Linux www.4linux.com.br
# vim arquivo
# ls -i arquivo
11927685 arquivo
Onde:
-i - mostra nmero de inode do arquivo/diretrio
Criando o link simblico:
Linux Essentials
Pgina 23
4Linux www.4linux.com.br
# 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:
Pgina 24
Linux Essentials
4Linux www.4linux.com.br
# 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 Essentials
Pgina 25
# ln
4Linux www.4linux.com.br
# ls -1 -i arq *
Onde:
-1 - mostra um arquivo por linha -i - mostra nmero do inode do arquivo/diretrio
5.1.24 Comando 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
Pgina 26
Linux Essentials
4Linux www.4linux.com.br
# vim bagun a
Gabriela
Barbara
Bruno
Victor
Alexandre
Bruno
Alfredo
Bruno
# cat bagun a
# sort bagun a
Linux Essentials
Pgina 27
4Linux www.4linux.com.br
-n - classificao numrica;
-r - classifica na ordem invertida.
Para saber mais parmetros:
# man sort
Pgina 28
Linux Essentials
455
Linux Essentials
www.4linux.com.br
Contedo
Comandos Avanados II
6.1
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.1
6.1.2
Comando grep . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.3
Comando egrep . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.4
Comando fgrep . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.5
Comando sed . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.6
. . . . . . . . . . . . . . . . . . . . . .
6.1.7
Administrao da Shell
6.2
10
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
6.2.1
6.2.2
Variveis em Shell . . . . . . . . . . . . . . . . . . . . . . . . 12
6.2.3
6.2.4
Alias
6.2.5
Arquivos de Login . . . . . . . . . . . . . . . . . . . . . . . . 20
6.2.6
6.2.7
Tipos de shell
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
. . . . . . . . . . . . . . . . . . . . . . . . . . 22
Comandos Avanados II
6.1 Introduo terica
No mundo GNU/Linux, a maioria das operaes so realizadas por meio de comandos escritos. Em geral, eles permitem um maior controle e flexibilidade de operaes,
alm de poderem ser includos em scripts. Neste captulo iremos aprender alguns
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:
4Linux www.4linux.com.br
-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).
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
A seguir, o grep aplicado para filtrar quem est logado no primeiro terminal
(tty1):
root
tty1
Para uma busca mais avanada utilize o egrep. Por exemplo quero buscar por uma
linha que contenha a palavra root ou aluno:
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
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:
Para efetuar a troca em uma linha especfica, aponte o nmero da linha, por exemplo
fazer a troca dos caracteres / por @ na primeira linha:
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
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
Onde:
-F - delimitador
print - imprime o valor da coluna especificada:
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
$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 Essentials
Pgina 9
4Linux www.4linux.com.br
Comando paste
O comando paste, junta os arquivos na sada padro. Diferente do join, ele joga
os dois arquivos lado-a-lado.:
Pgina 10
Linux Essentials
Administrao da Shell
11
4Linux www.4linux.com.br
# 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:
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
# 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
# comando = ls
# echo $comando
Ou
# echo $comando
Linux Essentials
Pgina 13
4Linux www.4linux.com.br
# echo $comando
Ou
# echo $( $comando )
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
Visualizando:
# echo $magica
# set
# clear
# env
# bash
# echo $magica
10
# exit
Exporte a varivel:
# export magica
# set
# clear
# env
# bash
# echo $magica
Linux Essentials
Pgina 15
# unset magica
# echo $magica
4Linux www.4linux.com.br
Para ficar permanente para todos e funcionar em qualquer terminal deve-se colocar
em um dos arquivos:
/ etc / profile
/ etc / environment
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
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
# vipw
# vipw
# TMOUT =30
# 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
Linux Essentials
Pgina 17
4Linux www.4linux.com.br
$ 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:
$ ifconfig
Isso no significa que voc tem a permisso de root para executar os comandos de
root. Tente derrubar sua placa de rede:
Pgina 18
Linux Essentials
4Linux www.4linux.com.br
6.2.4 Alias
# 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 Essentials
Pgina 19
4Linux www.4linux.com.br
# 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.
Pgina 20
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 21
9
10
4Linux www.4linux.com.br
1
2
echo $SHELL
Pgina 22
Linux Essentials
4Linux www.4linux.com.br
# su - aluno
A opo which bash substituda pelo seu resultado /bin/bash. No prximo login
o aluno estar no shell bash novamente.
Linux Essentials
Pgina 23
455
Linux Essentials
www.4linux.com.br
Contedo
Editores de Texto
7.1
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2
Editores de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.1
Nano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.2
Vim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Funcionalidades do Vim . . . . . . . . . . . . . . . . . . . . . .
Editores de Texto
7.1 Introduo terica
A grande maioria das configuraes em sistemas GNU/Linux so feitas editando
diretamente arquivos de configurao em modo texto. Para facilitar essa tarefa,
preciso conhecer alguns editores de texto, dentre eles: vi, vim, nano, pico,
mcedit, ed, e emacs dentre outros:
vi - Sem dvida nenhuma o editor mais famoso de todos os tempos, presente
em quase todas as distribuies;
vim - Uma verso melhorada do vi, Vim significa VImproved e traz diversas
facilidades sem perder os conceitos originais do vi;
nano - Editor padro de muitas distribuies como Debian , CentOS esse editor
diferente do vim e muito fcil de ser usado;
pico - Muito parecido com o nano, este est presente nas distribuies Slackware
e Gentoo;
mcedit - Editor muito fcil e completo. Seu grande diferencial a possibilidade
da utilizao do mouse, mesmo no ambiente textual;
ed - O editor de textos mais simples no mundo Unix, o ed um editor de linha
para terminais aonde no possvel abrir uma janela de edio;
4Linux www.4linux.com.br
# 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;
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
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
Where Is - Procura por uma ocorrncia dentro do arquivo;
W
Y Prev Page - Move o cursor para pagina anterior;
V Next Page - Move o cursor para prxima pagina;
Cut Text - Corta a linha em que o cursor est posicionado;
K
UnCut Text - Cola a linha recortada na posio atual do cursor
Cur Pos - Mostra informaes sobre a posio do cursor;
C
T To Spell - Ativa a correo ortogrfica. necessrio ter o comando spell
instalado para que isso funcione;
Como podemos ver, usar o editor de textos nano, no uma das tarefas mais
difceis no GNU/Linux. Vamos conhecer, agora, o editor Vim.
Para definirmos qual ser o editor padro no Debian podemos usar o aplicativo
update-alternatives.
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
7.2.2 Vim
O Vi o editor bsico do GNU/Linux, e est disponvel em grande parte das distribuies do GNU/Linux, mesmo naquelas que vm em apenas um disquete. Hoje em
dia, as distribuies usam uma verso mais completa e com mais recursos do que o
Vi que o Vim = VI iMproved. Abaixo podemos ver uma tela do editor de textos
vim:
Ao invocar o vim, este entra direto para o modo visualizao. Para modificar o
arquivo, usam-se os modos de insero, deleo e de substituio. Para voltar ao
modo de visualizao, sempre se usa a tecla ESC.
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
# 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 Essentials
Pgina 7
4Linux www.4linux.com.br
# vim texto
3
4
5
6
# vim texto
ou
5 dd
Para for ar :
:1 ,5 d
ou
ou
x!
Com o
d5d
3
4
q!
# vim texto
# buscar palavra " inser " dentro do arquivo abaixo do cursor , digite :
/ inser
# Buscar palavra " inser " dentro do arquivo acima do cursor , digite :
? inser
Funcionalidades do Vim
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
No CentOS /etc/vimrc.
Adicione ao final do arquivo as opes para deixar o texto com as linhas numeradas,
texto colorido e grifar as buscas encontradas:
set number
syntax on
set hlsearch
Linux Essentials
Pgina 13
455
Linux Essentials
www.4linux.com.br
Contedo
Gerenciamento de Pacotes em Alto Nvel
8.1
8.2
8.3
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.1.1
O que um pacote?
. . . . . . . . . . . . . . . . . . . . . .
8.1.2
3
3
. . . . . . . . . .
8.2.1
8.2.2
8.2.3
8.2.4
Atualizao da distro
. . . . . . . . . . . . . . . . . . . . . . 11
Instalando pacotes . . . . . . . . . . . . . . . . . . . . . . . . 14
8.3.2
Removendo pacotes . . . . . . . . . . . . . . . . . . . . . . . 14
8.3.3
Atualizando pacotes . . . . . . . . . . . . . . . . . . . . . . . 15
4Linux www.4linux.com.br
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
# 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
# aptitude update
ou
ou
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
# aptitude update
ou
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
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
apt-cache trar como resultado tanto comandos, quanto resumo do comando que
contenham o argumento passado na busca.
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:
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 Essentials
Pgina 7
4Linux www.4linux.com.br
ou
ou
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
ou
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
Repare que aps a remoo, os arquivos de configurao do samba, ainda continuam existindo no sistema:
# ls / etc / samba
ou
Agora iremos remover o samba e suas dependncias, assim como seus arquivos de
configurao:
Ou:
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
pode crescer e ocupar muito espao em disco. Felizmente o apt fornece uma tima
ferramenta para lidar com seu repositrio local,o mtodos "clean"do apt-get. O "aptget clean" remove tudo exceto os arquivos de lock dos diretrios "/var/cache/apt/archives/" e "/var/cache/apt/archives/partial/". Assim, se voc precisar reinstalar um
pacote o apt ir busc-lo novamente.
# aptitude upgrade
ou
Linux Essentials
Pgina 11
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:
Pgina 12
Linux Essentials
[ 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 Essentials
Pgina 13
ou:
Pgina 14
Linux Essentials
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 Essentials
Pgina 15
455
Linux Essentials
www.4linux.com.br
Contedo
Instalao de Programas com DPKG e RPM
9.1
Introduo terica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
3
9.1.1
9.1.2
Pacotes RPM . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.1.3
9.1.4
9.1.5
9.1.6
pool
\_ stable
\_ main
4
5
\_ a
\_ alien
\ _ alien - < versao >. deb
6
7
\_ a2ps
\_ ...
4Linux www.4linux.com.br
\_ b
10
\_ ...
11
\_ z
12
\_ liba
13
\_ libb
14
\_ ...
15
\_ libz
16
\_ testing
17
\_ unstable
18
\_ contrib
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
quando um usurio instala um programa e facilita a remoo destes mesmos arquivos. Se o banco de dados fica corrompido (o que acontece facilmente se o cliente
de RPM fechado subitamente), as ligaes duplas garantem que eles possam ser
reconstrudos sem nenhum problema. Em computadores com o sistema operacional
RedHat instalado, este banco da dados encontra-se em /var/lib/rpm.
Uma vantagem que o RPM possui sobre DPKG que possui algumas ferramentas de
verificao criptogrfica com o GPG e o md5, alm de verificao de integridade dos
arquivos j instalados. Existe uma documentao que pode ser usada para qualquer
distro baseada em RPM que pode ser encontrada em: http://www.rpm.org/RPM-HOWTO/.
# dpkg -- help
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
Ou:
No caso:
# dpkg -l | less
Para determinar qual pacote foi o responsvel por instalar um binrio no sistema,
digite:
# dpkg -s coreutils
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
# dpkg -c
# dpkg -r
flashplugin - nonfree
# dpkg -l
flashplugin - nonfree
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
# dpkg -P
flashplugin - nonfree
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
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
# dpkg -l alien
# ls -lh
# aptitude clean
# aptitude -d install sl
ccze ; ls - lh
# cd / opt ; ls - lh
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
# file sl *
# file ccze *
Vamos agora copiar o arquivo .rpm para a mquina Dexter para poder instalar o
pacote.
# cd / opt
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
As opes -h e percent servem para mostrar uma barra de progressos e a porcentagem de concluso.
Instale o programa:
# rpm -e ccze
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
# rpm -qa
# rpm -q ccze
Para realizar uma atualizao de verso de algum programa podemos utilizar o comando:
# rpm -Va
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
Execute o comando:
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 Essentials
Pgina 13
4Linux www.4linux.com.br
Pgina 14
Linux Essentials
455
Linux Essentials
www.4linux.com.br
Contedo
11 Compilando Programas
11.1.1 Configure . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.1.2 Makefile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bibliotecas
. . . . . . . . . . 12
Compilando Programas
10.1 Introduo Terica
Um dos pontos centrais do mundo GNU/Linux est baseado nas quatro liberdades
bsicas propostas pela FSF - Free Software Foundation, sendo elas:
1 liberdade de rodar o programa para qualquer propsito;
2 liberdade de acesso ao cdigo fonte, estudar como ele funciona e adapt-lo
s suas necessidades;
3 liberdade de redistribuir cpias do software;
4 liberdade de melhorar o programa e distribuir essas melhorias em benefcio
da comunidade.
Para que essas quatro liberdades bsicas sejam alcanadas necessrio que tenhamos acesso ao cdigo fonte dos programas.
Tirando a parte ideolgica, h diversas situaes que exigem que recompilemos um
determinado software a partir do cdigo fonte, sendo algumas delas, quando necessitamos alter-lo para que ele satisfaa alguma necessidade pessoal, corrigir um
erro ou melhorar a segurana, o software no est disponvel na forma de pacote ou
simplesmente o pacote no vem compilado com alguma funcionalidade que desejamos.
4Linux www.4linux.com.br
10.1.1 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.
10.1.2 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:
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
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:
# 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
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
fazer uma verso comprimida de um arquivo tar como gzip. Para a prova voc deve
dominar o TAR e o GZIP, que estudamos no 450, e utilizaremos aqui.
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:
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
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
# make
# make install
# nmap 192.168.200.254
# make clean
Para desinstalar:
# make uninstall
Linux Essentials
Pgina 7
Bibliotecas
10.2 Introduo Terica
Hoje em dia muito simples instalar um programa j compilado, com a ajuda de gerenciadores de pacotes como o rpm, dpkg, aptitude e outros. Mas voc vai encontrar
muitos programas disponveis somente em cdigo-fonte, e s vezes nem to bem
documentados assim. Entretanto, compilar um programa no algo de outro mundo,
no um bicho de sete cabeas. A funo destas bibliotecas lembra um pouco a dos
arquivos .dll no Windows. Temos as bibliotecas estticas e dinmicas. As dinmicas
so usadas por vrios programas e necessrias para instalar programas distribudos
em cdigo fonte (os famosos arquivos tar.gz, tgz e tar.bz2).
4Linux www.4linux.com.br
# ldd $( which ls )
# ldd / bin / ln
Verificando tamanhos:
40 K / bin / ln
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
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.
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
As bibliotecas mais comuns, utilizadas por todas as aplicaes e utilitrios do sistema, so:
libc: na verdade um grande "pacote"de bibliotecas que prov funcionalidades bsicas de entrada/sada, de acesso a servios do sistema, rede, etc.
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.
# ldconfig -p
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
Caso voc tenha desenvolvido ou baixado alguma biblioteca nova e criou um diretrio
especfico para guard-las, adicione o caminho completo do diretrio em que essa
biblioteca se encontra no arquivo /etc/ld.so.conf e digite o comando ldconfig (sem
parmetros). Isso ir gerar o arquivo /etc/ld.so.cache, que contm informaes sobre
as bibliotecas compartilhadas disponveis no sistema que ld.so ou ld-linux.so iro
procurar.
Aps a operao, confira o resultado com o comando ldconfig -p e veja se sua
nova biblioteca consta na lista.
Outra opo adicionar o caminho completo na varivel de ambiente LD_LIBRARY_PATH,
que instrui o carregador dinmico para checar um certo diretrio:
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
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
# ldd / bin / ls
10
(0 xb7816000 )
# ls -l ls -l / lib / librt . so .1
Linux Essentials
Pgina 13
4Linux www.4linux.com.br
# 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
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:
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
2
3
/ bibliotecas
# ldconfig
# ls / etc
# ldd / bin / ls
Linux Essentials
Pgina 15
455
Linux Essentials
www.4linux.com.br
Contedo
Introduo a Redes
11.1.1 Entendendo o IP . . . . . . . . . . . . . . . . . . . . . . . . .
11.1.2
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . 11
Introduo a Redes
11.1 Introduo terica
Neste captulo, iremos aprender alguns conceitos de redes que so muito importantes no nosso dia a dia em TI. Elementos como o endereo IP da mquina e a
mscara de rede, so de fundamental importncia quando lidamos com configurao de rede. To importante quanto os itens acima, saber como funciona uma
rede, aprendendo a configurar seu gateway e definir seu DNS, alm de descobrir
tcnicas que facilitam as configuraes diria de rede nos nossos sistemas UNIX.
Os protocolos TCP/IP antigamente eram usados como um padro militar para troca
de informaes. Atualmente esses protocolos so o padro mundial para comunicao de redes de computadores. Inclusive da Internet.
O protocolo TCP - Transmission Control Protocol, orientado a conexes, transporta informaes por meio de handshake. Caso algum erro acontea durante a
comunicao ele, automaticamente, reenvia a informao. Esse protocolo garante o
envio das mensagens. Podemos citar alguns servios de rede que utilizam o protocolo TCP: SMTP, FTP e Telnet. J o protocolo IP - Internet Protocol descrito
pela RFC 791, responsvel por estabelecer o esquema de endereamento e pela
definio de datagramas.
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
4Linux www.4linux.com.br
11.1.1 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.
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
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.
ping 8.8.8.8
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 7
4Linux www.4linux.com.br
# ifconfig
# ifconfig -a
Para atribuir um endereo IP para uma placa de rede utilizamos esta sintaxe:
Exemplo:
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
# 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:
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
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
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
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
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
# ping
No foi possvel, porque? Para poder pingarmos um domnio necessrio configurarmos o DNS responsvel pela resoluo de nomes.
Traceroute uma ferramenta que permite descobrir o caminho feito pelos pacotes
desde a sua origem at o seu destino.
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
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:
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
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:
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:
Linux Essentials
Pgina 13
# ifconfig eth0 up
4Linux www.4linux.com.br
Exemplo:
# ifup eth0
# ifdown eth0
IP
FQDN
HOSTNAME
ALIAS
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
Exemplo :
192.168.0.100 aula.teste.com.br aula
Isso facilita nosso trabalho, uma vez que todos esto devidamente configurados, no
precisamos mais decorar nmeros IP.
O comando hostname altera dinamicamente o nome da mquina e deve ser utilizado da seguinte maneira:
hostname aula
Deslogue e logue para alterar o prompt. Para testar a resoluo de nomes pelo
arquivo hosts:
# hostname -i
# hostname -f
# hostname -d
# hostname -v
Linux Essentials
Pgina 15
4Linux www.4linux.com.br
aula
<host-
name>.<domainname>
IP
FQDN
HOSTNAME
ALIAS
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 17
455
Linux Essentials
www.4linux.com.br
Contedo
Gerenciamento de Processos
O comando pkill . . . . . . . . . . . . . . . . . . . . . . . . . .
O comando killall . . . . . . . . . . . . . . . . . . . . . . . . .
O comando kill . . . . . . . . . . . . . . . . . . . . . . . . . . .
O comando nohup . . . . . . . . . . . . . . . . . . . . . . . . . 14
O Comando lsof . . . . . . . . . . . . . . . . . . . . . . . . . . 15
12.3 Definido prioridades dos processos . . . . . . . . . . . . . . . . . . . . 19
Gerenciamento de Processos
12.1 Introduo Terica
Quando executamos algum comando, script ou iniciamos algum programa, o kernel
atribui a ele um nmero de processo (PID) e passa a gerenciar a quantidade de recursos que ele ir disponibilizar para essa atividade. Como haver sempre diversos
processos rodando simultaneamente na mquina o kernel tem uma lista de processos que necessitam de recursos. Como no existe atualmente um sistema realmente
multitarefa, capaz de realizar diversas atividades realmente ao mesmo tempo, o kernel cria uma fila de processos e a percorre disponibilizando recursos de mquina
para cada um deles por um determinado perodo de tempo. Quanto melhor essa distribuio for efetuada melhor ser o desempenho do sistema como um todo e mais
prximo de um sistema multitarefas o sistema se parecer.
A forma como o kernel gerncia os processos bastante inteligente e podemos
sempre visualizar o status do processo num determinado instante, para determinar
se ele est sendo executado neste mesmo instante ou se ele est aguardando tempo
de mquina para que seja executado.
Podemos visualizar todos os processos que esto rodando em nosso sistema com o
programa que tira uma foto dessa estrutura, conhecido como snaPShot vulgo ps:
# ps
4Linux www.4linux.com.br
ento aqui esto os mais importantes: Para podermos ver com mais detalhes os
processos temos a combinao dos seguintes parametros
# ps aux
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
18
19
20
21
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
22
23
PRI
NI
24
25
valores de PRI ) ;
26
27
WCHAN
em modo suspenso ;
28
29
STAT
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
# 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
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
# 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
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
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
# pidof cron
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
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
Passando esses sinais aos processos podemos realizar tarefas desde, reiniciar o
processo at encerr-lo de forma forada. Para gerenciarmos processos temos alguns comandos:
O comando pkill
# pkill cron
O comando killall
# killall cron
O comando kill
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
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
# ekiga
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
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
ekiga &
# kill %1
Verifique que o processo foi terminado, lembrando que quando no passamos o sinal
utilizado o sinal 15 como padro:
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
# 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:
# jobs
[1]+
Executando
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:
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
# 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
ekiga
Ou seja:
# bg 1
# jobs
[1]+
Executando
Linux Essentials
ekiga &
Pgina 13
4Linux www.4linux.com.br
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:
O comando nohup
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
Execute novamente e verifique que o ping continua, pois o comando ainda no terminou de ser executado (1000 pings ao site 4linux.com.br):
O Comando 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:
# lsof -n
COMMAND
PID
OFF
3
init
init
init
root
cwd
DIR
8 ,1
root
rtd
DIR
8 ,1
root
txt
REG
8 ,1
REG
8 ,1
init
51712
DEVICE SIZE /
2 /
129800
6
TYPE
2 /
4096
5
FD
NODE NAME
4096
4
USER
root
mem
Linux Essentials
Pgina 15
init
43552
8
init
init
10
init
11
init
root
mem
REG
8 ,1
root
mem
REG
8 ,1
root
mem
REG
8 ,1
31744
8 ,1
1572232
REG
35712
mem
97256
root
4Linux www.4linux.com.br
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
esto fazendo algo que no bem o que deveriam fazer ;) ;
Quando lsof chamado sem parmetros, ele vai mostrar todos os arquivos abertos
por todos os processos.
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
# 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 . . . );
# 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":
Linux Essentials
Pgina 17
4Linux www.4linux.com.br
# lsof -u aluno
# lsof +p 1
# lsof +D / tmp
# ssh 192.168.200. X
Onde X o ip do amigo.
Agora verifique as conexes da porta 22, que a porta do ssh:
# lsof -i
Pgina 18
:22
Linux Essentials
4Linux www.4linux.com.br
# ekiga
ekiga
grep ekiga
0 12605
0 14116
Linux Essentials
Pgina 19
4Linux www.4linux.com.br
<PID >
ekiga
grep ekiga
-20 12605
0
14440
# killall ekiga
Pgina 20
Linux Essentials
455
Linux Essentials
www.4linux.com.br
Contedo
13 Manipulando Hardware e Dispositivos
. . . . . . . . . . . . . . 22
. . . . . . . . . 28
4Linux www.4linux.com.br
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
Agora se voc usa um kernel velho de verso anterior a 2.2.x, ao invs de ser
/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).
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
/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
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:
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
Tipos de parties
/dev/sda1
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
/dev/sda2
/dev/sda3
/dev/sda4
Partio estendida
Isso mesmo, no singular. S pode haver uma partio estendida em cada disco.
Uma partio estendida um tipo especial de partio primria que no pode conter
um sistema de arquivos. Ao invs disso, ela contm parties lgicas. Se existir uma
partio estendida, ela toma o lugar de uma das parties primrias, podendo haver
apenas trs.
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)
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
/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 Essentials
Pgina 11
4Linux www.4linux.com.br
abaixo:
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.
Elas representam a maneira como os dados foram armazenados em /dev/hda1.
Para que o sistema operacional GNU/Linux apresente estes dados de uma forma
mais legvel, necessrio solicitar ao sistema um processo de traduo. Este processo chamado de montagem de dispositivos.
Ento para que a partio /dev/sda1 seja usada, necessrio montar esta partio
em algum local e acess-lo. Este local, que um diretrio no sistema de arquivos,
chamado de ponto de montagem. Podemos montar um dispositivo de armazenamento em qualquer diretrio do sistema de arquivos, contudo, existem algumas
convenes:
Dispositivos removveis devem ser montados em /media (em outras pocas em /mnt).
Exemplos:
Um cdrom convencional, representado por /dev/cdrom , /dev/hdc, /dev/sr0
deve ser montado em /media/cdrom;
Um leitor de disquetes, representado por /dev/fd0, deve ser montado em
/media/floppy;
A grande maioria dos dispositivos de bloco USB, so reconhecidos como
SCSI, e podem ser localizados em /dev/sda;
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
# fdisk [ dispositivo ]
Linux Essentials
Pgina 13
4Linux www.4linux.com.br
Utilizando:
There is nothing wrong with that , but this is larger than 1024 ,
Command action
d delete a partition
10
11
12
13
14
15
16
17
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 15
4Linux www.4linux.com.br
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
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.
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 17
4Linux www.4linux.com.br
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:
Pgina 18
Linux Essentials
4Linux www.4linux.com.br
Linux Essentials
Pgina 19
4Linux www.4linux.com.br
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 (item que estudaremos mais tarde no Treinamento 451).
Pgina 20
Linux Essentials
4Linux www.4linux.com.br
Aproxima para a unidade de medida mais prxima, mais legvel para o ser humano.
Linux Essentials
Pgina 21
4Linux www.4linux.com.br
Mostra em bytes:
Mostra em kilobytes:
Mostra em megabytes:
Pgina 22
Linux Essentials
4Linux www.4linux.com.br
# 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 "
2
3
lrwxrwxrwx 1 root root 10 2009 -03 -06 10:41 2 c070d34 -5 c6e -4504 -8 d4b -9
a8fa910548d -> ../../ sda7
Linux Essentials
Pgina 23
4Linux www.4linux.com.br
lrwxrwxrwx 1 root root 10 2009 -03 -06 10:41 489 B -5 A22 -> ../../ sda8
lrwxrwxrwx 1 root root 10 2009 -03 -06 10:41 69 ff8ed5 - c09b -49 b6 - b21d
-328 e90243efa -> ../../ sda6
lrwxrwxrwx 1 root root 10 2009 -03 -06 10:41 f541a97e - ef19 -4 e47 - b305 b535a75c932a -> ../../ sda1
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
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 :
Pgina 24
Linux Essentials
4Linux www.4linux.com.br
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
51
half_md4
52
53
Journal backup :
inode blocks
Linux Essentials
29
36
Sat Jun 18 18:34:53 2011
256
Pgina 25
4Linux www.4linux.com.br
Cheque a alterao:
Parties REISERFS:
Parties EXT2/EXT3/EXT4:
Parties NTFS:
Parties Fat16/Fat32:
Pgina 26
Linux Essentials
4Linux www.4linux.com.br
Parties JFS:
Parties XFS:
Parties SWAP:
# mount
Linux Essentials
Pgina 27
4Linux www.4linux.com.br
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.
Caso no obtenha resposta porque a partio no tem um arquivo de sistema. determine o ponto de montagem:
Pgina 28
Linux Essentials
4Linux www.4linux.com.br
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 Essentials
Pgina 29
4Linux www.4linux.com.br
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
Pgina 30
Linux Essentials
4Linux www.4linux.com.br
# df
Desmontando:
Como usurio aluno abra outro terminale acesse o diretrio /media/cdrom:
$ cd / media / cdrom
Linux Essentials
Pgina 31
4Linux www.4linux.com.br
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:
c : diretrio atual (a partir do qual o processo foi inicializado).
e : arquivo sendo executado pelo processo.
r : diretrio raiz do sistema (ponto de inicializao do processo).
Pgina 32
Linux Essentials
4Linux www.4linux.com.br
Verifique que o usurio aluno est acessando o diretrio e por isso no possvel
desmontar o volume, aps descobrir, mate o processo:
Linux Essentials
Pgina 33
455
Linux Essentials
www.4linux.com.br
Contedo
14 Gerenciamento Avanado de Parties
Gerenciamento Avanado de
Parties
14.1 Introduo Terica
O gerenciamento de parties no Linux envolve tanto desempenho com segurana,
quando manipulamos parties comuns e criptografadas. Neste cenrio de infraestrutura, o Administrador tem acesso a diversas ferramentas para converso de
sistema de arquivos sem perdas de dados e configurao de mapeamentos manuas
e automaticos de parties comuns e criptografadas.
# mkdir / teste
4Linux www.4linux.com.br
# cp -r / etc /* / teste
Desmontar a partio:
# umount / teste
Montando a partio:
# mount
Desmontar dispositivo:
# umount / teste
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
CentOS:
# mount
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
# mount
# df -h
Desmontar dispositivo:
# umount / teste
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
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
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:
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
Ou:
# swapon -s
< file system > < mount point > < type > < options > < dump > < pass >
proc
/ dev / sda1
/ boot
/ dev / sda2
/ dev / sda5
/ dev / sda6
Pgina 8
/ proc
proc defaults 0
ext3
ext3
/ usr
/ var
defaults
ext3
ext3
defaults
defaults
0
0
2
2
Linux Essentials
4Linux www.4linux.com.br
# exemplo UUID :
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;
Aceita os valores de 0 a 2 e informa que dever ser realizada a checagem
(pass) de integridade do sistema de arquivos. O valor zero desativa a funcionalidade, o valor 1 deve ser especificado apenas para o / e o valor 2 deve ser
especificado para quaisquer outros sistemas de arquivos.
Sendo assim, o fstab armazena as informaes dos dispositivos comumente acessados, como as parties do sistema, discos removveis e alguns dispositivos USB.
Entretanto no mostra informao alguma a respeito de quais dispositivos esto
montados neste exato momento.
Linux Essentials
Pgina 9
4Linux www.4linux.com.br
# free
Mais detalhes:
# free -m
Informaes de swap:
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
# modprobe dm_crypt
# modprobe dm_mod
# lsmod | grep dm
dm_crypt
dm_mod
Linux Essentials
9196
46122
0
1 dm_crypt
Pgina 11
4Linux www.4linux.com.br
2
3
WARNING !
==================================================
6
7
Are you sure ? ( Type uppercase yes ) : YES ( Digite YES em mai scula )
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
aes_i586
aes_generic
6816
25738
0
1 aes_i586
Use o comando blkid para identificar o nossa partio como um dispositivo do tipo
crypt_LUKS.
/ dev / sdc1 : UUID = " fd0e5672 - b321 -4724 -8285 -3 a30962af074 " TYPE = "
crypto_LUKS "
Com a opo luksOpen nosso dispositivo /dev/sdc1 foi mapeado para /dev/mapper/cryptfs, e a partir de agora s pode ser acessado por por este caminho!
Linux Essentials
Pgina 13
4Linux www.4linux.com.br
cryptfs
/ dev / sdc1
none
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
/ mnt / seguro
ext4
defaults
Testando o funcionamento:
Para testar o funcionamento sem precisar reiniciar desmonte a partio:
Toda vez que o computador for iniciado ou este disco montando em outras
maquinas, sera solicitada a frase secreta!
Linux Essentials
Pgina 15
4Linux www.4linux.com.br
A ativao automtica durante o boot em um servidor no uma boa pratica de administrao, pois acaba atrasando a inicializao do servios. A soluo alterar a
opo NO para YES da diretiva CRYPTDISKS_ENABLE no arquivo /etc/default/cryptdisks:
CRYPTDISKS_ENABLE = NO
Para ativar de forma manual s usar o comando cryptdisks_start e o nome mapeado da partio. Mas ainda no vai funcionar porque como desativamos o cryptdisks
do boot, o modulo dm_crypt no sera carregado. Este mdulo responsvel em
fazer o mapeamento de dispositivos criptografados.
Vamos resolver este problema ativando o mdulo no boot com o comando:
# cryptdisks_start cryptfs
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
Esta pratica pode ser feita atravs do pacote autofs5, usado para controlar a operao dos "daemons"de auto montagem. Os "daemons"de auto montagem automaticamente montam sistemas de arquivos quando eles so usados e desmontados
aps um perodo de inatividade.
Para comear instale o pacote autofs5
/ dexter / montagem
-- timeout =10
Linux Essentials
:/ dev / sdc1
Pgina 17
4Linux www.4linux.com.br
# df -Th
/ mnt
-- timeout =10
Pgina 18
Linux Essentials
4Linux www.4linux.com.br
seguro
/ mnt / seguro
ext4
noauto ,
Para testar acesse o diretrio /mnt/seguro e use o comando df para listar a partio
montada de forma automtica:
# cd / mnt / seguro
# df -Th
Linux Essentials
Pgina 19
455
Linux Essentials
www.4linux.com.br
Contedo
Inicializao do Sistema
15.1.1 System V . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Inicializao do Sistema
15.1 Introduo Terica
Para que possamos entender a base de funcionamento do sistema de inicializao
padro System V, precisamos antes conhecer um tipo especial de arquivos: os links.
Um Link serve para termos o mesmo arquivo em diversos lugares, sem a necessidade de cpias. Isso faz com que voc tenha a maior quantidade de arquivos em
vrios lugares e ocupando menos bits de metadados ao sistema de arquivos. O diretrio /etc/init.d por exemplo, guarda os scripts para iniciar, e parar determinados
servios. E dentro do diretrio rcN.d (a letra N correspondente ao nvel de inicializao, veremos a seguir) que ficam os links dos scripts que esto dentro de /etc/init.d
para poder determinar qual script ser executado primeiro.
Os links nos permitem fazer modificaes nos arquivos originais, assim no precisamos alterar o arquivo original e sua cpia.
15.1.1 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
4Linux www.4linux.com.br
# runlevel
N 2
Onde:
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
# init 3
# runlevel
2 3
# init 1
# runlevel
1 S
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
No caso de um desses links ter seu nome iniciando pela letra K esse servio ser
finalizado quando o runlevel correspondente for iniciado. Dessa forma se existir um
link chamado K01atd no runlevel 0 (/etc/rc0.d), quando mudarmos para esse runlevel, se o atd estiver ativo ele ser o um dos primeiros a ser desativado.
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
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
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
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
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
- Required-Stop: Defini scripts que devem ser parados, antes de descarregar este
script.
- Should-Start: Define que ir rodar s depois que os servios declarados forem
inicializados.
- 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 .
Linux Essentials
Pgina 9
15
4Linux www.4linux.com.br
$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.
# insserv - rv ssh
# insserv -v ssh
insserv : enable service ../ init . d / cron -> / etc / init . d /../ rc2 . d /
S18ssh
insserv : enable service ../ init . d / cron -> / etc / init . d /../ rc3 . d /
S18ssh
insserv : enable service ../ init . d / cron -> / etc / init . d /../ rc4 . d /
S18ssh
insserv : enable service ../ init . d / cron -> / etc / init . d /../ rc5 . d /
S18ssh
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
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,
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
Linux Essentials
Pgina 11
11
12
13
14
4Linux www.4linux.com.br
Onde:
# 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.
# chkconfig -- list
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
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:
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:
Linux Essentials
Pgina 13
4Linux www.4linux.com.br
# chkconfig sshd on
Ou:
Pgina 14
Linux Essentials
455
Linux Essentials
www.4linux.com.br
Contedo
Introduo ao Upstart
0.1
Introduo ao Upstart . . . . . . . . . . . . . . . . . . . . . . . . . . . .
0.2
Instalao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
0.3
0.4
0.5
Introduo ao Systemd
0.6
Introduo ao Systemd . . . . . . . . . . . . . . . . . . . . . . . . . . .
0.7
Instalao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
0.8
0.9
Unidade de Servios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4Linux www.4linux.com.br
0.2 Instalao
0.2 Instalao
A instalao dispensada dependendo da distribuio. Em distribuies baseadas
em Debian possvel usar o comando:
Linux Essentials
Pgina 3
4Linux www.4linux.com.br
# ls -l / etc / init
# This task is run whenever the Control - Alt - Delete key combination
is
# pressed .
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
exec / sbin / shutdown -r now " Control - Alt - Delete pressed "
Em nosso exemplo temos o arquivo que configura o evento CTRL + AL +DEL. Acompanhe a seguir a descrio das linhas:
start on: Define em qual evento o arquivo sera lido. Em nosso exemplo toda vez
que for acionado a combinao de teclas CTRL + ALT +DEL, a prxima linha
sera lida;
exec: Indica qual comando ou script sera executado.
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
# initctl list
rc stop / waiting
10
11
12
13
14
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
15
16
17
18
19
20
21
# !/ bin / bash
while true
sleep 3
done
Linux Essentials
Pgina 7
4Linux www.4linux.com.br
2
3
respawn
# start date
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
# status date
# stop date
Agora para testar a opo respawn inicie o script date e use o comando kill -9
PID do mesmo. Ao usar comando status o script volta a se executado de forma
automtica.
# start date
# kill -9 6317
# status date
Linux Essentials
Pgina 9
0.7 Instalao
4Linux www.4linux.com.br
e restaurao do estado do sistema, alem de manter montagem e pontos de automount sobre demanda.
Quais so as vantagens em migrar para o Systemd?
0.7 Instalao
A instalao dispensada dependendo da distribuio. Em distribuies baseadas
em Debian possvel usar o comando:
i386:
http://fedora.c3sl.ufpr.br/linux/releases/15/Fedora/i386/iso/Fedora-15-
i386-DVD.iso
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
x86_64: http://fedora.c3sl.ufpr.br/linux/releases/15/Fedora/x86_64/iso/Fedora15-x86_64-DVD.iso
# ls -l / sbin / init
lrwxrwxrwx . 1 root root 14 Abr 24 16:52 / sbin / init -> ../ bin / systemd
O sistema cria um link de nome init para carregar durante a inicializao, mas na
verdade que carregado o systemd.
Linux Essentials
Pgina 11
4Linux www.4linux.com.br
A unidade de servio refere-se a um daemon (servio) que o systemd pode controlar, incluindo scripts controlados nativamente pelo Systemd e aqueles controlados
por Systemd via scripts Sysvinit. Por exemplo, o Systemd controla o daemon ntpd
nativamente atravs da unidade de servio ntpd.service.
Vamos analisar o contedo do arquivo para aprender um pouco mais
[ Unit ]
5
6
[ Service ]
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
7
8
O que temos de novo o estado (running) a data e hora que foi ativado e o PID
Para reiniciar o servio use a opo restart:
Linux Essentials
Pgina 13
4Linux www.4linux.com.br
3
4
ln -s / lib / systemd / system / ntpd . service / etc / systemd / system / multi user . target . wants / ntpd . service
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
Isso quer dizer que quando um servio ativado ele ganha um link simblico no diretrio /etc/systemd/system/multi-user.target.wants/, como foi o caso do ntpd.service!
Como definir o runlevel padro no Systemd?
Quando usamos o SysVinit a alterao era feita atravs do arquivo /etc/inittab, mas
no Systemd essa alterao feita atravs de arquivos .target e links. Exemplo:
Para exibir qual o runlevel padro do sistema use o comando:
2
3
/ etc / systemd / system / default . target -> / lib / systemd / system / runlevel5 .
target
O comando retorna que o runlevel padro aponta para o arquivo default.traget, que
aponta para o graphical.target que corresponde ao modo grfico no Systemd.
2
3
Para definir o modo texto como padro de inicializao, o default.target deve ser um
link apontando para o arquivo multi-user.target. Veja no exemplo:
# ln -sf / lib / systemd / system / multi - user . target / etc / systemd / system /
default . target
Ainda possvel verificar qual o modo de inicializao esta definido (grfico ou texto)
atravs do comando systemctl com a opo list-units
Linux Essentials
Pgina 15
4Linux www.4linux.com.br
Multi - User
Agora toda vez que a maquina for iniciada o modo de execuo sera em texto e
multiusurio. Para alternar para o modo grfico use a opo isolate atravs do
comando systemctl.
2
3
[ Unit ]
5
6
[ Service ]
9
10
[ Install ]
11
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
2
3
3
4
9
10
1497 sleep 3
Linux Essentials
Pgina 17
0.12 Troubleshooting
4Linux www.4linux.com.br
0.12 Troubleshooting
Como posso montar parties sobre demanda no Systemd?
O System no precisa utilizar o arquivo /etc/fstab para realizar montagem, e sim as
unidades que recebem a extenso .mount para montagem fixas e .automount para
montagem sobre demanda. Em nossa pratica precisamos de uma nova partio ou
disco. Em nosso exemplo sera usado uma nova HD /dev/sdb.
Crie uma nova partio atravs do comando fdisk, aplique o sistema de arquivos
EXT4 e crie um ponto de montagem na raiz
Roteiro:
# mkdir / dados
2
3
[ Unit ]
5
6
[ Mount ]
Pgina 18
Linux Essentials
4Linux www.4linux.com.br
Where =/ dados
Type = ext4
10
Options = noatime
As opes para montagem so bem simples de entender. What define qual dispositivo sera montado, Where o ponto de montagem, Type o sistema de arquivos e
Options opo de montagem.
Agora crie o arquivo automount
2
3
[ Unit ]
5
6
[ Automount ]
Where =/ dados
Linux Essentials
Pgina 19
4Linux www.4linux.com.br
Where : / dados
Where : / dados
O detalhe que ele esta ativo mais aguardando algum acesso no diretrio /dados.
Use o comando cd /dados para montar de forma automtica, e use a opo status
para verificar a diferena.
# cd / dados
Where : / dados
Pgina 20
Linux Essentials
455
Linux Essentials
www.4linux.com.br
Contedo
Servidor X
17 Servidor X
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17.7 Xnest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . 15
Acessibilidade
17
19
17.10ORCA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Captulo 17
Servidor X
4Linux www.4linux.com.br
# X - configure
O arquivo de configurao do servidor X dividido em sees e cada uma diz respeito configurao de um determinado pedao do sistema como um todo. A estrutura bsica de um desses arquivos a seguinte:
ServerLayout
InputDevice (mouse)
Screen
InputDevice (keyboard)
Files
Modules
Pgina 4
Linux Essentials
4Linux www.4linux.com.br
InputDevice (mouse)
InputDevice (keyboard)
Screen
Monitor
Displays
Ou seja, o arquivo composto de vrias sees que definem qual ser o comportamento dos dispositivos como teclado, mouse, monitor e placa de vdeo e algumas
outras, que definem recursos que o servido X ir utilizar, como os mdulos que sero
carregados e os arquivos de fontes, por exemplo.
Alm das sees separadas que definem o comportamento de algum componente
extra, h outras como ServerLayout e Screen que definem como o conjunto de
recursos ir operar.
Linux Essentials
Pgina 5
4Linux www.4linux.com.br
Ao contrrio dos sistemas da Apple e Microsoft, que possuem apenas uma nica
aparncia bsica, e que de controle delas, nos sistemas GNU/Linux voc livre
para escolher qual o gerenciador de janelas que ir utilizar.
Pgina 6
Linux Essentials
4Linux www.4linux.com.br
Linux Essentials
Pgina 7
17.7 Xnest
4Linux www.4linux.com.br
17.7 Xnest
Um Xnest uma instncia do servidor X que pode ser utilizada para receber alguma sada grfica que tenha sido redirecionada a ela utilizando a varivel DISPLAY. Pode ser utilizada tambm para receber um DM solicitado via XDMCP.
# wininfo
# xdpyinfo
Qual o comando que me traz informaes sobre as cores e opes do Servidor X? R: xwininfo
Pare o servidor x:
Pgina 8
Linux Essentials
4Linux www.4linux.com.br
17.7 Xnest
# dexconf
# X - configure
Linux Essentials
Pgina 9
17.7 Xnest
4Linux www.4linux.com.br
EndSection
9
10
11
12
13
EndSection
14
15
16
17
18
HorizSync 28 -51
19
VertRefresh43 -60
20
EndSection
21
22
23
24
25
26
DefaultDepth 24
27
28
Depth 1
Pgina 10
Linux Essentials
4Linux www.4linux.com.br
29
Modes " 1024 x768 " " 800 x600 " " 640 x480 "
30
EndSubSection
17.7 Xnest
31
32
33
Depth 24
34
Modes " 1024 x768 " " 800 x600 " " 640 x480 "
35
EndSubSection
36
EndSection
37
38
39
40
41
42
43
EndSection
Leitura sugerida para mais informaes a respeito desse arquivo e suas opes de configurao e parmetros: man xorg.conf
Realizadas as alteraes, vamos fazer um novo teste para ver se o servidor consegue
carregar a parte grfica.
Teste as configuraes:
Linux Essentials
Pgina 11
17.7 Xnest
# X
Ou :
# startx
4Linux www.4linux.com.br
# startx
3) Para o prximo teste, vamos instalar outro cliente grfico que muito utilizado, o
KDE:
# startx
Pgina 12
Linux Essentials
4Linux www.4linux.com.br
17.7 Xnest
Note que foi utilizado o mesmo comando para iniciar tanto WindowMaker
quanto o KDE: o startx. Isso acontece porque ao instalarmos o KDE ele se
definiu como sendo o WM padro do sistema, mas isso pode ser alterado.
Podemos editar o arquivo /root/.xinitrc para escolhermos qual cliente grfico ser
iniciado quando o usurio root utilizar o comando startx. Essa configurao
vlida apenas para o usurio root, pois alteramos o xinitrc da home do root:
# vi / root /. xinitrc
Para que alterao seja vlida para qualquer usurio, devemos editar o arquivo de
configurao global:
Lembrando que uma configurao local, ou seja, o arquivo pessoal do usurio, prevalece sobre o global, caso o usurio especifique um. Vamos instalar o pacote do
XFCE:
Linux Essentials
Pgina 13
17.7 Xnest
4Linux www.4linux.com.br
Sero feitas algumas perguntas sobre qual ser o seu Display Manager Default, o
kdm ou xdm? Escolha sempre o kdm, pois dessa maneira toda vez que o seu
sistema iniciar, ele vai ativar automaticamente o kdm no terminal 7, por padro.
Para iniciar o kdm igual. Lembrando que os demais display managers devem
estar parados!
Se quiser mudar o seu Display Manager padro, basta editar o seguinte arquivo:
1
2
Pgina 14
Linux Essentials
4Linux www.4linux.com.br
17.7 Xnest
Utilizaremos o Display Manager gdm para fazer esse servio. Vamos editar o arquivo onde ativaremos o XDMCP para o gdm3:
(servidor)Localize o bloco [security] e [xdmcp], utilizado para configurao desse protocolo. Ao encontrar esse bloco, ative o XDMCP inserindo Enable=True:
Linux Essentials
Pgina 15
17.7 Xnest
[ security ]
DisallowTCP = false
4Linux www.4linux.com.br
3
4
[ xdmcp ]
Enable = true
# xhost +192.168.0.1
# xhost -192.168.0.1
(cliente)Em outra mquina exporte seu DISPLAY, ou seja, sua sada grfica:
# gedit
Pgina 16
Linux Essentials
4Linux www.4linux.com.br
17.7 Xnest
(cliente)til seria poder usar o recurso do servidor em uma mquina mais antiga:
# X - query 192.168.0.1 :1
Linux Essentials
Pgina 17
Acessibilidade
18
4Linux www.4linux.com.br
17.9 GOK ( GNOME ONSCREEN KEYBOARD) - teclado virtual do Gnome
Dispositivos de entrada alternativos: por meio destes, possvel controlar o computador com outros meios que no sejam um teclado padro ou um mouse. Os exemplos
incluem teclados menores ou maiores, dispositivos controlados pelos olhos e pela
respirao.
Linux Essentials
Pgina 19
ou
# gok
Caso o suporte para tecnologias assistivas no estiver liberado no seu sistema quando
comear, esta tela aparecer:
Na tela principal:
Por meio das teclas dessa janela, podem ser ativadas vrias opes:
Pgina 20
Linux Essentials
4Linux www.4linux.com.br
17.10 ORCA
17.10 ORCA
Orca um leitor de tela. Tudo o que est na tela ele l e diz atravs do alto-falante
do computador.
O mesmo que o Orca, ou seja, prov uma interface em modo texto para usurios que
tem problemas visuais que usado como leitor de tela.)
Linux Essentials
Pgina 21