Você está na página 1de 19

UNIÃO EDUCACIONAL DO NORTE – UNINORTE

FACULDADE BARÃO DO RIO BRANCO – FAB


CURSO SUP. DE TEC. EM REDES DE COMPUTADORES
DOCENTE: LUIZ AUGUSTO MATOS DA SILVA

DISCENTE: _______________________

MATERIAL DE APOIO DA DISCIPLINA

SISTEMA OPERACIONAL DE REDES


- UNIX/LINUX
4º. Período / 2006.2

Rio Branco, Agosto de 2006.

Luizmatos.eti.br
2
APRESENTAÇÃO

Este material é direcionado a você, aluno do curso superior de Tecnologia em


Redes de Computadores, de maneira que sirva como fonte de pesquisa e apoio à
disciplina Sistema Operacional de Redes – Unix/Linux.

O conteúdo apresentado é resultado de referencial teórico extraído das fontes


bibliográficas recomendadas sobre o tema, com o apoio de artigos técnicos e
demais publicações online.

Ao término deste curso o aluno deverá ter a competência de conhecer,


compreender e dominar os recursos do sistema operacional de redes Linux, tendo
como habilidade a correta configuração, administração e gerenciamento de
servidores utilizando tal plataforma.

Bom estudo!
luizmatos.eti.br

O conteúdo deste material é destinado ao ensino acadêmico, sendo reservados os direitos autorais
de patentes, aplicativos, marcas, imagens e outros de propriedade intelectual utilizados.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
3

CAPÍTULO I

Introdução ao
GNU/LINUX

1.1 - Histórico
1.2 - Licenciamento
1.3 - Distribuições
1.4 - Kernel
1.5 - Shell
1.6 - Ambientes Gráficos
1.7 - Sistema de arquivos
1.8 - Diretório e arquivos de sistema
1.9 - Instalação e configuração
1.10 - Lendas e Mitos
“A mente que se abre a uma
nova idéia jamais volta ao seu
tamanho original.” (A. Einstein)

Objetivos:
- Abordar o histórico evolutivo da plataforma *UNIX;
- Introduzir conceitos inerentes aos SOs nesta plataforma;
- Apresentar estrutura de diretórios e arquivos;
- Executar procedimentos básicos de instalação / configuração.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
4

1.1 - Histórico

Tudo começou em 1969, quando Ken Thompson escreveu o Unics -


totalmente em assembly (linguagem de máquina) e destinado a funcionar em um
equipamento da época - com objetivo de criar um sistema operacional de respostas
rápidas, com os mesmos conceitos do Multics (que ele ajudou a desenvolver), mas
que pudesse ser rodado em computadores de pequeno porte. Mais tarde Ken
Thompson e Dennis Ritchie reescreveram o sistema, agora batizado de UNIX, para
outras duas plataformas de computadores. Apenas no início da década de 1970 o
UNIX passou a ser desenvolvido usando exclusivamente a nova linguagem C (criada
também por Ritchie nessa época) e começou a tornar forma semelhante à que
possui atualmente e a rodar em várias plataformas computacionais.
A partir daí são desenvolvidas versões de maiores proporções, tornando o
UNIX um dos sistemas operacionais mais populares do mundo, principalmente por
causa de sua grande base de suporte e distribuição.
Atualmente, UNIX (ou *NIX) é o nome dado a uma grande família de
Sistemas Operativos que partilham muitos dos conceitos dos Sistemas UNIX
originais, sendo todos eles desenvolvidos em torno de padrões como o POSIX1
(Portable Operating System Interface) e outros. Alguns dos Sistemas Operativos
UNIX actuais são: BSD (FreeBSD, OpenBSD e NetBSD), Solaris, IRIX, AIX, HP-UX,
Tru64, Linux (nas suas distribuições), e até o Mac OS X. Existem mais de quarenta
sistemas operacionais "padrão UNIX", rodando desde celulares a
supercomputadores, de relógios de pulso a sistemas de grande porte.
Desta forma, desenvolveu-se o sistema operacional UNIX, caracterizado por
ser: portável, multitarefa e multiusuário.
“Um sistema UNIX é totalmente orientado a arquivos. Seus comandos
são na verdade arquivos executáveis encontrados em lugares
previsíveis em sua árvore de diretórios. O acesso a arquivos é
organizado através de propriedades e proteções. Toda a segurança do
sistema depende, em grande parte, da combinação entre as
propriedades e proteções setadas em arquivos e contas de usuários.”

