Você está na página 1de 112

MÓDULO 4

SISTEMA OPERATIVO OPEN SOURCE

1. Núcleo e filosofia Unix


1.1. Conceitos básicos
1.1.1. História

A origem do Unix está ligada ao sistema operativo Multics, projetado na década de 60 do século
passado. O projeto Multics (Multiplexed Information and Computing Service) foi desenvolvido por
várias entidades, nomeadamente:

 Massachusetts Institute of Technology (MIT);


 General Electric (GE);
 Bell Labs (Laboratórios Bell);
 American Telephone and Telegraph (AT&T).

A intenção era criar um sistema operativo (SO) que permitisse a partilha de recursos de um
computador por vários utilizadores. Em 1969, já existia uma versão do Multics para o computador
GE645.

Um dos investigadores da Bell Labs, Ken Thompson, prosseguiu os estudos no sistema, apesar
de a sua empresa se ter retirado do projeto. O seu objetivo deixou de ser o de continuar com o
projeto Multics original, mas a criação de um sistema mais pequeno, conservando as ideias
básicas do sistema original. Mais tarde, o Unix foi reescrito numa linguagem de alto nível,
denominada C.

Entre 1977 e 1981, a AT&T alterou o Unix e lançou o System III.

Em 1983, após diversas modificações, foi lançado o conhecido Unix System IV, que passou a
ser comercializado. Este sistema é utilizado até hoje, tendo-se tornado no padrão internacional do
Unix.

Devido a fatores relacionados com a comercialização do sistema operativo, começou a ser cada
vez mais difícil a obtenção da licença de utilização e praticamente impossível obter as licenças de
código-fonte. Este facto veio impedir o acesso dos utilizadores/programadores originais que mais
contribuíram para a expansão e desenvolvimento do Unix.
1
Por este motivo, foi criada, no início dos anos 80, uma fundação com o objetivo de proteger o
software livre, a FSF (Free Software Foundation). Foi também criada uma nova licença especial -
GPL (General Public Licence) - que permite aos utilizadores a cópia, modificação e melhoria de
todo o software.

Os programadores/utilizadores sob proteção da FSF desenvolveram então um novo sistema


operativo baseado no Unix, a que chamaram GNU. GNU significa GNU is Not Unix.

O Minix é uma versão gratuita do Unix, com o código-fonte aberto. Foi criado inicialmente para
fins educativos e deve-se referir que, apesar de ser uma versão do Unix, foi desenvolvido
independentemente.

No início dos anos 90 do século XX, um estudante de Ciências da Computação, Linus Torvalds,
insatisfeito com os sistemas operativos existentes para PC (muito caros e pouco flexíveis),
começou a desenvolver o seu próprio núcleo (kernel) do sistema operativo. No mesmo ano
terminou a primeira versão, tendo-lhe chamado Linux.

Apesar de incompleta e limitada, resolveu disponibilizar o código-fonte na Internet. Vários


programadores interessaram-se pelo projeto, tendo aumentado em pouco tempo o número de
utilizadores. A forma de desenvolvimento permitiu a colaboração gratuita na evolução deste
sistema com a coordenação de Linus Torvalds.

O Linux está sob a licença GPL, o que permite a qualquer pessoa utilizar o código-fonte com o
compromisso de o manter aberto.

O Linux é apenas um kernel, utilizado conjuntamente com os programas da GNU para criar o
sistema operativo. O projeto GNU é um dos responsáveis pelo sucesso do Linux, uma vez que é
devido à conjugação dos seus programas com o kernel desenvolvido por Linus Torvalds que o
Linux tem sido cada vez mais utilizado.

O kernel do Linux encontra-se na versão 2.6 para processadores de 32 e 64 bits, suporta vários
núcleos funcionando em multiprocessamento simétrico e está em conformidade com várias
normas, como a POSIX (Portable Operating System Interface - padronização da IEEE1) de forma
a manter a compatibilidade entre sistemas operativos.


- no momento em que estiveres a fazer a ficha há de estar numa versão mais avançada!!!
2
3
1.1.2. Características do Linux

O Linux é um sistema operativo multitarefa e multiutilizador.

Pode funcionar sem conflitos no mesmo computador com outros sistemas operativos (como MS-
DOS, Windows, Netware), suporta nomes extensos de ficheiros e diretórios (255 caracteres) e
permite conectividade com outros tipos de plataformas, como Apple, Sun, Macintosh, Sparc,
Alpha, PowerPC, ARM, Unix, Windows, MS-DOS, etc.

O GNU/Linux carrega apenas para a memória o que é usado durante o processamento,


libertando-a totalmente assim que o programa/dispositivo termina. Devido a esta modularização,
os drivers dos periféricos e recursos do sistema podem ser carregados e removidos
completamente da memória RAM em qualquer instante. Os drivers (módulos) ocupam pouco
espaço quando carregados na memória RAM.

Não é necessário reiniciar o sistema após modificar a configuração de qualquer periférico ou


parâmetros de rede. Só há necessidade de reiniciar o sistema no caso da instalação interna de
um novo periférico ou falha em algum hardware.

Funciona razoavelmente em computadores 386s x 25 com 4 MB de memória RAM, sem o


sistema gráfico X (neste caso, é recomendado 8 MB de RAM).

O crescimento e as novas versões do sistema não provocam lentidão do sistema, pelo contrário,
em cada nova versão os programadores procuram maior compatibilidade, de forma a
acrescentarem recursos úteis e melhorar o desempenho do sistema.

Não é necessária uma licença para a sua utilização. O GNU/Linux está licenciado de acordo com
os termos da GNU.

Acede sem problemas a discos formatados pelo MS-DOS, Windows, Novell, OS/2, NTFS,
SunOS, Amiga, Atari, Mac, etc.

Não são conhecidos vírus no Linux. Qualquer erro ou vulnerabilidade de segurança tem muito
poucas probabilidades de passar por todos os utilizadores sem que seja detetado. Assim que um
problema é detetado, é imediatamente corrigido pelos autores ou pelo próprio utilizador que o
detetou. Também o facto de os utilizadores normais não possuírem privilégios para modificar os
programas do sistema diminui consideravelmente a possibilidade de propagação de vírus.

O Linux permite executar aplicações DOS através do DOSEMU e aplicações Windows através do
WINE.

4
Suporta vários tipos de dispositivos, nomeadamente infravermelhos e rede via radioamador,
dispositivos plug-and-play, USB, etc.

Possui vários tipos de firewalls de alta qualidade e com grande poder de segurança e efetua
routing estático e dinâmico de pacotes. Pode atender a mais de um endereço IP na mesma placa
de rede, sendo muito útil para situações de manutenção em servidores de redes ou para a
emulação de "mais computadores" virtualmente.

Os servidores Web e FTP podem estar localizados no mesmo computador.

O sistema de ficheiros usado pelo GNU/Linux (EXT3 / EXT4) organiza os ficheiros de forma a
evitar a fragmentação.

Permite a montagem de um servidor Web, e-mail, news, etc., com um baixo custo e alta
performance. O servidor Web, o Apache, é distribuído gratuitamente com o Linux, bem como o
Sendmail.

Por ser um sistema operativo de código aberto, é possível analisar e adaptar o código-fonte,
podendo funcionar como um mecanismo de segurança para as empresas (não se sabe o que um
sistema com o código-fonte fechado faz na realidade...........já tinham pensado nisso!!??).

Suporta diversos dispositivos e periféricos disponíveis no mercado, tanto novos como obsoletos.
Pode ser executado em arquiteturas diferentes (Intel, Macintosh, Alpha, Arm, etc.).

Tem consultores técnicos espalhados por todo o mundo especializados no suporte ao sistema.

5
2. O clone Linux
2.1. Conceitos básicos
Como já foi referido anteriormente, o Linux é um sistema operativo multitarefa e multiutilizador.

É multiutilizador porque pode ser utilizado por vários utilizadores simultaneamente. Estes
utilizadores podem estar ligados através de terminais remotos por rede.

Esta característica obriga o sistema a executar mecanismos de proteção, para impedir que os
utilizadores possam interferir no trabalho uns dos outros, bem como aceder aos mesmos recursos
simultaneamente.

A entrada no sistema é feita através de login. Durante este processo, é solicitado ao utilizador o
seu username seguido de uma respetiva palavra-chave. Após a entrada no sistema, é criada uma
sessão de trabalho em que o sistema executa todas as ordens recebidas do utilizador.

As tarefas solicitadas ao sistema pelo utilizador ou lançadas automaticamente pelo sistema


(daemons) denominam-se processos.

Quando o utilizador termina as suas tarefas ou pretende abandonar o sistema; deve efetuar o
logout, encerrando desta forma a sua sessão.

Existem tarefas relacionadas com o controlo do sistema que estão apenas reservadas a um
utilizador especial, chamado administrador ou superutilizador. Em Linux este utilizador
especial recebe o nome de root.
6
Apenas o root pode desligar o computador utilizando os seguintes comandos:

 shutdown -h now
 halt
 poweroff

Não é uma boa prática desligar diretamente o computador sem usar um dos comandos
anteriores, pois podem ocorrer perdas de dados ou falhas no sistema de ficheiros do disco devido
aos programas abertos e a dados ainda não gravados no disco.

Nunca é de mais referir que todos os trabalhos devem ser guardados para evitar surpresas.

Para reiniciar o sistema de forma segura deve ser utilizado um dos seguintes comandos:

 reboot
 shutdown -r now
 Ctrl + Alt + Del

2.2. Organização da informação


2.2.1. Ficheiros

Um ficheiro é a unidade onde estão armazenados os dados. Um ficheiro pode conter texto,
música, programas, base de dados, folha de cálculo, etc.

Cada ficheiro é identificado por um nome. As extensões permitem identificar o tipo de ficheiro, por
exemplo:

 aulas.txt – o .txt indica que o conteúdo é um ficheiro de texto;


 script.sh - ficheiro de script (interpretado por /bin/sh);
 system.log - registo de algum programa no sistema;
 ficheiro.gz - ficheiro compactado pelo utilitário gzip.

A extensão de um ficheiro também ajuda a identificar o programa-fonte.

Os ficheiros podem ser binários ou de texto.

O GNU/Linux é case sensitive, isto é, diferencia letras maiúsculas e minúsculas. Por exemplo, o
ficheiro aulas é diferente de Aulas. Esta regra também é válida para os comandos e diretórios. É

7
uma boa prática, sempre que possível, utilizar letras minúsculas para identificar ficheiros, pois
quase todos os comandos do sistema estão em minúsculas.

Um ficheiro oculto no GNU/Linux é identificado por um ponto (.) no início do nome (por exemplo:
.bashrc). Os ficheiros ocultos não aparecem em listagens normais de diretórios. Deve ser usado
o comando Is -a para mostrar também os ficheiros ocultos.

2.2.2. Diretório

Um diretório é o local utilizado para armazenar vários ficheiros no intuito de uma melhor
organização e localização. O diretório, tal como o ficheiro, também é case sensitive.

Não podem existir dois ficheiros com o mesmo nome no mesmo diretório ou um subdiretório com
um mesmo nome de um ficheiro no mesmo diretório.

Os diretórios nos sistemas Linux/UNIX são especificados por “ / ” e não por “ \ ” como é feito no
DOS.

Os comandos para a manipulação de ficheiros e diretórios serão objeto de estudo mais à frente.

a) Diretório raiz ( / )

O diretório raiz é o diretório principal do sistema e é representado por "/", podendo ser acedido
com o comando

cd /.

Dentro deste diretório estão todos os diretórios do sistema, como se pode ver nas figuras 4.5 e
4.6.

A estrutura de diretórios é também chamada árvore de diretórios.

8
Cada diretório do sistema tem os seus respetivos ficheiros, que são armazenados conforme
regras definidas pela FHS (File System Hierarchy Standard - Hierarquia-Padrão do Sistema de
Ficheiros), que define o tipo de ficheiro que deve ser armazenado em cada diretório.

9
b) Diretório-padrão

Diretório-padrão ou diretório atual é o diretório onde nos encontramos no momento. Para saber
qual o diretório atual basta digitar o comando

pwd

que será estudado mais adiante.

O diretório-padrão também é identificado por um . (ponto). O comando

Is .

pode ser usado para listar os ficheiros do diretório atual.

c) Diretório home

É o diretório do utilizador. Em sistemas Linux, cada utilizador possui o seu próprio diretório
onde poderá armazenar os seus programas e ficheiros pessoais.

Este diretório está localizado em /home/[login]; por exemplo, se o login do utilizador for lara o
diretório home será /home/lara. O diretório home também é identificado por um ~ (til); pode-se
escrever o comando

Is /home/lara

ou

Is ~

para listar o conteúdo do diretório home (do utilizador lara).

O diretório home do root está localizado em /root (na maioria das distribuições Linux), como é o
caso da distribuição utilizada neste manual.

d) Diretório superior

O diretório superior (Upper Directory) é identificado por .. (2 pontos).

Caso esteja no diretório /usr/local e pretenda listar os ficheiros do diretório /usr pode digitar

10
Is ..

Este recurso também pode ser utilizado para copiar ou mover ficheiros, diretórios, etc.

e) Diretório anterior

O diretório anterior é identificado por - (hífen). É útil para voltar ao último diretório utilizado. Por
exemplo, se estiver no diretório /home/lara e digitar

cd /lib

pode voltar facilmente para o diretório /home/lara usando o comando

cd -

f) Caminho na estrutura de diretórios (path)

Path são os diretórios a percorrer até ao ficheiro ou diretório pretendido.

Por exemplo, para ver o ficheiro /home/lara/teste2.txt existem duas opções:

1. Mudar o diretório-padrão para /home/lara com o comando

cd /home/lara

e utilizar o comando para visualizar o conteúdo do ficheiro

cat teste2.txt

2. Utilizar o comando cat especificando o caminho completo na estrutura de diretórios e o


nome do ficheiro

cat /home/lara/teste2.txt

O caminho de diretórios é necessário para indicar ao sistema operativo onde encontrar um


ficheiro na árvore de diretórios.

11
g) Estrutura-base de diretórios

O sistema Linux possui a estrutura-base de diretórios apresentada nas figuras 4.5. e 4.6. O
objetivo de cada um destes diretórios é descrito em seguida.

12
3. Escolha de uma distribuição, instalação e
configuração
3.1. Distribuições
A instalação das primeiras versões do Linux não era simples. Era necessário instalar primeiro o
kernel e só depois os diferentes programas para poder trabalhar com o sistema. Para executar
estas tarefas era necessário ter conhecimentos técnicos ao nível de instalação dos sistemas
operativos.

