O documento descreve a história do Linux, começando com o desenvolvimento do UNIX na década de 1970. O Linux surgiu em 1991 quando Linus Torvalds começou a desenvolver seu próprio núcleo de sistema operativo para PC, inspirando-se no software livre e no movimento GNU. O código foi colocado online e atraiu muitos colaboradores, fazendo o Linux evoluir rapidamente.
O documento descreve a história do Linux, começando com o desenvolvimento do UNIX na década de 1970. O Linux surgiu em 1991 quando Linus Torvalds começou a desenvolver seu próprio núcleo de sistema operativo para PC, inspirando-se no software livre e no movimento GNU. O código foi colocado online e atraiu muitos colaboradores, fazendo o Linux evoluir rapidamente.
O documento descreve a história do Linux, começando com o desenvolvimento do UNIX na década de 1970. O Linux surgiu em 1991 quando Linus Torvalds começou a desenvolver seu próprio núcleo de sistema operativo para PC, inspirando-se no software livre e no movimento GNU. O código foi colocado online e atraiu muitos colaboradores, fazendo o Linux evoluir rapidamente.
completo, 5ª edição, de Fernando Pereira Linux - História A primeira versão do sistema operativo UNIX foi desenvolvida durante os anos 70 pelos famosos laboratórios Bell, da companhia telefónica norte-americana AT&T Tudo começou com uma equipa de programadores que não estavam satisfeitos com os sistemas operativos, nem com as linguagens de programação que existiam na altura Linux - História Por esse motivo resolveram criar outra linguagem de programação e um novo sistema operativo A linguagem de programação chamou-se C e o sistema operativo foi o UNIX As primeiras versões de UNIX foram utilizadas exclusivamente para uso interno na AT&T, mas começaram a surgir outras entidades com interesse no sistema Algumas das primeiras entidades que começaram a usar o UNIX foram as universidades e centros de investigação Linux - História Durante os primeiros tempos, a AT&T licenciava o UNIX sob a forma de código-fonte Desta forma, os utilizadores recebiam o código-fonte de todos os programas e utilitários do sistema operativo, juntamente com o próprio sistema O acesso ao código-fonte foi extremamente importante para o crescimento do próprio sistema, porque permitia aos utilizadores modificar e adaptar o sistema de acordo com as suas necessidades Linux - História Dentro do meio científico e universitário, existiam bastantes pessoas com conhecimentos profundos de programação e alguma teoria dos sistemas operativos, que desenvolveram várias extensões ao UNIX e criaram novas ferramentas Na altura, as instituições científicas encontravam-se ligadas entre si, utilizando uma rede de dados que funcionava sobre o protocolo UUCP (Unix-to-Unix Copy) Esta rede ainda era relativamente rudimentar, mas já permitia aos investigadores trocar informação sob a forma de e-mail e possibilitava a transferência de ficheiros Linux - História No meio científico sempre existiu uma grande tradição de troca e partilha de informação Este facto é amplamente reconhecido como um dos factores mais importantes para o avanço da ciência Quando os investigadores entraram em contacto com o sistema UNIX, começaram imediatamente a aplicar a mesma filosofia, trocando entre si as correcções e extensões que iam desenvolvendo Na verdade, algumas dessas extensões foram tão importantes que começaram a ser incluídas no próprio sistema operativo Linux - História Uma das entidades que mais destacou neste campo foi a Universidade da Califórnia em Berkely As contribuições realizadas pelos membros desta academia foram tantas que acabaram por dar origem a uma nova variante de UNIX, chamada BSD Por outro lado, o MIT (Instituto Tecnológico do Massachusetts) também merece ser mencionado, porque alguns anos mais tarde veio a fazer uma contribuição de enorme importância: foi aí que nasceu o sistema de janelas X Linux - História Com o passar dos anos, o sistema UNIX expandiu-se bastante, começando a penetrar em muitos sectores, até se tornar num verdadeiro sistema operativo comercial As variantes de UNIX começaram a ser utilizadas por uma grande quantidade de fabricantes de hardware (OEM), que as incluíam nos seus computadores Por outro lado, a AT&T começou a restringir cada vez mais a licença de utilização do sistema operativo As licenças de código-fonte começaram a ser cada vez mais difíceis de obter e, em alguns casos, chegaram mesmo a ser impossíveis de obter Linux - História Este facto constituiu um motivo de grande desapontamento para os utilizadores originais, que mais contribuíram para a expansão e para o desenvolvimento do UNIX À medida que o sistema se foi tornando mais comercial e cada vez mais fechado, a onde de frustração e desilusão dos utilizadores foi crescendo Por esse motivo, no início dos anos 80 foi criada uma fundação chamada FSF (Free Software Foundation) que se propunha desenvolver e proteger o software livre Linux - História Um dos maiores objectivos da FSF era construir um ambiente de trabalho constituído integralmente por software livre Pretendia-se fazer renascer o espírito inicial da comunidade de utilizadores de UNIX, que entretanto quase se havia perdido Para proteger legalmente o software livre, foi criada uma nova licença, intitulada GPL (General Public Licence) A GPL garante a qualquer pessoa o direito de copiar, redistribuir e até modificar e melhorar todo o software por ela protegido Linux - História Basicamente, a GPL tenta ser uma licença com o menor número de restrições possível, para que qualquer pessoa possa utilizar o software da forma que melhor entender Contudo, existem três grandes restrições que gerem e protegem o software abrangido pela GPL: Linux - História A primeira diz que o software livre pode ser distribuído e comercializado por qualquer pessoa, mas o distribuidor tem sempre de avisar o receptor acerca dos termos da GPL A segunda restrição diz que qualquer pacote de software derivado de software protegido pela GPL também tem de estar abrangido pela GPL Finalmente, a terceira condição diz que o código-fonte de todo o software protegido pela GPL tem de estar acessível publicamente. Isto significa que o código fonte deve ser fornecido a todos os utilizadores ou, então, estes devem ser informados sobre a forma de o obter Linux - História Os activistas da FSF eram maioritariamente programadores e especialistas em software de sistemas Quando estes programadores tiveram de escolher um modelo para o novo sistema operativo que se propunham criar, basearam-se no sistema operativo que preferiam: o UNIX Foi a partir do UNIX que surgiu a palavra GNU, que significa GNU is Not Unix… Linux - História Ao longo dos anos, os membros do projecto GNU foram desenvolvendo vários programas e utilitários, para construir um ambiente capaz de substituir integralmente um sistema UNIX apenas com software livre Por esse motivo, todos os utilitários foram desenhados com o objectivo de manter a compatibilidade com as versões standard do UNIX, apesar de terem sido acrescentadas algumas melhorias Linux - História Entre estes programas, estão as ferramentas de desenvolvimento de aplicações GNU, que incluem compiladores como o gcc, depuradores de erros e versões alternativas de praticamente todas as ferramentas normais dos sistemas UNIX Com o passar do tempo, o número de programadores que desenvolviam programas livres foi crescendo lentamente, até que no final dos anos 80 com o início do crescimento da Internet, se deu um grande impulso no movimento do software livre Linux - História Com o auxílio da Internet, os programadores podem trocar ideias muito facilmente e tornou-se possível formar grupos de trabalho com pessoas distribuídas por todo o mundo Por esta razão, as equipas de desenvolvimento dos projectos de software livre, cresceram bastante e, em alguns casos, chegam a atingir várias centenas de voluntários Actualmente, existem projectos em que o número de voluntários é tão grande que a sua dimensão rivaliza ou mesmo supera as equipas de profissionais que trabalham nas maiores companhias de software Linux - História Por outro lado, a quantidade e a diversidade dos projectos de software livre também cresceu bastante Neste momento, os projectos não se limitam apenas a sistemas operativos, pois também foram criados serviços de rede, sistemas de janelas, ambientes gráficos do tipo desktop, processadores de texto, folhas de cálculo, jogos e muitas, mas mesmo muitas, aplicações Linux - História No princípio dos anos 90, um jovem finlandês chamado Linus Torvalds estava bastante insatisfeito com os sistemas operativos que existiam para PC, porque ou eram muito maus ou eram demasiado caros Por exemplo, era frequente uma versão completa de UNIX para PC custar valores equivalentes a mais de 1000 euros Por essa razão, o jovem Linus resolveu começar a escrever o seu próprio núcleo (kernel) de sistema operativo Passados cerca de seis meses, já tinha a primeira versão a funcionar e resolveu chamar-lhe Linux A primeira versão ainda era muito incompleta e limitada, mas apesar disso, o autor resolveu afixar o código-fonte na Internet Linux - História Apesar de o autor afirmar que se tratava apenas de um sistema experimental, que ainda estava em pleno desenvolvimento, houve várias pessoas que se interessaram imediatamente pelo projecto e cerca de uma semana depois, já existia mais de uma centena de utilizadores Todos os primeiros utilizadores eram programadores que, por uma razão ou outra, necessitavam de um sistema operativo aberto Devido ao seu perfil, os primeiros utilizadores trouxeram bastantes contribuições para o projecto, pois implementaram novos drivers, resolveram erros e problemas, adicionaram novas funcionalidades e, acima de tudo, fizeram muitas sugestões Linux - História As contribuições feitas pelos novos utilizadores foram sendo reunidas pelo autor inicial, Linus Torvalds, que as conjugava com as suas próprias alterações, fazendo com que o Linux evoluísse a um ritmo muito rápido Com o passar dos tempos, o Linux evoluiu até estar ao nível dos sistemas operativos comerciais e possuir um conjunto de funcionalidades extremamente sofisticado Linux - História A versão actual do núcleo de Linux (2.6), funciona em processadores de 32 e 64 bits, suporta vários processadores funcionando em multiprocessamento simétrico, tem um stack de protocolos de rede bastante evoluído, permite instalar e remover “módulos” (drivers e subsistemas do núcleo) em pleno funcionamento e está em conformidade com várias normas, como o POSIX Linux - História O modelo de desenvolvimento aberto, que recentemente recebeu a designação genérica open source, está por detrás da sua rápida evolução: como o código-fonte está acessível a todos os utilizadores, sempre que alguém descobre um erro ou tem uma ideia brilhante, pode implementar a solução imediatamente Em seguida, os utilizadores apenas têm de enviar as suas alterações aos responsáveis do projecto, para que estas passem a ser integradas na próxima versão oficial… Linux - História Uma das consequências mais importantes do modelo open source é a estabilidade e a fiabilidade que os projectos de sotware livre atingem Qualquer erro que possa existir tem uma probabilidade muito baixa de passar por todos os utilizadores, sem nunca chegar a ser detectado Assim que um problema é detectado, é imediatamente corrigido pelos autores ou, muitas vezes, pelo próprio utilizador que o encontrou Linux - História Como cada utilizador é um potencial contribuidor para a resolução de erros, considera-se que, neste momento, muitos projectos de software open source já atingiram um nível de qualidade e de fiabilidade muito superior ao dos produtos comerciais equivalentes Por exemplo, quando é detectada alguma falha de segurança nos pacotes de software open source que costumam ser fornecidas com o Linux, é habitual a correcção ser publicada após algumas horas Linux - História Desta forma, um administrador de sistemas atento pode manter o seu sistema tão seguro que nem chega a dar tempo aos possíveis atacantes, para aproveitar as eventuais falhas de segurança que possam ser descobertas No caso das companhias de software comercial, é costume as falhas de segurança serem negadas oficialmente durante longos períodos de tempo e quando são reconhecidas, é normal que as correcções só sejam publicadas várias semanas depois Durante todo esse tempo, os sistemas dos seus clientes ficam vulneráveis a possíveis ataques Linux - História Como já foi referido, Linus Torvalds apenas criou o núcleo do sistema operativo Por esse motivo, a designação «Linux» apenas pode ser aplicada ao núcleo do sistema, que controla o hardware e cria um ambiente virtual, sobre o qual funcionam as aplicações O sistema operativo propriamente dito é composto pelo núcleo do sistema e várias centenas de programas e utilitários, muitos dos quais já existiam antes de o próprio Linux ter aparecido Linux - História Nos primeiros tempos, os utilizadores de Linux tinham de instalar manualmente o kernel (núcleo) do sistema operativo e reunir todos os programas e utilitários, necessários para pôr o sistema em funcionamento Essa tarefa era de tal forma complicada e difícil de executar, que só as pessoas com conhecimentos mais profundos do funcionamento interno do sistema a conseguiam realizar Foi para resolver este problema que surgiram as “distribuições” de Linux As distribuições são constituídas pelo núcleo de Linux propriamente dito e uma enorme colecção de programas, serviços e aplicações, devidamente pré-configurados e prontos a utilizar Linux - História As distribuições mais conhecidas são a Slackware, a Red Hat, a Suse Linux, a Debian, a Yggdrasil, a Conectiva, a Mandrake e a TurboLinux da Pacific HiTech Em Portugal, temos também a distribuição Caixa Mágica de origem nacional Cada distribuição possui um programa de instalação e configuração inicial que automatiza todo o processo de instalação Nessa fase, existem vários menus em que o utilizador pode seleccionar os pacotes de software que vai utilizar e personalizar o sistema à medida das suas necessidades Os discos rígidos são inicializados e o sistema operativo é automaticamente copiado para as partições escolhidas Linux - História As primeiras distribuições de Linux ainda eram relativamente rudimentares, o que conferiu ao Linux o estatuto de sistema operativo mais difícil de instalar, de entre todos os sistemas operativos Contudo, actualmente a situação já é radicalmente diferente As distribuições de Linux evoluíram bastante e, neste momento, o Linux já é tão fácil de instalar como qualquer outro sistema operativo ou até mais fácil, dependendo da experiência anterior do utilizador Linux - História Ao nível da utilização, o Linux também evoluiu bastante Nos primeiros tempos, os utilizadores só tinham a linha de comandos, em que o computador é controlado a partir de ordens escritas no teclado Este método é muito versátil, mas os novos utilizadores encontram grandes dificuldades, porque são obrigados a memorizar os nomes dos comandos Actualmente, para além da linha de comandos, já existem vários ambientes gráficos do tipo desktop, como o Gnome e o KDE Linux - História Os ambientes gráficos não são tão versáteis como a linha de comandos, mas são muito mais fáceis de utilizar para os novos utilizadores, que conseguem trabalhar sem ter de possuir grandes conhecimentos acerca do sistema que está por baixo A linha de comandos só apresenta desvantagens nos primeiros tempos, até o utilizador aprender a usar os comandos mais frequentes Depois da fase inicial de aprendizagem ser superada, conseguem-se atingir níveis de desempenho fabulosos, muito superiores aos que se obtêm com os ambientes gráficos Linux - História Uma das consequências benéficas da linha de comandos é o facto de obrigar os utilizadores a progredir Ao fim de algum tempo a utilizar a linha de comandos, qualquer utilizador se transforma num verdadeiro especialista, preparado para procurar informação na documentação do sistema e enfrentar qualquer situação Por outro lado, os ambientes gráficos possuem uma enorme desvantagem: limitam a evolução e a aprendizagem dos utilizadores Um utilizador típico de sistemas gráficos, mesmo com vários anos de experiência, não consegue adquirir capacidade para enfrentar novas situações Linux - História Habitualmente, um utilizador que só esteja habituado aos sistemas gráficos, bloqueia sempre que lhe surge uma situação diferente do normal Quando necessita de realizar uma determinada operação e não consegue encontrar nenhum ícone ou uma entrada nos menus, então não sabe como proceder… Por esse motivo, é costume necessitar do apoio constante de alguém com um pouco mais de experiência que funciona como baby-sitter 1.1. Conceitos Básicos
1.1.1 – Utilizadores, tarefas e
processos Utilizadores, tarefas e processos O sistema operativo Linux é um sistema multitarefa e multiutilizador Trata-se de um sistema multiutilizador, porque pode ser utilizado por muitas pessoas ao mesmo tempo O facto de ser multiutilizador põe um pequeno problema: para o sistema suportar muitos utilizadores em simultâneo, é necessário encontrar uma forma de fazer com que estes tenham acesso físico ao sistema, pois os computadores pessoais só costumam possuir um conjunto de teclado, rato e monitor Utilizadores, tarefas e processos Antigamente, o problema era resolvido utilizando “terminais”, que consistiam num conjunto de teclado e monitor, ligados ao computador central através de uma ligação por cabo série Nos dias que correm, os antigos terminais quase caíram em desuso, mas continuam a ser utilizados programas que simulam o seu funcionamento Desta forma, podemos usar computadores pessoais para aceder a sistemas remotos via cabo série, modem, ou mesmo utilizando ligações em rede (Internet, etc.) Utilizadores, tarefas e processos Por exemplo, os PC antigos (XT, AT 286 ou 386) que já não tinham qualquer utilidade, podem voltar a ser usados como terminais Para isso, basta instalar-lhes o software adequado e ligá-los a um sistema central (PC recente correndo Linux) através de um cabo série Por ser um sistema multiutilizador, o sistema tem ainda de possuir mecanismos para impedir que os utilizadores possam interferir no trabalho uns dos outros Por exemplo, o sistema tem de impedir que os utilizadores tenham acesso aos dados confidenciais de outras pessoas Utilizadores, tarefas e processos Um dos mecanismos que o sistema utiliza são as sessões de trabalho Sempre que um utilizador começa a trabalhar no sistema, é criada uma nova sessão de trabalho, que começa por um procedimento de entrada no sistema, designado por login Durante o login, o utilizador tem de indicar o seu nome (username) e uma senha (password) O username, que muitas vezes também é designado por login- name, é apenas o nome (ou a sigla), pela qual o sistema conhece cada um dos utilizadores A password é uma palavra secreta que serve para evitar que pessoas estranhas entrem no sistema, fazendo-se passar por utilizadores credenciados Utilizadores, tarefas e processos
Fig 1.1 – Imagem de um ecrã de login, usando o sistema de janelas X (gdm)
Utilizadores, tarefas e processos Assim que um utilizador entra no sistema (faz login), é criada uma sessão de trabalho em que o computador executa todas as ordens recebidas do utilizador Quando um utilizador termina tudo o que tem a fazer, ou se por alguma razão decidir abandonar o seu posto de trabalho, deve terminar a sua sessão Para isso, executa um procedimento chamado logout Durante a sua sessão de trabalho, os utilizadores podem executar muitas tarefas, uma de cada vez, ou lançar várias tarefas em simultâneo É por essa razão que o Linux também é classificado como sistema operativo multitarefa Utilizadores, tarefas e processos Em Linux, as tarefas têm o nome técnico de «processos» Em cada instante, existem sempre muitos processos a correr no sistema De outra forma, também podemos dizer que existem muitas tarefas a ser executadas simultaneamente Geralmente, os processos são iniciados pelos utilizadores, mas também existem processos que são lançados automaticamente pelo sistema, chamados daemons Os daemons são responsáveis pelos diversos serviços do sistema operativo Utilizadores, tarefas e processos Caso um utilizador assim o pretenda, poderá terminar a sua sessão de trabalho e deixar alguns processos ainda em funcionamento Por exemplo, quando estamos a descarregar grandes quantidades de informação a partir da Internet, podemos ter de esperar muitas horas Nesses casos, é habitual deixar um processo em funcionamento no computador, encarregue de concluir a transferência de informação 1.1.2 – Sistema de ficheiros Sistema de ficheiros O sistema operativo Linux oferece aos seus utilizadores a possibilidade de guardar informação dentro do computador, que é armazenada sob a forma de ficheiros Os ficheiros podem conter dados, documentos ou programas Por exemplo, os documentos podem conter cartas, relatórios, listagens de pagamentos, etc. Um programa corresponde a uma sequência de ordens que se destina a ser executada pelo computador Sistema de ficheiros Como geralmente existem muitos ficheiros num computador, o Linux possui um mecanismo de directórios e subdirectórios, que permite organizar os ficheiros de acordo com os assuntos a que se relacionam Sistema de ficheiros
Fig 1.2 – A directoria / (root) do sistema de ficheiros do Linux
Sistema de ficheiros A estrutura de directórios apresenta um formato em árvore, em que a directoria principal se chama root, porque corresponde à raiz da árvore de directórios Como o sistema pode ter muitos utilizadores, o Linux implementa um sistema de protecções, que permite definir regras de acesso ao conteúdo de cada ficheiro Desta forma, a informação pode estar acessível a alguns utilizadores e escondida dos restantes Sistema de ficheiros Para simplificar a gestão de acessos, os utilizadores podem ser classificados segundo grupos Em vez de definir regras para cada utilizador de um grupo, basta definir uma regra geral que se aplica a todo o grupo Cada utilizador possui uma directoria dedicada a si próprio, na qual pode guardar ficheiros com toda a informação que desejar À partida, cada utilizador apenas tem privilégios para modificar informação dentro da sua própria directoria Sistema de ficheiros Existe um utilizador especial, chamado superutilizador, supervisor ou administrador, que possui privilégios especiais e tem acesso a todos os ficheiros do sistema, incluindo os que pertencem aos outros utilizadores O login-name do superutilizador é root Este nome deriva do facto de o superutilizador ter privilégios para controlar integralmente toda a árvore de directórios do sistema Sistema de ficheiros Quando o Linux é usado em computadores domésticos, isolados de qualquer rede, existe a tentação de usar sempre o login-name root Contudo, isso não é aconselhável porque pode causar vários problemas Em vez disso, é preferível criar uma conta de utilizador pessoal (username/password) para realizar as tarefas habituais do dia-a-dia Sistema de ficheiros O acto de fazer login como root deve ser sempre evitado, pois este utilizador possui privilégios para fazer virtualmente tudo e basta cometer um pequeno erro para causar estragos enormes Por exemplo, existe o risco de apagar ficheiros acidentalmente, danificar o sistema operativo e, mais grave ainda, perder muita informação Sistema de ficheiros Pelo contrário, os utilizadores normais não possuem privilégios para modificar o sistema Por esse motivo, possuem um grau de segurança contra erros de utilização bastante mais elevado Por exemplo, um utilizador normal não pode formatar discos rígidos, nem pode apagar nem modificar ficheiros do sistema Sistema de ficheiros Um dos maiores problemas com que se debatem os utilizadores actuais de computadores são os vírus informáticos Os vírus informáticos são programas que realizam tarefas indesejáveis, sem que o utilizador tenha conhecimento disso Uma das acções que os vírus praticam é a autopropagação, que consiste na contaminação de outros programas fazendo com que estes também fiquem infectados Sistema de ficheiros Em Linux, os utilizadores normais não possuem privilégios para modificar os ficheiros que contêm os programas instalados no sistema Por esse motivo, mesmo que um utilizador executasse um programa contendo vírus, este não se poderia propagar aos outros programas É por esse motivos que praticamente não se conhecem vírus para Linux e mesmo os poucos que se conhecem nunca se propagaram em larga escala: diz- se que o sistema operativo é virtualmente imune a vírus 1.1.3 – A árvore de directorias do Linux A árvore de directorias do Linux - / A directoria principal da árvore de directorias do Linux chama-se root e costuma ser representada pelo carácter «/» Dentro desta directoria, existem habitualmente as seguintes subdirectorias: Contém um conjunto mínimo de programas utilitários, /bin que são usados durante o arranque do sistema Arranque do sistema: contém um ficheiro com o núcleo /boot (kernel) do sistema operativo e vários ficheiros auxiliares A árvore de directorias do Linux Contém ficheiros que representam todos os dispositivos /dev de hardware e periféricos do sistema Contém a maioria dos ficheiros de configuração do /etc sistema operativo
/home Directorias de trabalho dos utilizadores
Contém bibliotecas necessárias para que o sistema e os programas possam funcionar. /lib A subdirectoria «/lib/modules» contém módulos de software com drivers, que podem ser carregados em andamento no kernel do sistema A árvore de directorias do Linux Directoria usada para aceder ao conteúdo de unidades de /mnt discos amovíveis, como disquetes, CD-ROM, discos magneto-ópticos, discos USB e drives ZIP Contém ficheiros virtuais que representam o estado actual /proc dos processos em execução e informação sobre o estado de muitos componentes do sistema operativo /root Directoria de trabalho do superutilizador Contém os principais programas necessários para /sbin administrar e reparar o sistema operativo Ficheiros temporários: todos os utilizadores podem criar ficheiros de dados temporários nesta directoria. Estes /tmp ficheiros podem ser apagados sempre que o sistema arranque A árvore de directorias do Linux Contém mais subdirectórios com programas, /usr bibliotecas, utilitários, documentação, etc. Contém ficheiros de dados do sistema operativo: correio electrónico que entra e sai, ficheiros em fila de espera para impressão, locks para impedir que vários /var utilizadores usem o mesmo periférico em simultâneo e logs que registam todos os eventos que vão acontecendo Sempre que o sistema é desligado em andamento, podem perder-se ficheiros. Quando o sistema arranca, verifica todo o disco e os ficheiros perdidos são /lost+found enviados para esta directoria. Por regra, existe uma directoria lost+found em cada partição e disco rígido instalados no sistema A árvore de directorias do Linux - /usr A directoria «/usr», também contém várias subdirectorias importantes: Local onde se encontra a esmagadora maioria dos /usr/bin programas e utilitários do sistema Ficheiros de dados pertencentes a jogos (records, /usr/games níveis, figuras, etc.) Ficheiros com dados e definições sobre o sistema /usr/include operativo e as bibliotecas do sistema, utilizados nas linguagens de programação C e C++ Muitos ficheiros contendo bibliotecas dinâmicas /usr/lib partilháveis, que são utilizadas pelos programas durante a sua execução A árvore de directorias do Linux - /usr Local onde se encontra a maioria do programas de administração do sistema e os deamons, ou /usr/sbin seja, os programas que implementam os vários serviços Ficheiros de dados partilhados pelos programas e /usr/share aplicações. Possui várias subdirectorias, para cada programa ou família de programas. Numerosos ficheiros com documentação, manuais /usr/share/doc e cursos sobre o sistema operativo, os serviços e os programas instalados Mais documentação, com informação e manuais /usr/share/info sobre o sistema A árvore de directorias do Linux - /usr Ficheiros onde são guardados os verdadeiros /usr/share/man manuais do sistema (usados com o comando «man») O código-fonte do sistema operativo. É utilizado /usr/src pelos programadores que pretendem modificar o sistema /usr/X11R6 O sistema de janelas X e os seus programas utilitários ou /usr/X11 Contém as directorias onde são guardados pacotes de software opcionais, que são /usr/local instalados manualmente pelo utilizador, pois não fazem parte do sistema standard. A árvore de directorias do Linux - /var A directoria «/var», subdivide-se em várias subdirectorias. As mais relevantes são as seguintes: Área onde são guardadas as filas de espera das /var/spool impressoras e do correio electrónico Área onde é registada a utilização de vários serviços e /var/lock periféricos, para impedir que vários utilizadores e serviços possam interferir uns com os outros Inclui vários ficheiros com a identificação dos vários processos responsáveis pelos serviços em funcionamento. /var/run Estes ficheiros podem ser utilizados para parar ou terminar os serviços Vários ficheiros com o registo de praticamente todos os /var/log eventos que acontecem no sistema (muito útil para efeitos de segurança e administração).