1
Conjunto de normas criadas com o objetivo de padronizar a API (interface de programação de
aplicativos) para softwares desenvolvidos com base no UNIX.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
5
Em 1984, Richard Stallman - programador do MIT (Massachusetts
Institute of Technology) - inicia o projeto GNU com o objetivo de criar um sistema
operacional totalmente livre, que qualquer pessoa teria direito de usar e distribuir
sem ter que pagar licenças de uso.
Este sistema operacional GNU deveria ser compatível com o sistema
operacional UNIX, porém não deveria utilizar-se do código fonte do UNIX. Stallman
escolheu o nome GNU porque este nome, além do significado original do mamífero
Gnu, é um acrônimo recursivo de: GNU is Not Unix (GNU não é UNIX).
A partir daí, Stallman e vários programadores, vieram desenvolvendo as
peças principais de um sistema operacional, como compilador de linguagem C,
editores de texto, entre outras ferramentas. Em 1991 o sistema operacional já
estava quase pronto, mas faltava o principal: o kernel.
O grupo liderado por Stallman vinha desenvolvendo um kernel chamado
Hurd. Porém, aconteceu algo que mudou o rumo da História: um jovem finlandês
chamado Linus Torvalds havia criado, com a ajuda de vários programadores
voluntários através da Internet, um kernel que poderia usar todas as ferramentas
do sistema operacional GNU. Este kernel ficou conhecido como Linux, contração de
Linus e Unix.
O seu desenvolvimento começou como um projeto particular, inspirado pelo
interesse de Linus no Minix, um pequeno sistema UNIX desenvolvido por Andrew S.
Tanenbaum. Ele limitou-se a criar, nas suas próprias palavras, "um Minix melhor
que o Minix" ("a better Minix than Minix"). E depois de algum tempo de trabalho no
projeto enviou a seguinte mensagem (adaptada) para a lista de discussão do minix:

“Você suspira por melhores dias do Minix-1.1, quando os homens eram


homens e escreviam seus próprios “device drivers”? Você está sem um
bom projeto em mãos e está desejando trabalhar num S.O. que possa
ser modificado de acordo com suas necessidades? Está a achar
frustrante quando tudo funciona no Minix? Chega de noites ao
computador para conseguir que os programas funcionem? Então esta
mensagem pode ser exatamente para você. Como eu mencionei há um
mês atrás, estou trabalhando numa versão independente de um S.O.
similar ao Minix para computadores AT-386. Ele está, finalmente,
próximo do estado em que poderá ser utilizado (embora possa não ser o
que você espera), e eu estou disposto a disponibilizar o código-fonte
para ampla distribuição. Ele está na versão 0.02... contudo eu tive
sucesso ao executar bash, gcc, gnu-make, gnu-sed, compressão, etc.
nele.”

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
6
No dia 5 de outubro de 1991 Linus Torvalds anunciou a primeira
versão "oficial" do Linux, versão 0.02. Desde então muitos programadores têm
respondido ao seu chamado, e têm ajudado a fazer do Linux o sistema operacional
que é hoje.
Atualmente, o sistema operacional GNU com o kernel Linux é conhecido como
GNU/Linux, que é como o projeto solicita aos utilizadores que se refiram ao sistema
completo, embora a maioria das pessoas se referirem ao sistema apenas como
Linux por uma questão de comodidade.

Ken Thompson (esquerda) e Dennis Ritchie (direita).

Trabalhavam nos laboratórios da Bell (empresa de


telecomunicações norte-americana). Principais responsáveis pela
criação do sistema operacional Unix e da linguagem de
programação C.

Richard Stallman

Famoso hacker, fundador do movimento e da fundação para o


software livre e do projeto GNU. Um aclamado programador, é o
autor da GNU General Public License (GPL), a licença livre mais
usada no mundo, que inaugurou o conceito de copyleft.

Andrew Tanenbaum

