You are on page 1of 93

Tcnico Subsequente em Informtica

Fundamentos de Sistemas Operacionais e Sistemas Operacionais de Redes


Professora: M.Sc. Luana Priscilla Rodrigues da C. Lima E-mail: luana.ifrn@gmail.com

Contedo programtico
1. Comandos Bsicos do Linux
a) Sistemas de Arquivos e Sistemas de diretrios do Linux

Comandos de Arquivos e Diretrios

O que um sistemas de arquivos?


Um Sistema de Arquivos
um conjunto de regras e rotinas que determina a forma pela qual os arquivos e diretrios sero armazenados (disco rgido, pen drive, cd, dvd, etc.);

Um sistema de arquivos um modo particular de armazenar e organizar arquivos em um dispositivo de armazenamento como um disco rgido, e uma parte importante do sistema operacional.

Sistemas de Arquivo
Como qualquer outro sistema operacional, as distribuies GNU/Linux realizam a manipulao de diversos dados e informaes. Para isto necessria uma estrutura de arquivos e diretrios bem definida e padronizada.

Existem diferentes tipos de sistemas de arquivos:


Os mais comuns so:
Ext2, Ext3, e Ext4: estes so usualmente encontrados em sistemas operacionais GNU/Linux. Ubuntu utiliza Ext4 como seu sistema de arquivo padro. FAT16 e FAT32: so sistemas de arquivos do Microsoft Windows encontrados em computadores antigos. NTFS: o tipo de sistema de arquivos utilizado pelas verses mais modernas do Microsoft Windows. HFS+: o sistema de arquivos padro Mac OS X.

Na aula de hoje, iremos conhecer como navegar na estruturao dos dados e diretrios do sistema de arquivos do Linux, como tambm as suas particularidades e algumas recomendaes necessrias para a sua boa manuteno.

Navegar nos Arquivos e Pastas

Gerenciador de Arquivos (Nautilus)


Utilize o gerenciador de Arquivos (Nautilus) para navegar por arquivos em sua pasta pessoal, em dispositivos externos (pendrives), em servidores de arquivo ou atravs do sistema de arquivos de seu computador. Para abrir o gerenciador de arquivos selecione o atalho Pasta pessoal no lanador do Ubuntu.

No gerenciador de arquivos clique duas vezes em uma pasta para ver seu contedo ou clique duas vezes em um arquivo para abri-lo com o aplicativo padro para o arquivo.

Voc tambm pode clicar com o direito em uma pasta para abri-la em uma nova aba ou nova janela.

** Na viso em lista voc tambm pode clicar no expanso ao lado da pasta para mostrar o contedo dela em uma rvore.

A barra de localizao acima da lista de arquivos e pastas mostra qual a pasta voc est vendo, incluindo as pastas pais at o seu diretrio pessoal, a raiz de um dispositivo removvel ou do seu sistema de arquivos. Clique em uma pasta pai na barra de localizao para ir at essa pasta. Clique com o direito em qualquer pasta na barra de localizao para abri-la em uma nova aba ou janela, para copiar ou move-la, ou para acessar suas propriedades.

Sistemas de Arquivos :

Estrutura das Pastas

/ diretrio raiz
No Linux para cada IFRN e arquivo, e de acordo com suas funcionalidades e importncia, existe um local especfico (chamado diretrio) para seu armazenamento. O sistema de arquivo organizado em uma estrutura hierrquica, similar a uma rvore. O nvel mais alto do sistema de arquivo o / ou diretrio raiz. Na filosofia arquitetural do Unix e do Linux, tudo considerado um arquivo - incluindo discos rgidos, parties e mdias removveis.

/home/ifrn /home/ifrn/escola ifrn/escola. /escola.txt


Por exemplo, /home/ifrn/escola.txt mostra o caminho completo e correto para o arquivo escola.txt que existe no diretrio IFRN, o qual est sob o diretrio Home, que por sua vez est sob o diretrio raiz (/). Diretrios so utilizados para manter arquivos relacionados juntos. Podem ser arquivos executveis (programas), arquivos de dados, arquivos de um projeto ou tema, etc. Distribuindo os arquivos em diretrios facilita a manipulao (cpia, acesso, compartilhamento) dos mesmos.

Sistemas de Diretrios

