LINUX. Retirado do livro Linux Curso completo, 5ª edição, de Fernando Pereira



Documentos relacionados
16:21:50. Introdução à Informática com Software Livre

Sistema Operativo Linux

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

Referencial do Módulo B

O AMBIENTE DE TRABALHO DO WINDOWS

O Manual do Desktop Sharing. Brad Hards Tradução: Pedro Morais

LINUX. Lapro I Profa. Fernanda Denardin Walker. - Aula 2 - Material adaptado de: Isabel Mansour, Marcia Moraes e Silvia Moraes SISTEMA OPERACIONAL

Unidade 1: Sistema Operativo Linux

Linux Caixa Mágica 14. Como Gravar um Live CD. Julho 2009 Versão 1.1

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar

I N F O R M Á T I C A. Sistemas Operacionais Prof. Dr. Rogério Vargas Campus Itaqui-RS

No VirtualBox, carregar no Botão Novo (New), que irá abrir o Assistente de Criação de Máquina Virtual para criar uma nova VM.

Apontamentos do livro de AI Linux. 1.5 Modo texto e modo gráfico

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

Sistema Operacional LINUX

1.5. Computador Digital --Software. INFormática Tipos de Software. Software. Hardware. Software do Sistema. Software de Aplicação.

Ambiente de trabalho. Configurações. Acessórios

PROGRAMAÇÃO DE MICROPROCESSADORES 2011 / 2012

Aplicações de Escritório Electrónico

Instalação do software cygwin

GIAE VERSÃO JUNHO DE 2011 MUITO IMPORTANTE

Realizado por: Fábio Rebeca Nº6. Iuri Santos Nº8. Telmo Santos Nº23

Seu manual do usuário EPSON LQ-630

Organização do Curso. Instalação e Configuração. Módulo II. Pós Graduação em Projeto e Gerencia de Redes de Computadores

Universidade Federal de Goiás. Alexandre Ferreira de Melo CERCOMP / UFG

MANUAL DE INICIAÇÃO RÁPIDA PARA. Instalar o Nokia Connectivity Cable Drivers

Boot Camp Manual de Instalação e Configuração

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 03. Prof. Gabriel Silva

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

UNIVERSIDADE FEDERAL DE PELOTAS

UNIDADE 2: Sistema Operativo em Ambiente Gráfico

Guia de Instalação do "Google Cloud Print"

Introdução a Sistemas Abertos

Acronis Servidor de Licença. Manual do Utilizador

Boot Camp Manual de Instalação e Configuração

Kernel Linux. Trabalho Realizador Por: Tiago Conceição Nº Representação artística do núcleo Linux

Guia de instalação do Player Displr Windows 7, 8.1 e 10

Akropole Catequista. Todos os Ficheiros no Akropole Catequista trabalham com uma simples barra de edição, com 4 botões:

Partição Partição primária: Partição estendida: Discos básicos e dinâmicos

Instalação e Manutenção de Microcomputadores (COI)

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

NÚCLEO DE CIDADANIA DIGITAL Caminho Livre para o novo mundo! Conceitos básicos de Linux.

Samsung Data Migration v3.0 Guia de Introdução e Instalação

Boot Camp Manual de Instalação e Configuração

SISTEMA OPERACIONAL & SOFTWARE LIVRE

Instalação do Sistema Operativo Windows XP

>>> OBJETIVOS... === FHS - Filesystem Hierarchy Standard. === Sistemas de arquivos e Partições

Programação 2008/2009 MEEC Guia de instalação do PC de programação

Operador de Computador. Informática Básica

SIMULADO DE INFORMÁTICA BÁSICA TÉCNICO DO MPU PROF. ALEXANDRE LÊNIN / PROF. JUNIOR MARTINS

Servidores Virtuais. Um servidor à medida da sua empresa, sem investimento nem custos de manutenção.

CET GRSI Sistema Operativo de Rede. António Paulo Santos

Realizado por: Fábio Rebeca Nº6. Iuri Santos Nº8. Telmo Santos Nº23

UNIDADE 2: Sistema Operativo em Ambiente Gráfico

Boot Camp Manual de Instalação e Configuração

ZS Rest. Manual Profissional. Instalação do Software. v2011

Curso de Instalação e Gestão de Redes Informáticas

Conceitos importantes

Samsung Data Migration v2.7 Guia de Introdução e Instalação

RELATÓRIO SOBRE OS POCEDIMENTOS UTILIZADOS PARA O PLANEAMENTO E INSTALAÇÃO DE UMA REDE EM TOPLOGIA ESTRELA

Internet Update de PaintManager TM. Manual de instalação e utilização do programa de actualização

Perguntas frequentes do Samsung Drive Manager

O aumento da força de vendas da empresa

PLANEAMENTO DA INSTALAÇÃO DO WINDOWS SERVER 2003

SAIBA MAIS SOBRE O LINUX E DESCUBRA QUAL DISTRIBUIÇÃO É MELHOR PARA VOCÊ! CURSO

