Você está na página 1de 61

APOSTILA

DE
GNU/LINUX

1. O GNU / LINUX

X
Escrito por Richard Stallman
(sobre a relao entre o Linux e o projeto GNU)
Texto traduzido por Erik Kohler e retirado do site: http://www.cipsga.org.br
O projeto GNU comeou h 12 anos atrs com o objetivo de desenvolver um
sistema operacional Unix-like totalmente livre. "Livre" se refere liberdade, e no ao
preo; significa que voc est livre para executar, distribuir, estudar, mudar e
melhorar o software.
Um sistema Unix-like consiste de muitos programas diferentes. Ns achamos alguns
componentes j disponveis como softwares livres -- por exemplo, X Window e TeX.
Obtemos outros componentes ajudando a convencer seus desenvolvedores a
tornarem eles livres -- por exemplo, o Berkeley network utilities. Outros componentes
ns escrevemos especificamente para o GNU -- por exemplo, GNU Emacs, o
compilador GNU C, o GNU C library, Bash e Ghostscript. Os componentes desta
ltima categoria so "software GNU". O sistema GNU consiste de todas as trs
categorias reunidas.
O projeto GNU no somente desenvolvimento e distribuio de alguns softwares
livres teis. O corao do projeto GNU uma idia: que software deve ser livre, e
que a liberdade do usurio vale a pena ser defendida. Se as pessoas tm liberdade
mas no a apreciam conscientemente, no iro mant-la por muito tempo. Se
queremos que a liberdade dure, precisamos chamar a ateno das pessoas para a
liberdade que elas tm em programas livres.
O mtodo do projeto GNU que programas livres e a idia da liberdade dos
usurios ajudam-se mutuamente. Ns desenvolvemos software GNU, e conforme as
pessoas encontrem programas GNU ou o sistema GNU e comecem a us-los, elas
tambm pensam sobre a filosofia GNU. O software mostra que a idia funciona na
prtica. Algumas destas pessoas acabam concordando com a idia, e ento

AlexCamachoCastilho1

APOSTILA
DE
GNU/LINUX
escrevem mais programas livres. Ento, o software carrega a idia, dissemina a
idia e cresce da idia.
Em 1992, ns encontramos ou criamos todos os componentes principais do sistema
exceto o kernel, que ns estvamos escrevendo. (Este kernel consiste do
microkernel Mach mais o GNU HURD. Atualmente ele est funcionando, mas no
est preparado para os usurios. Uma verso alfa dever estar pronta em breve.).
Ento o kernel do Linux tornou-se disponvel. Linux um kernel livre escrito por
Linus Torvalds compatvel com o Unix. Ele no foi escrito para o projeto GNU, mas o
Linux e o quase completo sistema GNU fizeram uma combinao til. Esta
combinao disponibilizou todos os principais componentes de um sistema
operacional compatvel com o Unix, e, com algum trabalho, as pessoas o tornaram
um sistema funcional. Foi um sistema GNU variante, baseado no kernel do Linux.
Ironicamente, a popularidade destes sistemas desmerece nosso mtodo de
comunicar a idia GNU para as pessoas que usam GNU. Estes sistemas so
praticamentes iguais ao sistema GNU -- a principal diferena a escolha do kernel.
Porm as pessoas normalmente os chamam de "sistemas Linux (Linux systems)". A
primeira impresso que se tem a de que um "sistema Linux" soa como algo
completamente diferente de "sistema GNU", e isto que a maioria dos usurios
pensam que acontece.
A maioria das introdues para o "sistema Linux" reconhece o papel desempenhado
pelos componentes de software GNU. Mas elas no dizem que o sistema como um
todo uma variante do sistema GNU que o projeto GNU vem compondo por uma
dcada. Elas no dizem que o objetivo de um sistema Unix-like livre como este veio
do projeto GNU. Da a maioria dos usurios no saber estas coisas.
Como os seres humanos tendem a corrigir as suas primeiras impresses menos do
que as informaes subsequentes tentam dizer-lhes, estes usurios que depois
aprendem sobre a relao entre estes sistemas e o projeto GNU ainda geralmente o
subestima.
Isto faz com que muitos usurios se identifiquem como uma comunidade separada
de "usurios de Linux", distinta da comunidade de usurios GNU. Eles usam todos
os softwares GNU; de fato, eles usam quase todo o sistema GNU; mas eles no
pensam neles como usurios GNU, e freqentemente no pensam que a filosofia
GNU est relacionada a eles.
Isto leva a outros problemas tambm -- mesmo dificultando cooperao com a
manuteno de programas. Normalmente quando usurios mudam um programa
GNU para fazer ele funcionar melhor em um sistema especfico, eles mandam a
mudana para o mantenedor do programa; ento eles trabalham com o mantenedor

AlexCamachoCastilho2

APOSTILA
DE
GNU/LINUX
explicando a mudana, perguntando por ela, e s vezes reescrevendo-a para manter
a coerncia e mantenebilidade do pacote, para ter o patch instalado.
Mas as pessoas que pensam nelas como "usurios Linux" tendem a lanar uma
verso "Linux-only" do programa GNU, e consideram o trabalho terminado. Ns
queremos cada e todos os programas GNU que funcionem "out of the box" em
sistemas baseados em Linux; mas se os usurios no ajudarem, este objetivo se
torna muito mais difcil de atingir.
Como deve o projeto GNU lidar com este problema? O que ns devemos fazer
agora para disseminar a idia de que a liberdade para os usurios de computador
importante?
Ns devemos continuar a falar sobre a liberdade de compartilhar e modificar
software -- e ensinar outros usurios o valor destas liberdades. Se ns nos
beneficiamos por ter um sistema operacional livre, faz sentido para ns pensar em
preservar estas liberdades por um longo tempo. Se ns nos beneficiamos por ter
uma variedade de software livres, faz sentido pensar sobre encorajar outras pessoas
a escrever mais software livre, em vez de software proprietrio.
Ns no devemos aceitar a idia de duas comunidades separadas para GNU e
Linux. Ao contrrio, devemos disseminar o entendimento de que "sistemas Linux"
so variantes do sistema GNU, e que os usurios destes sistemas so tanto
usurios GNU como usurios Linux (usurios do kernel do Linux). Usurios que tm
conhecimento disto iro naturalmente dar uma olhada na filosofia GNU que fez estes
sistemas existirem.
Eu escrevi este artigo como um meio de fazer isto. Outra maneira usar os termos
"sistema GNU baseado em Linux (Linux-based GNU system)" ou "sistema
GNU/Linux (GNU/Linux system)", em vez de "sistema Linux", quando voc escreve
sobre ou menciona este sistema.
Copyright 1996 Richard Stallman
Cpia e redistribuio permitida sem royalty contanto que esta notificao esteja
preservada.

AlexCamachoCastilho3

APOSTILA
DE
GNU/LINUX

2. O DEBIAN

O Projeto Debian uma associao de indivduos que tm como causa comum criar
um sistema operacional livre. O sistema operacional chamado Debian GNU/Linux,
ou simplesmente Debian.
Os sistemas Debian atualmente usam o kernel Linux. O Linux uma pea de
software criada inicialmente por Linus Torvalds com a ajuda de milhares de
programadores espalhados por todo o mundo.
Claro que o que todos queremos so aplicativos: programas que nos ajudam a
conseguir fazer o que desejamos fazer, desde edio de documentos at a
administrao de negcios, passando por jogos e desenvolvimento de mais
software. O Debian vem com mais de 15490 pacotes (softwares pr-compilados e
empacotados em um formato amigvel, o que faz com que sejam de fcil instalao
em sua mquina) todos eles so livres.
mais ou menos como uma torre: Na base dela est o kernel. Sobre ele todas as
ferramentas bsicas e acima esto todos os outros softwares que voc executa em
seu computador. No topo da torre est o Debian organizando e arrumando
cuidadosamente as coisas, de modo que tudo funcione bem quando todos esses
componentes trabalham em conjunto.

AlexCamachoCastilho4

APOSTILA
DE
GNU/LINUX

3. SISTEMAS DE ARQUIVOS E PARTICIONAMENTOS


