Anda di halaman 1dari 17

Apontamentos LINUX

_______________________________________________________________________________________________________________

rvore de Directorias do Linux


/bin
/boot
/dev
/etc
/home
/lib

/mnt

/proc

/root
/sbin
/tmp

/usr
/var

/lost+found

Contm um conjunto mnimo de programas utilitrios, que so usados


durante o arranque do sistema.
Arranque do sistema: contm um ficheiro com o ncleo (kernel) do sistema
operativo e vrios ficheiros auxiliares.
Contm ficheiros que representam todos os dispositivos de hardware e
perifricos do sistema.
Contm a maioria dos ficheiros de configurao do sistema operativo.
Directorias de trabalho dos utilizadores.
Contm bibliotecas necessrias para que o sistema e os programas possam
funcionar.
A directoria /lib/modules contm mdulos de software com drives, que
podem ser carregados em andamento no kernel do sistema.
Directoria usada para aceder ao contedo de unidades de discos
amovveis, como disquetes, CD-ROMs, discos magneto-pticos e drives
Zip.
Contm ficheiros virtuais que representam o estado actual dos processos
em execuo e informao sobre o estado de muitos componentes do
sistema operativo.
Directoria de trabalho do superutilizador.
Contm os principais programas necessrios para administrar e reparar o
sistema operativo.
Ficheiros temporrios: todos os utilizadores podem criar ficheiros de dados
temporrios nesta directoria.
Estes ficheiros podem ser apagados sempre que o sistema arranca.
Contm mais subdirectrios com programas, bibliotecas, utilitrios,
documentao, etc.
Contm ficheiros de dados do sistema operativo: correio electrnico que
entra e sai, ficheiros em fila de espera para impresso, locks para impedir
que vrios utilizadores usem o mesmo perifrico em simultneo e logs que
registam todos os eventos que vo acontecendo.
Sempre que o sistema desligado em andamento, podem perder-se
ficheiros. Quando o sistema arranca, verifica todo o disco e os ficheiros
perdidos so enviados para esta directoria.
Por regra, existe uma directoria lost+found em cada partio e disco que
esto instalados no sistema.

A directoria /usr, tambm contm vrias subdirectorias importantes:


/usr/bin
Local onde se encontra a esmagadora maioria dos programas e utilitrios
do sistema.
/usr/dict
Dicionrio para os correctores de texto.
/usr/doc
Numerosos ficheiros com documentao, manuais e cursos sobre o sistema
(share/doc)
operativo, os servios e os programas instalados.
/usr/games
Ficheiros de dados pertencentes a jogos (records, nveis, figuras, etc.).
/usr/include
Ficheiros com dados e definies sobre o sistema operativo e as bibliotecas
do sistema, utilizados nas linguagens de programao C e C++.
/usr/info
Mais documentao, com informao e manuais sobre o sistema.
(share/info)

-1-

Apontamentos LINUX
_______________________________________________________________________________________________________________

/usr/lib
/usr/man
(share/man)
/usr/sbin

/usr/share
/usr/src
/usr/X11R6
ou /usr/X11
/usr/local

Muitos ficheiros contendo bibliotecas dinmicas partilhveis, que so


utilizadas pelos programas durante a sua execuo.
Ficheiros onde so guardados os verdadeiros manuais do sistema (usados
com o comando man).
Local onde se encontram os principais programas de administrao do
sistema e os daemons, ou seja: os programas encarregues dos vrios
servios.
Ficheiros de dados partilhados pelos programas e aplicaes. Possui vrias
subdirectorias, para cada programa ou famlia de programas.
O cdigo-fonte do sistema operativo. utilizado pelos programadores que
pretendem modificar o sistema.
O sistema de janelas X e os seus programas utilitrios.
Contm as directorias onde so guardados pacotes de software opcionais,
que so instalados manualmente, pois no fazem parte do sistema
standard.

A directoria /var, subdivide-se em vrias subdirectorias.