Aula 01. Introdução ao Linux

Regulamento de utilização Centros Informáticos 2008/2009

Sistemas Operacionais

Guia de Instalação de Software

Manual Upgrade para a Versão 6

4. Conceitos Básicos de Computação: Sistemas Operacionais

2-Introdução e Conceitos Básicos das TIC

Sistema Operativo em Ambiente Gráfico

13/10/11 TIPOS DE UTILITÁRIOS UTILITÁRIOS 0798 INTRODUÇÃO À PROGRAMAÇÃO TIPOS DE UTILITÁRIOS TIPOS DE UTILITÁRIOS

Comunicação de Dados de Autenticação e Credenciais de Acesso para Resposta ao Inquérito

Manual Equipamento ST10 Flasher Rev. 1

ZS Rest. Manual Profissional. BackOffice Mapa de Mesas. v2011

Migração da Versão 4.0 para a Versão 4.1 do MSS. Versão 1.0 de Português

A SÈTIMA. O nosso principal objectivo

5. Métodos ágeis de desenvolvimento de software

Guia de Instalação do Software

Dicas para usar melhor o Word 2007

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

Laboratório de Redes de Computadores e Sistemas Operacionais

5.2. Outras configurações Gestão de utilizadores

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco

Cookies. Krishna Tateneni Jost Schenck Tradução: José Pires

CC Montagem e manutenção de hardware Docente: Nataniel Vieira 1 sem Técnico em Informática Roteiro 06: Atividade sobre o Documentário RevolutionOS

Linux, Windows, Antivírus, Teclado e .

Guia para o Google Cloud Print

Relatório SHST

O Manual do Remote Desktop Connection. Brad Hards Urs Wolfer Tradução: José Pires

Acer erecovery Management

UDPcast Clonagem de HDs via rede utilizando

Escaneando seu computador com o Avira AntiVir 10

Transcrição:

LINUX Retirado do livro Linux Curso completo, 5ª edição, de Fernando Pereira

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

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

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

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

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

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

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

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

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

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:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 loginname, é 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: dizse 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: /bin Contém um conjunto mínimo de programas utilitários, que são usados durante o arranque do sistema /boot Arranque do sistema: contém um ficheiro com o núcleo (kernel) do sistema operativo e vários ficheiros auxiliares

A árvore de directorias do Linux /dev /etc /home /lib Contém ficheiros que representam todos os dispositivos de hardware e periféricos do sistema Contém a maioria dos ficheiros de configuração do sistema operativo Directorias de trabalho dos utilizadores Contém bibliotecas necessárias para que o sistema e os programas possam funcionar. 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 /mnt /proc /root /sbin /tmp Directoria usada para aceder ao conteúdo de unidades de discos amovíveis, como disquetes, CD-ROM, discos magneto-ópticos, discos USB e drives ZIP Contém ficheiros virtuais que representam o estado actual dos processos em execução e informação sobre o estado de muitos componentes do sistema operativo Directoria de trabalho do superutilizador Contém os principais programas necessários para administrar e reparar o sistema operativo Ficheiros temporários: todos os utilizadores podem criar ficheiros de dados temporários nesta directoria. Estes ficheiros podem ser apagados sempre que o sistema arranque

A árvore de directorias do Linux /usr /var /lost+found Contém mais subdirectórios com programas, 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 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 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 /usr/games /usr/include /usr/lib Ficheiros de dados pertencentes a jogos (records, níveis, figuras, etc.) Ficheiros com dados e definições sobre o sistema operativo e as bibliotecas do sistema, utilizados nas linguagens de programação C e C++ Muitos ficheiros contendo bibliotecas dinâmicas partilháveis, que são utilizadas pelos programas durante a sua execução

A árvore de directorias do Linux - /usr /usr/sbin /usr/share /usr/share/doc /usr/share/info Local onde se encontra a maioria do programas de administração do sistema e os deamons, ou seja, os programas que implementam os vários serviços Ficheiros de dados partilhados pelos programas e aplicações. Possui várias subdirectorias, para cada programa ou família de programas. Numerosos ficheiros com documentação, manuais e cursos sobre o sistema operativo, os serviços e os programas instalados Mais documentação, com informação e manuais sobre o sistema

A árvore de directorias do Linux - /usr /usr/share/man /usr/src /usr/x11r6 ou /usr/x11 /usr/local Ficheiros onde são guardados os verdadeiros manuais do sistema (usados com o comando «man») O código-fonte do sistema operativo. É utilizado pelos programadores que pretendem modificar o sistema O sistema de janelas X e os seus programas utilitários Contém as directorias onde são guardados pacotes de software opcionais, que são 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: /var/spool /var/lock /var/run /var/log Área onde são guardadas as filas de espera das impressoras e do correio electrónico Área onde é registada a utilização de vários serviços e 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. Estes ficheiros podem ser utilizados para parar ou terminar os serviços Vários ficheiros com o registo de praticamente todos os eventos que acontecem no sistema (muito útil para efeitos de segurança e administração).