Escolar Documentos
Profissional Documentos
Cultura Documentos
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:
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.
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.
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.
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
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 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.
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.
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
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:
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.
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
Is .
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 ~
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
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
cd -
cd /home/lara
cat teste2.txt
cat /home/lara/teste2.txt
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:
Arch Linux
- No momento em que estás a ler/aprender/rever/estudar isto, provavelmente, haverá mais!!!!
13
Alinex
O Alinex, como o LinEx, são distribuições com base Debian, localizadas para os
respetivos países.
Caixa Mágica
Debian
O projecto Debian é mantido por doações através da organização sem fins lucrativos Software in
the Public Interest (SPI).
Ubuntu Linux
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.
Slackware Linux
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.
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.
Fedora
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:
CentOS
17
3.1.2. Pequenas distribuições
Knoppix
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.
Coyote
18
IPCop
Untangle
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.
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:
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.
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.
Iniciando o computador a partir do DVD do Fedora aparece no ecrã a imagem da figura 4.21.
21
Install or upgrade an existing system
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.
Se o sistema operativo estiver danificado, com esta opção pode-se recuperar o sistema.
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.
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.
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:
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.
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.
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.
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.
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.
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
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:
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.
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:
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.
Gestor de arranque
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.
A primeira vez que inicia um novo sistema Fedora é executado o Agente de Configuração que
configura o sistema antes do primeiro login.
35
3.2.8. Acordo da licença
http://fedoraproject.org/wiki/Legal/Licenses/LicenseAgreement
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.
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.
secção - É a secção do manual que será aberta; quando omitida, mostra a primeira secção do
comando encontrada.
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:
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
Exemplo:
Is /media
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.
Exemplos de comandos internos são: cd, exit, echo, bg, fg, source, help.
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 do utilizador root é identificada pelo símbolo # e a dos restantes utilizadores pelo
símbolo $.
As imagens do ecrã podem ser recuperadas utilizando as teclas SHIFT PgUp/ PgDown.
Outros atalhos:
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.
O Linux possui diversos tipos de interpretadores de comandos, destacando-se o bash, ash, csh,
tcsh, sh, etc.
Os comandos podem ser enviados para o interpretador de forma interativa e não interativa.
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)
Logout - saída do sistema que também pode ser feita utilizando os comandos CTRL+ALT+DEL,
ou quando o sistema é reiniciado ou desligado.
Carácter Significado
* Substitui um ou mais caracteres
? Substitui apenas um caracter
[] Sequência de um ou mais caracteres pertencentes ao conjunto
Exemplos:
43
Listagem dos ficheiros do diretório /sbin cujo segundo caracter é a letra c.
Listagem dos ficheiros com o nome começado por Teste e mais dois caracteres
pertencentes ao conjunto definido entre parêntesis retos.
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
ls /bin /sbin
ls -la /bin
46
Exemplos:
cd /
cd -
cd ..
cd ../[diretório]
4.2.3. mkdir, rm
47
Exemplos:
mkdir /tmp/teste
O diretório a ser removido deve estar vazio e deve-se ter permissão de escrita para poder
remover o diretório.
É necessário que esteja um nível acima do(s) diretório(s) que será(ão) removido(s).
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.
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.
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
rm *.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/*
rm -rf /tmp/teste
50
cp [opções] [origem] [destino] - copia ficheiros da [origem] para o [destino].
Exemplos:
cp teste.txt teste1.txt
cp teste.txt /tmp
cp * /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
51
cp -R /bin/* /tmp
cp -R /bin /tmp
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
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.
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.
O princípio da segurança no sistema de ficheiros Linux é definir o acesso aos ficheiros por
donos, grupos e outros utilizadores:
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).
Cada um dos tipos acima descritos possui permissões de acesso que serão detalhadas em
seguida.
Existem três tipos de permissões básicas que se podem aplicar ao dono, ao grupo e a outros
utilizadores:
55
O primeiro carácter identifica o tipo de cada ficheiro:
Diretório exemplos:
Ficheiro exercicio.txt:
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:
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!
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.
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).
Inclui (+) a permissão de execução do ficheiro teste.txt para o dono (u) e grupo (g) do
ficheiro.
Inclui (+) a permissão de execução do ficheiro teste.txt para o dono, grupo e outros
utilizadores (a – todos).
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.
59
Exemplos:
Muda o dono do ficheiro teste.txt para david e seu grupo para users.
chown -R david.users *
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.
60
A utilização destes números define a permissão de acesso do dono, grupo ou outros
utilizadores.
Exemplos:
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).
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.
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.
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.
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.
63
--nodeps: No Dependencies: não verifica se há dependências de ficheiros antes
de instalar um pacote
rpm -e ficheiro.rpm
b) Programa yum
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:
64
Na diretoria /var/cache/yum podemos encontrar, entre outros, os ficheiros que foram
descarregados da Internet e que são instalados.
yum list
yum update
- 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).
66
d) Adicionar/Remover programas
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.
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.
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
Numa segunda fase vamos descompactar o programa, usando por exemplo o tar.
NOTA: Não é necessário usar o caracter "-" antes das opções do comando tar, por exemplo:
A execução do comando anterior tem de ser realizada na diretoria onde se encontra o ficheiro
compactado.
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.
. /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 -
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
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.
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)
# 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
# 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:
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.
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.
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
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.
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.
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.
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.
useradd nome
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.
userdel -r 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.
/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.
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:
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.
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.
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
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.
modprobe floppy
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.
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.
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.
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:
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.
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.
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
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.
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).
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.
97
A instalação da impressora prossegue, mas é necessário colocar novamente a palavra-chave do
utilizador root e de seguida clicar sobre Autenticar.
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.
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.
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.
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.
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.
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.
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.
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).
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.
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).
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