As mais relevantes so as seguintes:
/var/spool
rea onde so guardadas as filas de espera das impressoras e do correio
electrnico.
/var/lock
rea onde registada a utilizao de vrios servios e perifricos, para
impedir que vrios utilizadores e servios possam interferir uns com os
outros.
/var/run
Inclui vrios ficheiros com a identificao dos vrios processos
responsveis pelos servios em funcionamento. Estes ficheiros podem ser
utilizados para parar ou terminar servios.
/var/log
Vrios ficheiros com o registo de praticamente todos os eventos que
acontecem no sistema (muito til para efeitos de segurana e
administrao).

Linha de Comandos
Listagem de Ficheiros e Directorias
ls apresenta uma lista com uma lista com os ficheiros e subdirectorias existentes na
directoria actual:
119 fjp@zeus ~ > ls
xxxxx.aaa
aaaaa
desktop
jdjd.jpg
120 fjp@zeus ~ >

eyeywu.c

Existe tambm o dir, equivalente ao ls, mas mais fcil de memorizar pelos utilizadores
habituados ao DOS.
Opo -l apresenta uma listagem longa:
120 fjp@zeus ~ >ls l
-2-

Apontamentos LINUX
_______________________________________________________________________________________________________________

total 9999
-rw-r--r-- 1 fjp power-us
drwx------ 5 fjp power-us
drwxr-xr-x 5 fjp power-us

121 fjp@zeus ~ >

88075
1024
1024

Nov 12 03:01 700s.jpg


Feb 16 16:03 desktop
Nov 23 20:59 GNUstep

Cada linha da listagem representa um ficheiro ou uma subdirectoria e contm informao


organizada em vrias colunas.
A ltima coluna mostra o nome dos ficheiros e subdirectrios. A penltima coluna contm a
data em que os ficheiros foram criados ou foram modificados pela ltima vez. Imediatamente
antes da data est a dimenso de cada ficheiro, medida em bytes.
A terceira coluna contm o nome do dono de cada ficheiro, que em geral corresponde ao
utilizador que o criou. Neste exemplo, estamos a visualizar a directoria pessoal do utilizador
ftp, pelo que a maioria dos ficheiros lhe pertence.
A quarta coluna representa o grupo de utilizadores a que o dono de cada ficheiro pertence.
A coluna que est antes do dono do ficheiro um nmero inteiro que representa o nmero
de links associado a cada ficheiro. No caso dos ficheiros costuma ser um e no caso das
directorias, est relacionado com a quantidade de subdirectorias contidas no seu interior.
A primeira coluna descreve as proteces de cada ficheiro e possui o nome tcnico de
modo.
O primeiro caracter do modo identifica o tipo de ficheiro:
- - Um ficheiro normal.
d - Uma subdirectoria.
l - Um link, que corresponde a um apontador. Trata-se de um ficheiro que aponta para
outro ficheiro.
c e b Dispositivos do tipo carcter e bloco.
Identificam ficheiros virtuais que esto associados a perifricos (portas srie,
portas paralelas, discos, etc.).
Quando algum escreve nesses ficheiros, a informao no guardada em
ficheiro algum: em vez disso, enviada para o perifrico associado.
s e p Representam sockets e pipes, que correspondem a ficheiros virtuais, utilizados
para estabelecer comunicao entre diversas aplicaes.
Para alm do tipo de ficheiros, o modo possui mais nove caracteres, que representam as
permisses associadas aos ficheiros.
As permisses esto divididas em trs blocos de trs caracteres. Dentro de cada bloco, um
r significa permisso de leitura (Read), um w significa permisso de escrita (Write) e um
x significa permisso para executar (eXecute) os programas contidos nos ficheiros.

-3-

Apontamentos LINUX
_______________________________________________________________________________________________________________

No caso das directorias, o x representa a possibilidade de aceder aos ficheiros contidos no