Autor do Minix, um Sistema operacional baseado no Unix com


propósito educacional, e bastante conhecido por seus livros sobre
ciência da computação. Atualmente ministra aulas sobre
Organização de computadores e Sistemas operacionais.

Linus Torvalds

Começou a lidar com a informática quando tinha 11 anos. Durante


a faculdade iniciou o desenvolvimento de um kernel que, aliado às
demais ferramentas do projeto GNU, mais tarde ajudaria a
disseminar a filosofia do Software Livre.
Biografia completa em: http://www.linux.org/info/linus.html

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
7
1.2 - Licenciamento

Inicialmente, Torvalds lançou o Linux sob uma licença que proibia qualquer
uso comercial. Isso foi mudado de imediato para a Licença Pública Geral GNU. Essa
licença permite a distribuição e mesmo a venda de versões possivelmente
modificadas do Linux, mas requer que todas as cópias sejam lançadas dentro da
mesma licença e acompanhadas do código fonte.
GNU General Public License (Licença Pública Geral), GNU GPL ou
simplesmente GPL, é a designação da licença para software livre idealizada por
Richard Stallman no final da década de 1980, no âmbito do projecto GNU da Free
Software Foundation.
A GPL é a licença com maior utilização por parte de projetos de software livre,
em grande parte devido à sua adoção para o Linux.

Em termos gerais, a GPL baseia-se em 4 liberdades:


9 A liberdade de executar o programa, para qualquer propósito (liberdade nº 0)
9 A liberdade de estudar como o programa funciona e adaptá-lo para as suas
necessidades (liberdade nº 1). O acesso ao código-fonte é um pré-requisito para
esta liberdade.
9 A liberdade de redistribuir cópias de modo que você possa ajudar ao seu
próximo (liberdade nº 2)
9 A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos,
de modo que toda a comunidade beneficie deles (liberdade nº 3). O acesso ao
código-fonte é um pré-requisito para esta liberdade.

Com a garantia destas liberdades, a GPL permite que os programas sejam


distribuídos e reaproveitados, mantendo, porém, os direitos do autor por forma a
não permitir que essa informação seja usada de uma maneira que limite as
liberdades originais. A licença não permite, por exemplo, que o código seja tomado
por outra pessoa ou que sejam definido sobre ele restrições que impeçam que seja
distribuído da mesma maneira que foi adquirido.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
8
1.3 - Distribuições