Debian, vamos ver aqui um pouco sobre particionamento de discos. Esse artigo
servir no s para a instalao do Debian, mas para qualquer outro sistema
operacional.
Quando voc compra um HD, ele no vem preparado para receber dados. Para isso,
ele precisa ser particionado. Ao contrrio do que algumas pessoas pensam, no
necessrio particionar o disco apenas quando se deseja ter mais de uma unidade
em um disco s. Mesmo que voc queira apenas uma, necessrio criar uma
partio.
3.1 O que uma partio?
Uma partio um espao do disco que se destina a receber um sistema de
arquivos - ou, em um caso particular que veremos adiante, outras parties.
Em sistemas DOS/Windows, cada partio recebe uma letra de unidade (C:, D:, etc).
Em linux o esquema diferente. As parties so nomeadas da seguinte forma:
nome do dispositivo + nmero de partio.
Assim, a primeira partio do primeiro disco IDE (/dev/hda) se chamar /dev/hda1, a
segunda /dev/hda2 e assim por diante.
Cada disco deve ter no mnimo uma e no mximo 16 parties.
3.2 Tipos de parties.
Existem trs tipos possveis de parties: primria, estendida e lgica.
Parties primrias
Este tipo de partio contm um sistema de arquivos. Em um disco deve haver no
mnimo uma e no mximo quatro parties primrias. Se existirem quatro parties
primrias, nenhuma outra partio poder existir neste disco. As parties primrias
so nomeadas da seguinte forma:
/dev/hda1
/dev/hda2
/dev/hda3
/dev/hda4
Uma dessas parties deve estar marcada como ativa, ou seja, marcada como
bootvel para que a BIOS possa iniciar a mquina por ela.
Partio estendida

AlexCamachoCastilho5

APOSTILA
DE
GNU/LINUX
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/hda1 (Primria)
/dev/hda2 (Primria)
/dev/hda3 (Estendida)
Parties lgicas
Tambm chamadas de unidades lgicas, as parties lgicas residem dentro da
partio estendida. Podem haver de uma a 12 parties lgicas em um disco. As
parties lgicas so numeradas de 5 at 16. Em um disco contendo duas parties
primrias, a partio estendida e 3 parties lgicas, o esquema seria o seguinte:
/dev/hda1 (Primria)
/dev/hda2 (Primria)
/dev/hda3 (Estendida)
/dev/hda5 (Lgica)
/dev/hda6 (Lgica)
/dev/hda7 (Lgica)
Note que, neste caso, no h uma partio nomeada como /dev/hda4, pois os
nmeros de 1 a 4 so reservados para parties primrias e para a partio
estendida.
Perceba que, mesmo sendo 16 o numero mximo de parties em um disco, apenas
15 podero receber sistemas de arquivos, j que uma delas ser estendida.
Diferenas entre DOS/Windows e GNU/Linux
Em sistemas DOS/Windows, as parties sero enxergadas pelo sistema
operacional como letras de unidade. As parties primrias e lgicas recebem, cada
uma, uma letra de unidade iniciando com C (C:). A partio estendida no recebe
uma letra de unidade j que no vai receber um sistema de arquivos e no vai ser
usada para guardar dados e, por isso, no acessvel diretamente pelo usurio.
No linux a coisa bem diferente. O usurio quem controla o local onde sero
montadas as parties do seu disco. Isso pode parecer um tanto estranho para
quem est acostumado com o esquema do Windows mas, se voc parar pra pensar,
faz bem mais sentido.

AlexCamachoCastilho6

APOSTILA
DE
GNU/LINUX
Para efeito de exemplificao, vamos imaginar um disco IDE, com 6 parties. A
primeira, primria, onde est instalado o Windows, a segunda, tambm primria,
uma partio windows adicional. A terceira a partio estendida, que contm trs
parties lgicas: uma onde ser instalado o linux, a outra usada para swap e a
terceira uma partio linux adicional para guardar dados do usurio.
Dessa maneira:

/dev/hda1 (Primria - Windows - sistema)


/dev/hda2 (Primria - windows - adicional)
/dev/hda3 (Estendida)
/dev/hda5 (Lgica - Linux - sistema de arquivos raiz)
/dev/hda6 (Lgica - Linux - swap)
/dev/hda7 (Lgica - Linux adicional)

No windows ns poderiamos enxergar apenas duas destas parties, a primeira e a


segunda - j que o windows no reconhece parties linux - e elas seriam
apresentadas como as unidades C: e D:. Ao acessar ou gravar um arquivo no disco,
voc ter que saber em qual das duas unidades o arquivo dever ficar.
J no linux voc poder enxergar todas as parties e poder montar trs delas (a
estendida e a swap no podem ser montadas) no seu sistema de arquivos raiz (/). A
situao seria mais ou menos a seguinte:
A quarta partio, /dev/hda5 (lgica), que onde o linux est instalado, ser
montada como o sistema de arquivos raiz (/), e dentro desse sistema de arquivos
voc ir criar pontos de montagem, que so diretrios vazios, destinados apenas
para montar um outro sistema de arquivos. interessante ressaltar que o diretrio
que ser usado como ponto de montagem no precisa, obrigatoriamente, estar
vazio, mas a partir do momento que uma partio for montada nele, seus arquivos
sero escondidos e s voltaro a ser acessveis quando ela for desmontada.
Usando este exemplo de particionamento, vamos criar trs pontos de montagem:
/mnt/win (onde ser montada /dev/hda1, partio primria onde o windows
est instalado)
/mnt/winad (para montar /dev/hda2, partio windows adicional)
/mnt/musicas (onde ser montada /dev/hda7, partio linux adicional, neste
caso usada para guardar msicas)
A partio swap no pode ser montada, pois um espao usado pelo kernel para
memria virtual e no com dados volteis.
Deste modo, ao invs de ter que se lembrar de letras de unidade, que no so nem
um pouco descritivas, voc poder usar o nome que quiser e acessar todos os
sistemas de arquivos como se fossem diretrios dentro do seu sistema de arquivos

AlexCamachoCastilho7

APOSTILA
DE
GNU/LINUX
raiz.
Com a exploso da quantidade de dados
a ser armazenada e os discos rgidos e
sistemas RAID tornando-se cada vez
maiores, as desvantagens do velho
sistema de arquivos ext2 ficam cada vez
mais evidentes. A verificao de
integridade dos dados nesse sistema de
arquivos toma um tempo que parece no
ter fim. E se houver a necessidade de
reparos, l se vo horas de trabalho. No
bastasse isso, h os limites de tamanho
de arquivos e parties - e os arquivos
se fragmentam com o tempo, o que
prejudica bastante o desempenho do
sistema. Tudo isso no deveria ser de
admirar: o ext2 foi desenvolvido ainda na
pr-histria do Linux, como um substituto
para o sistema de arquivos do Minix,
este vindo da era dos disquetes. Essa
a razo pela qual a estrutura do ext2 no

mais
capaz
de
atender
s
necessidades dos centros de dados
modernos.

Os arquivos esto organizados em uma estrutura hierrquica que so os diretrios.


Existe um diretrio que o ponto em que todos os diretrios se originam. Este o
diretrio raiz (root), representado por uma barra ( / ). A partir do diretrio raiz temos
outros diretrios do sistema.
Cada diretrio possui uma finalidade especfica. Em uma instalao tpica temos:

AlexCamachoCastilho8

APOSTILA
DE
GNU/LINUX
Raiz (root) ou /
/bin

Contm os arquivos binrios dos comandos essenciais para


todos os usurios.

/boot

Arquivos estticos do carregador de inicializao.

/dev

Arquivos de dispositivos.

/etc

Arquivos de configurao de sistema especficos do servidor.

/home

Diretrio que agrupa os sub-diretrios iniciais de cada usurio.

/initrd

Relativo aos procedimentos de inicializao do sistema.

/lib
/lost+found
/misc
/opt

Bibliotecas compartilhadas essenciais e mdulos do kernel.


Mantm arquivos perdidos por uma falha de operao (ex.:
queda de energia eltrica).
Diversos
Pacotes opcionais de aplicativos

/proc

Sistema de arquivo virtual que contm informaes de


processos do kernel.

/root

Diretrio inicial do usurio root.

/sbin

Binrios do sistema exclusivos do root.

/tmp

Diretrios reservado para que todos os usurios armazenem


seus arquivos temporrios.

/usr

Contm a segunda mais importante hierarquia do sistema;

/var

Contm dados variveis como log do sistema por exemplo.

Dentro de cada diretrio e sub-diretrios existem dois diretrios especiais. O