seu interior.
O primeiro bloco de trs caracteres representa as permisses associadas ao dono de cada
ficheiro. Como bvio, os donos podem alterar as permisses dos seus ficheiros, sempre
que desejarem.
O segundo bloco representa as permisses associadas a todos os utilizadores pertencentes
ao grupo de a que o ficheiro est associado.
O ltimo bloco representa as permisses associadas a todos os outros utilizadores.
Manipulao de directorias
mkdir Cria uma subdirectoria dentro da directoria actual.
rmdir Elimina a directoria (desde que esteja vazia).
chdir ou cd Muda para a directoria passada pelo parmetro.
As directorias . representa a prpria directoria e .. representa a directoria acima
podem ser utilizadas em conjunto com os comandos do linux:
cd .
cd ..
O smbolo / representa a directoria principal do sistema (root).
O smbolo ~ representa a directoria de trabalho (home) do utilizador.
cd /
pwd Permite determinar a directoria em que estamos.
Manipulao de Ficheiros
cp Copia um ficheiro de uma directoria para outra. Tambm pode ser usado para copiar
ficheiros dentro da mesma directoria se forem usados nomes diferentes. por esse
motivo, necessita sempre de dois nomes: o nome do ficheiro original e o nome do
ficheiro novo ou da directoria de destino.
cp /etc/passwd abcd Copia o ficheiro passwd para o ficheiro abcd na directoria actual.
cp /usr/bin/cal . Copia o ficheiro cal para a directoria actual (no altera o nome do ficheiro).
mv Move ou altera o nome de um ficheiro.
rm Elimina ficheiros.
Opo -r Significa recursive. Amplia o poder do comando arvore de subdirectorias em
relao directoria especificada.

-4-

Apontamentos LINUX
_______________________________________________________________________________________________________________

rm r - Serve para eliminar directorias. Tem a vantagem, sobre rmdir de permitir eliminar
directorias que no estejam vazias.
cp r Serve para copiar arvores inteiras de subdirectorias, num nico comando.
ls r Serve para listar recursivamente toda uma rvore de subdirectorias, contudo o
comando tree oferece uma listagem em formato de rvore, muito mais fcil de entender.
ln Serve para criar atalhos (links)
Visualizao de Ficheiros de Texto
cat Mostra o contedo do ficheiro.
Quando os ficheiros so muito extensos, pode-se usar:
CTRL-S e CTRL-Q Fazem parar a imagem, enquanto as listagens esto a passar.
SHIFT-PgUp e SHIFT-PgDn Servem para rodar a imagem para cima e para baixo,
aps a listagem ter terminado ou aps ter sido parada com CTRL-S.
more Mostra o contedo do ficheiro, mas mostra a informao pgina a pgina.
less uma variante do more.
Wild-Cards
* Qualquer sequncia de 1 ou mais caracteres.
? Um nico caracter indiferenciado.
[ ] Uma sequncia de um ou mais caracteres pertencentes ao conjunto dentro de
parntesis rectos.
Privilgios e Proteces de Ficheiros
chmod Utilizado para definir e alterar as permisses dos ficheiros.
Os utilizadores s podem modificar as permisses dos seus prprios ficheiros, excepo
do superutilizador (root), que tem privilgios para modificar as permisses de qualquer
ficheiro do sistema.
O comando chmod classifica os utilizadores em trs categorias:
- O dono do ficheiro (user ou u).
- Os utilizadores que pertencem ao mesmo grupo que o dono(group ou g).
- Os restantes utilizadores do sistema (others ou o).
Existe uma forma alternativa de referenciar todas as classes anteriores ao mesmo tempo,
utilizando a letra a (all).
Ex:
> chmod ug+x xpto

-5-

Apontamentos LINUX
_______________________________________________________________________________________________________________

> chmod o-rwx ..


> chmod a-wx *
> chmod u+rwx,g=rx,o-wx .
> chmod 754 cal
No ltimo exemplo, foi utilizada uma sintaxe alternativa, que permite especificar todas as
permisses de uma nica vez, utilizando nmeros octais:
0 --1 --r
2 -w3 -wx
4 r-5 r-x
6 rw7 rwx
Por exemplo, o nmero octal 740 equivalente a rwx r-- ---.
chown Serve para mudar o dono.
chgrp Serve para mudar o grupo do ficheiro.
Ex:
> chown root cal
> chgrp bin *
Encerrar o Sistema
exit e logout Servem para terminar uma sesso de trabalho.
halt Pra imediatamente o sistema operativo e o Pc fica pronto a ser desligado.
reboot Reinicializa o sistema.
shutdown Permite temporizar a altura em que o sistema vai abaixo. Por exemplo,
podemos usar o comando shutdown para mandar o sistema abaixo dentro de uma hora.
Antes que o sistema seja parado, os utilizadores recebem sucessivas mensagens de aviso.
Utilizadores e Passwords
passwd Serve para alterar senhas de entrada no sistema.
Por motivos de segurana, este comando pede sempre a senha antiga antes de perguntar a
nova. Para evitar erros, necessrio digitar a nova senha duas vezes.
O superutilizador tem privilgios para alterar as passwords de todos os utilizadores, mesmo
sem conhecer a password antiga.
su Permite assumir a identidade de qualquer utilizador do sistema (muda de utilizador).