Estrutura de Diretrios
Filesystem Hierarquy Standard (FHS): Padro rgido e especfico a respeito da organizao hierrquica dos diretrios; Padro subordinado ao LSB; No Linux existe um diretrio principal que contem todos os demais diretrios. Este diretrio chamado de diretrio raiz e representado por uma /.

rvore de Diretrios

Estrutura de Diretrios

Estrutura de Diretrio
/ - (raiz) incio do sistema de arquivos; /bin: O diretrio /bin armazena uma srie de arquivos binrios (executveis) que so usados frequentemente pelos usurios. Esse um diretrio pblico e os comandos que esto nele podem ser utilizados por qualquer usurio do sistema. /boot: No diretrio /boot esto os arquivos estticos necessrios inicializao do sistema e os arquivos do gerenciador de boot.

/dev: No diretrio /dev ficam todos os arquivos-dispositivos. O Linux faz a comunicao com os perifricos atravs de links simblicos (seria algo como atalhos) que ficam armazenados nesse diretrio facilitando assim, o acesso aos mesmos; /etc: No diretrio /etc esto os arquivos de configurao do sistema da mquina local. Nesse diretrio vamos encontrar uma miscelnea de dados de configurao, tais como: Scripts de inicializao do sistema em seus vrios nveis; Tabela do filesystem (arquivo /etc/fstab); Configurao da inicializao do sistema para cada nvel (arquivo /etc/inittab); Configurao default para todos os logins (arquivo /etc/profile); Vrios arquivos para configurao de rede e outros aspecto do sistema, incluindo a parte grfica.

/home: diretrio dos arquivos dos usurios; /lib: No diretrio /lib esto as biblilotecas compartilhadas e mdulos do kernel. As bibliotecas, conhecidas como libs, so como as dlls para o Windows. No caso do Linux, quando um programa instalado, todas as bibliotecas para o seu funcionamento ficam armazenadas nesse diretrio; /media: Ponto de montagem para mdias removveis, tais como: cd, dvd, floppy disk, pendrive, cmera digital, etc. Aqui seria mais ou menos o equivalente as letras A: D: do Windows s que aqui, no se usam as letras, usa-se o nome do dispositivo!

/mnt: diretrio utilizado para conexo com volumes presentes em outros computadores da rede ou para acessar dispositivos removveis. Em outras palavras, aqui ficam os pontos de montagem temporrios. um diretrio semelhante ao /media; /opt: Normalmente, utilizado por programas que foram instalados com o sistema j em funcionamento, e que precisam de uma quantidade de uma espao maior para sua instalao.

/proc: O /proc um diretrio virtual, mantido pelo kernel onde encontramos a configurao atual do sistema, tais como: modelo da cpu, quantidade de memria, dispositivos j montados, interrupes, etc. Aqui, temos subdiretrios, com o nome que corresponde ao PID (Process ID Identificao do Processo) de cada processo; dentro deles, vamos encontrar diversos arquivos texto, que representam uma importante funo do programa em execuo.

/root: diretrio pessoal do usurio root, o administrador do sistema;


definido para ser utilizado exclusivamente no armazenamento de dados e arquivos pessoais do super-usurio (root). No recomendado o uso deste diretrio para qualquer finalidades que no seja para a administrao e/ou manuteno do sistema, em especial atividades comuns para os usurios tais como leitura do correio eletrnico, armazenamento e dados diversos, etc. Para estas atividades, o administrador dever ter ou criar para si uma conta de usurio comum;

/sbin: O diretrio /sbin guarda os comandos utilizados para inicializar, reparar, restaurar e/ou recuperar o sistema. Isso quer dizer que esse diretrio tambm de comandos essenciais, mas os mesmos so utilizados apenas pelo usurio root. Entre os comandos esto o halt, ifconfig, init, iptables e outros. /srv: Diretrio para dados de servios fornecidos pelo sistema e, cuja aplicao de alcance geral, ou seja, os dados no so especficos de um usurio. Por exemplo, /srv/www (servidor web), /srv/ftp (servidor ftp), etc; /sys: O diretrio /sys, est presente a partir do kernel 2.6. Nesse diretrio esto os mdulos para equipamentos USB. Como ele montado automaticamente no sistema, basta conectar o equipamento para ser reconhecido.