Atualmente, um Sistema Operacional GNU/Linux completo (uma "distribuição


de GNU/Linux") é uma coleção de software livre (e por vezes não-livres) criados
por indivíduos, grupos e organizações de todo o mundo, tendo o Linux como seu
núcleo. Companhias como a Red Hat, a SuSE, a Mandriva (união da Mandrake com
a Conectiva), bem como projetos de comunidades como o Debian ou o Gentoo,
compilam o software e fornecem um sistema completo, pronto para instalação e
uso.
As distribuições de GNU/Linux começaram a receber uma popularidade
limitada desde a segunda metade dos anos 90, como uma alternativa livre para os
sistemas operacionais Microsoft Windows e Mac OS, principalmente por parte de
pessoas acostumadas com o Unix na escola e no trabalho. O sistema tornou-se
popular no mercado de Desktops e servidores, principalmente para a Web e
servidores de bancos de dados.
No decorrer do tempo, várias distribuições surgiram e desapareceram, cada
qual com sua característica. Algumas distribuições são maiores outras menores,
dependendo do número de aplicações e sua finalidade. Algumas distribuições de
tamanhos menores cabem num disquete com 1,44 MB, outras precisam de vários
CDs, existindo até algumas versões em DVD. Todas elas têm o seu público e sua
finalidade, as pequenas são usadas para recuperação de sistemas danificados ou
em monitoramento de redes de computadores.

Existem as versões de 64 bits do Linux, otimizadas para correr em


microcomputadores com microprocessadores de 64 bits.
De entre as maiores, distribuídas em CDs, podem-se citar: Slackware, Debian
e Suse. O que faz a diferença é como estão organizadas e pré-configuradas as
aplicações. A distribuição Conectiva Linux, por exemplo, tinha as suas aplicações
traduzidas em português, o que facilitou que usuários que falam a língua
portuguesa tenham aderido melhor a esta distribuição. Hoje esta distribuição foi
incorporada à Mandrake, o que resultou na Mandriva.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
9
Existem distribuições com ferramentas para configuração que facilitam
a administração do sistema. As principais diferenças entre as distribuições são nos
seus sistemas de pacotes, nas estruturas dos diretórios e na sua biblioteca básica.

Abaixo temos algumas das distribuições mais utilizadas atualmente


acompanhadas da URL oficial ou do projeto no Brasil.

ƒ Debian - http://debian-br.alioth.debian.org/
ƒ Fedora - http://www.linux-fedora.org/
ƒ Gentoo - http://www.gentoobr.org/
ƒ Kurumin - http://www.guiadohardware.net/kurumin/index.php
ƒ Mandriva - http://www.mandrivabrasil.org/
ƒ Red Hat - http://www.redhat.com/
ƒ Slackware - http://www.slackwarezine.com.br/
ƒ SuSE - http://www.susebr.org/
ƒ Ubuntu - http://planeta.ubuntubrasil.org/
ƒ Freedows - http://www.freedows.com/

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
10
1.5 - Shell

Trata-se de um interpretador (ou prompt) de comandos representado através


de um ambiente texto. A figura abaixo é um exemplo deste conceito:

Existem vários tipos de shell, mas a shell bash, é padrão da grande maioria
das distribuições. O interpretador de comandos é um mediador entre o usuário e a
máquina. Você digita algum comando e o interpretador lê o que você digitou e
executa a tarefa correspondente. Sem um interpretador de comandos, não haveria
possibilidade de o usuário interagir com o sistema.

Algumas características do Linux em si e sua shell:


ƒ Nos prompts do Linux, quando se acaba com o símbolo $, isto quer dizer que
você está logado com um usuário normal. Se você estiver logado com o root,
ao invés do símbolo $, no final do prompt existirá o símbolo #
ƒ Nos nomes dos arquivos, os caracteres MAIÚSCULOS e minúsculos fazem a
diferença. Isso quer dizer que, por exemplo: os arquivos PROGRAMA.tar.gz e
programa.tar.gz são dois arquivos completamente diferentes! Ou então:
ls é um comando e LS é um erro.
ƒ No Linux, não existem extensões .EXE, .COM especial para programas
executáveis. Ao invés disso, os arquivos têm permissão de executável ou não.
ƒ Além de arquivos comuns, no Linux existem os chamados links simbólicos,
que são nada mais nada menos que uma espécie de atalhos.
ƒ O Linux é um sistema multi-tarefa, por isso, ele pode ser acessado por vários
consoles ao mesmo tempo, assim como pode ser rodado vários programas ao
mesmo tempo. Para mudar o console do 1 a 6, utilize Alt-N, onde o N

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
11
corresponde ao número do console. Exemplo: Alt-F1, Alt-F2, Alt-F3,
Alt-F4, Alt-F5 e Alt-F6.
ƒ Depois de logado, se quiser sair, utilize o comando exit, ou o comando logout
ou ainda a combinação de teclas Ctrl-D.
ƒ Se algum programa estiver rodando no seu console, aperte as teclas Ctrl-Z
para suspender esse programa e voltar para o prompt.
ƒ Existe um recurso muito interessante nas shells do Linux, que é o tab
completion. Com ele você pode completar comandos ou nomes de arquivos
mais rapidamente sem precisar digitar tudo. Para utilizar esse recurso, basta
apenas digitar as primeiras letras do comando ou arquivo e apertar a tecla
Tab.

Configurando o PATH
Quando falamos em PATH, queremos dizer se um determinado diretório está
acessível sempre, de qualquer lugar, para executar comandos. Quando um
comando está dentro de um diretório PATH, quer dizer que de qualquer lugar você
poderá executá-lo. Você poderá querer mudar o PATH para colocar algum diretório
de algum programa que você instalou ou coisa parecida e isso é feito na shell bash.
Para ver os atuais diretórios que estão no PATH da sua shell, digite o seguinte
comando:

$ echo $PATH
Se o diretório desejado não estiver na lista, coloque-o dessa maneira:

$ PATH=$PATH:/diretorio/a/ser/colocado/no/path
Isso colocará o /diretorio/a/ser/colocado/no/path no PATH.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
12
1.6 - Ambientes Gráficos

Todo programa que permite ao usuário visualizar elementos como: botões,


menus, janelas, etc, pode ser denominado Ambiente Gráfico, Interface Gráfica ou
gerenciador de janelas. Este tipo de programa é responsável por controlar a
apresentação das janelas, isto é, as cores, formas e funcionalidades.
Todas as vezes que um usuário solicita a execução de um programa gráfico,
ele é desenhado por um programa servidor de janelas, também conhecido como
Servidor X. Ele contém todas as especificações de como as mesmas serão criadas e
manipuladas. O Servidor X possui ainda ferramentas que possibilitam a
configuração dos principais elementos de hardware relativos a apresentação gráfica
dos programas tais como: configurações da placa de vídeo, as configurações do
monitor de vídeo (cores, resolução, freqüência) e do mouse.

Para que a execução dos programas no Linux ficasse mais interativa e


confortável, surgiram diversas interfaces gráficas que se diferenciam basicamente
pela:
• beleza;
• recursos;
• facilidade de uso (interatividade);
• performance.

Isto porque a quantidade de usuários que utilizam o Linux é muito maior do


que se pensa, e portanto as exigências de cada um são muito distintas. Há quem
possua um microcomputador com pouca memória, onde o importante para este
usuário é que a interface gráfica consuma o mínimo dos recursos computacionais
disponíveis.
Por outro lado pode existir usuários que acham que a facilidade para poder
modificar um papel de parede, ou a resolução do vídeo, ou adicionar uma
impressora é mais importante, assim sendo escolherão uma interface mais
sofisticada, dotada de muitos efeitos e coisas do gênero.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
13
Praticamente todas as distribuições de Linux adotam uma interface
gráfica como padrão, porém todas permitem que o usuário instale e use a interface
gráfica de sua preferência.
Abaixo, descrição das interfaces gráficas mais conhecidas:

KDE – K Desktop Enviroment


É a interface gráfica com maior número de recursos gráficos,
combinando facilidade de uso e as funcionalidades avançadas que
existem no Linux. Ela vem acompanhada de várias aplicações,
inclusive uma suíte de ferramentas para escritório própria, o Koffice.
GNOME – GNU Network Object Model Enviroment

Interface oficial do projeto GNU. De fácil uso e com grande número de


aplicações que são usadas no dia-dia como: o processador de textos
Abiword, a planilha eletrônica Gnumeric, etc.
XFCE

Ambiente gráfico desenvolvido para consumir pouca memória, e


prover recursos mais utilizados. De rápido carregamento, aparência
agradável e facilidade de uso mediana.

Existem diversas outras interfaces gráficas


que atendem aos mais variados gostos.
Porém é relevante ressaltar que quanto mais
recursos uma interface tiver, maior será a
necessidade de processamento do
computador.
Esta observação é muito importante, pois é
comum ouvir equívocos do tipo “Linux é muito
lento”, quando na verdade a interface gráfica
que foi escolhida não é a mais adequada para
o hardware que está sendo usado.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
14
1.7 - Sistema de arquivos

O Linux possui boa performance no gerenciamento de dados, tanto no que diz


respeito ao armazenamento, quanto nas alocações e atualizações de informações.
Dentre vários, um dos grandes responsáveis por tanta eficiência é o sistema de
arquivo ext3, que passou a ser integrado definitivamente ao Linux (kernel) a
partir da versão 2.4.
Funcionamento padrão dos sistemas de arquivos em Linux
Os sistemas de arquivos são criados em partições do disco, de forma que seja
possível armazenar programas e dados em formato de arquivos e diretórios
(pastas). O Linux, assim como praticamente todos os sistemas operacionais
baseados em Unix, usa um sistema de arquivos que possuem uma hierarquia,
composta de arquivos e diretórios, que podem conter outros diretórios ou arquivos.
Os arquivos/diretórios (sistemas baseados em Unix tratam os diretórios como
arquivos especiais) em um sistema de arquivos para Linux são disponibilizados (ou
montados) para manipulação através do comando "mount", geralmente acionado
no processo de startup (inicialização), que ocorre quando o computador é ligado e
começa-se a carregar o sistema operacional. Quando o usuário decide desligar o
computador e usa comandos para encerrar o Linux, os sistemas de arquivos são
desmontados, fazendo com que o sistema de arquivos não possa mais sofrer
mudanças.

Erros e corrompimento do sistema de arquivos


Os sistemas de arquivos para Linux já sofreram muitos tipos de tratamentos
e reescrita de código para eliminar o corrompimento causado por aplicações ou pelo
próprio kernel. No entanto, eliminar o corrompimento de dados em arquivos
causados, por exemplo, pela queda de energia ou pelo desligamento incorreto por
parte do usuário, sempre foi uma tarefa praticamente impossível. Quando o
sistema é desligado incorretamente o sistema de arquivos pode ser danificado. A
solução é fazer com que, no próximo processo de inicialização do Linux, seja
verificado se o sistema de arquivos está consistente e não manipulável. Caso não
esteja, a ferrramenta "fsck" verifica o sistema na busca de erros.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
15
Sistema de arquivos ext3
O sistema de arquivos ext3 é basicamente o sistema de arquivos ext2 com
recursos de Journaling2. Talvez, essa seja a razão de seu uso amplo: ele é
totalmente compatível com ext2 (que foi um sistema de arquivos muito usado), o
que nenhum outro sistema de arquivos baseado em Journaling é.
O ext3 passou a ser efetivamente suportado pelo kernel do Linux a partir da
versão 2.4. Conseqüentemente, todas as distribuições Linux lançadas com esse
kernel ou superior, tem suporte padrão para ext3.
No ext3, o código de Journaling usa uma camada chamada "Journaling Block
Device" (JBD). A JBD foi criada com o propósito de implementar Journal em
qualquer tipo de dispositivo com base em blocos de dados. Por exemplo, o código
ext3 informa e "pede autorização" à JDB para efetuar as mudanças, antes de
modificar/adicionar qualquer dado no disco. Sendo assim, é o JDB que
verdadeiramente "gerencia" o Journal. O fato mais interessante disso é que, a JDB
funciona como uma entidade independente, permitindo que não só o ext3 a use,
mas também outros sistemas de arquivos.

2
Consiste no acmpanhamento das mudanças que serão feitas no sistema de arquivos
(gravações/atualizações de dados, etc) antes que realmente sejam feitas. Essas informações que o
Journaling captura são então armazenadas em uma parte separada do sistema de arquivos,
denominada "Journal". Quando as informações são armazenadas no Journal, o sistema de arquivos
aplica as mudanças registradas nele e então, remove as informações do Journal.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
16
1.8 - Diretório e arquivos de sistema

Diretório é o local utilizado para armazenar conjuntos de arquivos para


melhor organização e localização. O diretório, como o arquivo, também é case
sensitive (o diretório /teste é completamente diferente do diretório /Teste).
Não podem existir dois arquivos com o mesmo nome em um diretório, ou um
sub-diretório com um mesmo nome de um arquivo em um mesmo diretório. Um
diretório nos sistemas Linux/UNIX são especificados por uma "/" e não uma "\"
como é feito no Windows.

Diretório Raiz
Este é o diretório principal do sistema. Dentro dele estão todos os diretórios
do sistema. O diretório Raiz é representado por uma "/" (barra), assim se você
digitar o comando cd / você estará acessando este diretório.
Nele estão localizados outros diretórios como o /bin, /sbin, /usr, /usr/local,
/mnt, /tmp, /var, /home, etc. Estes são chamados de sub-diretórios pois estão
dentro do diretório "/".

Diretório atual
É o diretório em que nos encontramos no momento. Você pode digitar pwd
para verificar qual é seu diretório atual. O diretório atual também é identificado por
um "." (ponto). O comando ls . pode ser usado para listar seus arquivos.

Diretório home
Também chamado de diretório de usuário. No GNU/Linux cada usuário
(inclusive o root) possui seu próprio diretório onde poderá armazenar seus
programas e arquivos pessoais.
Este diretório está localizado em /home/[login], neste caso se o seu login for
"joao" o seu diretório home será /home/joao. O diretório home também é
identificado por um ~(til), você pode digitar tanto o comando ls /home/joao
como ls ~ para listar os arquivos de seu diretório home.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
17
Diretório Superior
O diretório superior (Upper Directory) é identificado por .. (2 pontos). Caso
estiver no diretório /usr/local e quiser listar os arquivos do diretório /usr você pode
digitar, ls .. Este recurso também pode ser usado para copiar, mover
arquivos/diretórios, etc.

Diretório Anterior
O diretório anterior é identificado por "-". É útil para retornar ao último
diretório usado. Se estive no diretório /usr/local e digitar cd /lib, você pode
retornar facilmente para o diretório /usr/local usando cd -.

Caminho na estrutura de diretórios


São os diretórios que teremos que percorrer até chegar no arquivo ou
diretório que procuramos. Se desejar ver o arquivo /usr/doc/copyright/GPL você
tem duas opções:
Mudar o diretório padrão para /usr/doc/copyright com o comando cd
/usr/doc/copyright e usar o comando cat GPL.
Usar o comando "cat" especificando o caminho completo na estrutura de
diretórios e o nome de arquivo: cat /usr/doc/copyright/GPL.

Exemplo de diretório
Um exemplo de diretório é o seu diretório de usuário, todos seus arquivos
essenciais devem ser colocados neste diretório. Um diretório pode conter outro
diretório, isto é útil quando temos muitos arquivos e queremos melhorar sua
organização.
Abaixo um exemplo de uma empresa que precisa controlar os arquivos de
pedidos emitidos para as fábricas:
/pub/vendas - diretório principal de vendas
/pub/vendas/mes01-99 - diretório contendo vendas do mês 01/1999
/pub/vendas/mes02-99 - diretório contendo vendas do mês 02/1999
O diretório vendas é o diretório principal, já mes01-99 e mes02-99 são
subdiretórios que contém os arquivos de vendas dos respectivos meses.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
18
Estrutura básica de diretórios do Sistema Linux
A estrutura de diretórios também é chamada de Árvore de Diretórios. Cada
diretório do sistema tem seus respectivos arquivos que são armazenados conforme
regras definidas pela FHS (FileSystem Hierarchy Standard - Hierarquia Padrão do
Sistema de Arquivos), definindo que tipo de arquivo deve ser armazenado em cada
diretório.
/bin - Arquivos de programas do sistema usados com freqüência pelos usuários.
/boot - Contém arquivos necessários para a inicialização do sistema.
/cdrom - Ponto de montagem da unidade de CD-ROM.
/dev - Arquivos usados para acessar periféricos existentes no computador.
/etc - Arquivos de configuração de seu computador local.
/floppy - Ponto de montagem de unidade de disquetes.
/home - Diretórios contendo os arquivos dos usuários.
/lib - Bibliotecas compartilhadas pelos programas do sistema e módulos do kernel.
/lost+found - Local para a gravação de arquivos/diretórios recuperados pelo
utilitário fsck.ext2. Cada partição possui seu próprio diretório lost+found.
/mnt - Ponto de montagem temporário.
/proc - Sistema de arquivos do kernel. É usado por diversos programas que fazem
sua leitura, verificam configurações do sistema ou modificam o funcionamento de
dispositivos do sistema através da alteração em seus arquivos.
/root - Diretório do usuário root.
/sbin - Diretório de programas usados pelo superusuário (root) para administração
e controle do funcionamento do sistema.
/tmp - Diretório para armazenamento de arquivos temporários.
/usr - Contém maior parte de seus programas. Normalmente acessível somente
como leitura.
/var - Contém maior parte dos arquivos que são gravados com freqüência pelos
programas do sistema, e-mails, spool de impressora, cache, etc.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva
19
REFERÊNCIAS

http://www.wikipedia.com
http://www.devin.com.br/eitch/tlm4/index.html
http://www.conectiva.com/doc/livros/online/10.0/servidor/pt_BR/index.html
SOARES, Josué da Silva. Noções Básicas de Linux Desktop.

Sistema Operacional de Redes – Unix/Linux


Organizado por: Luiz A M Silva

Você também pode gostar