-6-

Apontamentos LINUX
_______________________________________________________________________________________________________________

Ex:
> su fjp
> su
O primeiro exemplo permite-nos assumir a identidade do utilizador fjp.
O segundo exemplo permite-nos assumir a identidade do superutilizador.
Neste caso para voltar-mos a assumir a identidade anterior devemos digitar o comando
exit.
Quando assumimos a identidade do superutilizador, a prompt muda automaticamente para
#. Desta forma podemos saber sempre em que modo estamos.
id Informa-nos da identidade que assumimos em cada momento.
who e w Listam todos os utilizadores que esto a trabalhar no sistema.
who am i Apenas mostra a nossa prpria identidade.
Visualizao de Ficheiros, Filtros e Redireccionamento
Qualquer comando que seja executado est sempre associado a trs ficheiros virtuais de
entrada/sada. Esses ficheiros virtuais denominam-se standard-input, standard-output e
standard-error.
O standard-input utilizado pelos programas para ler informao. O standard-output um
ficheiro virtual para onde os programas enviam toda a informao que geram. O standarderror para onde so enviadas as mensagens de erros.
Por norma, o ficheiro virtual standard-input est redireccionado para o teclado do utilizador
e os ficheiros virtuais standard-output e standard-error esto redireccionados para o ecr.
Contudo possvel redireccionar qualquer dos trs ficheiros virtuais para outro lado.
Caracter > Redirecciona o standard-output para um ficheiro.
Caracter < Redirecciona a entrada, ou standard-input, dos programas que executamos.
>> Semelhante a >, mas em vez de criar um ficheiro novo, acrescenta texto num
ficheiro j existente.
Ex:
ls l > listagem.txt
cat < listagem.txt > listagem2.txt
echo Esta mensagem vai para o fim do ficheiro abc.txt >> abc.txt
| PIPE Estabelece um canal de comunicao entre dois programas.

-7-

Apontamentos LINUX
_______________________________________________________________________________________________________________

Ex:
ls l /usr/bin | more
Neste exemplo, o comando ls l lista o contedo da directoria. O efeito do pipe consiste
em redireccionar a sada do comando ls para a entrada do comando more. Como
resultado conseguimos obter uma listagem de directoria com pausas no fim de cada pgina.
Existem muitos comandos que foram feitos explicitamente a pensar na utilizao de pipes.
Dois destes comandos so:
sort L uma sequncia de texto atravs do standard-input, ordena-as por uma
determinada ordem e depois escreve o resultado na sada.
uniq Serve para filtrar linhas de texto repetidas.
Ex:
cat /etc/services | sort | uniq |more
rev - Inverte a ordem pela qual os caracteres aparecem em cada linha.
head filtra apenas as primeiras n linhas dum ficheiro.
tail Filtra apenas as ltimas n linhas.
Criar Parties
Existem duas grandes famlias de discos rgidos: IDE ou ATA e SCSI.
No caso dos IDE, o kernel denomina-os hda, hdb, hdc ou hdd (hd representa hard-disk).
No caso dos SCSI, determina-os sda, sdb, sdc, etc. (sd representa SCSI-disk).
fdisk Particiona (parte) o disco.
Ex:
/sbin/fdisk /dev/hdb
Com o fdisk, podemos utilizar uma srie de comandos:
o Criar uma nova tabela de parties vazia.
p Mostra a tabela de parties existente.
n Criar uma nova partio.
d Apagar uma partio existente.
t Alterar o tipo duma partio.
a Permite activar uma partio para arranque.
w Gravar as alteraes feitas na tabela de parties, para o disco rgido.
q Sair, sem gravar alteraes.
h Apresenta um menu de help, com todas as opes.
Formatar Volumes de Dados
mkfs Formata o volume.