/tmp: Utilizado para armazenar arquivos temporrios. Por exemplo, guardar pequenas informaes que precisam estar em algum lugar at que a operao seja completada, como o caso de um download. Enquanto no for concludo, o arquivo fica registrado em /tmp, e, assim que finalizado, encaminhado para o local correto;

/usr: A maioria dos programas fica instalado dentro do diretrio /usr (de "Unix System Resources", ou recursos de sistema Unix). Este de longe o diretrio com mais arquivos em qualquer distribuio Linux, pois aqui que ficam os executveis e bibliotecas de todos os principais programas. A pasta "/usr/bin" (bin de binrio), por exemplo, armazena cerca de 2.000 programas e atalhos para programas numa instalao tpica. Se voc tiver que chutar em que pasta est o executvel de um programa qualquer, o melhor chute seria justamente a pasta /usr/bin.

/usr - Dentro dele existem diversos subdiretrios, por exemplo: exemplo:


/usr/bin - aplicativos mais utilitrios; /usr/lib - bibliotecas usadas pelos utilitrios em /usr/bin; /usr/local - arquivos instalados pelo administrador; /usr/share - arquivos compartilhado (apenas leitura); /usr/src - fonte do sistema e seus utilitrios.

/var: O diretrio /var contm arquivos de dados variveis. Por padro, os programas que geram um arquivo de registro para consulta, mais conhecido como log, ficam armazenados nesse diretrio.
Alm do log, os arquivos que esto aguardando liberao, ficam localizados em /var/spool. Os principais arquivos que se utilizam do diretrio /var, so as mensagens de e-mail e os arquivos a serem impressos.

Permisses dos Arquivos e Diretrios

Permisses no Linux
O sistema Linux trabalha com um modo de permisso que protege o sistema de arquivos de: Acesso indevido de pessoas ou programas no autorizados; Um programa mal intencionado, por exemplo, enviar arquivos para outra pessoa ou fornecer acesso da rede para que outros usurios invadam o sistema; Usurios iniciantes apagarem arquivos que no deve, ou mesmo visualizarem. Alm de instalar programas em locais inadequados.

Permisses
A segurana de acesso a arquivos e diretrios provida atravs de um esquema de posse de arquivo e de permisso de acesso a estes. Com relao a posse de arquivo (e diretrio) o Linux divide os usurios em trs conjuntos: Dono Grupo Outros

Dono e outros
Dono: o proprietrio do arquivo ou criador do arquivo; Outros: refere-se aos demais usurios que no so os proprietrios do arquivo e nem fazem parte do grupo.

Grupo
Grupo:
usurios que fazem parte do grupo possuem os mesmo privilgios. Isto serve para permitir que vrios usurios diferentes tenham acesso a um mesmo arquivo. Cada usurio pode fazer parte de um ou mais grupos e ento acessar arquivos que pertenam ao mesmo grupo que o seu (mesmo que estes arquivos tenham outro dono);

Root
Existe ainda a figura do super-usurio, chamado de root, que possui acesso irrestrito a todo e qualquer arquivo dentro do sistema.

Como qualquer sistema operacional multitarefa e multiusurio, o administrador do sistema Linux tem a funo de gerenciar usurios e grupos. Devido a existncia de uma variedade de distribuies Linux importante estarmos preparados para administr-los diretamente sem a utilizao de ferramentas grficas que facilitem isso (ex.: users-admin), usando apenas os comandos bsicos do sistema operacional. Deste modo, o administrador estar apto a proporcionar a administrao em qualquer distribuio Linux.

Como foi mostrado anteriormente segurana de acesso a arquivos e diretrios no Linux provida atravs de um esquema de posse de arquivo e de permisso de acesso a estes. Com relao a posse de arquivo (e diretrio) o Linux dividido os usurios em: dono, grupo e outros. Assim, para que seja possvel restringir ou permitir o acesso e o uso de determinados recursos a uma ou mais pessoas, necessrio que cada uma tenha um usurio e pertena a um ou mais grupos devidamente criado no sistema operacional. Na aula de hoje iremos estudar o usurio root e comandos que permitem administrar usurios e grupos e como administram os processos em execuo, bem como todas as instrues e comandos para um bom gerenciamento destes.