diretrio . e o diretrio ..
O diretrio . indica o prprio diretrio em que o usurio j se encontra.
O diretrio .. leva ao diretrio imediatamente anterior.

AlexCamachoCastilho9

APOSTILA
DE
GNU/LINUX

4. INSTALANDO O DEBIAN
O primeiro passo adquirir uma mdia de instalao bsica do Debian
(http://www.debian.org.br) e alterar na BIOS do computador a ordem de boot,
colocando o drive de CD-ROM para bootar como o primeiro perifrico, inserir a mdia
no drive e reiniciar o computador.

Esta a primeira tela mostrada logo aps iniciar o computador com a mdia de instalao
bsica do Debian

Nesta tela so mostrados os mtodos de boot disponveis. Voc pode escolher, por exemplo,
qual srie de kernel usar (2.4 ou 2.6) e alguns outros parmetros que podem ser usados. Para
entrar nesta tela voc deve apertar 'F1' na tela de boot e depois 'F3'.

AlexCamachoCastilho10

APOSTILA
DE
GNU/LINUX

Aqui voc escolhe qual linguagem vai ser usada no processo de instalao. Como vocs
podem ver, o nosso portugus est disponvel.

Escolha o layout do teclado que voc est usando. O instalador te oferece a opo mais
comum, baseada na sua escolha de linguagem mas, obviamente, voc pode mudar se desejar.

AlexCamachoCastilho11

APOSTILA
DE
GNU/LINUX

Esta parte no interativa. Est aqui por motivos apenas de ilustrao.

Neste passo o instalador carrega na memria os componentes necessrios ao seu


funcionamento. Tambm uma parte no-interativa.

AlexCamachoCastilho12

APOSTILA
DE
GNU/LINUX

Ele verifica esta possibilidade e configura a rede sem necessidade de interao do usurio.

Defina um nome para a sua mquina. Pode ser qualquer nome, fica a seu gosto.

AlexCamachoCastilho13

APOSTILA
DE
GNU/LINUX

Nome do domnio a qual sua mquina pertence. Para uma mquina que no est conectada a
nenhuma rede local, esse nome pode ser qualquer.

Essa a ferramenta de particionador do Debian, muito simples e intuitiva.

AlexCamachoCastilho14

APOSTILA
DE
GNU/LINUX

Nesta parte voc escolhe se quer particionar manualmente seu disco ou deixar o instalador
cuidar disso pra voc. Se voc escolher o mtodo automtico, o instalador ira apagar todos os
dados e parties do seu HD e criar uma partio /, uma swap e uma /home.

Escolha o espao livre e de 'Enter' para criar neste espao uma nova partio.

AlexCamachoCastilho15

APOSTILA
DE
GNU/LINUX

Escolha o menu Criar uma nova partio e de 'Enter'.

Escolha o tamanho da nova partio. Pode ser usado um nmero decimal seguido de uma
grandeza (GB, MB) ou uma porcentagem.

AlexCamachoCastilho16

APOSTILA
DE
GNU/LINUX

Escolha se a partio deve ser primria ou lgica.

Esta opo importante para ganho de desempenho, isto , uma vez criada uma partio no
incio do espao disponvel e esta partio seja por exemplo a /boot, onde ficam alocados os
primeiros arquivos lidos pelo computador, neste caso o prprio kernel, o HD localizar com
mais agilidade, dando assim o incio ao sistema.

AlexCamachoCastilho17

APOSTILA
DE
GNU/LINUX

Escolha seu sistema de arquivos preferido. Note a presena dos sistemas XFS e JFS. Eles
esto disponveis apenas na instalao com kernel 2.6 (opo de boot 'linux26').

Aqui so mostrados os dados da partio. Selecione qualquer uma das opes e d 'Enter'
para editar.

AlexCamachoCastilho18

APOSTILA
DE
GNU/LINUX

Criao de uma partio para ser usada como espao de troca (swap).

Escolha no menu Finalizar a configurao da partio e de 'Enter'.

AlexCamachoCastilho19

APOSTILA
DE
GNU/LINUX

A tabela de parties alterada ser gravada no disco.

Aqui sero instalados os pacotes bsicos para o funcionamento de um sistema debian


mnimo. Esta parte no interativa e pode demorar um pouco.

AlexCamachoCastilho20

APOSTILA
DE
GNU/LINUX

O gerenciador de boot padro no debian o GRUB. Voc deve decidir nesta parte por installo ou no na MBR (Primeiro registro do HD). Geralmente a melhor opo. S use outra se
souber o que est fazendo.

Instalao do GRUB na MBR. No interativa.

AlexCamachoCastilho21

APOSTILA
DE
GNU/LINUX

A instalao est finalizada, remova o CD-ROM da bandeja.

Tela de boas vindas do configurador debian (base-config).

AlexCamachoCastilho22

APOSTILA
DE
GNU/LINUX

A melhor opo sempre usar o relgio da prpria BIOS

Como o Brasil tem mais de um fuso horrio, diversas opes so oferecidas. Escolha a sua,
no difcil!

AlexCamachoCastilho23

APOSTILA
DE
GNU/LINUX

Escolha uma boa senha para seu super usurio (root). Cuidado para no usar uma senha
'fraca', porm algo que se recorde, o ideal sempre juntar nmeros e letras.

uma boa idia criar um usurio para executar funes cotidianas e deixar o root apenas para
a administrao do sistema.

AlexCamachoCastilho24

APOSTILA
DE
GNU/LINUX

Digite seu nome completo. Ex.: Alex Camacho Castilho

Digite um nome de usurio. Ex.: alex (Todas as letras devero ser em caixa baixa).

Digite uma senha, obviamente diferente da senha do seu super-usurio 'root'

AlexCamachoCastilho25

APOSTILA
DE
GNU/LINUX

Neste campo deve-se inserir o nome do host na rede, servidor ou desktop.

Escolha o que voc deseja instalar no seu Debian. 'Ambiente Desktop' por exemplo, contm
GNOME e KDE e, felizmente, os dois esto no primeiro CD. Se voc escolher seleo manual
de pacotes, a prxima tela ser do aptitude, mas isso no necessrio, a no ser que voc
saiba realmente o que est fazendo.

AlexCamachoCastilho26

APOSTILA
DE
GNU/LINUX

Tela de instalao via apt-get das opes selecionadas.

Aqui comea a configurao da parte grfica do debian (XFree86 4.3.0). Escolha a melhor
opo de placa de vdeo.

AlexCamachoCastilho27

APOSTILA
DE
GNU/LINUX

Sistema de plug and play para o dispositivo de mouse.

Sistema de plug and play para monitores.

AlexCamachoCastilho28

APOSTILA
DE
GNU/LINUX

Caso no possua um monitor LCD ou no seja um notebook, selecione a opo No.

Medium uma boa opo para quem conhece as caractersticas de seu monitor.

AlexCamachoCastilho29

APOSTILA
DE
GNU/LINUX

Escolha a maior relao resoluo/freqncia que seu monitor suporta. Cuidado, se seu
monitor for mais antigo, ele pode at queimar se voc selecionar valores mais altos que o
suportado. Se seu monitor mais moderno ele no vai queimar, vai mostrar algo como 'Out of
Sync'ou 'Fora de sincronia'.

Aviso sobre o envio de senhas como texto plano em programas como ww-imapd e ipopd.

AlexCamachoCastilho30

APOSTILA
DE
GNU/LINUX

A verso do libc-client do Debian no suporta Maildirs por padro.

Configurao do servidor de emails. No caso do debian sarge, o padro o Exim 4.

AlexCamachoCastilho31

APOSTILA
DE
GNU/LINUX

Configurao finalizada. Agora so dar OK e se logar no sistema recm instalado. Se voc


optou por instalar um ambiente desktop, aps dar OK, voc ser direcionado para a tela do
GDM - gerenciador de login grfico do GNOME.

AlexCamachoCastilho32

APOSTILA
DE
GNU/LINUX

5. COMANDOS BSICOS E AVANADOS (SHELL)

5.1 Comandos para manipulao de diretrios.


ls
Lista os arquivos de um diretrio.
ls [opes] [caminho/arquivo] [caminho1/arquivo1] ...
onde:
caminho/arquivo
Diretrio/arquivo que ser listado.
caminho1/arquivo1
Outro Diretrio/arquivo que ser listado. Podem ser feitas vrias listagens de uma
s vez.
cd
Entra em um diretrio. Voc precisa ter a permisso de execuo para entrar no
diretrio.
cd [diretorio]
onde:
diretorio - diretrio que deseja entrar.
pwd
Mostra o nome e caminho do diretrio atual.
Voc pode usar o comando pwd para verificar em qual diretrio se encontra (caso
seu aviso de comandos no mostre isso).

AlexCamachoCastilho33

APOSTILA
DE
GNU/LINUX
mkdir
Cria um diretrio no sistema. Um diretrio usado para armazenar arquivos de um
determinado tipo. O diretrio pode ser entendido como uma pasta onde voc
guarda seus papeis (arquivos). Como uma pessoa organizada, voc utilizar uma
pasta para guardar cada tipo de documento, da mesma forma voc pode criar um
diretrio vendas para guardar seus arquivos relacionados com vendas naquele
local.
mkdir [opes] [caminho/diretrio] [caminho1/diretrio1]
onde:
caminho
Caminho onde o diretrio ser criado.
diretrio
Nome do diretrio que ser criado.
rmdir
Remove um diretrio do sistema. Este comando faz exatamente o contrrio do
mkdir. O diretrio a ser removido deve estar vazio e voc deve ter permisso de
gravao para remove-lo.
rmdir [caminho/diretrio] [caminho1/diretrio1]
onde:
caminho
Caminho do diretrio que ser removido
diretrio
Nome do diretrio que ser removido
necessrio que esteja um nvel acima do diretrio(s) que ser(o) removido(s).
Para remover diretrios que contenham arquivos, use o comando rm com a opo
-rf
Por exemplo, para remover o diretrio /tmp/teste voc deve estar no diretrio tmp e
executar o comando rmdir teste.
5.2 Comandos para manipulao de arquivos.
cat
Mostra o contedo de um arquivo binrio ou texto.
cat [opes] [diretrio/arquivo] [diretrio1/arquivo1]
diretrio/arquivo
Localizao do arquivo que deseja visualizar o contedo

AlexCamachoCastilho34

APOSTILA
DE
GNU/LINUX
rm
Apaga arquivos. Tambm pode ser usado para apagar diretrios e sub-diretrios
vazios ou que contenham arquivos.
rm [opes][caminho][arquivo/diretrio] [caminho1][arquivo1/diretrio1]
onde:
caminho
Localizao do arquivo que deseja apagar. Se omitido, assume que o arquivo
esteja no diretrio atual.
arquivo/diretrio
Arquivo que ser apagado.
cp
Copia arquivos.
cp [opes] [origem] [destino]
onde:
origem
Arquivo que ser copiado. Podem ser especificados mais de um arquivo para ser
copiado usando curingas, ou seja, *
destino
O caminho ou nome de arquivo onde ser copiado. Se o destino for um diretrio, os
arquivos de origem sero copiados para dentro do diretrio.
mv
Move ou renomeia arquivos e diretrios. O processo semelhante ao do comando
cp mas o arquivo de origem apagado aps o trmino da cpia.
mv [opes] [origem] [destino]
Onde:
origem
Arquivo/diretrio de origem.
destino
Local onde ser movido ou novo nome do arquivo/diretrio.

AlexCamachoCastilho35

APOSTILA
DE
GNU/LINUX
5.3 Comandos diversos.
clear
Limpa a tecla e posiciona o cursor no canto superior esquerdo do vdeo
clear
date
Permite ver/modificar a Data e Hora do Sistema. Voc precisa estar como usurio
root para modificar a data e hora.
date MesDiaHoraMinuto[AnoSegundos]
Onde:
MesDiaHoraMinuto[AnoSegundos]
So respectivamente os nmeros do ms, dia, hora e minutos sem espaos.
Opcionalmente voc pode especificar o Ano (com 2 ou 4 digitos) e os Segundos.
+[FORMATO]
Define o formato da listagem que ser usada pelo comando date. Os seguintes
formatos so os mais usados:
%d - Dia do Ms (00-31)
%d - Ms do Ano (00-12)
%y - Ano (dois dgitos)
%Y - Ano (quatro dgitos)
%H - Hora (00-24)
%I - Hora (00-12)
%M - Minuto (00-59)
%j - Dia do ano (1-366)
%p - AM/PM (til se utilizado com %d)
%r - Formato de 12 horas completo (hh:mm:ss AM/PM).
%T - Formato de 24 horas completo (hh:mm:ss)
%w - Dia da semana (0-6)
Para ver a data atual digite: date
Se quiser mudar a Data para 25/12 e a hora para 08:15 digite: date 12250815
df
Mostra o espao livre/ocupado de cada partio.
df [opes]

AlexCamachoCastilho36

APOSTILA
DE
GNU/LINUX
ln
Cria links para arquivos e diretrios no sistema. O link um mecanismo que faz
referncia a outro arquivo ou diretrio em outra localizao do disco. O link em
sistemas GNU/Linux faz referncia reais ao arquivo/diretrio podendo ser feita
cpia do link (ser copiado o arquivo alvo), entrar no diretrio (caso o link faa
referncia a um diretrio), etc.
ln [opes] [origem] [link]
Onde:
origem
Diretrio ou arquivo de onde ser feito o link.
link
Nome do link que ser criado.
du
Mostra o espao ocupado por arquivos e sub-diretrios do diretrio atual.
du [opes]
find
Procura por arquivos/diretrios no disco. find pode procurar arquivos atravs de sua
data de modificao, tamanho, etc atravs do uso de opes. find, ao contrrio de
outros programas, usa opes longas atravs de um "-".
find [diretrio] [opes/expreso]
Onde:
diretrio
Inicia a procura neste diretrio, percorrendo seu sub-diretrios.
free
Mostra detalhes sobre a utilizao da memria RAM do sistema.
free [opes]
grep
Procura por um texto dentro de um arquivo(s) ou no dispositivo de entrada padro.
grep [expresso] [arquivo] [opes]
Onde:
expresso

AlexCamachoCastilho37

APOSTILA
DE
GNU/LINUX
grep
palavra ou frase que ser procurada no texto. Se tiver mais de 2 palavras voc
deve identifica-la com aspas "" caso contrrio o grep assumir que a segunda
palavra o arquivo!
arquivo
Arquivo onde ser feita a procura.
more
Permite fazer a paginao de arquivos ou da entrada padro. O comando more
pode ser usado como comando para leitura de arquivos que ocupem mais de uma
tela. Quando toda a tela ocupada, o more efetua uma pausa e permite que voc
pressione Enter para continuar avanando o nmero de pginas. Para sair do more
pressione q.
more [arquivo]
Onde: arquivo o arquivo que ser paginado
O more somente permite avanar o contedo do arquivo linha por linha.
Para visualizar diretamente arquivos texto compactados pelo gzip .gz use o
comando zmore.
Exemplos: more /etc/passwd, cat /etc/passwd|more.
less
Permite fazer a paginao de arquivos ou da entrada padro. O comando less pode
ser usado como comando para leitura de arquivos que ocupem mais de uma tela.
Quando toda a tela ocupada, o less efetua uma pausa (semelhante ao more) e
permite que voc pressione Seta para Cima e Seta para Baixo ou PgUP/PgDown
para fazer o rolamento da pgina. Para sair do less pressione q.
less [arquivo]
Onde: arquivo o arquivo que ser paginado
Para visualizar diretamente arquivos texto compactados pelo utilitrio gzip (arquivos
.gz), use o comando zless.
Exemplos: less /etc/passwd, cat /etc/passwd|less
touch
Muda a data e hora que um arquivo foi criado. Tambm pode ser usado para criar
arquivos vazios. Caso o touch seja usado com arquivos que no existam, por
padro ele criar estes arquivos.
touch [opes] [arquivos]
Onde:

AlexCamachoCastilho38

APOSTILA
DE
GNU/LINUX
touch
arquivos
Arquivos que tero sua data/hora modificados.
uptime
Mostra o tempo de execuo do sistema desde que o computador foi ligado.
uptime
dmesg
Mostra as mensagens de inicializao do kernel. So mostradas as mensagens da
ltima inicializao do sistema.
dmesg | less
echo
Mostra mensagens. Este comando til na construo de scripts para mostrar
mensagens na tela para o usurio acompanhar sua execuo.
echo [mensagem]
A opo -n pode ser usada para que no ocorra o salto de linha aps a mensagem
ser mostrada.
su
Permite o usurio mudar sua identidade para outro usurio sem fazer o logout. til
para executar um programa ou comando como root sem ter que abandonar a seo
atual.
su [usurio]
Onde: usurio o nome do usurio que deseja usar para acessar o sistema. Se
no digitado, assumido o usurio root.
Ser pedida a senha do superusurio para autenticao. Digite exit quando desejar
retornar a identificao de usurio anterior.
uname
Retorna o nome e verso do kernel.
uname

AlexCamachoCastilho39

APOSTILA
DE
GNU/LINUX
reboot
Reinicia o computador.
reboot
shutdown
Desliga/reinicia o computador imediatamente ou aps determinado tempo
(programvel) de forma segura. Todos os usurios do sistema so avisados que o
computador ser desligado . Este comando somente pode ser executado pelo
usurio root ou usurio autorizado no arquivo /etc/shutdown.allow.
shutdown [opes] [hora] [mensagem]
hora
Momento que o computador ser desligado. Voc pode usar HH:MM para definir a
hora e minuto, MM para definir minutos, +SS para definir aps quantos segundos,
ou now para imediatamente (equivalente a +0).
O shutdown criar o arquivo /etc/nologin para no permitir que novos usurios
faam login no sistema (com excesso do root). Este arquivo removido caso a
execuo do shutdown seja cancelada (opo -c) ou aps o sistema ser reiniciado.
mensagem
Mensagem que ser mostrada a todos os usurios alertando sobre o
reinicio/desligamento do sistema.
5.4 Comandos de rede.
who
Mostra quem est atualmente conectado no computador. Este comando lista os
nomes de usurios que esto conectados em seu computador, o terminal e data da
conexo.
who [opes] ou apenas w
ifconfig
Mostra e configura os endereos IPs de um computador assim como sua mscara.
Ifconfig [opes]
route
Mostra, adiciona e remove uma rota para uma ou mais redes.
Existe uma gama muito grande de comandos de rede para utilizao no GNU/Linux,

AlexCamachoCastilho40

APOSTILA
DE
GNU/LINUX
veremos as opes no decorrer da apostila.
5.5 Comandos de sistema
ps
Lista os processos correntes.
kill
Mata processos travados ou indesejveis.

AlexCamachoCastilho41

APOSTILA
DE
GNU/LINUX

6. GERENCIAMENTO DE USURIOS

Este captulo traz comandos usados para manipulao de conta de usurios e


grupos em sistemas GNU/Linux. Entre os assuntos descritos aqui esto adicionar
usurios ao sistema, adicionar grupos, incluir usurios existente em novos grupos,
etc.
Como voc j deve saber, o GNU/Linux um sistema multi-usurio. Ento claro
que no s pode existir um usurio usando o sistema. Uma primeira coisa que
possamos dizer que o GNU/Linux no pode de alguma maneira ser usado sem
estar sendo um usurio. O usurio root o administrador do sistema, e ele quem
voc vai usar primeiro para criar outros usurios depois (a no ser que voc tenha
criado um usurio comum durante a instalao do seu GNU/Linux).
Como visto anteriormente, o root um usurio especial, ele pode fazer TUDO em
seu sistema, no importa o que acontecer, ele faz, ao contrrio dos usurios
comuns, que tm restries. Se voc j instalou algum Linux, voc ver que a
primeira coisa que voc ir fazer antes de usar o sistema se logar como root, ou
seja, preencher aquele campo login: com o usurio root.
6.1 Comandos para manipulao de contas.
adduser
Adiciona um usurio ou grupo no sistema. Por padro, quando um novo usurio
adicionado, criado um grupo com o mesmo nome do usurio. Ser criado um
diretrio home com o nome do usurio e este receber uma identificao. A
identificao do usurio (UID) escolhida ser a primeira disponvel no sistema
especificada de acordo com a faixa de UIDS de usurios permitidas no arquivo de
configurao /etc/adduser.conf. Este o arquivo que contm os padres para a
criao de novos usurios no sistema.
adduser [opes] [usurio/grupo]
Onde:
usurio/grupo
Nome do novo usurio que ser adicionado ao sistema

AlexCamachoCastilho42

APOSTILA
DE
GNU/LINUX
addgroup
Adiciona um novo grupo de usurios no sistema. As opes usadas so as mesmas
do adduser.
addgroup [usurio/grupo] [opes]
passwd
Muda a senha do usurio ou grupo. Um usurio somente pode alterar a senha de
sua conta, mas o superusurio (root) pode alterar a senha de qualquer conta de
usurio, inclusive a data de validade da conta, etc. Os donos de grupos tambm
podem alterar a senha do grupo com este comando.
Os dados da conta do usurio como nome, endereo, telefone, tambm podem ser
alterados com este comando.
passwd [usurio/grupo] [opes]
Onde:
usurio
Nome do usurio/grupo que ter sua senha alterada.
userdel
Apaga um usurio do sistema. Quando usado, este comando apaga todos os
dados da conta especificado dos arquivos de contas do sistema.
userdel [-r] [usurio]
Onde:
-r
Apaga tambm o diretrio HOME do usurio.
OBS: Note que uma conta de usurio no poder ser removida caso ele estiver no
sistema, pois os programas podem precisar ter acesso aos dados dele (como UID,
GID) no /etc/passwd.
groupdel
Apaga um grupo do sistema. Quando usado, este comando apaga todos os
dados do grupo especificado dos arquivos de contas do sistema.
groupdel [grupo]
Tenha certeza que no existem arquivos/diretrios criados com o grupo apagado
atravs do comando find.

AlexCamachoCastilho43

APOSTILA
DE
GNU/LINUX
groupdel
OBS: Voc no pode remover o grupo primrio de um usurio. Remova o usurio
primeiro.
6.2 Adicionando um novo grupo a um usurio.
Para incluir um novo grupo a um usurio, e assim permitir que ele acesse os
arquivos/diretrios que pertencem quele grupo, voc deve estar como root e editar
o arquivo /etc/group. Este arquivo possui o seguinte formato:
NomedoGrupo:senha:GID:usurios
Onde:
NomedoGrupo
o nome daquele grupo de usurios.
senha
Senha para ter acesso ao grupo. Caso esteja utilizando senhas ocultas para grupos,
as senhas estaro em /etc/gshadow.
GID
Identificao numrica do grupo de usurio.
usuarios
Lista de usurios que tambm fazem parte daquele grupo. Caso exista mais de um
nome de usurio, eles devem estar separados por vrgula.
Deste modo para acrescentar o usurio "joao" ao grupo audio para ter acesso aos
dispositivos de som do GNU/Linux, acrescente o nome no final da linha:
"audio:x:100:joao". Pronto, basta digitar logout e entrar novamente com seu nome e
senha, voc estar fazendo parte do grupo audio (configura digitando groups ou id).
Outros nomes de usurios podem ser acrescentados ao grupo audio bastando
separar os nomes com vrgula.
id
Mostra a identificao atual do usurio, grupo primrio e outros grupos que
pertence.
id [opes] [usurio]
Onde:
usurio
o usurio que desejamos ver a identificao, grupos primrios e complementares.

AlexCamachoCastilho44

APOSTILA
DE
GNU/LINUX
logname
Mostra seu login.
logname
groups
Mostra os grupos que o usurio pertence.
logname
6.3 Alterando as permies e o proprietrio de arquivos.
chown
Altera o proprietrio de um ou mais arquivos ou diretrios.
chown [opes] novoproprietario:novogrupo arquivo
Exemplos:
# chown marcio contas.txt
Marcio passa a ser o novo dono do arquivo, porm com o grupo anteriormente
definido.
# chown alex *
Todos os arquivos e sub-diretrios contidos no diretrio passam a ser de alex
# chown marcio:alex contas.txt
O arquivo contas.txt passa a pertencer ao usurio mrcio e ao grupo alex
# chown :marcio contas.txt
O arquivo passa a pertencer ao grupo marcio, porm o proprietrio no alterado.
# chown alex: contas.txt
Alex passa a ser novo proprietrio do arquivo. O grupo, que foi omitido aps o :
passa a ser o mesmo do usurio alex.
# chown -R marcio:marcio teste
Caso teste seja um diretrio, ir mudar seu proprietrio e grupo e o proprietrio de
todos os arquivos e diretrios em teste, repetindo a ao no contedo de cada
subdiretrio.

AlexCamachoCastilho45

APOSTILA
DE
GNU/LINUX
chmod
Altera as permisses de um ou mais arquivos e diretrios
chmod [opes] modo arquivo
Entre as propriedades de um arquivo tais como nome, prroprietrio ou grupo,
encontramos um conjunto de permisses que determinam quais so os modos de
acesso permitidos aos usurios sobre aquele arquivo. Os modos de acesso
determinam se um usurio pode ler, gravar ou executar um determinado arquivo. No
caso de diretrios, determina se um usurio pode ler, gravar ou acessar um diretrio.
Quando um usurio vai acessar um determinado arquivo, ele classificado dentro
de uma das trs categorias, usurio, grupo ou outros. As categorias so
representadas conforme a tabela a seguir:
Simbolo

Categoria

Usurio ou proprietrio

Grupo

Outros usurios

A sada do comando ls -l informa (entre outras) as seguintes propriedades dos


arquivos e diretrios.
drwxr-xr-x

vendedor

vendas

metas

-rw-r--r--

vendedor

vendas

planilha.txt

-rwxr-x---

vendedor

vendas

programa

A coluna mais a esquerda mostra o tipo de arquivo.

drwxr-xr-x

vendedor

vendas

metas

-rw-r--r--

vendedor

vendas

planilha.txt

AlexCamachoCastilho46

APOSTILA
DE
GNU/LINUX
Os tipos de arquivos so:
Simbolo

Tipo

Arquivo comum

Arquivo especial de bloco (dispositivos)

Arquivo especial de caracter (dispositivos)

Diretrio

Pipe (FIFO) (desenvolvedores)

Link simblico

Socket (desenvolvedores)

Os modos de acesso so representados conforme tabela abaixo:


Simbolo

Tipo

Leitura

Escrita

Execuo ou acesso

Altera as permisses de execuo em arquivos somente se


em algum campo (usurio, grupo ou outros) j existir pelo
menos um x.
Em diretrios, acrescenta a permisso de acesso.

Altera a permisso de execuo, redefinindo a identidade do


usurio que executa o programa como sendo a do
proprietrio ou grupo do arquivo. Esta operao conhecida
por set user id.
Para arquivos, altera a forma como o programa
armazenado na rea de swap para aumentar a velocidade
de acesso. Em sistemas modernos como o GNU/Linux no
faz mais sentipo. Esta marcao conhecida como stick bit.
Para diretrios retira a capacidade de apagar arquivos
dentro dele, porm permite o direito de escrita.

AlexCamachoCastilho47

APOSTILA
DE
GNU/LINUX
Os modos de acesso so definidos para cada tipo de usurio: (UGO) usurio, grupo
e outros.
Tipo de usurio

Posies dos simbolos

U
Usurio
2, 3 e 4 posies

-rwxr-x---

vendedor

vendas

programa

G
Grupo
5, 6 e 7 posies

-rwxr-x---

vendedor

vendas

programa

O
-rwxr-x--Outros
8, 9 e 10 posies

vendedor

vendas

programa

Para alterar o modo de acesso de um arquivo utilizamos o comando chmod que


pode se opes simblicas ou por nmeros.
chmod simblico
Digite chmod seguido pelo usurio, o tipo de operao desejada, o tipo de
permisso desejada e a especificao do arquivo. No pode haver espaos entre as
partes de usurio, operao e permisses.
chmod ugoa+-=rwxXstugo arquivo
Usurios
U

Usurio

Grupo

Outros

Todos
Operaes

Adicionar s permisses j existentes

Retirar das permisses j existentes

Substituir as permisses j existentes

AlexCamachoCastilho48

APOSTILA
DE
GNU/LINUX
chmod numrico
As permisses de acesso de um arquivo so armazenadas como nmeros. Desta
forma existe uma representao numrica que permite definir as permisses dos
arquivos sem a utilizao dos smbolos.
Cada permisso representada por um nmero e a soma destes nmeros
representa as permisses que foram definidas, conforme a tabela abaixo:
Especial

Usurio

Grupo

Outros

s=4

r=4

r=4

r=4

s=2

w=2

w=2

w=2

t=1

x=1

x=1

x=1

Tabela simplificada:
Usurio

Grupo

Outros

Assim, a permisso -rwxrwxrwx em um arquivo igual a 777. As permisses


especiais s e t so iniciadas por um digito adicional que sempre o promeiro. A
permisso rwsrwsrwt representada por 7777.

AlexCamachoCastilho49

APOSTILA
DE
GNU/LINUX

7. O TODO PODEROSO APT-GET

7.1 O que o apt-get?


O apt-get o principal instalador de distribuies Debian e derivados do Debian
como Knoppix, Ubuntu, Kurumin, etc e o tipo de empacotamento usado por essas
distribuies so baseadas em .DEB (Debian). Existe ainda outras distribuies
baseadas em empacotamente .RPM (RedHat Package Manager) que portaram o
apt-get para seus respectivos sistemas operacionais, assim como o Conectiva Linux,
RedHat, Fedora entre outros.
Sempre que precisarmos inserir pacotes, ou remov-los iremos utilizar essa
ferramenta to poderosa e singular, inexistente em outros sistemas operacionais que
no GNUs.
Frequentemente falaremos sobre pacotes ao inves de programas quando o assunto
instalao, isso devido a idia de empacotamento que a forma que cada
distribuio o organiza or programas que a contituem.
Antes de continuarmos o assunto apt-get, cabe uma breve explicao sobre as
opes de distribuies debian que podemos utilizar, so elas:
Stable - A distribuio stable contm a ltima distribuio oficialmente lanada pela
Debian.
Essa a verso de produo do Debian, ela que recomendada primeiramente.
A distribuio stable do Debian GNU/Linux est atualmente na verso 3.1r1 e seu
codinome sarge. Ela foi lanada em 20 de Dezembro de 2005.
Testing - A distribuio testing contm pacotes que no foram aceitos numa verso
stable ainda, mas eles j esto na fila para serem aceitos. A principal vantagem de
usar essa distribuio que ela tem verses mais novas dos softwares.
A distribuio testing atual chama-se etch.
Unstable - na distribuio unstable que o desenvolvimento ininterrupto do
Debian ocorre. Geralmente, os usurios dessa distribuio so os prprios

AlexCamachoCastilho50

APOSTILA
DE
GNU/LINUX
desenvolvedores e pessoas que gostam de emoes fortes.
A distribuio unstable atual chama-se sid.
7.2 Os repositrios.
Muito bem, agora que sabemos quais as verses disponveis para nosso sistema
operacional, decidiremos por uma delas, nesse caso vamos escolher a verso
testing, pois como podemos ver, os pacotes so mais atualizados do que a verso
stable e j passaram um dia pela verso unstable, sendo corrigido os erros de
dependencias e segurana, desta forma, podemos dizer que hoje a melhor
distribuio debian a ser utilizada a propria testing.
Vamos conhecer agora os arquvivos utilizados para que o apt-get funcione,
lembrando que esses arquivos s podem ser editados atravs do usurio root.
/etc/apt/source.list
Neste arquivo contm as informaes dos repositrios de pacotes de instalao,
particularmente o arquivo mais importante do programa apt-get.
Editaremos o arquivo com o comando vi, logo: # vi /etc/apt/source.list

Vamos editar o arquivo para que fique exatamente como mostrado na imagem
acima, nota-se que no arquivo esto disponveis todos os repositrios de instalao
via apt-get existentes no Debian, porm, apenas a verso testing est
descomentada (sem # antes do endereo do repositrio).

AlexCamachoCastilho51

APOSTILA
DE
GNU/LINUX
/etc/apt/apt-.conf.d/70debconf
Outro arquivo utilizado pelo apt-get o 70debconf em algumas distribuies debian
e em algumas similares apt.conf.
Esse arquivo s deve ser alterado se souber exatamente o que estar fazendo, uma
vez que j vem pr-configurado, sendo desnecessria uma ao sobre ele.
Para visualizarmos utilizaremos o comando cat, logo: # cat /etc/apt/apt.conf.d/70debconf
Ele trar a seguinte imagem:

Neste passo encerramos a configurao do apt para instalarmos e atualizarmos os


sistema para que fique operacional nos moldes que queremos.
7.3 Principais comandos do apt-get.
A seguir, veremos os principais comandos do apt-get e como utilizarmos para
instalar nosso sistema operacional para que fique funcional.
apt-get update
Este comando atualizar a base de dados do repositrio em questo, retendo todas
as informaes de todos os pacotes contidos dentro de uma determinada verso,
no nosso caso a testing.
Comando: # apt-get update

AlexCamachoCastilho52

APOSTILA
DE
GNU/LINUX
apt-get dist-upgrade
Este comando atualiza toda a distribuio debian para a verso selecionada no
repositrio apt.
Comando: apt-get dist-upgrade
apt-cache
Este comando serve para duas funes principais, verificar a existncia do pacote e
trazer insformaes sobre um determinado pacote.
Comando1: apt-cache search hdparm
Comando2: apt-cache show hdparm
apt-get install
Este comando serve para instalar ou reinstalar e ainda contm a opo de corrigir
possveis falhas de arquivos corrompidos na instalao de pacotes debian.
Comando1: apt-get install hdparm
Comando2: apt-get install hdparm reinstall
Comando3: apt-get install -f
apt-get remove
Este comando serve para remover um ou mais pacotes debian tendo a opo de
remov-lo por completo, inclusive arquivos de configurao e descrio de remoo
do cache.
Comando 1: apt-get remove hdparm
Comando2: apt-get remove hdparm --purge
Existem muitas outras opes de uso do apt-get, porm, as comummentes utilizadas
por um administrador de um servidor so as exibidas nesse tpico, praticamente
nunca sero utilizados outros tipos de comandos apt.

AlexCamachoCastilho53

APOSTILA
DE
GNU/LINUX

8. LILO E GRUB
8.1 LILO

O LILO (Linux Loader) sem dvida o gerenciador de partida padro para quem
deseja iniciar o GNU/Linux atravs do disco rgido, porm est um tanto quanto
ultrapassado, sendo substituido pelo GRUB (veremos a seguir). Ele permite
selecionar qual sistema operacional ser iniciado (caso voc possua mais de um) e
funciona tanto em discos rgidos IDE como SCSI.
A seleo de qual sistema operacional e a passagem de parmetros ao kernel pode
ser feita automaticamente ou usando o aviso de boot: do LILO.
Criando o arquivo de configurao do LILO
Os dados para a criao do novo setor de boot que armazenar o gerenciador de
partida so lidos do arquivo /etc/lilo.conf Este arquivo pode ser criado em qualquer
editor de textos. Normalmente ele criado durante a instalao de sua distribuio
GNU/Linux mas por algum motivo pode ser preciso modifica-lo ou personaliza-lo
(para incluir novos sistemas operacionais, mensagens, alterar o tempo de espera
para a partida automtica, etc).
O arquivo /etc/lilo.conf dividido em duas sees: Geral e Imagens. A seo Geral
vem no inicio do arquivo e contm opes que sero usadas na inicializao do Lilo
e parmetros que sero passados ao kernel. A seo Imagens contm opes
especificas identificando qual a partio que contm o sistema operacional, como
ser montado inicialmente o sistema de arquivos, tabela de partio, o arquivo que
ser carregado na memria para inicializar o sistema, etc. Abaixo um modelo do
arquivo /etc/lilo.conf para sistemas que s possuem o GNU/Linux instalado:
boot=/dev/hda1
compact
install=text
map=/boot/map
vga=normal
delay=20
lba32

AlexCamachoCastilho54

APOSTILA
DE
GNU/LINUX
image=/vmlinuz
root=/dev/hda1
label=Linux
read-only
Para criar um novo gerenciador de partida atravs do arquivo /etc/lilo.conf , execute
o comando lilo.
No exemplo acima, o gerenciador de partida ser instalado em /dev/hda1, utilizar
um setor de boot compacto (compact), modo de vdeo VGA normal (80x25),
esperar 2 segundos antes de processar automaticamente a primeira seo image=
e carregar o kernel /vmlinux de /dev/hda1.
Para mostrar o aviso de boot:, voc dever ligar as teclas Caps Lock ou Scrool lock
na partida ou pressionar a tecla Shift durante os dois segundos de pausa. Outro
mtodo incluir a opo prompt na seo global para que o aviso de boot: seja
mostrado automaticamente aps carregar o Lilo.
Abaixo uma configurao para computadores com mais de um sistema operacional
(Usando GNU/Linux e Windows):
boot=/dev/hda1
compact
lba32
install=menu
map=/boot/map
vga=normal
delay=20
prompt
image=/vmlinuz
root=/dev/hda1
label=linux
read-only
other=/dev/hda2
table=/dev/hda
label=windows
O exemplo acima idntico ao anterior, o que foi acrescentado foi a opo prompt
na seo geral (para que seja mostrado imediatamente o aviso de boot: no momento
em que o LILO for carregado), e includa uma imagem de disco windows localizado
em /dev/hda2. No momento da inicializao mostrada a mensagem boot: e caso
seja digitado windows e pressionado ENTER, o sistema iniciar o windows. Caso a

AlexCamachoCastilho55

APOSTILA
DE
GNU/LINUX
tecla Enter seja pressionada sem especificar a imagem, a primeira ser carregada
(neste caso o GNU/Linux).
Voc pode substituir a palavra GNU/Linux da opo label por o nmero 1 e windows
por 2, desta forma o nmero pode ser digitado para iniciar o sistema operacional.
Isto muito til para construir um menu usando a opo message.
A seo Geral vem do inicio do arquivo at a palavra delay=20. A partir do primeiro
aparecimento da palavra image, other ou range, tudo o que vier abaixo ser
interpretado como imagens de inicializao.
Por padro, a imagem carregada a especificada por default= ou a primeira que
aparece no arquivo (caso default= no seja especificado). Para carregar o outro
sistema (o windows), digite o nome da imagem de disco no aviso de boot:
(especificada em label=) que ser carregada. Voc tambm pode passar parmetros
manualmente ao kernel digitando o nome da imagem de disco e uma opo do
kernel ou atravs do arquivo /etc/lilo.conf.
O LILO pode inicializar o seguintes tipos de imagens:

Imagens do kernel de um arquivo. Normalmente usado para iniciar o


GNU/Linux pelo disco rgido e especificado pelo parmetro image=.
Imagens do kernel de um dispositivo de bloco (como um disquete). Neste
caso o nmero de setores a serem lidos devem ser especificados na forma
PRIMEIRO-LTIMO ou PRIMEIRO+NMERO de setores a serem lidos.
necessrio especificar o parmetro image= e range=, por exemplo:
image=/dev/fd0
range=1+512

Todas as opes do kernel podem ser usadas na inicializao por dispositivo.


O setor de boot de outro sistema operacional (como o DOS, OS/2, windows,
etc). O setor de partida armazenado junto com a tabela de partio no
arquivo /boot/map. necessrio especificar o parmetro OTHER=dispositivo
ou OTHER=arquivo e a inicializao atravs de um setor de partida possui
algumas opes especiais como o TABLE= (para especificar a tabela de
partio) e o MAP-DRIVE= (identificao da unidade de discos pelo sistema
operacional). Veja o exemplo desta configurao abaixo:
other=/dev/hda2
table=/dev/hda
label=DOS
map-drive=0x80
to = 0x81

AlexCamachoCastilho56

APOSTILA
DE
GNU/LINUX
map-drive=0x81
to = 0x80
Observaes:

Caso o gerenciador de partida seja instalado no MBR do disco rgido


(boot=/dev/hda), o setor de boot do antigo sistema operacional ser
substitudo, retire uma cpia do setor de boot para um disquete usando o
comando dd if=/dev/hda of=/floppy/mbr bs=512 count=1 no GNU/Linux para
salvar o setor de boot em um disquete e dd if=/floppy/mbr of=/dev/hda bs=446
count=1 para restaura-lo. No windows voc pode usar o comando fdisk /mbr
para criar um novo Master Boot Record.
Aps qualquer modificao no arquivo /etc/lilo.conf , o comando lilo dever
ser novamente executado para atualizar o setor de partida do disco rgido.
Isto tambm vlido caso o kernel seja atualizado ou a partio que contm a
imagem do kernel desfragmentada.
A limitao de 1024 cilindros do Lilo no existe mais a partir da verso 21.4.3
(recomendada, por conter muitas correes) e superiores.
A reinstalao, formatao de sistemas DOS e Windows pode substituir o
setor de partida do HD e assim o gerenciador de partida, tornando impossvel
a inicializao do GNU/Linux. Antes de reinstalar o DOS ou Windows,
verifique se possui um disquete de partida do GNU/Linux.
Para gerar um novo boot loader, coloque o disquete na unidade e aps o
aviso boot: ser mostrado, digite linux root=/dev/hda1 (no lugar de /dev/hda1
voc coloca a partio raiz do GNU/Linux), o sistema iniciar. Dentro do
GNU/Linux, digite o comando lilo para gerar um novo setor de partida.
Agora reinicie o computador, tudo voltar ao normal.

Um exemplo do arquivo de configurao lilo.conf


Abaixo um exemplo do arquivo /etc/lilo.conf que poder ser usado em instalaes
GNU/Linux com o windows.
boot=/dev/hda1
#Instala o LILO em /dev/hda1
compact
install=menu
map=/boot/map
message=/etc/lilo.message #mensagem que ser mostrada na tela
default=1
#Carrega a Imagem especificada por label=1 como padro
vga=normal
#usa o modo de video 80x25 ao iniciar o Linux
delay=20
#aguarda 2 segundos antes de iniciar a imagem padro
lba32
#permite quebrar o limite de 1024 cilindros na inicializao
prompt
#mostra o aviso de "boot:" logo que o LILO carregado
image=/vmlinuz

#especifica o arquivo que contm a primeira imagem

AlexCamachoCastilho57

APOSTILA
DE
GNU/LINUX
root=/dev/hda1 #partio onde a imagem acima esta localizada
label=1
#identificao da imagem de disco
read-only
#monta inicialmente como somente leitura
password=12345 #Usa a senha 12345
restricted
#somente quando iniciar com o parmetro single
other=/dev/hda2 #especifica outro sistema que ser carregado
table=/dev/hda #a tabela de partio dele est em /dev/hda
label=2
#identificao desta imagem de disco
password=12345 #pede a senha antes de iniciar este sistema
Voc pode usar o exemplo acima como base para construir sua prpria configurao
personalizada do /etc/lilo.conf mas no se esquea de modificar as tabelas de
parties para seu sistema.
Aps criar seu arquivo /etc/lilo.conf , execute o comando lilo e se tudo ocorrer bem, o
LILO ser instalado.
8.2 GRUB
Geralmente, o GRUB faz uso do arquivo /boot/grub/menu.lst para definir e carregar
sua configurao (um detalhe importante: dependendo da distribuio, o GRUB
pode usar outro diretrio e outro nome de arquivo, como grub.conf ou menu.conf).
Nele, a primeira coisa que chama a ateno sua forma de trabalhar com os discos
rgidos do computador. Ao invs de referenciar esses dispositivos como /dev/hda1,
/dev/hda2, etc, ele o faz atravs dos termos (hd0,0), (hd0,1) e assim por diante.
Observe a tabela abaixo para um melhor entendimento:
Padro

GRUB

/dev/hda1
/dev/hda2
/dev/hdb1
/dev/hdb2

(hd0,0)
(hd0,1)
(hd1,0)
(hd1,1)

O GRUB chama o HD principal do computador de hd0 (enquanto o GNU/Linux o


chama de hda). Um disco secundrio recebe o nome de hd1 (o GNU/Linux o chama
de hdb) e assim se segue. Para trabalhar com as parties do HD, o GRUB as
referencia atravs de um nmero inserido aps uma vrgula. Assim, a primeira
partio recebe o nmero 0 (zero) - hd0,0 -, segunda partio atribudo o nmero
1 - hd0,1 - e assim por diante. importante frisar que, nesse caso, o GRUB no faz
distino entre discos IDE e SCSI.

AlexCamachoCastilho58

APOSTILA
DE
GNU/LINUX
Agora que voc j sabe como o GRUB trata os discos da mquina, abaixo segue,
como exemplo, o contedo de um arquivo menu.lst:
default 0
timeout 5
title Debian GNU/Linux, kernel 2.6.8-2-686
root (hd0,1)
kernel /vmlinuz-2.6.8-2-686 root=/dev/hda4 ro
initrd /initrd.img-2.6.8-2-686
boot
title Windows XP
rootnoverify (hd0,0)
makeactive
chainloader + 1
A primeira linha - default 0 - indica ao GRUB qual sistema operacional inicializar
caso o usurio no faa nenhuma escolha. No exemplo, ele vai "bootar" o Debian
GNU/Linux, pois o nmero 0 faz referncia ao primeiro sistema listado no arquivo.
Caso o Windows XP tivesse que ser carregado por padro, bastaria mudar a linha
em questo para default 1, pois no arquivo esse sistema o segundo a ser listado
(note que o GRUB faz a listagem comeando em zero).
A linha preenchida com timeout 5 determina o tempo (em segundos) que o usurio
ter para escolher um sistema operacional para inicializar. Assim que o GRUB "entra
em ao", ele mostra na tela uma lista dos sistemas operacionais instalados. O
usurio poder escolher um alternando-os atravs das teclas de seta do teclado e
pressionando o boto Enter quando a escolha for feita. No caso desse exemplo, o
timeout recebe o valor 5. Isso significa que o usurio ter 5 segundos para escolher
um sistema. Caso nenhuma opo seja escolhida, aps os 5 segundos, o GRUB
carregar o sistema padro, definido atravs da primeira linha.
Repare que neste arquivo menu.lst a lista de sistemas operacionais mostrada
depois da segunda linha de configurao. O primeiro sistema da lista o Debian
GNU/Linux:
title Debian GNU/Linux, kernel 2.6.8-2-686
root (hd0,1)
kernel /vmlinuz-2.6.8-2-686 root=/dev/hda4 ro
initrd /initrd.img-2.6.8-2-686
A primeira linha acima mostra o ttulo que o sistema recebe no GRUB. esse nome

AlexCamachoCastilho59

APOSTILA
DE
GNU/LINUX
que ser exibido quando o GRUB mostrar a lista de sistemas operacionais que o
usurio pode escolher. Pode-se usar qualquer frase depois de title. Obviamente,
informe algo relacionado ao sistema operacional em questo.
A segunda linha - root (hd0,1) - informa ao GRUB onde o sistema operacional est
instalado. No exemplo, ele se encontra na segunda partio do HD. A palavra root
tem a funo de indicar que aquela a partio principal do sistema (ou a partioraiz) e que, portanto, dever ser montada.
A terceira e a quarta linha informam ao GRUB o kernel a ser carregado e possveis
parmetros. Neste caso, ro indica que a partio deve ser montada inicialmente com
permisses apenas de leitura.
Na parte do arquivo que trata do Windows XP, a sintaxe a mesma. No entanto, a
segunda linha recebe o parmetro rootnoverify ao invs de root, pois a montagem de
partio no se aplica ao Windows. O rootnoverify usado porque esse parmetro
no tenta fazer nenhuma montagem.
title Windows XP
rootnoverify (hd0,0)
makeactive
chainloader + 1
Como o Windows trabalha de maneira diferente do GNU/Linux, a opo de carregar
o kernel tambm no se aplica ao sistema da Microsoft. No lugar desse parmetro,
geralmente usado chainloader +1, que "chama" o carregador de boot do Windows,
deixando a esse a tarefa de iniciar o sistema. Note que em nosso exemplo, h um
parmetro na linha acima de chainloader +1, o makeactive. Este tem a funo de
definir a partio em questo como ativa.
Existe um parmetro chamado map que permite o carregamento do Windows
quando este no est instalado no primeiro HD (regra obrigatria no Windows 9x,
por exemplo). Sua utilizao feita da seguinte forma (supondo que o Windows
esteja no segundo disco):
map (hd0) (hd1)
map (hd1) (hd0)

AlexCamachoCastilho60

APOSTILA
DE
GNU/LINUX

BIBLIOGRAFIA
Sites:
http://www.cipsga.org.br
http://www.debian.org.br
http://www.linuxmagazine.com.br
http://brunotorres.net/sargeslide/
http://www.vivaolinux.com.br
http://www.guiadohardware.net
http://www.devin.com.br/eitch/tlm3.4/

AlexCamachoCastilho61

Você também pode gostar