-8-

Apontamentos LINUX
_______________________________________________________________________________________________________________

Ex:
mkfs.ext2 /dev/hdb1
mkfs.ext2 /dev/hdb2
mkfs.msdos /dev/hdb3
Montar File-Systems
O Linux possui uma rvore de directorias nica. Para poder utilizar vrios volumes em
simultneo necessrio recorrer aos mount-points. Com este sistema cada volume fica
associado (montado) a uma directoria.
mount Permite montar um volume de dados numa directoria.
Ex:
mkdir /disco1
mkdir /disco2
mkdir /disco3
mount /dev/hdb1 /disco1 t ext2
mount /dev/hdb2 /disco2 t ext2
mount /dev/hdb3 /disco3 t msdos
O parmetro -t indica o tipo de file-system. Este parmetro opcional, pois o mount tenta
sempre descobrir o tipo de sistema que est a ser montado.
Tipos de File-System:
minix
Usado no antigo sistema Minix
ext
Verso estendida do minix
ext2
File-System usado normalmente pelo Linux
xiafs
File-System Incremental
msdos
FAT
umsdos
Verso Modificada da FAT, para suportar nomes compridos em Linux
sem perder compatibilidade com o DOS
vfat
Verso actualizada da FAT. Tambm suporta FAT32
ntfs
Criado para ler volumes NTFS
hpfs
Usado pelo OS/2
affs
Usado pelo Commodore Amiga
system-v
Unix System V
xenix
SCO Xenix
coherent
UNIX Coherent
iso9660
CD-ROM
proc
File-System virtual
nfs
Network-Fyle-System: para aceder a file-systems Unix/Linux remotos
smbfs
Permite aceder a directorias partilhadas de PCs correndo Windows, OS/2
ncpfs
Novell Netware
umont Desmonta um volume.

-9-

Apontamentos LINUX
_______________________________________________________________________________________________________________

Compresso de Ficheiros
compress e uncompress Comandos tradicionais para comprimir e descomprimir.
Os ficheiros comprimidos tm extenso .z.
zcat, zmore e zdiff Permitem visualizar e aplicar filtros utilizando directamente os
ficheiros comprimidos.
gzip e gunzip Igual a compress mas mais eficiente, tendo-se tronado no standard de
compresso do Linux.
Os ficheiros comprimidos com o gzip tm a extenso .gz.
Backup de Informao
tar o programa mais utilizado pelo Linux, para backup de dados.
bastante complexo.
Apesar da sua complexidade, existem 3 maneiras de usar o tar que cobrem 90% das
situaes de uso corrente: criar arquivo (c), visualizar arquivo (t) e extrair arquivo (x).
Ex:
tar cvf backup.tar /home/fjp
tar cv /usr/local | gzip > local.tgz
tar cvfz local.tgz /usr/local
tar cvfz /dev/fd0 /etc
Duplicar Discos e Volumes de Dados
dd Serve para extrair informao, byte a byte, a partir dum dispositivo.
Por exemplo, podemos guardar uma cpia exacta de uma disquete, para um ficheiro,
utilizando o seguinte comando:
dd if=/dev/fd0 of=imagem.dat bs=1k
if input-file
of output-file
bs block size
Controlo de Tarefas
jobs Permite listar todos os programas lanados em background a partir da sesso de
trabalho actual.
ps Permite obter listagens de todos os processos que esto em execuo, incluindo
informao acerca dos recursos ocupados por cada um deles.

- 10 -

Apontamentos LINUX
_______________________________________________________________________________________________________________

ps por si s lista apenas os processos lanados pelo utilizador.