O Usurio Root
No Linux criado automaticamente um usurio especial, chamado root, usado para administrar o sistema. Esta separao entre privilgios administrativos e usurios normais faz com que o sistema operacional se torne mais resistente a vrus e outros malware. O usurio root tem permisso sobre todos os arquivos e processos ligados ao funcionamento do sistema. Este usurio tambm pode atuar sobre qualquer arquivo ou processo de outros usurios. Porm, o que pertence ao root no pode ser acessado por outros usurios.

O usurio root tambm usado para fazer as seguintes alteraes administrativas:


Criar arquivos de dispositivos; Configurar o relgio do sistema; Aumentar os limites de uso de recursos e as propriedades de processos; Definir o nome de host do sistema; Configurar as interfaces de rede; Administrar contas de usurio e grupo.

Root
Por este usurio ser muito poderoso, o mesmo se torna muito perigoso em mos erradas. Alm disso, a conta root no tem registro de quem a usou. Por isso, ele s deve ser usado em situaes que no podem ser trabalhadas por usurios que no possuem privilgios de superusurio (administrador).

Suponha, por exemplo, que voc est trabalhando com o usurio root e voc saiu da frente do computador sem bloque-lo. Algum mal-intencionado percebe isso e vai at seu computador, apaga diretrios importantes ao sistema. Se voc estivesse utilizando um usurio comum, isto , um usurio sem permisses para mexer nesses diretrios, aquele sujeito no teria conseguido apag-los.

Desta forma no utilize a conta root, exceto quando absolutamente necessrio, mesmo por administradores de sistema com experincia. Ao invs de sistematicamente se logar no sistema como root, os administradores devem fazer login com suas contas de usurio comum e depois usar os comandos, como o: su, kdesu,Gokuu e sudo, que lhes proporcionaro os privilgios de root apenas quando necessrio e sem a necessidade de um novo login.

SU
su: este comando usado para trocar de usurios. executa um shell com substituio de usurio e grupo.
Se o mesmo for digitado sem parmetros ele ir alterar para o usurio root e solicitar senha de root, e o usurio ter os privilgios de root at encerrar com xito. Porm com a utilizao deste comando possvel, atravs de arquivos de logs, determinar quem entrou como root.

SUDO
sudo: permite ao usurio executar tarefas de administrador (por exemplo, configurar ao de rede). Este comando consulta o arquivo /etc/sudoers. Este arquivo lista as pessoas autorizadas a usar este comando, define a solicitao da senha do usurio e quais os comandos que elas podem usar com o privilgio de root.

Para ver o arquivo escola do ifrn que tem permisso de leitura apenas para o dono, digite

Para saber quais comandos so permitidos ao usurio com o comando sudo, sudo digite:
sudo -l

Instalar o usurio root


Abra o terminal para instalar o root: Digite o comando : Sudo apt-get install root-system-bin

Demais Usurios

Usurio e Grupo
O Linux gerencia os usurios e os grupos atravs de nmeros conhecidos como UID (User ID) e GID (Group ID), respectivamente. Os nomes dos usurios e dos grupos servem apenas para facilitar o uso humano do computador. Como dito anteriormente, cada usurio precisa pertencer a um ou mais grupos. Assim sendo, cada arquivo ou processo est associado a um UID e a um GID. Os nmeros UID e GID variam de 0 a 65.536. No caso do usurio root, esses valores so sempre 0 (zero).

Os usurios so mantidos no sistema atravs do arquivo /etc /etc/ etc/passwd. passwd.

Por exemplo, neste arquivo possvel ver:

As senhas so armazenadas de forma encriptada (bash) em um arquivo separado, o /etc/shadow. O arquivo possui uma entrada contendo o usurio e a sua senha.

As senhas so armazenadas de forma encriptada (bash) bash) em um arquivo separado, o /etc /etc/ etc/shadow shadow.

No Linux as senhas so encriptadas usando um algoritmo chamado onde-time pad (mo nica). Este permite apenas encriptar as senhas, mas no recuper-las. Durante o login, o sistema aplica o mesmo algoritmo senha digitada pelo usurio e compara a string resultante com a armazenada no arquivo. Se o resultado for o mesmo, o sistema sabe que a senha est correta e o acesso autorizado.