Para facilitar o processo de instalação, bem como adaptar o Linux a diferentes: grupos de
utilizadores e também a diferentes países, começaram a aparecer organizações ou empresas
com este objetivo. Este é o significado básico de distribuição. Cada distribuição tem as suas
características próprias, tais como o modo de instalação, o objetivo, a localização de programas,
os nomes de ficheiros de configuração, etc.

A instalação de uma determinada distribuição num computador com hardware atualizado permite
a obtenção das melhores performances.

De acordo com o site oficial do Linux (http://www.linux.org), existem cerca de três centenas e
meia de distribuições:

 as grandes distribuições, fornecidas em vários CD ou em DVD;


 as pequenas distribuições que funcionam a partir de um CD (Live CD Distribution), uma
pen drive ou até uma disquete.

3.1.1. Grandes distribuições

Destacamos algumas das grandes distribuições existentes no mercado, indicando o endereço do


sítio da Internet.

Arch Linux

O Arch Linux é uma distribuição Linux otimizada para


processadores Pentium II ou superior. Utiliza o gestor de pacotes
Pacman que facilita a tarefa de personalização do sistema pelos
utilizadores.

- Site oficial: http://www.archlinux.org/


- No momento em que estás a ler/aprender/rever/estudar isto, provavelmente, haverá mais!!!!
13
Alinex

O Alinex é uma distribuição portuguesa desenvolvida na Universidade de Évora


como resultado de uma parceria realizada em 2005 com a Junta da Extremadura
Espanhola, responsável pela versão GNU/LinEx.

O Alinex, como o LinEx, são distribuições com base Debian, localizadas para os
respetivos países.

- Site oficial: http://www.alinex.org

Caixa Mágica

O Linux Caixa Mágica apareceu em Outubro de 2000 e é uma


distribuição de Linux portuguesa projetada para empresas,
particulares, educação e administração pública.

- Site oficial: http://www.caixamagica.pt

Debian

A distribuição Debian, também denominada Debian GNU/Linux,


baseia-se no projeto GNU. O Debian Linux é especialmente
conhecido pelo seu sistema de gestão de pacotes, chamado APT,
que permite atualizações relativamente fáceis a partir de versões
antigas e facilidade de instalação de novos pacotes e de remoção total de pacotes antigos.

O projecto Debian é mantido por doações através da organização sem fins lucrativos Software in
the Public Interest (SPI).

Existem várias distribuições baseadas no Debian, nomeadamente o Ubuntu Linux.

- Site oficial: http://www.debian.org

Ubuntu Linux

O Ubuntu é um sistema operativo Linux baseado na distribuição


Debian, que também existe nas versões de uso geral. Diferencia-se

14
do Debian por ser lançado semestralmente, por disponibilizar suporte técnico nos 18 meses
seguintes ao lançamento de cada versão e pela filosofia ao redor da sua conceção, utilização e
distribuição. A proposta do Ubuntu é oferecer um sistema operativo que qualquer pessoa possa
utilizar, sem dificuldades, independentemente da nacionalidade, nível de conhecimento ou
limitações físicas. A distribuição deve ser constituída totalmente por software livre e gratuito, além
de isenta de qualquer custo.

- Site oficial: http://www.ubuntulinux.org/

Slackware Linux

O Slackware Linux é uma das mais antigas e conhecidas


distribuições do Linux.

Criado em 1993 e mantido por Patrick Volkerding, a Slackware tem


por objetivo manter-se fiel aos padrões Unix, rejeitando também ferramentas de configuração que
escondam do utilizador o funcionamento real do sistema. O Slackware é composto somente por
aplicações estáveis e não por versões beta ou pre-releases.

Simplicidade e estabilidade são as duas principais características desta distribuição. O Slackware


é muito utilizado por utilizadores experientes porque não possui ferramentas de configuração - as
configurações do sistema são feitas a partir da edição de documentos de texto.

Possui a sua própria gestão de pacotes, o pkgtool (installpkg, upgradepkg, removepkg,


explodepkg, makepkg). O formato dos pacotes .tgz é bastante simples, idêntico ao .tar.gz,
contendo apenas os ficheiros a serem instalados nas suas respetivas pastas em relação à raiz do
sistema, além de um script com comandos complementares para a instalação.

O Slackware Linux é um sistema operativo livre com o código-fonte aberto, disponível na


Internet, podendo os utilizadores adaptá-lo às próprias necessidades.

- Site oficial: http://www.slackware.com

Open Suse

A SuSE, mais precisamente SuSE LINUX AG, é uma empresa alemã que
disponibiliza soluções baseadas no sistema operativo GNU/Linux, incluindo

15
várias distribuições.

- Site oficial: http://www.opensuse.org

Red Hat Linux

O Red Hat Linux é uma das distribuições mais antigas do Linux e uma das
mais utilizadas no mundo, principalmente em ambientes empresariais. Trata-se
de uma distribuição que serviu de base para várias outras, sendo muito
utilizada pelas empresas devido à sua estabilidade, suporte e programas de
certificação.

O Red Hat 9 foi a última versão lançada para computadores desktop, estando a
empresa concentrada atualmente nas versões destinadas a servidores.

Esta distribuição foi baseada no conceito de pacotes denominado RPM (Red Hat Package
Manager). Cada pacote fornece uma parte diferente de software, configurado, completamente
testado, pronto a funcionar e fácil de remover. Além disso, o conceito de pacotes traz uma
vantagem adicional: a facilidade de atualização.

O Red Hat Linux é muito flexível e simples de instalar. A gestão de pacotes RPM facilita a
instalação ou remoção de pacotes de software. Além disso, o Red Hat Linux inclui várias
ferramentas administrativas que procuram simplificar as tarefas de administração.

A versão desktop do Red Hat transformou-se no Fedora Project, uma distribuição mantida pela
comunidade e que recebe contribuições e suportes do Red Hat.

O motivo pelo qual o nome Red Hat não foi mantido para a nova distribuição tem a ver com
questões de marketing. A marca Red Hat passou a ser usada apenas nos produtos comerciais,
como uma forma de incentivar a compra, enquanto o Fedora ficou como a parte livre, destinada a
utilizadores domésticos.

- Site oficial: http://www.redhat.com/

Fedora

A ideia do Fedora é diminuir os custos de desenvolvimento da distribuição para o Red Hat, ao


mesmo tempo que incentiva contribuições da comunidade, o que eventualmente pode levar a

16
melhores resultados. Desta forma, os novos recursos podem ser incluídos primeiro no Fedora e,
depois de bem testados, serem migrados para as versões Premium do Red Hat, de atualização
mais lenta.

O Projecto Fedora não tem fins lucrativos e é mantido pelo Red Hat e por voluntários. Tem por
objetivo a criação de uma distribuição para desktops, devendo resultar em versões mais
amigáveis e mais voltadas para o utilizador doméstico.

A primeira versão de testes do Fedora foi lançada em Julho de 2003, sucedendo o Red Hat 9. O
Fedora mantém as mesmas características do Red Hat:

 código aberto (open source) e gratuito;


 destinado essencialmente a utilizadores domésticos;
 semelhante ao Red Hat, que é utilizado em ambientes empresariais,
facilitando desta forma a migração para este sistema.

Esta será a distribuição a utilizar neste manual.

- Site oficial: http://fedoraproject.org

CentOS

O CentOS é uma distribuição que deriva das versões servidoras do


Red Hat. O CentOS é compilado a partir do código-fonte disponível
pelo Red Hat de acordo com as regras de redistribuição definidas
pelo Red Hat Enterprise, onde são removidos os softwares proprietários de terceiros (remoção
de imagens, logótipos e textos referenciando o Red Hat, desde que não façam parte de notas de
copyright, etc.). Distribuído com código aberto (open source) sobre licença GNU/GPL para
aplicações com servidores desde pequeno a grande porte. O tempo de vida de cada versão e das
respetivas atualizações pode durar alguns anos, sendo uma opção para servidores. No caso de
outras distribuições, por exemplo, o Fedora e o Ubuntu, sai uma versão nova a cada 6 a 12
meses e o tempo de vida das atualizações é muito limitado, por volta de 18 meses. Ao usar uma
destas distribuições torna-se necessário mudar de versão do sistema operativo ao fim de pouco
tempo para se continuar a ter acesso a atualizações.

- Site oficial: http://www.centos.org/

17
3.1.2. Pequenas distribuições

As pequenas distribuições são também denominadas distribuições IiveCD pelo facto de


funcionarem a partir de um CD, uma USB ou de uma disquete.

Das pequenas distribuições destacamos as seguintes:

Knoppix

O Knoppix é uma distribuição GNU/Linux baseada no Debian,


gravada em CD de arranque dotado de um sistema de deteção
automática de hardware, suporte para vários dispositivos gráficos, de
som, SCSI, USB e outros periféricos. Ao efetuar o arranque com o CD
do Knoppix, o utilizador não precisa de efetuar qualquer instalação de
software no seu disco rígido. Devido à sua descompressão, que
acontece a partir do CD, disponibiliza mais de 2 GB de programas,
desde aplicações de escritório eletrónico a ferramentas de sistema, o
que permite usar um CD de Knoppix como uma demonstração do GNU/Linux, um CD educativo,
um sistema de recuperação, ou adaptado e usado como plataforma para software de
demonstração.

O Knoppix foi uma das primeiras distribuições em CD do GNU/Linux, a partir do qual surgiram
vários outros projetos do género.

- Site oficial: http://www.knoppix.com

Coyote

O projecto Coyote consiste numa série de produtos baseados no Linux,


desenvolvidos pela Vortech Consulting, com o objetivo de fornecer
serviços de partilha de acesso à Internet, firewall e performance. Entre
estes produtos existe a mini-distribuição Coyote Linux criada numa única
disquete, com um kernel e configurações mínimas.

- Site oficial: http://coyotelinux.com

18
IPCop

O IPCop é uma mini-distribuição Linux com o objetivo de criação de uma firewall,


com interface de gestão Web. É desenvolvida para utilizadores domésticos ou
pequenas empresas. O IPCop oferece as funcionalidades equivalentes a um
dispositivo de rede de alto custo, utilizando hardware obsoleto e software livre, tão
seguro como as soluções existentes no mercado. O slogan da distribuição é "Os maus pacotes
param aqui".

- Site oficial: http://sourceforge.net/apps/trac/ipcop

Untangle

O Untangle é uma distribuição que disponibiliza uma família integrada de


aplicativos que ajudam a simplificar e a fortalecer uma rede. Os
aplicativos mais populares permitem às empresas bloquear spams,
spywares, vírus e phishs, filtrar conteúdos inapropriados da Internet,
como os utilizados por aplicativos de mensagem instantânea, e o
fornecimento de acesso remoto. Cada aplicativo encontra-se disponibilizado para download, é
préconfigurado e tem integração garantida.

- Site oficial: http://www.untangle.com

19
3.2. Instalação da distribuição Fedora 
O Fedora é um sistema operativo completo para servidor e computadores pessoais criado
inteiramente com software de código aberto. Trata-se de um sistema operativo em permanente
atualização, pelo que não é o mais apropriado para a utilização em aplicações empresariais
críticas, contudo, tal como já foi referido, a sua semelhança com o Red Hat facilita a sua
migração para este sistema.

Será descrito o processo de instalação do Fedora em computadores pessoais, o sistema de


instalação é suficientemente flexível, facilitando a sua utilização mesmo por utilizadores
inexperientes.

Ao selecionar as opções default, o Fedora instala um sistema operativo completo para


computadores pessoais, incluindo aplicações de produtividade, utilitários de Internet e diversos
programas.

O Projeto Fedora, que produz e mantém o Fedora, é uma colaboração entre o Red Hat, Inc. e a
comunidade Free and Open Source Software (FOSS). Este projeto também fornece software
adicional empacotado para instalação num sistema Fedora.

3.2.1. Pré-instalação

Para instalar o Fedora são necessários os quatro CD ou o DVD de instalação. Existem conjuntos
de CD separados para cada arquitetura suportada. Atualmente, o Fedora suporta as arquiteturas
i386, ppc e x86_64:

 i386 - processadores compatíveis com Intel x86, incluindo Intel Pentium, Pentium MMX,
Pentium Pro, Pentium II, Pentium III, Celeron, Pentium 4, Xeon, Intel Dual core, Intel Core
2 Quad, VIA C3/C3-m, Eden/Eden-N, AMD Athlon, AthIonXP, Duron, AthIonMP e
Sempron;
 ppc - processadores PowerPC, como os encontrados em sistemas Apple Power
Macintosh, G3, G4 e G5, e IBM pSeries;
 x86_64 - processadores de 64 bits AMD, como os Athlon64, Turion64, Opteron e
processadores Intel de 64 bits, como os EM64T.

Deverá ter também uma cópia atualizada das Notas da Versão (Release Notes), que especificam
os requisitos de hardware para a versão do Fedora e avisos sobre os problemas conhecidos com


- Será usada esta distribuição como exemplo
20
determinadas configurações de hardware e software. Estas notas podem ser encontradas em
http://docs.fedoraproject.org.

Caso não tenha o DVD de instalação do Fedora pode criá-lo, efetuando os seguintes
procedimentos:

 Descarregar o ficheiro ISO correspondente à arquitetura que vai trabalhar, a partir do


endereço oficial do Fedora.
 Após a descarga do ficheiro ISO, o DVD de instalação do Fedora pode ser criado usando
um software de gravação de DVD, por exemplo, o NERO.

3.2.2. Início da instalação

Para iniciar a instalação do Fedora deve configurar o computador para iniciar a partir do CD-
ROM/DVD. A maior parte das BIOS dos computadores já permitem configurações de arranque
por CD-ROM/DVD, Flash disc e rede.

Neste exemplo será demonstrada a instalação a partir do DVD do Fedora 12.

A instalação pode ser feita também a partir de um servidor de rede, sendo, neste caso,
necessário iniciar o computador através da rede por PXE (Pre-boot eXecution Environment).
Neste caso, é preciso saber o nome do servidor, o protocolo utilizado para a instalação (FTP,
HTTP ou NFS) e ainda o caminho (path) para os ficheiros de instalação.

Para abortar o processo de instalação em qualquer instante antes do momento A Instalar


Pacotes (fig. 4.40) basta pressionar as teclas Ctrl + Alt + Del ou desligar o computador. Não são
efetuadas alterações no computador até que seja iniciada a instalação dos pacotes.

Iniciando o computador a partir do DVD do Fedora aparece no ecrã a imagem da figura 4.21.

Neste ecrã, podem selecionar-se os seguintes métodos de instalação:

21
 Install or upgrade an existing system

Ao pressionar Enter é executado o programa de instalação do sistema operativo. Se já se


encontra instalada uma versão anterior do Fedora, pode-se realizar a atualização do sistema
operativo.

 Install system with basic video driver

Se a placa gráfica do computador não for suportada pelo programa de instalação em modo
gráfico, pode-se selecionar esta opção, para se efetuar a instalação do sistema operativo em
modo texto.

 Rescue installed system

Se o sistema operativo estiver danificado, com esta opção pode-se recuperar o sistema.

 Boot from local drive

Se o DVD de instalação arrancou por engano, ao selecionar esta opção, o computador arranca a
partir do disco rígido.

Quando se executa a primeira opção da figura 4.21, inicia-se a primeira fase do programa de
instalação aparecendo as imagens da figura 4.22.

22
Prima OK para testar o DVD ou Skip para proceder à instalação sem testar o DVD.

Deve-se testar qualquer DVD de instalação. Qualquer erro de leitura do DVD durante a instalação
pode abortar todo o processo

Após o teste do DVD aparece a imagem da figura 4.24. no ecrã. Pressionando OK aparece a
figura 4.25.

Pode-se efetuar um novo teste (Test) ou prosseguir com a instalação (Continue).

23
Pressionando Continue inicia-se a instalação do sistema operativo em modo gráfico.

Continuando com a instalação a partir do DVD e pressionando Next (fig. 4.26), aparece a opção
de seleção do idioma do utilizador (fig. 4.27 (a)) e a configuração do teclado (fig. 4.27. (b)).

24
3.2.3. Escolha do fuso horário e definição da password de root

No ecrã da figura 4.29 encontram-se duas formas para definir o fuso horário, que pode ser
selecionado no mapa ou através da lista.

Pressionando Seguinte, aparece a opção de definição da password de root.

O Fedora utiliza uma conta especial para administração do sistema, chamada root. A conta root
é limitada somente pelo SELinux. Não está sujeita a qualquer outra restrição normal de conta.

Deve-se evitar fazer login no Fedora como root. Quaisquer ferramentas de administração que
necessitem de privilégios de root farão a sua solicitação.

O programa de instalação do Fedora pede uma password de root com pelo menos seis
caracteres.

25
Como o utilizador root pode, potencialmente, controlar qualquer parte do sistema, a password
deve ser restrita.

Algumas regras para se criar uma boa password podem ser as seguintes:

 Utilizar uma combinação de letras maiúsculas, letras minúsculas, números, pontuação e


outros caracteres.
 Não utilizar uma palavra ou nome.
 Não utilizar a mesma password em mais de um sistema.

3.2.4. Configuração das partições do disco

Selecionando Seguinte na figura 4.30, surge o ecrã de seleção do método na gestão das
partições do disco (fig. 4.31).

No ecrã da figura 4.32, pode-se selecionar um método de gestão das partições por omissão ou
manualmente.

26
As primeiras quatro opções permitem efetuar uma instalação automática sem ter de gerir as
partições manualmente.

Opções na seleção do método na gestão das partições (fig. 4.32):

 Modo automático - Utilizar a unidade inteira - Todas as partições existentes são


removidas do disco rígido, incluindo as partições de outros sistemas operativos, tais como
NTFS e FAT. O espaço é integralmente usado na instalação do novo sistema operativo.

Ao selecionar esta opção, todos os dados dos discos rígidos são removidos pelo programa de
instalação. Não se deve selecionar esta opção se existirem dados que se pretendam manter.

 Substituir sistema Linux existente - Esta opção remove apenas as partições Linux
criadas numa instalação Linux anterior. Isto é, não remove outras partições que possa ter
nos seus discos duros, tais como partições VFAT ou FAT32.
 Encolher sistema atual - Redimensiona os dados e partições manualmente. Instala ainda
uma disposição de partições do Fedora por omissão no espaço libertado.

Ao redimensionar as partições onde estão instalados outros sistemas operativos, pode acontecer
que não se possa usar esses sistemas operativos. Embora esta opção de gestão das partições
não remova os dados, os sistemas operativos necessitam de algum espaço livre em disco. Antes
de se redimensionar uma partição que contém um sistema operativo, deve-se analisar o espaço
livre necessário para que este possa funcionar.

27
 Utilizar espaço livre - Utiliza somente o espaço não particionado nos discos rígidos para
instalar o Fedora.
 Criar uma disposição personalizada - Podem-se gerir manualmente todas as partições
do disco rígido.

Configuração automática das partições

Se for selecionada na figura 4.33 (a) a opção Utilizar a unidade inteira e depois clicar em
Seguinte, o instalador prossegue dando origem ao ecrã da figura 4.34. Se já existir alguma
partição, vai surgir a figura 4.33 (b). Caso não se pretenda perder as informações, a instalação
deve ser abortada. O instalador solicita que sejam confirmadas as opções da gestão das
partições selecionadas. Se selecionar Gravar alterações para disco, o instalador avança para a
figura 4.34.

Até este ponto no processo de instalação, o instalador não faz alterações permanentes no disco
rígido do computador. Se na figura 4.33 (b) for dada ordem para Gravar as alterações no disco,
o instalador vai criar as partições e iniciar a transferência do Fedora para o disco. Dependendo
das opções de particionamento selecionadas, este processo pode incluir a remoção de dados
existentes no seu computador. Caso se pretenda rever qualquer uma das escolhas feitas até este
ponto deve-se carregar em Recuar.

Após a confirmação da criação das partições, o Fedora cria automaticamente as partições. Na


figura 4.34 podem ver-se as partições criadas automaticamente pelo instalador. Ao selecionar
Seguinte o instalador prossegue com a instalação do Fedora.

28
Configuração manual das partições

Podem-se configurar manualmente todas as partições. Para isso deve-se selecionar na figura
4.32 a opção Criar uma disposição personalizada e de seguida clicar em Seguinte. Se não
existir nenhuma partição no disco rígido, obtém-se o ecrã da figura 4.35, onde se podem criar as
partições.

Na instalação do Fedora devem existir pelo menos duas partições:

 Partição swap, utilizada como uma memória auxiliar do sistema operativo. É a extensão da
memória real. Recomenda-se que seja pelo menos o dobro da memória RAM disponível
(fig. 4.36). Assim, o sistema operativo consegue gerir dados que necessitem de mais
memória do que a memória RAM existente no computador.

29
A criação da partição swap é iniciada a partir do botão Nova que se encontra no ecrã da
figura 4.35. O assistente avança para o ecrã da figura 4.36, onde deve selecionar o tipo de
sistema de ficheiros - neste caso deve ser swap - e ainda o tamanho reservado à partição.
Para se finalizar a criação da partição clica-se em OK. Na figura 4.37 pode-se visualizar a
partição swap criada.

 Partição associada à diretoria principal do sistema operativo, designada por ( / ). Esta


partição será vista como partição root.

O início do procedimento para criar a partição ( / ) é idêntico ao da criação da partição


swap. Seleciona-se o botão Nova que se encontra no ecrã da figura 4.35. No ecrã da
figura 4.38, deve-se selecionar o tipo de sistema de ficheiros - neste caso pode ser o ext4 -
e ainda o tamanho reservado à partição. Na escolha do espaço reservado à partição pode-
se escolher uma das três opções para dimensionar as partições:

o Tamanho fixo - utiliza o tamanho fixo mais próximo do indicado.


o Utilizar todo o espaço até (MB) - dimensiona a partição para um tamanho máximo.
o Utilizar todo o espaço disponível - dimensiona a partição até preencher o espaço
restante dos discos selecionados.

Neste exemplo optou-se por atribuir o resto do espaço disponível no disco à partição ( / ).
Para terminar clica-se em OK. Na figura 4.39 podem-se visualizar as partições swap e ( / ).

30
Apagar partição

Se inicialmente existirem partições no disco ou se houver um engano ao criar partições, estas


podem ser removidas selecionando com o rato a partição que se pretende eliminar e de seguida
clicando no botão Apagar da figura 4.39.

Após a criação das partições swap e ( / ), a instalação prossegue clicando no botão Seguinte da
figura 4.39. No ecrã da figura 4.40, clica-se no botão Gravar as alterações no disco para
continuar com a instalação.

ATENÇÃO:

Se houver necessidade de se alterar alguma configuração ou se foi apagada alguma partição


onde tem dados que não devem ser apagados, deve-se clicar no botão Recuar.

Ao clicar no botão Gravar as alterações no disco da figura 4.40, todos os dados são perdidos.

31
Muitos sistemas têm mais partições do que o mínimo apresentado. As partições devem ser
escolhidas com base nas necessidades do sistema. Caso não se tenha certeza acerca do tipo de
partição a escolher deve-se optar pelo particionamento automático.

As partições de dados têm um ponto de montagem. O ponto de montagem indica o diretório


onde se encontram os conteúdos. Uma partição sem ponto de montagem não é acessível aos
utilizadores.

Os dados não localizados em qualquer partição encontram-se na partição ( / ) (ou raiz, root). A
partição ( / ) é o topo da estrutura de diretórios. O diretório /root é o diretório da conta do
administrador do sistema.

É possível definir subdiretórios para partições. Alguns administradores criam ambas as partições
/usr e /usr/local. Nesse caso, os ficheiros de /usr/local/, como, por exemplo, /usr/local/bin/foo,
estarão na partição /usr/local. Quaisquer outros ficheiros em /usr/, como, por exemplo,
/usr/bin/foo, estarão na partição /usr.

A criação de muitas partições, em vez de uma grande partição ( / ), é uma solução mais
complexa, mas apresenta diversas vantagens, tais como:

 facilidade na reinstalação do sistema operativo sem haver necessidade de se apagarem os


dados, por exemplo, se for criada uma partição /home e, se ao reinstalar o sistema
operativo for formatada a partição ( / ), os dados dos utilizadores não são perdidos;
 em caso de falha de um sector do disco rígido é, normalmente, afetada apenas uma
partição e não todo o disco;
 melhoria na distribuição de espaço reservado a cada partição.

Tipos de partição

Os tipos de partição indicam o formato do sistema de ficheiros que permite ao Linux organizar,
procurar e recuperar ficheiros armazenados nessa partição. Na criação automática das partições,
o Fedora utiliza o sistema de ficheiros ext4 para partições de dados. Pode-se usar também a
versão do sistema de ficheiros ext3 ou, em casos em que existam necessidades específicas,
pode-se optar por outro tipo de sistema de ficheiros.

32
Partições LVM (Logical Volume Management)

As partições LVM são formatadas como volumes físicos. Um ou mais volumes físicos podem ser
combinados para formar um grupo de volumes. Cada armazenamento total dos grupos de
volumes é dividido num ou mais volumes lógicos. A função dos volumes lógicos é muito parecida
com a das partições de dados-padrão: têm um tipo de sistemas de ficheiros, como ext4, e um
ponto de montagem.

Um administrador pode aumentar ou diminuir volumes lógicos sem destruir os dados. Se os


volumes físicos num grupo de volumes estão em drives separados, então os administradores
também podem propagar um volume lógico sobre múltiplos discos e conjuntos RAID.

A opção Particionamento Automático cria as partições como Volumes LVM.

3.2.5. Conclusão do processo de instalação

Ao pressionar o botão Gravar as alterações no disco do ecrã da figura 4.40, o assistente


avança para o ecrã da figura 4.41, para efetuar a configuração do gestor de arranque.

Gestor de arranque

O gestor de arranque é um pequeno programa que lê e inicia o sistema operativo. O Fedora


utiliza o gestor de arranque GRUB (GRand Unified Bootloader) por defeito (default).

Caso existam um ou mais sistemas operativos instalados no computador serão automaticamente


incluídos pelo programa de instalação, permitindo-nos definir a ordem de arranque dos SO.

Ao pressionar Seguinte aparece a opção de configuração dos pacotes a instalar.

33
3.2.6. Instalação de pacotes

De seguida surge uma caixa de diálogo para a seleção de pacotes a instalar e os repositórios do
software adicional. Os repositórios são servidores que se encontram na Internet com um
conjunto de software que pode não vir no DVD de instalação do Fedora.

Pode-se optar por instalar os pacotes predefinidos (fig. 4.42) - opção Customize later, ou
selecionar o conjunto de pacotes a instalar - opção Customize now.

A alteração dos pacotes de um determinado grupo a instalar pode ser feita em detalhe. O Fedora
instala automaticamente os pacotes básicos de um grupo, se o grupo for selecionado.

O Fedora mostra cada grupo com o número de pacotes selecionados para instalação e o número
total de pacotes do grupo.

Neste exemplo, opta-se por selecionar na figura 4.42 a opção Customize later. Aqui são
instalados os pacotes predefinidos do Fedora, a instalação do Fedora, como computador de
Escritório e Produtividade. Após a instalação do Fedora é possível adicionar software e
configurar o computador para funcionar como computador de Desenvolvimento de Software
e/ou de Servidor Web.

Ao clicar no botão Seguinte da figura 4.42, o instalador vai instalar os pacotes e respetivas
dependências (ver figs. 4.43 (a), 4.43 (b) e 4.43 (c)).

34
Depois de concluído o processo de instalação aparece a imagem da figura 4.44, onde é
necessário clicar sobre o botão Reiniciar.

3.2.7. Primeira inicialização

A primeira vez que inicia um novo sistema Fedora é executado o Agente de Configuração que
configura o sistema antes do primeiro login.

Pressionando em Avançar inicia-se o Agente de Configuração.

35
3.2.8. Acordo da licença

A figura 4.47 mostra os termos gerais de


licenciamento para o Fedora. Cada pacote de
software no Fedora está coberto pela sua própria
licença, aprovada pela Open Source Initiative (OSI).

Podem ser obtidas mais informações em:

http://fedoraproject.org/wiki/Legal/Licenses/LicenseAgreement

Para prosseguir, selecione o botão Avançar.

No ecrã da figura 4.48, podem-se criar utilizadores e atribuir a respetiva palavra-chave. No


Fedora não se deve entrar com o utilizador root, mas sim com uma conta de um utilizador
normal. A seleção da palavra-chave deve respeitar os requisitos na atribuição da palavra-chave
ao utilizador root. Após a criação de um utilizador normal pode-se avançar com a instalação
clicando no botão Avançar.

36
Aparece de seguida a configuração da data e hora do sistema (fig. 4.49). Após o ajuste da hora e
data, clica-se no botão Avançar para continuar com a instalação.

No ecrã da figura 4.50 tem-se acesso à informação do perfil do hardware. Pode-se selecionar
Enviar perfil para enviar os dados do hardware do computador para o Projeto Fedora. Caso não
se pretenda enviar os dados do hardware, deve-se selecionar a opção Não enviar perfil. A
instalação avança ao clicar-se no botão Terminar. No ecrã da figura 4.51 tem de se optar por não
enviar os dados do perfil do hardware, botão Não, não enviar, ou por reconsiderar o envio, botão
Reconsiderar o envio. Neste exemplo, optou-se por selecionar a opção Não enviar perfil na
figura 4.50 e na figura 4.51 selecionou-se o botão Não, não enviar, para continuar com a
instalação.

37
3.2.9. Entrada no sistema

A entrada no sistema deve ser feita introduzindo o nome do utilizador e a respetiva palavra-chave,
criados anteriormente (fig. 4.48). As tarefas mais comuns deverão ser efetuadas utilizando esta
conta. A conta de root só deverá ser utilizada, como já foi referido, em tarefas administrativas.

Nas figuras 4.52 e 4.53 estão apresentadas, respetivamente, a seleção do utilizador e a


colocação da palavra-chave.

Após a introdução da palavra-chave correta, é "carregado" o sistema operativo, que apresenta o


ambiente de trabalho visível na figura 4.54.

A partir deste momento, o sistema operativo Fedora está pronto a ser utilizado.

38
4. Comandos Unix/Linux
Todos os comandos estão descritos no manual dos comandos online que acompanha quase
todas as distribuições do Linux. Estes manuais contêm uma descrição dos comandos/programas
e detalhes sobre o modo de utilização das opções, documentando também os parâmetros
utilizados em alguns ficheiros de configuração.

A utilização do manual é feita da seguinte forma:

man [secção] [comando/ficheiro]

secção - É a secção do manual que será aberta; quando omitida, mostra a primeira secção do
comando encontrada.

comando/ficheiro - Comando/ficheiro que deseja pesquisar.

Teclas de navegação dentro das páginas do manual:

 q - Sai da página do manual.


 PageDown ou f/ PageUp ou w - Muda de página (25 linhas abaixo/acima).
 ↑(k) / ↓(e) - 1 linha acima/abaixo.
 r - Atualiza o ecrã.
 p ou g - Início da página.
 h - Ajuda sobre as opções da página do manual.
 s - Guarda (por exemplo: /tmp/Is).

Exemplos:

 man Is
 man 5 hosts access

39
4.1. Comandos
Os comandos são ordens dadas ao sistema operativo para executar uma determinada tarefa.
Cada comando tem uma função específica pelo que se deve conhecer muito bem a sua função
de forma a escolher o mais adequado para determinada tarefa.

Exemplos:

 Is - Mostra os ficheiros de um diretório.


 cd - Para mudar de diretório.

Um comando aceita opções e parâmetros:

Opções - As opções são utilizadas para controlar a forma como o comando será
executado.

Exemplos:

ls -t

Is -l -a ou Is –Ia

ls --all ou ls –a

Parâmetros - Identificam o caminho, a origem, o destino, a entrada-padrão ou a saída-


padrão, que será passado ao comando.

Exemplo:

Is /media

/media - é o parâmetro passado ao comando Is.

Existem dois tipos de comando: comandos internos e comandos externos.

40
4.1.1. Comandos internos

São comandos que estão localizados dentro do interpretador de comandos e não no disco. São
carregados com o interpretador de comandos na memória RAM do computador.

Quando se executa um comando o interpretador de comandos verifica primeiro se se trata de um


comando interno.

Exemplos de comandos internos são: cd, exit, echo, bg, fg, source, help.

4.1.2. Comandos externos

São comandos que estão localizados no disco. Os comandos são procurados no disco usando o
path e são executados logo que sejam encontrados.

4.1.3. Prompt

A prompt é o aviso apresentado na linha de execução de comandos.

A prompt do utilizador root é identificada pelo símbolo # e a dos restantes utilizadores pelo
símbolo $.

Utilizando as setas (↓, ↑) pode-se recuperar os comandos digitados anteriormente.

As imagens do ecrã podem ser recuperadas utilizando as teclas SHIFT PgUp/ PgDown.

Outros atalhos:

Backspace - Apaga um caracter à esquerda do cursor.


Del - Apaga o caracter acima do cursor.
CTRL+A - Move o cursor para o início da linha de comandos.
CTRL+E - Move o cursor para o fim da linha de comandos.

41
CTRL+U - Apaga o que estiver à esquerda do cursor. O conteúdo apagado é
copiado para utilizar com o CTRL+Y.
CTRL+K - Apaga o que estiver à direita do cursor. O conteúdo apagado é
copiado para utilizar com o CTRL+Y.
CTRL+L - Limpa o ecrã e mantém o texto que estiver a ser digitado na linha de
comando.
CTRL+Y - Coloca o texto que foi apagado na posição do cursor.

4.1.4. Interpretador de comandos

O interpretador de comandos também é conhecido como shell. É o programa responsável por


interpretar as instruções enviadas pelo utilizador e os seus programas ao kernel. Executa
comandos lidos do dispositivo de entrada-padrão (teclado) ou de um ficheiro executável. É a
principal ligação entre o utilizador, os programas e o kernel.

O Linux possui diversos tipos de interpretadores de comandos, destacando-se o bash, ash, csh,
tcsh, sh, etc.

O interpretador de comandos do DOS, por exemplo, é o command.com.

Os comandos podem ser enviados para o interpretador de forma interativa e não interativa.

Forma interativa: Os comandos são digitados na prompt e passados ao interpretador de


comandos um a um. Neste modo, o computador depende do utilizador para executar uma
tarefa e/ou o próximo comando.

Forma não interativa: Neste modo, o computador executa os comandos de acordo com
um script criado previamente pelo utilizador. A ordem de execução dos comandos é a
definida na rotina do script.

O shell bash permite ainda completar os nomes dos comandos. Para tal, pressiona-se a tecla
TAB, após digitar os caracteres iniciais do comando. O comando é completado e acrescentado
um espaço. No caso de o comando não ser encontrado o interpretador de comandos emite um
beep.

42
Exemplos:

ech (TAB)

exi (TAB)

sourc (TAB)

hel (TAB)

4.1.5. Comandos login e logout

Login - entrada no sistema através da introdução do nome do utilizador e da password.

Logout - saída do sistema que também pode ser feita utilizando os comandos CTRL+ALT+DEL,
ou quando o sistema é reiniciado ou desligado.

4.1.6. Caracteres especiais

Os caracteres especiais são recursos utilizados para especificar um ou mais ficheiros ou


diretórios do sistema de uma só vez.

São três os caracteres especiais em Linux:

Carácter Significado
* Substitui um ou mais caracteres
? Substitui apenas um caracter
[] Sequência de um ou mais caracteres pertencentes ao conjunto

Exemplos:

 Listagem dos ficheiros do diretório /bin que começam com a letra g.

43
 Listagem dos ficheiros do diretório /sbin cujo segundo caracter é a letra c.

 Listagem dos ficheiros com 3 caracteres do diretório /sbin.

 Listagem dos ficheiros com o nome começado por Teste e mais dois caracteres
pertencentes ao conjunto definido entre parêntesis retos.

4.2. Comandos para manipulação de diretórios


Descrevem-se, em seguida, os comandos utilizados para a manipulação de diretórios.

4.2.1. ls

Is [opções] [path] - list segments, mostra a listagem dos ficheiros contidos num diretório.

44
Uma listagem feita com o comando Is -I é mostrada da seguinte forma:

45
Onde:

Exemplos:

ls

 Lista os ficheiros do diretório atual.

ls /bin /sbin

 Lista os ficheiros do diretório /bin e /sbin.

ls -la /bin

 Listagem completa (vertical) dos ficheiros do diretório /bin incluindo os ocultos.

As permissões associadas aos diretórios/ficheiros serão abordados mais adiante.

4.2.2. cd, chdir, pwd

cd [diretório] - change directory, entra num diretório.

É necessário ter a permissão de execução para entrar no diretório.

diretório Nome do diretório em que se deseja entrar.

46
Exemplos:

Usando cd sem parâmetros ou cd ~

 Retorna ao diretório home do utilizador.

cd /

 Vai para o diretório raiz.

cd -

 Retorna ao diretório acedido anteriormente.

cd ..

 Sobe um nível na hierarquia dos diretórios.

cd ../[diretório]

 Sobe um nível na hierarquia dos diretórios e entra imediatamente no diretório especificado


[diretório].

pwd - print working directory, mostra o nome e o caminho do diretório atual.

4.2.3. mkdir, rm

mkdir[opções] [path/diretório] - make directory, cria um diretório.

path Caminho onde o diretório será criado.


diretório Nome do diretório que será criado.
Mostra uma mensagem para cada diretório criado. As mensagens de erro
--verbose
serão mostradas mesmo que esta opção não seja usada.

Para criar um novo diretório, é preciso ter permissão de escrita.

47
Exemplos:

mkdir /tmp/teste

 Cria um diretório em /tmp com o nome de teste.

mkdir /tmp/teste /tmp/teste1 /tmp/teste2

 Cria os diretórios teste, teste 1, teste2 no diretório /tmp.

rm [path/diretório] - remove directory, remove diretórios e ficheiros.

O diretório a ser removido deve estar vazio e deve-se ter permissão de escrita para poder
remover o diretório.

path Caminho do diretório que será removido.


diretório Nome do diretório que será removido.

É necessário que esteja um nível acima do(s) diretório(s) que será(ão) removido(s).

Para remover diretórios não vazios deve-se utilizar o comando:

rm -r

Por exemplo, para remover o diretório /tmp/teste deve-se encontrar o diretório /tmp e executar o
comando:

rm teste

A remoção de um ficheiro pode ser realizada executando o comando rm, por exemplo, para se
remover o ficheiro /tmp/config.conf, deve-se encontrar o diretório /tmp e executar o comando:

rm config.conf

ou

Se o utilizador não se situar no diretório /tmp, pode usar o caminho absoluto, executando o
comando:

rm /tmp/ config.conf

48
4.3. Comandos para manipulação de ficheiros
Descrevem-se em seguida os comandos utilizados para a manipulação de ficheiros.

4.3.1. Visualizar ficheiros

cat [opções] [diretório/ficheiro] - mostra o conteúdo de um ficheiro binário ou texto.

diretório/ficheiro Localização do ficheiro de que deseja visualizar o conteúdo.


Opções
Mostra o número das linhas enquanto o conteúdo do ficheiro é
-n, --number
apresentado.
-s, --squeeze-blank Não mostra mais que uma linha em branco entre um parágrafo e outro.
- Lê a entrada-padrão.

O comando cat trabalha com ficheiros de texto. Pode-se utilizar o comando zcat para ver
diretamente ficheiros compactados com gzip.

Exemplo:

cat /tmp/tree.txt

tac [opções] [diretório/ficheiro] - mostra o conteúdo de um ficheiro binário ou texto por ordem
inversa.

more [diretório/ficheiro] - permite visualizar o conteúdo de um ficheiro com paragens, página a


página.

4.3.2. Apagar, copiar e mover ficheiros

rm [opções] [path][ficheiro/diretório] - remove e apaga ficheiros, podendo também ser usado


para apagar diretórios e subdiretórios vazios ou que contenham ficheiros.

path Localização do ficheiro que deseja apagar. Se omitido, assume que o


ficheiro se encontra no diretório atual.
ficheiro/diretório Nome do ficheiro a ser apagado.

49
Opções
-i, --interactive Pergunta antes de remover; esta é ativada por padrão.
-v, --verbose Mostra os ficheiros à medida que são removidos.
-r, --recursive Usado para remover ficheiros em subdiretórios. Esta opção também
pode ser utilizada para remover subdiretórios.
-f, --force Remove os ficheiros sem perguntar.

O comando rm deve ser utilizado com cuidado uma vez que os ficheiros e diretórios apagados
não poderão ser recuperados.

Exemplos:

rm teste.txt

 Apaga o ficheiro teste.txt no diretório atual.

rm *.txt

 Apaga todos os ficheiros do diretório atual que terminam com .txt.

rm *.txt teste.novo

 Apaga todos os ficheiros do diretório atual que terminam com .txt e também o ficheiro
teste.novo.

rm -rf /tmp/teste/*

 Apaga todos os ficheiros e subdiretórios do diretório /tmp/teste mas mantém o subdiretório


/tmp/teste.

rm -rf /tmp/teste

 Apaga todos os ficheiros e subdiretórios do diretório /tmp/teste, inclusive /tmp/teste.

50
cp [opções] [origem] [destino] - copia ficheiros da [origem] para o [destino].

Exemplos:

cp teste.txt teste1.txt

 Copia o ficheiro teste.txt para teste1.txt.

cp teste.txt /tmp

 Copia o ficheiro teste.txt para dentro do diretório/tmp.

cp * /tmp

 Copia todos os ficheiros do diretório atual para /tmp.

cp /bin/*

 Copia todos os ficheiros do diretório /bin para o diretório em que nos encontramos no
momento.

cp -R /bin /tmp

 Copia o diretório /bin e todos os ficheiros/subdiretórios existentes para o diretório /tmp.

51
cp -R /bin/* /tmp

 Copia todos os ficheiros do diretório /bin (exceto o diretório /bin) e todos os


ficheiros/subdiretórios existentes dentro dele para /tmp.

cp -R /bin /tmp

 Copia todos os ficheiros e o diretório /bin para /tmp. '

mv [opções] [origem] [destino] - move ou muda o nome de ficheiros e diretórios.

O processo é semelhante ao do comando cp mas o ficheiro de origem é apagado após o fim da


cópia.

O comando mv copia um ficheiro da origem para o destino (semelhante ao cp) mas, após a
cópia, o ficheiro de origem é apagado.

Exemplos:

mv teste.txt teste1.txt

 Muda o nome do ficheiro teste.txt para teste1.txt.

mv teste.txt /tmp

 Move o ficheiro teste.txt para /tmp. O ficheiro de origem é apagado após ser movido.

52
mv teste.txt teste.new (supondo que teste.new já exista)

 Copia o ficheiro teste.txt por cima de teste.new e apaga teste.txt após terminar a cópia.

53
4.4. Segurança do sistema de ficheiros
A permissão de acesso protege o sistema de ficheiros Linux do acesso indevido a utilizadores ou
programas não autorizados.

A permissão de acesso do Linux também impede que um programa mal-intencionado, por


exemplo, apague um ficheiro indevidamente, envie ficheiros para outros utilizadores ou forneça o
acesso da rede para que outros utilizadores invadam o sistema.

O sistema Linux é muito seguro e, como qualquer outro sistema seguro e fiável, impede que
utilizadores inexperientes (ou mal-intencionados) instalem programas enviados por terceiros sem
saber exatamente qual o seu objetivo, causando danos irreparáveis ao sistema.

4.4.1. Donos, grupos e outros utilizadores

O princípio da segurança no sistema de ficheiros Linux é definir o acesso aos ficheiros por
donos, grupos e outros utilizadores:

 Dono - É o utilizador que criou o ficheiro ou diretório.

- Apenas o dono pode modificar as permissões de acesso ao ficheiro.

- As permissões de acesso do dono de um ficheiro só se aplicam ao dono do


ficheiro/diretório.

- A identificação do dono é chamada de User Id (UID).

- A identificação de utilizadores e o nome do grupo a que pertencem são


armazenados respetivamente nos ficheiros de texto /etc/passwd e /etc/group.
Podem ser facilmente editados mas é preciso ter atenção especial para não
modificar o campo que contém a senha do utilizador encriptada (que pode estar
armazenada neste ficheiro no caso de não utilizar senhas ocultas).

 Grupo - Este recurso foi criado para permitir que vários utilizadores diferentes tenham
acesso a um mesmo ficheiro (já que somente o dono poderia ter acesso ao ficheiro).

- Cada utilizador pode fazer parte de um ou mais grupos e aceder aos ficheiros que
pertençam ao mesmo grupo que o seu (mesmo que estes ficheiros tenham outro
dono).

- A identificação do grupo é chamada de Group Id (GID).


54
 Outros - É a categoria de utilizadores que não são donos do ficheiro/diretório ou não
pertencem ao grupo do ficheiro/diretório.

Cada um dos tipos acima descritos possui permissões de acesso que serão detalhadas em
seguida.

4.4.2. Tipos de permissões de acesso

Existem três tipos de permissões básicas que se podem aplicar ao dono, ao grupo e a outros
utilizadores:

r - Permissão de leitura para ficheiros ou listagem do conteúdo no caso de se tratar de um


diretório.

w - Permissão de escrita para ficheiros ou escrita de ficheiro(s)/subdiretório(s) no caso de se


tratar de um diretório. Para que um ficheiro/diretório possa ser apagado, é necessário que o
utilizador tenha um acesso de escrita.

x - Permite executar um ficheiro (caso seja um programa executável). No caso de um diretório,


permite que seja acedido através do comando cd.

As permissões de acesso a um ficheiro/diretório podem ser visualizadas através do comando Is -


l.

As três letras (rwx) são agrupadas de acordo com a figura 4.62.

55
O primeiro carácter identifica o tipo de cada ficheiro:

 Diretório exemplos:

 Ficheiro exercicio.txt:

O acesso a um ficheiro/diretório é feito verificando primeiro se o utilizador que o vai aceder é o


seu dono. Em caso afirmativo, as permissões de dono do ficheiro são aplicadas. Caso não seja o
dono do ficheiro/diretório, o sistema verifica se pertence ao grupo correspondente; caso pertença,
as permissões do grupo são aplicadas, caso contrário, são verificadas as permissões de acesso
para os outros utilizadores que não são donos e não pertencem ao grupo correspondente ao
ficheiro/diretório.

56
Após verificar onde se "encaixa" o utilizador nas permissões de acesso ao ficheiro/diretório (se é
o dono, pertence ao grupo ou a outros utilizadores), é verificado se tem permissão de acesso
para o que deseja fazer (ler, gravar ou executar o ficheiro); caso não tenha, o acesso é negado,
mostrando uma mensagem do tipo: permission denied (permissão negada).

Sendo o dono do ficheiro e tendo definido o acesso do dono (através do comando chmod) como
apenas leitura (r) mas o acesso dos outros utilizadores como leitura e escrita, poderá apenas ler
este ficheiro, enquanto que os outros utilizadores poderão ler e/ou escrever.

As permissões de acesso (leitura, escrita, execução) para donos, grupos e outros utilizadores são
independentes, permitindo assim um nível de acesso diferenciado.

NOTAS:

1. O utilizador root não tem nenhuma restrição de acesso ao sistema.

2. Caso um utilizador com permissões de escrita no diretório tente apagar um ficheiro para o qual
não tenha permissão de escrita, o sistema pergunta se confirma a exclusão do ficheiro apesar do
modo leitura. Caso tenha permissões de escrita no ficheiro, o ficheiro será apagado sem mostrar
nenhuma mensagem de erro (a não ser que seja especificada a opção -i com o comando rm).

3. Mesmo que o utilizador tenha permissões de escrita num ficheiro mas não tenha permissões
de escrita num diretório, a exclusão do ficheiro será negada!

4.4.3. Alteração das permissões de acesso

chmod [opções] [permissões] [diretório/ficheiro] - altera as permissões de acesso a um


ficheiro ou diretório.

57
Exemplos:

chmod g+r *

 Permite que todos os utilizadores que pertençam ao grupo dos ficheiros (g) tenham (+)
permissões de leitura (r) em todos os ficheiros do diretório atual.

chmod o-r teste.txt

 Retira (-) a permissão de leitura (r) do ficheiro teste.txt para os outros utilizadores
(utilizadores que não são donos e não pertencem ao grupo do ficheiro teste.txt).

chmod ug+x teste.txt

 Inclui (+) a permissão de execução do ficheiro teste.txt para o dono (u) e grupo (g) do
ficheiro.

chmod a+x teste.txt '

 Inclui (+) a permissão de execução do ficheiro teste.txt para o dono, grupo e outros
utilizadores (a – todos).

chmod a+rw teste.txt

 Define a permissão de todos os utilizadores para leitura e escrita do ficheiro teste.txt.

É possível copiar as permissões de acesso ao ficheiro/diretório, por exemplo, se o ficheiro


teste.txt tiver a permissão de acesso r-xr-----, digitando chmod o=u, as permissões de acesso

58
dos outros utilizadores (o) serão idênticas às do dono (u). Então, a nova permissão de acesso ao
ficheiro teste.txt será r-xr--r-x.

Mais adiante será explicada a utilização de códigos numéricos octais para a mudança das
permissões de acesso a ficheiros/diretórios.

chgrp [opções] [grupo] [ficheiro/diretório] - altera o grupo de um ficheiro/diretório.

chown [opções] [dono.grupo] [diretório/ficheiro] - muda o dono de um ficheiro/diretório;


opcionalmente, pode também ser usado para mudar o grupo.

É necessário ter permissões de escrita no diretório/ficheiro para alterar o seu dono.grupo.

59
Exemplos:

chown david teste.txt

 Muda o dono do ficheiro teste.txt para david.

chown david.users teste.txt

 Muda o dono do ficheiro teste.txt para david e seu grupo para users.

chown -R david.users *

 Muda o dono.grupo dos ficheiros do diretório atual e subdiretórios para david.users (é


necessário ter permissões de escrita no diretório e subdiretórios).

4.4.4. Modo de permissão octal

Em vez de utilizar os modos de permissão +r, -r, etc., pode ser utilizado o modo octal para se
alterar a permissão de acesso a um ficheiro.

O modo octal é um conjunto de oito números, definindo para cada um deles um tipo de acesso
diferente, tornando assim mais flexível a gestão das permissões de acesso.

A lista de permissões de acesso octal é a seguinte:

0 - Nenhuma permissão de acesso. Equivalente a (-rwx).

1 - Permissão de execução (x).

2 - Permissão de escrita (w).

3 - Permissão de escrita e execução (wx).

4 - Permissão de leitura (r).

5 - Permissão de leitura e execução (rx).

6 - Permissão de leitura e escrita (rw).

7 - Permissão de leitura, escrita e execução. Equivalente a (+rwx).

60
A utilização destes números define a permissão de acesso do dono, grupo ou outros
utilizadores.

O comando chmod poderá agora ser utilizado da seguinte forma:

chmod <código> <nome-do-ficheiro>

Exemplos:

chmod 664 teste.txt

 Permissão de leitura e escrita para o dono (6); permissão de leitura e escrita para o grupo
(6); permissão apenas de leitura para os outros (4).

chmod 764 teste.txt

 Permissão de leitura, escrita e execução para o dono (7); permissão de leitura e escrita
para o grupo (6); permissão apenas de leitura para os outros (4).

chmod 40 teste

 A permissão do dono não é alterada; permissão de leitura para o grupo (4); nenhuma
permissão para os outros (0).

61
4.5. Instalação de software
Existem diversos processos para instalar software no Linux. Normalmente, as aplicações
comerciais são fornecidas em pacotes binários, enquanto que as aplicações de código-fonte
aberto podem ser disponibilizadas através de pacotes binários e de ficheiros com o código-fonte.

4.5.1. Instalação de software a partir de pacotes binários

Uma grande maioria de distribuições Linux utiliza sistemas de gestão de pacotes de software
instalados. O Red Hat criou o sistema de pacotes RPM – Redhat Package Management - que é
utilizado em distribuições, tais como Fedora, Mandriva e Centos, entre outras. Por outro lado, a
comunidade Debian criou o sistema de pacotes DEB e utiliza a ferramenta APT - Advanced
Package Tool - para gerir os pacotes.

A gestão dos pacotes DEB pode ser realizada a partir dos programas dpkg ou apt-get. O sistema
de pacotes DEB é utilizado em diversas distribuições, como, por exemplo, Ubuntu, Knoppix e
Kurumin, entre outras. É possível instalar pacotes DEB no Red Hat ou no Fedora, por exemplo,
mas para tal é necessário instalar o programa apt-get na versão para Red Hat.

Existem outros formatos de sistemas de pacotes, como o caso do SLACK, BSD, KISS, mas os
sistemas de pacotes RPM e DEB são os mais utilizados.

Os sistemas RPM e DEB são flexíveis e poderosos e normalmente possibilitam:

 instalar, apagar e atualizar software;


 visualizar a hierarquia dos programas instalados;

62
 testar as dependências dos programas; por exemplo, ao instalar um programa, é verificado
se faltam instalar, antecipadamente, outros programas;
 verificar a integridade dos programas: por exemplo, se um vírus ou um utilizador apagar ou
modificar um programa indevidamente, o sistema pode detetar e retificar o programa;
 resolver conflitos entre programas instalados.

Vamos analisar alguns destes programas de gestão de pacotes RPM.

a) Programa rpm

Usando a linha de comando numa shell e como utilizador root, podemos usar o comando rpm,
por exemplo, para instalar, apagar e atualizar um programa no formato RPM.

Alguns exemplos usando o comando rpm:

 Instalar programa contido no ficheiro ficheiro.rpm.

rpm -ih ficheiro.rpm

-i: install – instala o pacote

-h: hash – mostra o progresso da instalação

 Atualizar uma versão nova do programa ficheiro.rpm.

rpm -Uvh ficheiro.rpm

-U: Upgrade – atualiza um pacote

-v: verbose - mostra mensagens explicativas no ecrã

-h: hash – mostra o progresso da instalação

 Forçar a instalação do programa ficheiro.rpm sem ter de instalar pacotes dependentes.

rpm -ivh --force --nodeps ficheiro.rpm

--force: force - força a instalação de um pacote sobrescrevendo ficheiros e


pacotes do mesmo nome já instalados

63
--nodeps: No Dependencies: não verifica se há dependências de ficheiros antes
de instalar um pacote

 Instalar o programa ficheiro.rpm e verificar o processo de instalação.

rpm -ivh ficheiro.rpm

 Desinstalar o programa ficheiro.rpm.

rpm -e ficheiro.rpm

-e: erase: remove um pacote instalado

b) Programa yum

No Fedora, o programa yum facilita a instalação de programas e dos respetivos programas


dependentes. Ao utilizarmos o gestor rpm para instalar um pacote, caso existam pacotes
dependentes, teremos de instalar, inicialmente, os pacotes dependentes e, só por fim, o pacote
final. Com o yum e com o sistema configurado para ter acesso à Internet, podemos instalar os
pacotes e respetivas dependências usando um único comando. O gestor yum é equivalente a
nível de funcionalidades, relativamente ao gestor apt-get existente no Debian. Para quem está
habituado a usar o apt-get pode instalar a versão do apt-get existente para o Fedora.

Por defeito, o yum vem instalado no Fedora. Caso não esteja, podemos instalá-lo a partir do
pacote RPM, que se encontra no DVD de instalação do Fedora, na diretoria Packages/yum-
*.noarch.rpm, onde o "*" será substituído pela versão existente. O yum pode ser também
instalado no Red Hat usando o comando:

rpm -ivh yum-*.noarch.rpm

No ficheiro /etc/yum.conf e nos ficheiros que se encontram na diretoria /etc/yum.repos.d situam-


se os endereços dos repositórios dos pacotes a instalar ou a atualizar.

No ficheiro /var/log/yum.log encontram-se os registos das operações realizadas com o gestor


yum.

64
Na diretoria /var/cache/yum podemos encontrar, entre outros, os ficheiros que foram
descarregados da Internet e que são instalados.

Alguns exemplos usando o comando yum:

 Listar todos os pacotes disponíveis.

yum list

 Verificar se existem pacotes disponíveis para uma atualização.

yum check-update ou yum list updates

 Fazer atualização ao sistema.

yum update

 Instalar programa e respetivas dependências.

yum install nomeprograma

 Apresentar informações básicas de um programa. -

yum info nomeprograma

c) Programa Yum Extender

O Yum Extender é um programa semelhante ao yum, só que trabalha em ambiente gráfico.


Numa instalação por defeito o yumex não vem instalado. A instalação do Yum Extender pode
ser realizada utilizando os seguintes procedimentos:

- abrir uma shell

- realizar o login como root, executando: su -

- depois de realizar o login como root e com o computador ligado corretamente à Internet, deve-
se executar o comando: yum install yumex

Após a instalação o Yum Extender pode ser efetuado, executando o comando yumex a partir de
uma shell. O lançamento da aplicação também pode ser realizado a partir de uma sessão gráfica,
indo ao menu Aplicações, Ferramentas de Sistema e, por fim, Yum Extender (ver figura 4.63).

65
Caso não se esteja ligado como utilizador root, tem de se introduzir a palavra-passe de root (ver
figura 4.64).

O Yum Extender apresenta uma interface


gráfica onde se realiza uma pesquisa e depois
analisa se o programa já está instalado ou se
existe uma atualização do pacote.

A instalação do pacote é muito simples:


selecciona(m)-se o(s) pacote(s) a instalar e de
seguida clica-se em Aplicar (ver figura 4.65).
Não esquecer que o computador tem de estar
corretamente ligado à Internet para poder
descarregar o(s) pacote(s) da Internet.

Na figura 4.66, pode ver-se o local onde se


encontram os repositórios instalados e ativos.

66
d) Adicionar/Remover programas

O Fedora incorpora um instalador gráfico que


pode ser lançado a partir de uma sessão gráfica,
indo ao menu Sistema e, em Administração,
selecionar Adicionar/Remover Aplicações.

Caso não se esteja ligado como utilizador


root, tem de se introduzir a palavra-passe
de root.

No gestor de aplicações, pode-


se selecionar o tipo de pacote a
instalar, por exemplo,
Ferramentas de
administração, Educação,
Fontes, entre outros, e verificar
quais os pacotes que se
encontram instalados.

67
Pode-se realizar uma pesquisa pelo nome
do pacote e verificar se o pacote está ou não
instalado. No exemplo da figura 4.70, fez-se
uma pesquisa por samba. Do lado direito da
janela do gestor de aplicações verifica-se
que existem uns pacotes representados com
a caixa fechada e mais claros, enquanto
existem outros pacotes que se encontram
com a caixa aberta. O último tipo de pacote
está instalado no sistema, enquanto que o
primeiro tipo de pacote está desinstalado.

A instalação de um pacote é realizada através da marcação de um visto num pacote não


instalado e, de seguida, clicar em Aplicar. Na desinstalação de um pacote realiza-se o processo
inverso: desmarca-se um pacote instalado e de seguida clica-se em Aplicar (ver figura 4.70).

NOTA: Nas versões mais recentes, se numa secção KDE ou GNOME clicarmos sobre um ficheiro
RPM será, automaticamente, lançado um gestor gráfico a perguntar se pretendemos ou não
instalar o ficheiro.

4.5.2. Instalação de software através do código-fonte

Quando o programa que se pretende instalar não tem um pacote pré-compilado, é preciso obter o
código-fonte e compilá-lo.

A grande diferença entre software livre e de código aberto, relativamente aos softwares
proprietários, é que no caso dos softwares livres e abertos é-nos possibilitado o acesso ao
código-fonte do programa e pode-se compilá-lo da forma que se achar mais conveniente.

Compilar um programa no Linux não é trivial mas também não é muito complicado.

Vão analisar-se os métodos mais comuns para compilar um programa em Linux a partir do
código-fonte.

Num primeiro passo é necessário obter o código-fonte do programa. A maioria dos programas
existentes para Linux são escritos na linguagem C ou C++ e normalmente encontram-se
compactados nos formatos .tar.gz e .tar.bz2.

68
Exemplo de instalação de um programa designado por nome-programa-2.2

Para começar, tem de se obter o código-fonte descarregando o programa, que normalmente se


encontra compactado, com o nome nome-programa-2.2.tar.gz ou nome-programa-2.2.tar.bz2,
consoante o método de compactação utilizado, e colocá-lo numa diretoria do nosso sistema,
criada para o efeito.

Numa segunda fase vamos descompactar o programa, usando por exemplo o tar.

tar xvfz nome-programa-2.2.tar.gz

NOTA: Não é necessário usar o caracter "-" antes das opções do comando tar, por exemplo:

tar -xvfz nome-programa-2.2.tar.gz

A execução do comando anterior tem de ser realizada na diretoria onde se encontra o ficheiro
compactado.

Após a descompressão do ficheiro, devem-se ler os ficheiros README e INSTALL, para


conhecer as informações sobre o pacote e a instalação. Qualquer informação específica do
programa que o torne diferente do processo de instalação encontra-se nestes ficheiros.

Para se poder compilar programas no Linux tem de se ter instalado no sistema o compilador C,
C++ e GCC (geralmente encontra-se nas distribuições Linux separado em três pacotes: gcc, cpp
e g++), o GNU Make e, por vezes, o autoconf e o automake.

O processo de compilação de um programa é iniciado quando se executa o script designado


configure. Este script é gerado por quem desenvolveu o programa, usando normalmente o
autoconf, e examina o sistema procurando bibliotecas, ficheiros de configuração e executáveis
necessários para a compilação do programa. Se tudo estiver correto, é gerado um ficheiro
chamado Makefile, que vai ser usado posteriormente pelo make. Se alguma dependência não for
encontrada, a compilação pára e mostra uma pequena mensagem de erro, especificando o que
ocorreu ou qual o ficheiro que faltou. A execução do script configure deve ser realizada a partir
da diretoria onde se encontram os ficheiros descompactados, usando o comando:

. /configure

69
No próximo passo tem de se efetuar a compilação propriamente dita. A compilação é coordenada
pelo make, que segue um roteiro definido no Makefile, compilando e gerando os ficheiros
binários usando o gcc. A compilação é iniciada executando:

make

Terminada a compilação e, caso não tenha dado nenhum erro, é hora de se instalar o programa.

Até esta fase o utilizador pode estar ligado como um utilizador que não seja administrador do
sistema, isto é, pode ser um utilizador não root para se poderem executar os comandos acima
descritos.

A instalação propriamente dita só pode ser feita se o utilizador estiver ligado como root. A
mudança de um utilizador não root para root pode ser efetuada se executarmos o comando:

su -

NOTA: Após a execução do comando su - tem de se introduzir a palavra-passe do utilizador root.

Após o utilizador estar ligado como utilizador root, pode-se instalar o programa usando o
comando make. A instalação prossegue, se for executado o comando:

make install

NOTA: O processo acima descrito é praticamente um padrão para a instalação de aplicações


open source a partir do código-fonte; se existir alguma alteração devem-se consultar os ficheiros
README e INSTALL.

Após a conclusão da instalação, pode-se usar o comando make clean para remover todos os
ficheiros temporários, criados durante a instalação.

Na maioria dos programas, o processo para efetuar a respetiva desinstalação pode ser feito
executando o comando:

make uninstall

70
5. Configuração de um sistema X
5.1. O sistema de janelas X
O sistema de janelas X, também conhecido por X11R6, X11 ou simplesmente por X, fornece a
interface gráfica de rede para o ambiente de trabalho do Fedora. O X começou como um projeto,
baseado em consórcios, no Instituto de Tecnologia de Massachusetts (MIT), nos inícios dos anos
80 e foi sofrendo grandes revisões ao longo dos anos. O X é de código-fonte aberto (open
source) e é gerido pela fundação X.org (The X.Org Foundation).

O X usa um modelo cliente/servidor. Clientes são simplesmente programas X escritos para tirar
vantagem da comunicação em rede e dos protocolos de desenho gráfico, disponíveis em
bibliotecas que contêm o software. O servidor X comunica com os clientes e gere vários e
diferentes aspetos de uma sessão de trabalho local ou remota.

Hoje em dia existem distribuições X.Org para várias plataformas, para além dos PC baseados em
Intel. A versão open source do X da fundação X.Org, incluída no Fedora, é uma fusão dos
lançamentos anteriores do X11R6 e do XFree86, a versão do X Windows usada nas versões
anteriores do Fedora e do Red Hat Linux.

O ambiente gráfico do Red Hat 9 e do Fedora é baseado num esquema designado por
Bluecurve. O objetivo do Bluecurve é resolver os problemas de compatibilidade entre o KDE e o
GNOME, fazendo com que os dois gestores e os seus respetivos aplicativos tenham uma

71
aparência semelhante, e que a área de transferência funcione entre os dois sem problemas.
Pretende-se que o sistema funcione da mesma forma, independentemente do gestor utilizado.

Existem utilizadores mais afincos de ambos os lados dos campos GNOME e KDE que não
concordam com o objetivo do Bluecurve; mas, na realidade, a consistência do tema ajuda os
novos utilizadores do Red Hat e do Fedora a migrarem com mais facilidade de outros sistemas
operativos.

No Red Hat e no Fedora o tema que vem por defeito é o Bluecurve, mas somos livres para
escolher os ambientes gráficos GNOME ou KDE, e podemos, ainda, personalizar o ambiente
gráfico ao gosto do utilizador.

5.2. Inicialização do sistema de janelas X


Existem diversos processos de se iniciar o servidor de janelas X. O instalador do Fedora
configura o ficheiro de iniciação, o /etc/inittab, para que o Linux faça diretamente o arranque de
uma sessão X usando um gestor de ecrã - display manager -, isto é, um cliente X que fornece um
ecrã de login do sistema de janelas X. Após se ter feito a autenticação, usa-se uma sessão local
(que se encontra “a correr” no nosso computador) ou, caso o sistema esteja correctamente
configurado, pode usar-se uma sessão em X “a correr” na rede num computador remoto. Ao
fazer-se a autenticação dos utilizadores por meio de um display manager, pode-se introduzir o
nome do utilizador e a respetiva palavra-passe. Também é possível iniciar sessões X através da
linha de comandos.

Vamos então analisar estes dois processos.

i) Usando um gestor de ecrã - display manager

Um gestor de ecrã do sistema de janelas X apresenta um ecrã de autenticação gráfica que exige
um nome de utilizador e uma palavra-passe para entrar antes de ser dado o acesso ao ambiente
de trabalho X. Também permite que se escolham ambientes de trabalho diferentes para sessões
X diferentes. Quem controla o gestor de ecrã X que é apresentado após o arranque do Linux é o
nível de execução runlevel. A entrada no estado do sistema encontra-se definida no ficheiro
/etc/inittab. Neste ficheiro estão definidos os seguintes níveis de execução (runlevels):

# 0 - halt (Do NOT set initdefault to this) - não fazer o initdefault (iniciar por defeito)

# 1 - single user mode - modo de utilização individual

# 2 - multiuser, without NFS (the same as 3, íf you do not have networking) - multiutilizador, sem
NFS (o mesmo que o 3, se não estivermos em rede)
72
# 3 - full multiuser mode - modo multiutilizador completo

# 4 - unused - não utilizado

# 5 - X11

# 6 - reboot (Do NOT set initdefault to this) - faz o reinício do sistema (não usar esta opção para
iniciar por defeito)

O nível de execução 5 é elaborado para modo multiutilizador com a autenticação gráfica através
do gestor de ecrã. Caso se faça o arranque pelo nível de execução 3, este fornece uma
autenticação realizada a partir de uma consola, baseada em texto. Na linha initdefault do ficheiro
/etc/inittab, é definido o modo de arranque que será realizado por defeito após o arranque do
Linux.

Caso se pretenda definir o arranque pelo nível 5 devemos alterar a linha initdefault para:

id:5:initdefault:

Neste exemplo, após o arranque do Linux, o sistema carrega automaticamente o sistema de


janelas X.

A definição do gestor de ecrã a ser carregado por defeito pode também ser especificado no
ficheiro /etc/inittab, como se segue:

x:5:respawn:/usr/bin/xdm -nodaemon

No entanto, o Fedora usa um script chamada prefdm, que se encontra na diretoria /etc/X11, para
iniciar o gestor de ecrã:

x:5:respawn:/etc/X11/prefdm -nodaemon

De acordo com este script, o gestor de ecrã baseia-se no ficheiro chamado desktop, que se
encontra na diretoria /etc/sysconfig. As palavras GNOME, KDE e XDM que seguem uma
entrada DESKTOP= determinam qual o gestor de ecrã utilizado para fazer a autenticação dos
utilizadores.

ii) Iniciar o X através da consola usando startx

Se o Fedora estiver configurado para fazer o arranque no nível de execução 3, a autenticação


dos utilizadores é realizada a partir de uma consola baseada em texto. A partir da linha de
comandos é possível dar-se início a uma sessão X, usando para tal o comando startx (que na

73
realidade é um script). O lançamento do servidor X e de uma sessão X pode ser efetuado
executando o comando:

startx

O startx começa por procurar, na diretoria pessoal, um ficheiro de nome xinitrc. Esse ficheiro
pode conter configurações que irão lançar um ambiente de trabalho alternativo e clientes X para a
nossa secção X. O ficheiro xinitrc encontra-se por defeito na diretoria /etc/x11/xinit, mas um
ficheiro local pode ser usado no seu lugar para configurar uma sessão X e lançar clientes por
defeito. Por exemplo, pode-se descarregar e instalar o gestor de janelas mlvwm, que está
disponível no site http://www2u.biglobe.ne.jp/~y-miyata/mlvwm.html, na diretoria /usr/local/bin.
Pode-se então usar o ambiente de trabalho mlvwm para a nossa sessão X, no cliente do terminal
xterm, criando um ficheiro xinitrc que contenha as linhas:

xterm &

exec /usr/X11R6/bin/mlvwm

Não é necessário usar o ficheiro xinitrc existente se estivermos a usar o ambiente de trabalho do
Fedora, que corre X e um gestor de janelas definido para o GNOME ou o KDE como ambiente de
desktop.

Também se pode usar o comando startx com uma ou mais opções de linhas de comando. Essas
opções são passadas para o servidor antes dele lançar uma sessão X. Por exemplo, pode-se
usar o startx para especificar a profundidade da cor para uma sessão X usando -depth option
seguido de um número como 8, 16, 24 ou 32 para 256 milhares ou milhões de cores (como
definido no ficheiro de configuração do X e que seja suportado). A utilização de diferentes
profundidades de cores pode ser útil durante o desenvolvimento para testar como os clientes de X
ficam nos diferentes ecrãs ou para conservar o uso de memória de vídeo, como, por exemplo,
quando se tenta obter a melhor resolução (o aumento da profundidade de cor pode, por vezes,
afetar a resolução máxima de placas de vídeo mais antigas).

Por exemplo, para iniciar uma sessão com milhares de cores, usa-se o comando startx, do
seguinte modo:

startx - - -depth 16

Outra opção que pode ser passada é uma resolução específica de pontos por polegada - dots-
per-inch (dpi), para ser usada na sessão X. Por exemplo, para se usar 100 dpi, pode-se usar a
opção -dpi, seguida de 100, ou seja:

74
startx - - -dpi 100

Também se pode usar o startx para lançar múltiplas sessões X. Esta característica deve-se ao
uso do Linux para consolas virtuais.

Caso se pretenda mudar de uma consola virtual do Linux para outra, devem usar-se as teclas
Ctrl + Alt + F1, Ctrl + Alt + F2, Ctrl + Alt + F3, e por aí fora. Ao arrancar o servidor X, este muda
automaticamente a imagem para uma nova consola virtual, e como, regra geral, as primeiras seis
consolas virtuais, de Ctrl + Alt + F1 a Ctrl + Alt + F6, encontram-se ocupadas pelas consolas em
modo texto, a primeira da sessão X a ser usada é a sétima. Assim, é possível usar Ctrl + Alt + F1
para ir à consola virtual número um, que está em texto e, de seguida, usar Ctrl + Alt + F7 para
voltar ao modo gráfico do X. As consolas de Ctrl + Alt + F7 a Ctrl + Alt + F12 são reservadas a
sessões X.

Para iniciar a primeira sessão em X, deve usar-se o comando startx seguido de um número do
ecrã ou uma instância de servidor X (o primeiro é 0, usando o ecrã 0) e um número que
represente uma consola virtual. A consola por defeito, usada para o X, é o número 7; por isso,
pode-se iniciar a sessão deste modo:

startx - - :0 vt7

Após o X começar e o gestor de janelas aparecer, clica-se em Ctrl + Alt + F2 e depois volta-se a
fazer o login no prompt. De seguida, inicia-se uma nova sessão X como esta, especificando um
número do ecrã e uma consola virtual diferente, por exemplo:

startx - - :1 vt8

Dá-se início a uma nova sessão X. Para saltar para a primeira sessão clica-se em Ctrl + Alt + F7
e, para regressar à segunda sessão X, clica-se em Ctrl + Alt + F8.

Usar o startx é uma maneira flexível de lançar sessões X, mas sessões múltiplas podem trazer
algumas desvantagens, como, por exemplo, tornarem-se confusas, especialmente em novos
utilizadores e, como consomem muitos recursos do sistema, em computadores com poucos
recursos a nível do microprocessador e de memória o sistema pode ficar muito lento.

Abertura de diversas sessões X a partir do modo gráfico

Nas versões mais recentes do Fedora e de outras distribuições, é possível abrir uma nova sessão
X e entrar com outro utilizador sem ter de executar comandos a partir de uma shell. Dentro de
uma sessão X, clica-se com o rato sobre o nome do utilizador que se encontra no canto superior
direito do ecrã e seleciona-se a opção Alternar o Utilizador (ver figura 4.72).
75
Após a entrada na nova sessão gráfica do utilizador Tomás, é possível abrirem-se as aplicações
de trabalho. Pode-se comutar para o utilizador Maria e de seguida voltar a comutar para o
utilizador Tomás. As aplicações continuam abertas.

É possível abrir várias sessões X, mas o consumo de memória RAM vai aumentar.

O fecho de uma sessão X pode ser efectuado a partir da seleção do nome do utilizador que se
encontra no canto superior direito do ecrã e de seguida selecionar a opção Sair (ver figura 4.76) e
Terminar a Sessão (ver figura 4.77).

76
77
6. Segurança e administração do sistema
6.1. Gestão de utilizadores e de grupos
O superutilizador

No Linux e no Unix, o utilizador que tem permissões de administração total, no sistema


operativo, designa-se por root, também conhecido por superutilizador.

O superutilizador tem quase permissões ilimitadas na administração do sistema e, por esta


razão, deve ser usado com cuidado. Se o utilizador root alterar indevidamente alguma
configuração, a atividade do sistema pode ser afetada, podendo provocar mau funcionamento ou
mesmo paragem dos serviços ou de todo o sistema.

Se no arranque do sistema for selecionado um utilizador sem direitos de administração, pode-se,


a qualquer altura, comutar para o utilizador root, digitando na linha de comandos su - e, de
seguida, a palavra-passe do utilizador root.

Por norma deve-se entrar com um utilizador que não seja o root e, somente quando
necessitamos de privilégios de superutilizador, é que se deve comutar para o utilizador root,
através do comando su -.

Gestão de utilizadores

Uma das tarefas que os administradores têm de realizar num sistema é a gestão dos utilizadores.
Existem diversos métodos de criar, alterar e modificar utilizadores. Vamos analisar alguns deles.

A) Utilizando um gestor gráfico

No Fedora existe um gestor gráfico dos utilizadores e do grupo de utilizadores que pode ser
lançado a partir do ambiente de trabalho de uma sessão gráfica, selecionando o menu Sistema e,
em Administração, escolher a opção Utilizadores e Grupos.

Este gestor gráfico pode ser chamado diretamente a partir de uma shell, escrevendo system-
config-users. No Red Hat o gestor gráfico de utilizadores designa-se por redhat-config-users.

78
No separador Utilizadores da janela Gestor de Utilizadores podemos criar um novo utilizador
clicando em Adicionar Utilizador.

Na janela Criar Novo Utilizador podem-se introduzir os dados relativos ao novo utilizador (ver
figura 4.81).

79
Os dados relativos a um utilizador podem ser modificados a qualquer momento. Para tal, na figura
4.82 clica-se duas vezes sobre o utilizador ou, então, seleciona-se o utilizador e de seguida clica-
se em Propriedades.

Na janela Propriedades do Utilizador encontram-se quatro separadores com as definições do


utilizador (ver figuras 4.83 a 4.86).

80
A gestão dos grupos de utilizadores
pode ser realizada a partir do separador
Grupos da janela Gestor de
Utilizadores (ver figura 4.87). A criação
de um novo grupo de utilizadores pode
ser efetuada ao clicar sobre Adicionar
Grupo.

Na janela Criar Novo Grupo podem-se introduzir os dados


relativos ao novo grupo (ver figura 4.88).

As definições de um grupo podem ser modificadas após a sua criação, tal como acontece com os
utilizadores. No separador Grupos da janela Gestor de Utilizadores, da figura 4.87, tem-se
acesso às definições do grupo se clicarmos duas vezes sobre o grupo, ou se selecionarmos o
grupo e de seguida clicarmos sobre Propriedades. Estas definições encontram-se em dois
separadores da janela Propriedades do Grupo (ver figuras 4.89 e 4.90).

81
B) Utilizando comandos

A gestão de utilizadores e de grupos pode ser realizada através de comandos. Para tal, deve-se
estar ligado com o utilizador root para se poder adicionar, modificar ou apagar um utilizador ou
grupo.

b.1) Adicionar um utilizador executando o comando:

useradd nome

Onde nome representa o nome do utilizador.

Quando se adiciona um novo utilizador são executadas as seguintes alterações:

 /home/nome - criação, na diretoria /home, de uma diretoria com o nome do utilizador.


 /etc/passwd - ficheiro com as definições do utilizador.
 /etc/shadow - ficheiro onde são guardadas as palavras-passes em modo encriptado.
 /etc/group - ficheiro com as definições do grupo.

b.2) A atribuição de uma palavra-chave a um utilizador pode ser realizada executando o


comando:

passwd nome

Torna-se necessário colocar duas vezes a palavra-passe e esta vai ser guardada em modo
encriptado no ficheiro /etc/passwd.

82
b.3) Eliminar utilizadores

A eliminação de um utilizador pode ser efetuada executando o comando userdel, por exemplo:

userdel nome

apaga-se o utilizador nome e remove-se a linha relativa ao utilizador nos ficheiros /etc/passwd e
/etc/shadow. Com este comando não se apaga a diretoria de trabalho do utilizador /home/nome.

Se for executado o comando:

userdel -r nome

efetuam-se as operações do comando userdel nome e apaga-se ainda a diretoria de trabalho do


utilizador /home/nome.

83
6.2. Gestão de volumes de dados
A gestão dos volumes de dados é uma das funções do administrador do sistema. A gestão do
espaço ocupado pelos ficheiros, a política de cópias de segurança dos dados e a redundância de
dados são aspetos a ter em atenção na gestão dos volumes de dados.

Se um disco rígido ficar cheio, pode causar diversos problemas no funcionamento do sistema e,
em último caso, pode até parar por completo o sistema operativo.

Consoante o volume que ficou cheio, as consequências diferem. Vamos analisar as


consequências que algumas diretorias podem provocar ao encher o volume onde se encontram
inseridas.

/home - Nesta diretoria encontram-se as diretorias pessoais dos utilizadores. Se o volume onde
se encontram as diretorias de trabalho dos utilizadores encher por completo, os utilizadores
deixam de poder gravar os seus trabalhos, originando perda de informação.

/var - Esta diretoria contém o armazenamento dos registos - logs - do sistema, correio eletrónico
e da fila de espera da impressora. Se o volume onde se encontra esta diretoria ficar
completamente cheio, estes serviços, que são de extrema importância, vão deixar de funcionar.

/tmp - Ao ficar quase cheio o volume onde se encontra esta diretoria, muitas das aplicações vão
deixar de funcionar, dado que a maioria das aplicações necessita de criar ficheiros temporários
nesta diretoria.

/usr e /opt - Se o volume onde se encontram estas diretorias ficar quase cheio, pode-se deixar de
instalar programas.

Para evitar que o sistema pare por completo, este reserva uma pequena percentagem de espaço
do disco, restrito ao administrador do sistema. Assim, o administrador fica com possibilidade de
realizar trabalhos de administração do sistema.

No caso de um sistema incluir muitos utilizadores, é conveniente utilizar quotas de espaço em


disco para cada utilizador ou grupo de utilizadores, evitando que um utilizador ou um conjunto de
utilizadores ocupem, indevidamente, todo o espaço do disco.

Para além das cópias de segurança que se devem efetuar da informação contida nos discos
rígidos, no Linux podem-se implementar sistemas de redundância de dados, usando sistemas de
RAID, nomeadamente o RAID 1, 4 ou 5. Assim, se um disco avariar, os dados encontram-se
replicados num ou mais discos, evitando perda de dados.

84
Se um volume ficar cheio, o administrador do sistema tem de criar espaço, senão corremos o
risco de sofrer com os problemas já analisados. A libertação de espaço num volume pode ser
obtida através de vários processos, tais como:

 eliminar ficheiros que não são importantes ou necessários para o normal funcionamento;
 mover dados de um volume cheio para outro com espaço livre;
 adicionar uma nova unidade de disco e mover os ficheiros dos volumes cheios para a nova
unidade;
 aumentar o espaço disponível por uma unidade de disco. Esta operação é possível se
existir espaço contíguo livre no disco, utilizando, para tal, uma ferramenta para
redimensionar o volume. Existem aplicações que ajudam o administrador do sistema a
redimensionar partições sem perda de dados, tais como o parted ou o gparted, que
funciona em modo gráfico. O pacote de instalação do parted encontra-se no DVD do
Fedora, mas o gparted não. Para se instalar o gparted, deve-se ligar o computador à
Internet e executar o comando:

yum install gparted

O gparted será descarregado e instalado automaticamente, bem como as respetivas


dependências.

Para além de redimensionar partições, o gparted pode, entre outras tarefas, criar, eliminar e
formatar partições.

85
6.3. Gestão de periféricos
Para instalar um novo periférico torna-se, normalmente, necessário instalar um novo programa
para controlar esse dispositivo. O programa que faz o controlo dá um dispositivo de hardware é
conhecido por controlador de dispositivo ou simplesmente por driver.

Por questões de segurança, quando o kernel do sistema operativo Linux deteta que existe uma
aplicação a tentar aceder diretamente ao hardware, o acesso é-lhe negado.

As vantagens desta política são muitas; tais como: grande segurança, fiabilidade e estabilidade.

A desvantagem deste processo é que todos os controladores necessários para o funcionamento


do computador têm de estar inseridos no kernel.

Se um controlador de um dispositivo não existir no interior do kernel, teríamos de instalar um


novo kernel com esse controlador e reiniciar o kernel. Para ultrapassar este problema
poderíamos instalar um kernel que inclua todos os controladores existentes; contudo, atualmente,
esta solução não é praticável, dado que todos os controladores iriam ocupar muito espaço na
memória RAM.

Nas primeiras versões do Linux esta questão era mais simples do que atualmente, visto não
existirem periféricos USB, softmodems e, muito menos, placas Wireless. O kernel oferecia,
normalmente, apenas suporte a discos com controladora IDE, placa de vídeo e drive de
disquetes. Com o tempo foi-se adicionando suporte a outros dispositivos, tais como: placas de
rede, placas de som, controladoras SCSI, entre outros. De facto, o kernel do Linux era
constituído por um kernel monolítico.

Se houvesse necessidade de ativar um novo controlador


que não estivesse incluído no kernel, tínhamos de o
compilar novamente, incluindo o novo controlador e
reiniciando o kernel.

Durante o desenvolvimento do kernel 2.0, este problema


foi resolvido com a introdução do suporte em módulos.
Os módulos são peças independentes que podem ser
ativadas ou desativadas com o sistema operativo em
funcionamento. A partir do kernel 2.2, quase tudo pode ser compilado como módulo, o que tornou
as coisas muito mais práticas, pois passou a ser possível compilar um kernel a abranger quase
todos os controladores, incluindo os controladores não essenciais, que são compilados como
módulos. O kernel em si é pequeno e ocupa pouca memória RAM. Os módulos ficam guardados
86
numa diretoria do disco rígido e, quando houver necessidade de algum controlador que não
esteja no kernel, o módulo será carregado do disco rígido sem que haja necessidade de compilar
o kernel e de reiniciar o sistema. Quando o controlador não for essencial, o módulo será libertado
da memória RAM e será guardado no disco rígido.

Para aumentar a segurança no sistema, houve necessidade de se definirem métodos para


restringir a utilização dos controladores, conseguindo-se deste modo controlar o acesso aos
dispositivos. No Unix e no Linux, os controladores são vistos como ficheiros do sistema e, assim,
todos os métodos de permissões existentes para ficheiros e diretorias são válidos para os
controladores. A porta de comunicação série que no MS-DOS é designada por COM1 é
representada, no Unix e Linux, pelo ficheiro virtual /dev/tty0.
No Unix e Linux, todos os ficheiros virtuais que representam os dispositivos encontram-se na
diretoria /dev.

Na diretoria /proc encontra-se informação sobre os dispositivos e os recursos que ocupam.

Vamos analisar alguns exemplos:

/proc/cpuinfo - contém informação sobre o microprocessador;

/proc/modules - contém informação sobre os módulos instalados.

Se executarmos o programa /sbin/Ismod podemos visualizar os módulos que estão carregados


no kernel; na prática estamos a visualizar a informação que está no ficheiro /proc/modules.

87
Na figura 4.94, pode-se observar que o módulo floppy relativo à drive de disquetes não está a ser
usado (está com valor "0").

Ao executar-se o comando:

modprobe -r floppy

o módulo floppy é descarregado do kernel.

Ao executar novamente o programa /sbin/Ismod, pode-se verificar que este módulo já não existe.
As diretorias /media/floppy e /dev/floppy também são removidas. A partir deste momento deixa-
se de ter acesso à drive de disquetes.

O módulo floppy é carregado novamente para o kernel se for executado o comando:

modprobe floppy

As diretorias /media/floppy e /dev/floppy são repostas. A partir desta operação é possível


montar a drive de disquetes.

O comando modprobe, para além de outras funções, permite instalar e remover, de uma única
vez, módulos interdependentes, enquanto que os comandos /sbin/insmod modulo e
/sbin/rmmod modulo instalam e removem os módulos individualmente, sem instalar ou remover
os módulos dependentes.

Nas distribuições atuais, o hardware da máquina é detetado durante a instalação e o sistema é


configurado para carregar os módulos necessários durante o arranque do sistema.

A deteção de novos periféricos (principalmente quando se usa o kernel 2.6) é simplificada, pois o
próprio kernel gera mensagens sempre que um novo dispositivo é encontrado. Podemos
acompanhar o registo da deteção do novo hardware executando o comando dmesg ou
visualizando o final do ficheiro /var/log/messages.

Outro ficheiro importante é o /lib/modules/2.6.31.5.127.fc12.i686.PAE/modules.dep, que guarda


uma tabela com as dependências dos módulos; ou seja, quais são, para um determinado módulo,
os outros módulos que têm de ser carregados, para que o módulo inicial funcione corretamente.
Este ficheiro é gerado, automaticamente, ao executar-se o comando depmod -a. Normalmente,
este comando é executado, automaticamente, durante o arranque do sistema (quando
necessário).

Na diretoria /lib/modules encontram-se os módulos que são fornecidos pelo kernel.

88
Dentro desta diretoria existe uma subdiretoria, designada por /lib/modu-
les/2.6.31.5.127.fc12.i686.PAE/kernel/drivers, onde se encontram outras subdiretorias com os
módulos dos diversos dispositivos. Por exemplo, na diretoria
/lib/modules/2.6.31.5.127.fc12.i686.PAE/kernel/drivers/net encontram-se os módulos relativos
às placas de rede, enquanto que na /lib/modules/2.6.31.5.
127.fc12.i686.PAE/kernel/drivers/isdn estão agrupados os módulos de suporte aos dispositivos
RDIS.

Se o módulo de um dispositivo não existir, por defeito, no kernel, podemos instalar um novo
módulo, construído por nós próprios ou por outras pessoas. Após a instalação do novo módulo
temos de o carregar para o kernel.

NOTA: A diretoria /lib/modules/2.6.31.5.127.fc12.i686.PAE muda de nome consoante a versão


do kernel. Se a versão do kernel for a 2.6.35, a diretoria passa a designar-se por
/lib/modules/2.6.35.5.127.fc12.i686.PAE. Se existir mais do que uma versão do kernel instalada,
vamos encontrar, para cada versão, uma diretoria com o nome da versão.

6.4. Gestão de impressoras


No Fedora, a instalação de uma impressora local é uma tarefa simples. Antes de realizar a
instalação de pacotes tem de se instalar o CUPS - Common Unix Printing System. Durante a
instalação do Fedora, este serviço fica instalado. Se houver necessidade de se confirmar se o
CUPS se encontra instalado, basta ir ao ambiente de trabalho de uma sessão gráfica e no menu
Sistema selecionar Administração e, de seguida, clicar em Add/Remove Software.

89
Na janela Adicionar/Remover Aplicações selecionamos a opção Filtros e de seguida Apenas
Instalados (ver figura 4.96).

Na janela Adicionar/Remover Aplicações faz-se uma pesquisa por CUPS e de seguida clica-se
em Procurar, e encontram-se os pacotes instalados (ver figura 4.97).

90
Após a verificação dos pacotes instalados relativos à impressão, tem de se “colocar a correr” o
serviço CUPS. Se o serviço CUPS não se “encontrar a correr”, pode-se ativá-lo executando, na
shell, o comando:

service cups start

ou

/etc/rc.d/init.d/cups start

e ainda é possível lançar o serviço através do gestor gráfico Serviço, a partir do ambiente de
trabalho de uma sessão gráfica, selecionando o menu Sistema, seguido da opção
Administração e, por fim, Serviços. Também se pode chamar este gestor gráfico diretamente a
partir de uma shell, system-config-services.

O serviço será lançado se for selecionado o cups e, de seguida, clicarmos em Iniciar.

91
Na janela da figura 4.99, devemos selecionar cups, clicar em Activar e, de seguida, em Gravar
para que o serviço cups arranque automaticamente da próxima vez que o sistema operativo se
inicie.

Um segundo processo para lançar ou parar os serviços é a utilização de um gestor em modo


texto. Pode-se lançar o gestor a partir de uma shell em modo texto ou com o comando setup ou
/usr/sbin/setup e selecionando Serviços do sistema.

92
No gestor Serviços, seleciona-se o serviço cups e clicamos em OK. Podemos arrancar
diretamente com o gestor de serviços executando o /usr/sbin/ntsysv.

Outro processo de lançar o serviço, sempre que o sistema operativo se inicie, pode ser efetuado
executando, numa shell, o comando:

chkconfig cups on

Instalação de uma impressora

Após a instalação do cups e depois de o deixar a correr, acede-se ao sistema, com o utilizador
administrador do sistema (root), e efetua-se o system-config-printer, para se instalar uma
impressora.

93
O system-config-printer pode ser
lançado a partir do ambiente de trabalho
de uma sessão gráfica, indo ao menu
Sistema e em Administração
selecionar A imprimir ou, simplesmente,
executando o comando system-config-
printer, a partir de uma shell.

Para se iniciar a instalação de uma


impressora, vai-se à janela system-
config-printer, figura 4.103, e clica-se
em Novo onde será lançado um
assistente (ver figura 4.104).

A instalação prossegue colocando a palavra-chave do utilizador root.

94
Define-se a que porta está ligada a impressora. Neste exemplo considera-se que a impressora
está ligada à porta paralela 1. É necessário selecionar LPT #1 e clicar em Avançar para
continuar com a instalação da impressora (ver figura 4.105).

Se a impressora estiver partilhada na rede a partir de um servidor de impressoras, é necessário


selecionar um dos dispositivos de Impressoras de rede da figura 4.106.

95
No passo seguinte, é necessário definir a marca e o modelo da impressora a instalar, para se
instalar o driver adequado (ver, respetivamente, figuras 4.107 e 4.108).

96
Após a seleção da marca e do modelo da impressora, a instalação continua clicando em
Avançar.

Em Opções Instaláveis pode-se selecionar a opção Duplexer Installed e prossegue-se com a


instalação clicando em Avançar.

Antes de a instalação da impressora terminar, surge-nos um resumo com a descrição da


impressora. A instalação prossegue clicando em Aplicar.

97
A instalação da impressora prossegue, mas é necessário colocar novamente a palavra-chave do
utilizador root e de seguida clicar sobre Autenticar.

Após a introdução da palavra-passe do utilizador root, o assistente pergunta se é pretendido


imprimir uma folha de teste e, para isso, clicamos em Sim.

Se a impressão da folha de testes se realizou sem problemas, seleccionamos OK e o assistente


termina.

98
No final do assistente, na janela system-config-printer, aparece o nome da impressora instalada
(ver figura 4.114).

A partir deste momento podemos ir a uma aplicação gráfica e mandar imprimir para a nova
impressora. Após a ordem de impressão, o documento vai para o fim da fila da impressora e será
impresso quando a impressora estiver disponível.

Após a instalação de uma impressora podem-se modificar as suas características. Para tal
seleciona-se a impressora que se pretende alterar e clica-se em Impressora e de seguida em
Propriedades, na janela system-config-printer.

O CUPS disponibiliza-nos uma interface Web para realizarmos monitorização e administração do


serviço de impressão. O acesso a este gestor é feito através de um navegador, digitando o
endereço http://local host:631/printers.

99
O FEDORA dá suporte a um grande número de impressoras de diferentes marcas. Se o driver da
impressora a instalar estiver incluído na lista de drivers da distribuição do FEDORA, a impressora
é instalada automaticamente. O sistema operativo deteta automaticamente a porta a que a
impressora está ligada, por exemplo, porta paralela 1 ou USB, e a marca e modelo da
impressora.

6.5. O arranque: LILO/GRUB


Num sistema onde estão instalados vários sistemas operativos temos de ter, um gestor para que
o utilizador, no arranque do computador, possa selecionar qual o sistema operativo que vai
arrancar. Existem diversos programas que realizam a tarefa anterior, dentro dos quais
destacamos o LILO e o GRUB.

O GRUB é o gestor de arranque que é instalado, por defeito, durante a fase de instalação do
Fedora e do Red Hat.

Após o arranque do computador e, antes de o sistema operativo ser carregado para a memória, o
GRUB disponibiliza aos utilizadores, durante uns segundos, um menu onde podemos selecionar
o sistema operativo que será carregado pelo computador.

100
101
No menu de arranque do GRUB e por intermédio da introdução de uma palavra-passe, os
utilizadores têm possibilidade de aceder a mais opções, tais como: editar parâmetros de arranque
ou aceder a uma versão simplificada da shell - onde podemos executar algumas operações como
analisar discos rígidos, no caso de existirem setores danificados, ou aceder a ficheiros de
configuração do sistema.

Se o GRUB não possuir nenhuma palavra-passe, podemos considerar uma falha de segurança
no sistema, dado que qualquer utilizador mais experiente pode aceder ao sistema e realizar
tarefas que podem danificar o normal funcionamento do mesmo.

O ficheiro de configuração do GRUB encontra-se no ficheiro /etc/grub.conf.

Na prática, o ficheiro /etc/grub.conf é um link para o ficheiro /boot/grub/ grub.conf, isto é, se


alterarmos ou visualizarmos o ficheiro /etc/grub.conf, estamos a modificar e a visualizar o que
está no ficheiro /boot/grub/grub.conf.

6.6. A rede
Configurações da rede

A ligação de um computador, com o Linux, a uma rede é possível se tivermos uma interface de
rede ligada ao computador.

Consoante o tipo de interface de rede utilizada, a respetiva configuração é diferente.

A configuração das interfaces de rede podem ser realizadas através da linha de comandos, mas a
maior parte das distribuições mais recentes de Linux têm utilitários de configuração gráfica que
realizam quase toda a configuração de modo automático. Na instalação realizada do Fedora 12,
o serviço de rede que vem instalado por defeito é o NetworkManager.

Antes de se iniciar a configuração da rede, verificar se o serviço NetworkManager está ativo e se


o serviço Network está parado. O acesso aos serviços é realizado a partir de Sistema ->
Administração -> Serviços (ver figura 4.117).

102
Na janela Configuração do Serviço, verifica-se que o serviço NetworkManager está ativo (ver
figura 4.118) e que o serviço Network está parado.

Caso o serviço NetworkManager se encontre parado, pode-se ativá-lo selecionando


NetworkManager, clicando em Activar e de seguida em Gravar para que o serviço
NetworkManager inicie automaticamente da próxima vez que o sistema operativo arranque.

Se sobre o ícone indicado por A da figura 4.120 se encontrar um ponto a vermelho, tem-se a
informação que existe algum problema com a(s) placa(s) de rede. Se clicar com o botão do lado
esquerdo do rato sobre A e de seguida for selecionado System eth0 a placa de rede eth0 vai
reiniciar (ver figura 4.121).

103
Se o cabo de rede estiver ligado à placa de
rede, e se existe um servidor de DHCP na rede,
será atribuído um endereço válido da rede. No
ponto B da figura 4.122, pode-se observar o
símbolo que aparece durante o tempo em que a
placa de rede eth0 está a reiniciar.

Ao clicar com o botão do lado direito sobre C da


figura 4.123, e se selecionarmos a opção
Informação de Ligação, tem-se acesso aos
endereços IP atribuídos à placa de rede eth0
(ver figura 4.124). Se as definições de rede
estiverem corretamente configuradas, o ponto a
vermelho que se encontrava sobre o ícone C
(ver figura 4.123) desaparece.

104
Caso haja necessidade de se alterarem as definições da placa de rede, clica-se com o botão do
lado direito do rato sobre Editar Ligações... (ver figura 4.125).

No separador Com Fios da janela Ligações de Rede tem-se acesso à(s) placa(s) de rede com
fios (ver figura 4.126). Por exemplo, o acesso às definições das placas de rede sem fios ou placas
de rede wireless encontra-se no separador Sem Fios da janela Ligações de Rede.

105
O acesso às configurações associadas à placa de rede eth0 é realizado a partir da seleção de
System eth0 do separador Com Fios da figura 4.126.

No separador Com Fios da janela A editar System eth0 encontra-se a informação do endereço
físico ou MAC Address, da placa de rede eth0 (ver figura 4.127).

Na figura 4.128 encontram-se as definições de segurança.

106
No separador Configuração IPv4 da janela A editar System eth0, pode-se definir se a atribuição
de endereços é realizada automaticamente (ver figura 4.129). Em Método encontra-se definido
Automático (DHCP).

Caso se pretenda que o endereço IP seja fixo, tem de se definir o endereço IPv4; para isso, na
figura 4.130, deve-se alterar em Método de Automático (DHCP) para Manual. É ainda
necessário definir um Endereço IP válido na rede, Máscara de Rede, Gateway e um ou mais
Servidores DNS.

No separador Configuração IPv6 da janela A editar System eth0, podem-se definir as


configurações do endereço IP para a norma 6 (ver figura 4.131).

Após as alterações das configurações da placa de rede eth0, tem de se clicar em Aplicar... (ver
figura 4.131) para serem gravadas as novas definições.

Na figura 4.132, tem de se introduzir a palavra-passe do utilizador root para as definições serem
aceites.

107
Por fim, para que as novas definições sejam
aplicadas à placa de rede eth0, é necessário
reiniciar a placa de rede eth0; para isso,
deve-se clicar com o botão do lado direito do
rato sobre D e de seguida selecionar a opção
System eth0 (ver figura 4.133).

6.7. Outras aplicações


O DVD de instalação do Fedora contém diversas aplicações, das quais destacamos:

 OpenOffice, que inclui os módulos:


o Writer: editor de texto e de criação de páginas Web;
o Calc: folha de cálculo;
o Impress: cria apresentações multimédia;
o Draw: cria desenhos, diagramas e gráficos;
108
o Base: base de dados;
o Math: editor de fórmulas matemáticas.
 GIMP - editor de imagem.
 Firefox - browser HTML.
 Mozilla Thunderbird - cliente de correio eletrónico.
 Evolution - cliente de correio eletrónico, gestor de tarefas, calendário e contactos. Permite,
ainda, ligação a servidores Exchange.

Nas figuras 4.134 a 4.140, podemos observar um conjunto de aplicações que acompanham a
instalação do Fedora 12 e como são lançadas as diversas aplicações instaladas.

109
110
111
112

Você também pode gostar