Opo a Processos de todos os utilizadores
Opo x Processos lanados pelo sistema.
Opo l Listagem de processos contendo a quantidade de memria ocupada, o nome do
utilizador responsvel, etc..
top Oferece uma srie de estatsticas sobre o estado geral do sistema, assim como uma
lista dos processos com maior actividade no sistema.
kill Envia sinais aos processos.
Pode enviar diversos tipos de sinais, mas se no especificarmos o tipo de sinal, envia o sinal
TERM, que mata o processo.
Ex:
Kill 274
Mata o processo 274
Sempre que um processo recebe um sinal, pode decidir o que fazer com ele, incluindo
ignor-lo completamente. Por isso alguns processos ignoram o TERM.
Contudo existem dois tipos de sinais que no podem ser ignorados: o KILL e o STOP.
O KILL garante que o processo terminado.
Ex:
kill KILL 274
ou
kill 9 274
O STOP congela o processo, que fica parado, at que algum lhe envie um sinal CONT.
killall Serve para enviar sinais a todos os processos que esto a executar um
determinado programa.
Ex:
killall 9 vi
Prioridades dos Processos
nice Serve para definir a prioridade dum processo na altura em que este lanado.
renice Serve para alterar a prioridade dum processo depois de j estar a correr.
Os comandos nice e renice recebem um parmetro que consiste num nmero entre 0 e
20. Quanto maior for esse nmero, menor ser a prioridade do processo. Por omisso,
todos os processos correm com um valor nice igual a 0.

- 11 -

Apontamentos LINUX
_______________________________________________________________________________________________________________

Para aumentar a prioridade dum processo, teramos de utilizar valores negativos [-20 a 1].
S o superutilizador tem privilgios para utilizar valores negativos.
Ex:
nice +5 ps axl
renice +10 269

Administrao do Sistema Operativo


Ficheiros de Passwords
etc/passwd Onde o sistema guarda a lista de todos os utilizadores do sistema.
um simples ficheiro de texto, que contm uma linha por cada utilizador. Dentro de cada
linha existem vrios campos separados por ::
username Uma palavra, sem espaos, pela qual o sistema conhece o utilizador.
password Senha secreta para acesso. A senha guardada num ficheiro encriptado, para
no ser legvel pelos utilizadores.
UID Nmero entre 0 e 65535, que identifica cada utilizador.
GID Nmero entre 0 e 65535, que identifica o grupo a que o utilizador pertence.
full-name Nome completo do utilizador, podendo ser acrescentados eventuais
comentrios.
home Directoria pessoal de trabalho do utilizador.
shell Interpretador de comandos preferido do utilizador. executado sempre que o
utilizador entra no sistema.
Ex:
jmr:x:501:500:Joao Rodrigues:/home/jmr:/bin/tcsh
Por este exemplo podemos ver que no campo da password apenas se encontra um x. Este
facto deve-se a que as passwords so guardadas noutro ficheiro: /etc/shadow.
Finalmente, temos o ficheiro /etc/group que guarda a lista dos grupos de utilizadores que
existem no sistema.
O formato deste ficheiro semelhante ao /etc/passwd:
adm: :4:root,adm,daemon
Este exemplo mostra o grupo adm, que possui o identificador nmero 4. Os utilizadores
que fazem parte deste grupo so: root, adm e daemon. O segundo campo encontra-se
vazio, o que significa que no existe nenhuma password associada a este grupo.

- 12 -

Apontamentos LINUX
_______________________________________________________________________________________________________________

Criar e Remover Utilizadores


useradd Cria um utilizador.
userdell Remove um utilizador.
usermod Modifica um utilizador.
groupadd, groupdel e groupmod Igual para grupos.
Ex:
useradd u 301 g 300 s /bin/sh d /home/manuel manuel
groupadd g 400 gp-users
userdell r xpto
Areas de Swap
O swaping uma tcnica utilizada pelo sistema de memria virtual do Linux, para simular
uma quantidade de memria maior do que realmente existe.
Para esse efeito, reservada uma determinada poro de disco rgido, que entra em
funcionamento assim que a memria fsica se esgota.
mkswap Inicializa (formata) um ficheiro ou uma partio, para que possa ser usada
como swap.
swapon Activa regies de swap.
swapoff Desactiva regies de swap.
A Sequncia de Arranque do Sistema
Assim que o LILO (ou o loadlin) descomprime o kernel de Linux e o carrega em memria,
este comea imediatamente a funcionar.
Um dos primeiros passos que o kernel executa, a deteco de todo o hardware presente
no sistema, passando pela memria, processadores presentes, etc..
Aps ter detectado os perifricos mais importantes, cujos controladores foram includos na
verso base do kernel, montada a partio principal, onde est a directoria raiz, ou seja, o
root file-system.
A partir deste momento, o kernel lana o primeiro processo que executa o programa init. O
init considerado o pai ancestral de todos os processos que correm no sistema, pois ele
que comea por executar todos os outros processos. Como o primeiro tem sempre o
identificador PID nmero 1.
A tarefa principal do init lanar processos de acordo com a descrio que se encontra no
ficheiro chamado /etc/inittab.