No arquivo/ /etc /etc/ etc/groups groups esto todas as definies de grupos de autenticao.
Todos os grupos padres do sistema, mais os grupos especficos das aplicaes e ainda os grupos criados pelo administrador.

Os comandos definidos para manipular usurios e grupos so:

Comando passwd: passwd:


utilizado para especificar uma nova senha ou alterar a senha atual de conta de usurio. No Linux as senhas no so recuperveis. Se o usurio esqueceu a senha, ele dever utilizar este comando como root para definir uma nova senha.

Por exemplo, utilize passwd ifrn para alterar a senha do usurio IFRN.

Adduser: Adduser:
utilizado para criar contas de usurios e somente utilizado pelo administrador do sistema. Por exemplo, quando digitamos o comando sudo adduser ele ir criar um novo usurio. Para isso, ele ir fazer algumas perguntas. Inicialmente, ser solicitado um nome para o usurio (no possvel utilizar caracteres iniciais em letras maisculas). Ser ento criado um novo grupo que contm o mesmo nome do usurio (novo usurio adicionado a este grupo) e criado um diretrio home. Na sequencia solicitado uma senha e informaes opcionais sobre o novo usurio (nome completo, nmero da sala, Telefone, etc).

Adicionando um novo usurio


Sudo adduser alunos

Agora crie um novo usurio com o seu nome...


Sudo adduser luana

Verificao da criao dos usurios

Deluser: Deluser:
este comando remove a conta de usurio. Por padro, os arquivos deste usurio no so apagados. Para remover o usurio apagando tambm o diretrio home, adicione o parmetro remove-home.

Por exemplo, deluser nome do aluno deleta o usurio luana sem apagar os seus arquivos ( sudo deluser luana)

Groupadd: Groupadd:
usado para criar um novo grupo no sistema Por exemplo, sudo groupadd informtica cria um grupo chamado informtica.

Crie outro grupo com o nome integrado.

Groupdel:
usado para remover um grupo do sistema. No entanto, antes de remove-lo o usurio deve remover os seus usurios.

Gerenciamento de Processos

Gerenciamento de processos
O processo qualquer atividade executada pelo sistema que envolve uma rotina de instrues com seus respectivos dados e informaes. Um processo um programa em execuo, que consome processamento e outros recursos do sistema.

Um processo caractersticas:

possui

as

seguintes

Estado atual do processo (espera, parado, em execuo e se destruindo); Prioridade de execuo do processo; Identificador (PID): nada mais que uma identificao numrica de um determinado processo existente, que por sua vez, quando criado, passa a ser identificado e manipulado por este nmero.

O estudo de gerenciamento de processo importante, pois em muitos casos, um determinado programa pode deixar de responder, ou pode ser que um determinado aplicativo entre num loop e passe a consumir cada vez mais memria e/ou processamento at que o usurio consiga fech-lo manualmente.

Os principais comandos para o gerenciamento de processos so:

Comando ps
Comando ps:
exibe os processos os quais esto sendo rodados no sistema.

Comando ps -aux
Utilize o comando ps -aux para obter uma viso geral dos processos em execuo.

Comando ps -aux
Como resultado este comando mostra:
usurio proprietrio do processo, identificador do processo (PID), porcentagem do uso da CPU e Memria, VSZ (tamanho virtual do processo), RSS (nmero de pginas na memria), TTY (identificador de terminal), STAT (corresponde ao estado do processo, por exemplo, R = executvel, S = dormindo), hora em que o processo foi iniciado, o tempo de CPU que o processo consumiu e o nome do comando.

Comando top: top:


o comando ps fornece informaes apenas um instantneo de seu sistema. O comando top fornece um sumrio atualizado regularmente:
A tela atualizada a cada 10 segundos; Processos mais ativos aparecem no alto; A utilizao geral da CPU e ocupao da memria. Para finalizar este comando digite a letra q.

Comando top
Para finalizar este comando digite a letra q.

Para finalizar este comando digite a letra q.

Comando kill: kill:


Elimina um processo existente no sistema (atravs do seu PID). Ele pode ser usado por usurios em seus prprios processos ou pelo root em qualquer processo.

Este comando com o parmetro 9 garante que o processo ser eliminado. Por exemplo, o comando kill -9 1012 elimina o processo com PID igual a 1012.

Comando xkill: xkill:


Existe um programa que pode ser utilizado para terminar ou alternar um programa atravs da sua interface grfica. Este programa chamado xkill. Para executa-lo digite Alt+F2 ir abrir um janela de execuo de aplicativos. Digite xkill e clique em executar. O seu mouse ir aparecer sinalizado por um x. Desta forma clique sobre o programa que voc deseja finalizar, no nosso caso o terminal.

Vejamos a seguir os comandos para visualizar os atributos, modificar dono e modificar grupo dos arquivos, so: so:

Comando ls -l
ls -l: utilizado para ver as permisses de um arquivo ou diretrio, a opo -l (long listing) mostra todos os detalhes dos arquivos e diretrios. A primeira informao corresponde ao chamado modo do arquivo, composto de 10 caracteres.

O primeiro caractere apenas indica seu tipo (por exemplo, se um arquivo regular (r)ou um diretrio (d)). Os nove caracteres constituem trs grupos de trs caracteres. Ele pertence ao usurio ifrn e ao grupo ifrn. Em cada grupo, o primeiro caractere representa a permisso de: leitura (r), o segundo a de escrita (w) e o terceiro a de execuo (x). Se no tiver permisso aparece um hfen (-).

Comando Chown: Chown:


Utilizado para trocar o dono de um arquivo.
Na Figura abaixo mostrado um arquivo chamado escola.txt. Ele pertence ao usurio ifrn e ao grupo ifrn. Foi feito uma modificao de dono para Ifrn.

Comando Chown: Chown:

Comando Chown
chown: utilizado para trocar o dono de um arquivo. Na Figura abaixo mostrado um arquivo chamado escola.txt. Ele pertence ao usurio alunos e ao grupo ifrn. Foi feito uma modificao de dono para o usurio aluno.

Comando Chgrp
Troca o grupo do arquivo. Um usurio pode mudar o grupo de um arquivo, desde que ele seja o usurio dono do arquivo e pertena ao novo grupo do arquivo.

Exemplo
Na Figura abaixo mostrado inicialmente um arquivo chamado escola.txt que pertence ao usurio alunos e ao grupo alunos. Foi realizada uma modificao no grupo do arquivo onde o mesmo passou a pertencer ao grupo alunos.

Uma vez que as posses de arquivo esto definidas, o prximo passo proteger os arquivos de acesso no desejado. Para isso, so definidos trs tipos de permisses para controlar os acessos a um arquivo/diretrio ao dono, grupo e outros usurios.

So eles:
r (read): permisso de leitura para um arquivo e, permitir listar o contedo de um diretrio (atravs do comando ls, por exemplo); w (write): permisso de gravao e excluso para um arquivo/diretrio; x (execute): permisso para executar um arquivo, se for um arquivo binrio ou um script e, se for um diretrio permitir

O comando que possibilita modificar as permisses de um arquivo :

Comando Chmod
utilizado para modificar as permisses de arquivos e diretrios.

Dono, Grupo e Outros usurios: Comando Chmod


Neste exemplo, o arquivo escola.txt o dono, grupo e os outros usurios no podiam ler, escrever ou executar o arquivo de texto. Na sequncia foi atribudo ao dono (u - user) as permisses de escrita (w) e leitura (r). Posteriormente, foi atribudo a permisso de leitura aos usurios pertencentes ao grupo (g -group) alunos e aos demais usurios (o - other) a permisso de leitura.

Comando Chmod
Estes nove bits so agrupados trs a trs e convertidos em decimal. Neste prximo exemplo, os dois comandos chmod 754 e chmod u+rwx,g+rx,o+r so equivalentes:

Digite sudo chmod 754 escola.txt

Desligamento do Sistema
Para que possamos encerrar todos os processos em execuo, desligar e/ou reiniciar o sistema, poderemos utilizar os comandos: halt: desliga o sistema. shutdown: desliga o sistema aps finalizadas as tarefas em execuo. Por exemplo, shutdown -h 30 desliga o sistema aps 30 minutos de sua execuo. Outro exemplo, shutdown -c cancela a programao de desligamento que foi agendada. Para desligar o sistema imediatamente utilize shutdown -h now; reboot: comando para reiniciar o sistema. A reinicializao tambm pode ser obtida atravs do comando shutdown r now, colocando o parmetro r de reboot.

Dvidas?

You might also like