- 13 -

Apontamentos LINUX
_______________________________________________________________________________________________________________

Nveis de Execuo (Runlevels)


O runlevel definido pela linha initdefault no inittab.
Um sistema Linux pode trabalhar em sete nveis de execuo diferentes:
1 Modo single-user: apenas suporta um utilizador, mas este pode lanar qualquer
nmero de tarefas. Os servios de rede esto desligados.
2 Modo multi-user sem rede (sem NFS): suporta vrios utilizadores a trabalhar na
consola, ou em terminais ligados directamente nas portas srie (terminais locais).
3 Modo multi-user com rede: suporta vrios utilizadores em terminais locais ou remotos.
4 No usado.
5 Modo multi-user com o sistema de janelas X: idntico ao modo 3, mas o sistema de
janelas X lanado automaticamente.
0 Parado (halt): usado para fazer shutdown ao sistema, sendo este desligado
automaticamente de seguida (quando suportado por hardware).
6 Modo de reinicializao (reboot): este modo utilizado para mandar reiniciar o sistema.
Inittab
Para avisar o processo init de que ocorreram modificaes no inittab, podemos enviarlhe um sinal SIGHUP:
kill 1 1
Para mudar o runlevel em funcionamento usamos o comando telinit.
Os Scripts de Configurao RC
Quando o sistema arranca, o processo init executa vrios scripts de inicializao rc
(runtime configuration) que esto na directoria /etc/rc.d, de acordo com a tabela
/etc/inittab.
O conhecimento destes scripts vital para qualquer administrador de sistemas Linux,
porque so vulgares scripts de shell e podem ser modificados com qualquer editor de texto.
Quando bem geridos, os scripts de inicializao podem ser uma ferramenta bastante verstil
e poderosa, que permite personalizar todo o sistema e adapt-lo s necessidades de cada
situao.
Um dos principais factores a ter em conta que os scripts de inicializao variam bastante
de verso para verso do sistema. Contudo, existem alguns pontos de referncia que se
costumam manter comuns em todas as verses e facilitam a migrao duma verso do
sistema para outra.
No Linux Red Hat, costuma existir um script que executado antes de todos os outros,
denominado /etc/rc.d/rc.sysinit.
Este script executa um grande conjunto de tarefas que so essenciais para a inicializao do
sistema. Entre outras coisas, testa a integridade de todos os file-systems (com o fsck),

- 14 -

Apontamentos LINUX
_______________________________________________________________________________________________________________

configura os dispositivos Plug&Play (com o isapnp) e carrega mdulos de software com os


drivers dos perifricos usados no computador (com o modprobe).
Para alm da inicializao do hardware, define parmetros necessrios para o
funcionamento em rede, como o nome da mquina, domnio de rede, etc..
A seguir ao rc.sysconfig, executado o ficheiro /etc/rc.d/rc, que o script que lana
todos os servios do sistema.
Quando executado, o rc recebe como parmetro o nmero de runlevel em que o sistema
est a arrancar.
A diferenciao entre os vrios runlevels feita sob a forma de vrias subdirectorias, que
possuem a lista de servios a executar. Essas subdirectorias so /etc/rc.d/rc1.d at
/etc/rc.d/rc6.d.
Os ficheiros que esto dentro destas subdirectorias, so scripts cujos nomes comeam
sempre pelas letras K (Kill) ou S (Start).
Todos os scripts contidos nas subdirectorias dos runlevels, so apenas links simblicos, que
apontam para ficheiros no interior da directoria /etc/rc.d/init.d.
Isto deve-se a que, para facilitar a gesto dos servios, os scripts de inicializao foram
todos centralizados nesta directoria.
Com isto, evita-se a repetio de vrias cpias de ficheiros exactamente iguais.
Na verdade, esta simplificao at vai um pouco mais longe, pois o mesmo script tanto pode
ser utilizado para lanar servios, como para os parar.
A forma como cada script reage est relacionada com os argumentos que recebe:
start Lana o servio, se ainda no estava em funcionamento
stop Pra o servio (se estiver em funcionamento).
restart Pra o servio e lana-o de novo. Se ainda no estava em funcionamento,
simplesmente lanado.
status Indica se o servio est em funcionamento.
Daemons
Sempre que um dos servios, ou um dos componentes do sistema, pode ser implementado
em user mode (ou seja: fora do kernel), criado um programa para realizar essa tarefa.
Quando o sistema arranca, os scripts rc lanam todos esses programas, que ficam a correr
silenciosamente em background.
Regra geral, esses programas so quase imortais, porque esto sempre presentes desde o
arranque do sistema at o sistema ir abaixo, mesmo quando no esto a fazer nada. Por
essa razo, normal serem designados por daemons.

- 15 -

Apontamentos LINUX
_______________________________________________________________________________________________________________

Apache
Activar o Servio Web/HTTPD
A maioria das distribuies Linux inclui o Apache e instalam-no por omisso, na sua
configurao inicial.
Desta forma, muito natural que o servio nem sequer tenha de ser lanado, pois pode at
j estar em funcionamento.
Caso este no esteja lanado, necessrio executar os scripts de inicializao
manualmente:
$ /etc/rc.d/init.d/httpd start
De igual forma, podemos parar o servio com o comando:
$ /etc/rc.d/init.d/httpd stop
Para que o servio passe a ser lanado automaticamente durante o arranque do sistema,
deve ser includo na lista de servios do runlevel adequado.
Ficheiros de Configurao
Dependendo da forma como o servidor Apache foi instalado, os ficheiros de configurao
podem estar situados em locais diferentes.
Quando o servidor instalado manualmente, os ficheiros do servidor costumam ficar na
directoria /usr/local/httpd. Contudo, quando estamos a usar um servidor que vem
configurado de origem, em conjunto com a distribuio de Linux, os ficheiros costumam ficar
na directoria /etc/httpd.
At s primeiras verses do Apache 1.3, costumavam existir trs ficheiros de configurao:
httpd.conf, access.conf e srm.conf. Nas verses mais recentes, estes trs ficheiros
foram reunidos no ficheiro httpd.conf, mas o formato de dados no foi alterado.
Sites Virtuais
Podemos utilizar o mesmo servidor Web para hospedar vrios sites.
Cada site virtual tem de possuir um nome prprio e uma directoria prpria, que funciona
como raiz da arvore de directorias do respectivo site.
Por outro lado, cada site virtual deve ter um webmaster diferente e ficheiros de log
diferentes. Desta forma, as mensagens de e-mail destinadas ao webmaster de cada site
virtual podem ser direccionadas para a pessoa certa e as estatsticas de acessos podem ser
facilmente analisadas, sem que dados dos vrios sites se misturem.
Para criar um novo site virtual, apenas temos de adicionar uma seco <VirtualHost> no
ficheiro httpd.conf, contendo as seguintes directivas:

- 16 -

Apontamentos LINUX
_______________________________________________________________________________________________________________

<VirtualHost>
ServerAdmin webmaster@nome_do_site.pt
DocumentRoot /home/sites/nome_do_site/
ServerName www.nome_do_site.pt
ErrorLog logs/nome_do_site-error_log
TransferLog logs/nome_do_site-access_log
</VirtualHost>

ATENO: estes apontamentos foram desenvolvidos pelo nosso colega Joo Miguel
Charas Rodrigues, h cerca de 3 anos, para um curso baseado na distribuio RED
HAT 7.0.

- 17 -

Anda mungkin juga menyukai