Vous êtes sur la page 1sur 22

Introduo

O Linux:
Linux um Sistema Operacional baseado em UNIX assim como o AIX da IBM, Solaris, SunOS, BSD e outros. Os direitos autorais pertencem a Linus Torvalds (Linux = Linus + Unix) e outros colaboradores e pode ser livremente distribudo sob os termos da GNU (General Public License GPL). Essa licena preserva os direitos autorais do software, mas assegura a distribuio dos programas com cdigo-fonte. Linux em si apenas o Kernel (Ncleo) do sistema operacional, a parte que controla o hardware, gerencia arquivos, separa processos, etc. Existem diversas combinaes de Linux com vrios utilitrios e aplicativos de modo a formar um sistema operacional completo. Cada uma dessas combinaes chamada de distribuio.

Distribuies
Distribuies so empresas que pegam o Linux e adicionam facilidades ou recursos, juntam com aplicativos e utilitrios desenvolvidos tambm por outras empresas e colocam seus CDs disposio dos interessados, juntamente com suportes manuais etc. Dentre as principais distribuies, podemos citar: _ Caldera, Conectiva, Corel, Debian, Mandrake, Redhat, Slackware, Suse, Tech Linux, Turbo Linux, Ubuntu Linux, Mandriva, etc.

Caractersticas
Free Software tem todo seu cdigo fonte(incluindo o Kernel, drivers, bibliotecas, etc.) aberto para qualquer um. Alm de ser um software livre o Linux possui outras caractersticas como: _ Modularidade O UNIX o nico em seu desenho modular, que permite usurios adicionar ou remover partes para adapt-lo as suas necessidades especficas. _ Multitasking (Capacidade de Multitarefa) A capacidade de Multitasking do UNIX permite que mais de uma tarefa seja realizada simultaneamente. _ Multiuser (Multiusurio) Um sistema multiusurio permite que vrios usurios utilizem o computador simultaneamente. _ Portabilidade A portabilidade a possibilidade dos softwares que operam em uma mquina operarem em uma outra diferente. _ Multiprocessamento O UNIX foi aprimorado para trabalhar em mquinas de grande porte, suportando assim a utilizao de vrios processadores em um nico computador, e com a possibilidade de compartilhamento do processamento entre vrios usurios ao mesmo tempo.

Estrutura Organizacional
A estrutura organizacional pode ser divida em 4 partes principais: _ Kernel, Shell, processos e estrutura de arquivos. Kernel a base do Sistema Operacional, suporta os programas dos usurios e programas utilitrios como compiladores, linkers, sistemas de controle, cdigo fonte, etc. e implementa as seguintes funes: Escalonamento de processos; Gerenciamento de memria; Gerenciamento de dispositivos; Gerenciamento de arquivos; Interface de chamada do sistema; Interface de controle do operador.

Verses do Kernel Conveno para distinguir as verses estveis das no estveis: Verso v.x.y, onde: v nmero da verso. x nmero par verso estvel nmero impar verso no estvel (verses para beta teste caractersticas novas sendo acrescentada todo o tempo) y correes de bugs nenhuma caracterstica nova implementada. De tempos em tempos o Kernel apresenta-se como uma performance confivel passando a ser denominado como uma Kernel estvel. O desenvolvimento continua em uma nova verso do Kernel. Kernel mudado conforme novos devices e/ou drivers so adicionados e erros so corrigidos. Shell Shell o programa que conecta e interpreta os comandos digitados por um usurio. Ele o mediador entre o usurio e o sistema LINUX usado para interpretar os comandos. Esse programa l os comandos digitados pelo usurio e os executa utilizando os servios e/ou outros programas do sistema operacional.

Usurio solicita comando

Resultado do comando

Shell executa

Figura 1: Interao Usurio - Shell

Dentre os Shells mais conhecidos pode-se citar: sh Bourne Shell o mais tradicional(prompt $); Bash Bourne Again Shell Shell padro do Linux; ksh Korn Shell muito utilizado atualmente; csh C Shell considerado o mais poderoso largamente utilizado(prompt rsh Remote Shell Shell remoto; Rsh Restricted Shell verso restrita do sh

%);

Processos
Um processo um simples programa que est rodando em seu espao de endereamento virtual prprio. Os processos so executados em background ou foreground e podem ser divididos em trs grupos principais: _ Interativos, Batch e Deamons. Tipos de processos Processos interativos so iniciados a partir de, e controlados por uma sesso terminal. Processos batch, ou em lote, no so associados a nenhum terminal. Ao invs disso so submetidos a uma fila, da qual jobs so executados seqencialmente. Deamons so processos servidores, inicialmente iniciados durante o boot, que rodam continuamente enquanto o sistema estiver ativo, esperando, em background, at que um processo requisite seus servios.

Atributos Process ID (PID) Parent Process ID (PPID) TTY UID real e efetiva (RUID, EUID) GID real e efetiva (RGID, EGID)
3

Process ID, PID um nmero que identifica unicamente esse processo e usado para referir-se a ele. Parent Process ID, PID o processo pai do processo, ou seja, o processo que o criou. TTY o dispositivo de terminal associado com o processo. UID real de um processo o UID do usurio que o criou. O UID efetivo, o UID que utilizado para determinar o acesso do processo a recursos do sistema. Usualmente, RUID e EUID so os mesmos e o processo tem os mesmos acessos que o usurio que os disparou. GID real e efetivo de um processo o grupo primrio ou corrente do usurio.

Estrutura de Arquivos
Arquivos so centrais para o UNIX de uma maneira no encontrada em outros sistemas operacionais. O UNIX tem uma organizao de diretrios hierrquica em forma de rvore conhecida como filesystem. A base desta rvore um diretrio chamado root directory. Em sistemas UNIX, todo espao em disco disponvel combinado em uma nica rvore de diretrios abaixo do / (root). O acesso a arquivos organizado atravs de propriedades e protees. Toda segurana do sistema depende, em grande parte, da combinao entre a propriedade e protees setadas em seus arquivos e suas contas de usurios e grupos. Resumindo: Tudo em UNIX um arquivo; O UNIX tem uma organizao de diretrios hierrquica chamada filesystem; O acesso a arquivos organizado atravs de propriedades e protees.

Tipos de arquivos
Existem trs tipos de arquivos no UNIX: Arquivos Ordinrios (ou arquivos comuns): So arquivos que contm dados binrios ou caracteres ASCII. Consiste de uma string de bytes de dados. Por exemplo, um arquivo criado atravs de um editor de texto um arquivo do tipo ordinrio. Uma subclasse de arquivos ordinrios so os arquivos hidden (oculto). O nome dos arquivos hidden comeam sempre com um ponto (.profile, .kshrc) e possuem funes especiais. Esses arquivos recebem a denominao de hidden porque normalmente no podem ser vistos em uma consulta a um diretrio. Arquivos Diretrios So responsveis pela manuteno da estrutura hierrquica do sistema de arquivos. As informaes so armazenadas em arquivos ordinrios, estes so agrupados em diretrios, que por sua vez tambm so agrupados em outros diretrios. Todo diretrio contm os nomes de arquivos "." e ".." , que correspondem respectivamente ao prprio diretrio e ao seu diretrio pai. Todo usurio possui um diretrio
4

default (home directory), e quando ele se conecta ao sistema o UNIX automaticamente o posiciona neste diretrio. Arquivos Especiais O UNIX trata todos os dispositivos fsicos do sistema como arquivos especiais. Cada dispositivo, como terminais, unidades de fita, disco e impressoras, possui um arquivo especial associado ele. Estes arquivos residem no diretrio /dev, e no referenciam dados, eles possuem especificaes sobre o tipo de dispositivo, como terminal ou impressora, e suas caractersticas, como configurao, densidade de gravao, etc. Os arquivos especiais podem ser acessados da mesma forma que os arquivos ordinrios. Obs: O nome do arquivo pode possuir at 255 caracteres, em sistemas BSD, ou at 14 caracteres, em sistemas System V. Alguns caracteres no devem ser usados por possurem significado especial para o UNIX, so eles: "/", "*", "?", "[", "]", ">", "<", "-", "$", "'","""", "&", "!" e \. Para quem est acostumado com o DOS, notar algumas diferenas como os nomes de arquivos, que no DOS tem apenas 8 caracteres de nome e 3 de extenso. No UNIX no tem limite podendo ter vrias extenses. Os arquivos no UNIX no possuem extenses, porm podemos incluir um ponto seguido de uma extenso no nome de qualquer arquivo, embora esta extenso no possua nenhum significado especial para os comandos UNIX. EX: relatrio.txt.zip.tar

Hierarquia de arquivos
Como foi dito anteriormente os arquivos diretrios so organizados hierarquicamente em forma de rvore em que a base chamada de root. Esta rvore pode ser facilmente observada na figura 2. Estrutura hierrquica
Figura 2: Estrutura Hierrquica

HOME

BIN

SBIN

ETC

DEV

MNT

USR

TMP

LIB

VAR

PROC

FTP

JOO

ANA

ANDRA

BIN

MAN

LOCAL

LIB

Diretrio / /bin /boot /dev /etc /home /lib /mnt /proc /root /sbin /tmp /usr

Descrio dos arquivos que esto nesse diretrio. Diretrio raiz do sistema de arquivos. abaixo dele que se situam todos os outros. Arquivos executveis de comandos essenciais. Arquivos estticos necessrios inicializao do sistema. Arquivos de dispositivos (drives) do sistema. Arquivos de configurao do sistema. Lugar onde ficam os diretrios locais(diretrios pessoais) dos usurios. Arquivos de bibliotecas essenciais ao sistema, utilizados pelos programas em /bin. Usualmente o ponto de montagem de dispositivos(drives) na mquina. Informaes do kernel e dos processos. Diretrio local do superusurio. Arquivos essenciais (comandos especiais) ao sistema. Normalmente s o superusurio tem acesso a estes arquivos. Diretrio de arquivos temporrios. Arquivos pertencentes aos usurios. ( a segunda maior hierarquia de diretrios presente no Linux, s perdendo para o diretrio raiz).
Tabela 1: Estrutura de Diretrios do Linux

Conexo e Desconexo com o Sistema

SHELL /etc/passwd

TRAINING INFORMTICA

TRAINING INFORMTICA

login: password:

<RETURN> <RETURN>

login: password:

<RETURN> <RETURN>

Figura 2: Conexo com o sistema

Conexo com o sistema Para nos conectarmos ao sistema necessitamos de uma identificao de usurio (login) e uma senha (password) de acesso, como mostra a figura acima. Caso ocorra algum erro na digitao do login ou da password, o sistema responde com a mensagem 'login incorrect' e proporciona uma nova oportunidade ao usurio de se conectar. Havendo sucesso o shell apresenta um prompt, indicando que est pronto para receber comandos do usurio. O prompt apresentado depende do shell que se est utilizando, no Bourne Shell e Korn Shell o prompt o caracter "$" enquanto no C Shell o caracter "%", sendo que para o usurio root o prompt apresentado ser sempre o caracter #. As mensagens que so enviadas ao usurio durante a conexo com o sistema variam de instalao para instalao. Normalmente incluem a data e hora da ultima conexo do usurio ao sistema.

Desconexo do sistema A desconexo do sistema feita atravs do comando logout, ou ainda digitando-se as teclas [Ctrl+D]. Existe tambm a opo de executar o comando exit. Ateno: O sistema operacional UNIX case sensitive, ou seja, faz distino entre letras maisculas e minsculas, tratando-as como caracteres diferentes.

Criao e excluso de usurios e grupos


Uma conta de usurio um conjunto de nome de acesso mais uma senha que possibilitam que o usurio acesse a sua rea do sistema. Sendo assim, uma mesma pessoa pode possuir vrias contas, basta que sejam criadas com nomes de acesso diferentes. Basicamente, existem dois tipos de contas: a conta do usurio comum, que utiliza o sistema e suas ferramentas, e a conta de superusurio ou conta de root, onde possvel realizar as configuraes do sistema. A senha de root muito importante, pois algumas configuraes s so possveis tendo a mesma em mos. Um grupo basicamente um conjunto de usurios. Geralmente ele criado quando se cria o usurio. Mas tambm podemos cri-lo quando queremos que os usurios tenham permisso restrita a arquivos em comum. Existem vrias formas de criar e manter usurios em um sistema. Uma destas formas atravs da linha de comando. O comando utilizado para criar uma nova conta de usurio o comando useradd (ou adduser). Portanto, para criar uma conta com o nome de acesso roberto como no exemplo, basta digitar o comando (como superusurio): # useradd roberto E para criar uma senha, basta utilizar o comando passwd. A senha pode conter qualquer caractere e desejvel que ela tenha no mnimo 6 caracteres. # passwd roberto Changing password for user roberto New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully # Com isto, a nova conta estar criada. Uma linha ser includa no arquivo /etc/passwd com os dados do novo usurio, incluindo o seu diretrio de trabalho (/home/roberto), sendo colocado o /bin/bash como o interpretador de comandos padro, entre outros dados. Do mesmo modo, para remover contas de usurios basta digitar o comando: # userdel -r usuario Todos os dados do usurio sero apagados do arquivo /etc/passwd, e o diretrio de trabalho do usurio ser apagado. Atravs do modo texto o comando groupadd cria um novo grupo. Para remover um grupo basta executar o comando groupdel. Existem dois modos de incluir usurios em um grupo pelo modo texto: atravs do comando usermod ou diretamente no arquivo /etc/group. Vejamos primeiramente como incluir usurios em um grupo editando diretamente o arquivo:
7

superteste:x:504:teste,roberto Note, portanto, que os usurios teste e roberto foram includos no grupo superteste. Para incluir mais usurios basta incluir uma vrgula no fim da linha e o nome do usurio a seguir. Vejamos agora o mesmo exemplo, utilizando o comando usermod: # usermod -G superteste teste # usermod -G superteste roberto O comando usermod inclui apenas um usurio por comando. possvel colocar vrios grupos, mas deve-se tomar cuidado pois isto apaga a configurao anterior.

Comandos
Assim como outros Sistemas Operacionais, o UNIX/Linux necessita de comandos para ser utilizado em modo texto. Neste curso voc aprender alguns comandos bsicos e algumas comparaes para usurios do DOS. Os comandos estudados sero os seguintes: cat ______________________________________________________________________ chmod ___________________________________________________________________ chown ___________________________________________________________________ chgrp ____________________________________________________________________ cp _______________________________________________________________________ kill ______________________________________________________________________ man _____________________________________________________________________ mkdir ____________________________________________________________________ more _____________________________________________________________________ less ______________________________________________________________________ mv ______________________________________________________________________ passwd ___________________________________________________________________ ps _______________________________________________________________________ pwd _____________________________________________________________________ rmdir ____________________________________________________________________
8

rm ______________________________________________________________________ clear _____________________________________________________________________ who _____________________________________________________________________ whoami __________________________________________________________________ cd _______________________________________________________________________ find _____________________________________________________________________ ls _______________________________________________________________________ date _____________________________________________________________________ login _____________________________________________________________________ logout ____________________________________________________________________ exit ______________________________________________________________________ vi _______________________________________________________________________ su _______________________________________________________________________

Formato Padro de uma Linha de Comando

$whoami aluno $W HOAMI WHOAMI: Command not found

Figura 3: Utilizao correta de comandos

Como j foi dito anteriormente, o UNIX faz distino entre letras maisculas e minsculas. A maioria dos comandos deve ser escrita com letras minsculas, caso contrrio o Shell no os interpretar corretamente. Esta distino tambm vlida para nomes de arquivos,

ou seja, os nomes carta.txt e CARTA.TXT so considerados arquivos diferentes. Os comandos UNIX no podem ser abreviados, e o formato padro de uma linha de comando o seguinte: comando [- opo...] [argumento...] A opo, ou opes, so letras que redefinem ou modificam a ao do comando, enquanto que o argumento, ou argumentos, so os objetos que sofrero a ao do comando. Os nomes dos argumentos devem ser separados por espaos em branco, no podendo ser utilizada a vrgula. Podemos porm digitar mais de um comando em uma nica linha, desde que sejam separados por ponto e vrgula (;).

Comparao DOS x LINUX


Tabela simplificada de correspondncia DOS - LINUX Comando do DOS Correspondente no LINUX ATTRIB chmod CD cd CLS clear COMP diff COPY cp DATE date DEL rm DELTREE rm rf DIR ls ECHO echo EDIT vi EDLIN ed HELP man MD mkdir MORE more MOVE mv PRINT lp, lpr RD rmdir REN mv SORT sort TIME date TYPE cat VER uname a XCOPY cp r Tabela 2: Correspondncia DOS - LINUX

Obs: Esta tabela mostra uma correspondncia entre alguns comandos do DOS e os comandos do UNIX e no uma equivalncia. Os comandos do UNIX so, em geral, mais complexos e poderosos do que os correspondentes no DOS.

Redirecionamento, filtros e pipes


Redirecionamento Normalmente, quando um comando executado, a sada direcionada para a tela do terminal e a entrada direcionada do teclado. Em vrias situaes, se faz necessrio redirecionar a
10

entrada e/ou sada de um comando. O UNIX permite faz-lo de maneira simples e elegante, utilizando smbolos de redirecionamento de entrada e sada:
Smbolo > >> < 2> Descrio Redireciona a sada. Caso o arquivo j exista, seu contedo sobreposto, caso contrrio o arquivo criado. Redireciona a sada. Caso o arquivo j exista, seu contedo no sobreposto, mas sim inserido no final do arquivo. Redireciona a entrada. Redireciona a sada de mensagens de erros. Tabela 3: smbolos de Redirecionamento

Exemplos: $ ls -l > diretor.lis $ cat diretor.lis $ Redireciona a sada do comando ls da tela para o arquivo diretor.lis. $ ls -l >> diretor.lis $ cat diretor.lis $ Redireciona a sada do comando ls da tela para o final do arquivo diretor.lis. $ cat < arq.txt $ Redireciona a entrada do comando cat do teclado para o arquivo arq.txt. $ date > arq.lis 2> arq.err $ Redireciona a sada do comando date para o arquivo arq.lis e redireciona qualquer mensagem de erro para arquivo arq.err. Filtros Filtros so comandos ou utilitrios que manipulam dados de entrada e geram uma nova sada. A seguir apresentamos os principais filtros: Sort: O comando sort permite ordenar um ou mais arquivos de entrada e gerar um novo arquivo de sada. Exemplo: $ cat alunos.txt
11

Francis LP Bessa $ sort -o alunos.ord alunos.txt $ cat alunos.ord Bessa Francis LP $ Grep: O comando grep (global regular expression printer) procura todas as ocorrncias de um determinado padro (string) em um ou mais arquivos de entrada. A sada do comando uma lista das linhas a onde o padro foi encontrado. Exemplo: $ cat arq.txt amo amor amora amoroso clamor namoro ramo $ grep 'moro' arq.txt amoroso namoro $ Pipes Suponha que voc queira utilizar a sada de um comando como entrada de um segundo comando. Uma maneira criar um arquivo temporrio para armazenar a sada do primeiro comando, utilizar o mesmo arquivo como entrada no comando seguinte e, posteriormente, eliminar o arquivo temporrio. Exemplo: $ who > temp.txt $ wc -l < temp.txt 10 $ rm temp.txt $ O comando who, que lista todos os usurios conectados ao sistema, cria o arquivo temporrio temp.txt. O comando wc -l, que conta o nmero de linhas do arquivo, utiliza o mesmo arquivo temporrio para informar quantos usurios esto conectados ao sistema.
12

O Unix permite que esse tipo de processamento seja implementado de forma bastante simples, utilizando o conceito de pipeline. Atravs da barra vertical ( | ), ou pipe, a sada de um comando pode ser direcionada para entrada de um outro comando sem a utilizao de arquivos temporrios. A idia do pipeline pode ser comparada a uma linha de montagem, onde uma linha de produo fornece insumos para outra linha, sucessivamente.

Comando 1

Comando 2

Comando 3

.......

Exemplos: $ who | wc -l 10 $ ls -l | grep '\.txt$' | sort | lpr O comando ls gera uma listagem completa dos arquivos e subdiretrios do diretrio de trabalho. O comando grep seleciona os arquivos que terminam com '.txt', a partir da sada comando ls. O comando sort ordena os arquivos selecionados pelo grep. Finalmente a lista dos arquivos impressa atravs do comando lpr. $ ls -l | sort +4n | grep '\.c$' O comando ls gera uma listagem completa dos arquivos e subdiretrios de trabalho. O comando sort ordena a sada em funo do tamanho de cada arquivo (+4n). O comando pega a sada ordenada e seleciona apenas aqueles que terminem com '.c'. $ ls -l | sort +8 | grep '^d' O comando exibe uma lista de subdiretrios ordenados crescentemente. $ who | sort | tee usuarios.txt | wc -l O comando tee permite recuperar resultados intermedirios de pipes, permitindo, inclusive, armazenar a sada de um pipe em um arquivo.

Montando e Desmontando Dispositivos


Muitos usurios, ao visitarem sites sobre o sistema operacional ou ao ouvirem o relato de colegas que j usam o Linux, sentem-se incentivados a experimentarem o sistema. A grande maioria j tem o sistema operacional Windows instalado e decide compartilhar o computador tambm com o Linux. Mas quase sempre, o usurio necessita acessar arquivos presentes na partio do Windows. Isso perfeitamente possvel, atravs de um processo conhecido como montagem da partio. Algumas distribuies Linux montam as parties Windows automaticamente, mas em outras, necessrio que o usurio faa isso manualmente. Esse processo simples e ser
13

explicado aqui. Os procedimentos a seguir devem ser executados como usurio root ou outro que tenha permisses de administrador. Discos O primeiro passo saber como identificar os discos (HD, CD-ROM, disquete) no Linux. Tais dispositivos, alm de outros (como a porta LPT1) so tidas como existentes no diretrio /dev/. O HD identificado como o dispositivo hda0 (hdb para outro HD no mesmo computador e assim por diante). O nmero 0, indica a partio no HD. Com isso, a segunda partio deve ser identificada como hda1, a terceira como hda2, enfim. No caso de HDs SCSI, as letras hd devem ser trocadas por sd, ficando da seguinte forma: sda0, sda1, sda2, etc. No caso do drive de disquete, a sigla para sua identificao fd0. Se houver outro drive, este deve ser identificado como fd1. No caso dos CD-ROMS, eles so identificados como HDs. Assim, se por exemplo, em seu computador h um HD e um CD-ROM, o HD poder ser reconhecido como hda e o CD como hdb. Montando a partio Agora que j se sabe o que so e como funcionam os dispositivos no Linux, sero estudados os comandos mount e umount, que so os responsveis pela montagem dos dispositivos. Mas, antes de montar qualquer dispositivo, preciso saber quais dispositivos esto ligados a ele. Primeiramente, os arquivos que mapeiam dispositivos esto no diretrio /dev da estrutura de diretrios de seu Linux. Sero mostrados a seguir os dispositivos que so mais freqentemente utilizados para montagem. Veja na Tabela 4. Perifricos os dispositivos mais usados no cotidiano, com seus respectivos perifricos.

Arquivo hda hdaX hdb hdbX fd0 fd1 cdrom

Mapeia qual perifrico Primeiro disco rgido instalado na mquina (master). A partio X do primeiro disco rgido instalado. hda1 mapeia a primeira partio do disco. O segundo disco rgido/CD-ROM instalado na mquina (slave). A partio X do primeiro disco rgido instalado. hdb1 mapeia a primeira partio do disco. O primeiro drive de disquete. O segundo drive de disquete. O drive de CD-ROM instalado na mquina (caso exista). Tabela 4: Perifricos

Vale aqui uma lembrana: em hd?X, o item X pode variar de acordo com o nmero de parties existentes no disco rgido e ? pode variar de acordo com o nmero de discos rgidos instalados na mquina. Para a partio Windows, voc deve saber qual das existentes ela. Em nosso exemplo, vamos supr que o Windows est na partio hda0 e o Linux na partio hda1. Tendo cincia disso, agora necessrio que voc crie um diretrio no Linux por onde a partio Windows dever ser
14

acessada, ou seja, o ponto de montagem. Geralmente, este diretrio criado dentro da pasta /mnt/ mas pode ser criado em outro. Para o nosso exemplo, vamos chamar este diretrio de win. Assim, seu caminho /mnt/win. O prximo passo comando de montagem: mount - t [tipo] [caminho da partio] [ponto de montagem] Em nosso exemplo, o comando acima ficaria assim: mount -t vfat /dev/hda0 /mnt/win O tipo indica o sistema de arquivos utilizados na partio. Parties fat e fa32 so identificados como vfat. No caso de CD-ROM, o tipo deve ser especificado como iso9660. Por exemplo: mount -t iso9660 /dev/hdb /mnt/cdrom. As parties NTFS podem, teriocamente, serem montadas do mesmo jeito. No entanto, existem problemas de compatibilidade entre o kernel do Linux e o sistema de arquivos NTFS, motivo pelo qual, a montagem desse tipo de partio deve seguir procedimentos especiais, que no sero explicadas aqui. Se a partio que voc deseja montar for ext2 ou ext3, basta especificar estes nomes como tipo. No exemplo a seguir, ser demonstrado o procedimento para a montagem de um disquete formatado para Windows: # mount -t vfat /dev/fd0 /mnt/floppy Este comando instrui o kernel para que ele inclua o sistema de arquivos encontrado em /dev/fd0, que do tipo vfat, disponibilizando-o no diretrio /mnt/floppy. Caso haja algum arquivo no diretrio onde foi montado o disquete (ou outro sistema de arquivos), esse contedo ficar indisponvel enquanto o sistema de arquivos estiver montado. O diretrio /mnt/floppy referenciar o diretrio raiz ("/") do sistema de arquivos montado. Existem vrios tipos de dispositivos que podem ser montados. Na Tabela 5. Tipos de sistema de arquivos constam os tipos mais utilizados.

Tipo vfat ext2 ext3 iso9660 Disquete formatado para Windows. Disquete formatado para Linux. Disquete formatado para Linux. CD-ROM.

Descrio

Tabela 5: Tipos de sistema de arquivos

Dica Para montar dispositivos automaticamente, ou melhor, na hora do boot na mquina, voc deve editar o arquivo /etc/fstab, onde dever acrescentar uma nova linha, indicando a montagem do dispositivo. Esta opo interessante para HDs com mais de uma partio.

15

Nota importante no remover um dispositivo (fsico), como um disquete de seu drive, enquanto ele permanecer montado. Existem operaes que so efetuadas quando um dispositivo desmontado. Uma delas a gravao de dados que possam estar no buffer de armazenamento, esperando ser gravados.

Depois que um sistema de arquivos montado, pode-se utiliz-lo normalmente. Ao final da utilizao do sistema de arquivos, deve-se desmont-lo para que se possa, por exemplo, remover o CD do drive. Para isso utilizado o comando umount, que desmonta o sistema de arquivos. A sintaxe do comando umount : umount dispositivo ou ento: umount diretrio Normalmente, apenas o superusurio poder montar e desmontar um sistema de arquivos. Existe uma maneira simples para que o usurio comum acesse o disquete. So os comandos do pacote mtools. O mtools uma coleo de ferramentas que permite ao Linux manipular arquivos MSDOS. Sempre que possvel o comando tenta simular o comando equivalente a esse sistema. Por exemplo, comandos como mdir a: funcionam na unidade de disquetes a: sem qualquer montagem ou inicializao prvia[46]. Alguns comandos do pacote mtools so: mattrib, mbadblocks, mcd, mcopy, mdel, mdeltree, mdir, mdu, mformat, mkmanifest, mlabel, mmd, mmount, mmove, mrd, mread, mren, mtoolstest e mtype. Para utiliz-los, basta digitar o comando desejado em um terminal como no exemplo abaixo: $ mdir

Pacotes RPM
O sistema operacional Linux, at hoje, tem a fama de ter instalaes complicadas, o que, muitas vezes, no deixa de ser verdade. Na tentativa de resolver esses problemas de instalao, A empresa Red Hat criou uma tecnologia chamada RPM, que significa RedHat Package Manager (Gerenciador de Pacotes RedHat). O RPM um poderoso gerenciador de pacotes, que pode ser usado para criar, instalar, desinstalar, pesquisar, verificar e atualizar pacotes individuais de software. Um pacote consiste em armazenagem de arquivos e informaes, incluindo nome, verso e descrio. Veja a seguir, alguns comandos e suas respectivas funes, usadas nos pacotes RPM: rpm -ivh - Instalao de pacotes; rpm -Uvh - Atualizao de pacotes; rpm -qi - Informaes sobre o pacote; rpm -ql - Lista os arquivos do pacote; rpm -e - Desinstala o pacote; rpm -qa - Lista os pacotes instalados;

16

Utilizando o RPM O RPM tem 5 modos bsicos de operao, excluindo-se o modo de confeco de pacotes: instalao, desinstalao, atualizao, consulta e verificao. Voc pode obter mais informaes usando rpm --help ou man rpm. Vejamos cada modo: Instalao Pacotes RPM tm nomes de arquivos tais como foo-1.0-1/.i386.rpm, que incluem o nome do pacote (foo), verso (1.0), release (1) e plataforma (i386). A instalao de um pacote feita atravs de uma linha de comando, como por exemplo: $ rpm -ivh foo-1.0-1.i386.rpm foo ################################ Como se pode observar, o RPM apresenta o nome do pacote e apresenta uma sucesso de caracteres # atuando como uma rgua de progresso do processo de instalao. O processo de instalao foi desenvolvido para ser o mais simples possvel, porm eventualmente alguns erros podem acorrer: - Pacotes j instalados Se o pacote j tiver sido instalado anteriormente ser apresentada a seguinte mensagem: $ rpm -ivh foo-1.0-1.i386.rpm foo package foo-1.0-1 is already installed error: foo-1.01.i386.rpm cannot be installed Caso se deseje ignorar o erro, pode-se usar o parmetro --replacefiles na linha de comando; - Dependncias no resolvidas Pacotes RPM podem depender da instalao de outros pacotes, o que significa que eles necessitam destes pacotes para poderem ser executados adequadamente. Caso deseje instalar um pacote que dependa de outro pacote no localizado, ser apresentada a seguinte mensagem: $ rpm -ivh bar-1.0-1.i386.rpm failed dependencies: foo is needed by bar-1.0-1 Para corrigir este erro, ser necessrio instalar o pacote solicitado. Caso deseje que a instalao ocorra de qualquer forma, pode-se utilizar o parmetro --nodeps na linha de comando. Desinstalao Para desinstalar um pacote utilize o comando: $ rpm -e foo Onde foo o nome do pacote. Pode ser encontrado um erro de dependncia durante o processo de desinstalao de um pacote ( outro pacote necessita de sua existncia para funcionar corretamente). Neste caso ser apresentada a seguinte mensagem: $ rpm -e foo removing these package would break dependencies: foo is needed by bar-1.0-1 Para ignorar a mensagem de erro e desinstalar o pacote deve ser utilizado o parmetro --nodeps na linha de comando. Atualizao Para atualizar um pacote utilize o comando: $ rpm -Uvh foo-2.0-1.i386.rpm
17

foo ######################################## O RPM desinstalar qualquer verso anterior do pacote e far a nova instalao preservando as configuraes. Sugerimos utilizar sempre a opo -U, j que ela funciona perfeitamente, mesmo quando no h uma verso anterior do pacote. Uma vez que o RPM executa um processo de atualizao inteligente, apresentada uma mensagem do tipo: saving /etc/foo.conf as /etc/foo.conf.rpmsave O que significa que os arquivos de configurao existentes esto salvos, porm mudanas no software podem tornar este arquivo de configurao incompatvel com o pacote. Neste caso, as adequaes necessrias devem ser feitas pelo usurio. Como o processo de atualizao uma combinao dos processos de desinstalao e instalao, alguns erros podem ocorrer. Por exemplo, quando se quer atualizar um pacote com uma verso anterior verso corrente, ser apresentada a seguinte mensagem: # rpm -Uvh foo-1.0-1.i386.rpm foo package foo-2.0-1 (which is never) is already installed error: foo-1.0-1.i386.rpm cannot be installed Para forar uma atualizao de qualquer forma, deve-se usar o parmetro --oldpackage na linha de comando. Consulta A consulta base de dados de pacotes instalados feita atravs do comando rpm -q. Na sua utilizao, so apresentados o nome do pacote, verso e release. Por exemplo: $ rpm -q foo foo-2.0-1 Ao invs de especificar o nome do pacote, pode-se utilizar as seguintes opes aps o parmetro q: a - Consulta todos os pacotes instalados; f <file> - Consulta o pacote que contm o arquivo <file>; F - Funciona como o parmetro -f, exceto que funciona a partir do stdin (entrada padro), como por exemplo find /usr/bin | rpm -qF; p <arquivo do pacote> - Consulta o pacote originado pelo <arquivo do pacote>; P - Funciona como o parmetro -p, exceto que funciona a partir do stdin (entrada padro), como por exemplo find /mnt/cdrom/RedHat/RPMS | rpm -qP. H diversas formas de especificar que informaes devem ser apresentadas pelas consultas. As opes de seleo so: i - Apresenta as informaes do pacote, tais como nome, descrio, release, tamanho, data de criao, data de instalao e outras; l - Apresenta a lista de arquivos relacionados com o pacote; s - Apresenta o status dos arquivos do pacote. H dois estados possveis: normal ou missing (no localizado); d - Apresenta uma lista dos arquivos de documentao (pginas de manual, pginas info, README, etc.); c - Apresenta uma lista dos arquivos de configurao. Estes arquivos podem ser alterados aps a instalao para personalizao. Exemplos sendmail.cf, passwd, inittab, etc.

18

Verificao A verificao de um pacote provoca a comparao dos arquivos instalados de um pacote com as informaes localizadas nas bases de dados do RPM. Entre outras coisas a verificao compara o tamanho, MD5 sum, permisses, tipo, dono e grupo de cada arquivo. Para verificar um pacote deve-se utilizar o comando: rpm -V <nome do pacote Pode-se usar as mesmas opes disponveis no processo de consultas. Exemplos: Para verificar um pacote que contenha um arquivo em especial: rpm -Vf /bin/vi Para verificar todos os pacotes instalados: rpm -Va Para verificar um pacote instalado e o arquivo de pacote RPM: rpm -Vp foo-1.0-1.i386.rpm

Permisses
Cada arquivo no UNIX apresenta trs nveis de proteo definidos por trs categorias de usurios. Todo arquivo ou diretrio tem um dono (user) e pertence a um grupo (group). Qualquer usurio do sistema que no seja o dono do arquivo e no pertena ao grupo do arquivo enquadrase na categoria outros (others). O administrador do sistema, o chamado superusurio (root), no pertence a nenhuma das categorias acima, tendo acesso irrestrito a todos os arquivos do sistema. Para cada categoria de usurio, trs tipos de acesso podem ser concedidos: leitura (read), escrita (write) e execuo (execute). O sistema UNIX no faz distino entre os acessos de escrita e eliminao, ou seja, um arquivo que pode ser alterado tambm pode ser eliminado. As tabelas abaixo mostram as permisses para arquivos e diretrios: Arquivos
r w x

Descrio
Permisso para ler e copiar o arquivo. Permisso para alterar ou eliminar o arquivo. Permisso para executar o arquivo. Tabela 6: Permisses de arquivos

Diretrios
r w x

Descrio
Permisso para ler o contedo do diretrio (listar o nome dos arquivos). Permisso para criar, remover e renomear arquivos no diretrio. Permisso de busca: O usurio que no possuir esta permisso no poder se posicionar no diretrio nem acessar os arquivos na rvore abaixo deste diretrio. Tabela 7: Permisses de diretrios

Atravs da opo -l do comando ls podemos visualizar o cdigo de proteo dos arquivos. Este cdigo est representado pelos 9 caracteres que seguem o tipo de cada arquivo (primeiro caractere). Os trs primeiros caracteres correspondem a proteo para o dono (user) do arquivo, os trs prximos definem a proteo para a categoria grupo (group) e os ltimos trs caracteres especificam a proteo do arquivo em relao ao demais usurios (other). Exemplo:

19

$ ls -al total 9 drwxr-x--x 7 drwxr-xr-x 9 -rwxr-x--x 1 -rwxr-x--x 1 drwxr-xr-x 2 avaliacao drwxr-xr-x 2 -rwxrw-r-1 dados.dat -rwxrw-r-1 manual.doc drwxr-xr-x 2 $

bessa root bessa bessa bessa

instrutores instrutores instrutores instrutores instrutores

512 512 380 160 512

Dec Oct May May Jan

12 20 12 12 05

11:32 09:11 16:03 18:25 10:55

. .. .cshrc .login

bessa instrutores bessa instrutores bessa instrutores bessa instrutores

512 Jan 09 15:53 970 Jun 16 11:03 979 Sep 29 13:07 512 Feb 08 08:55

curso

prog

No exemplo acima analisemos o arquivo dados.dat. Ele do tipo ordinrio. O usurio bessa (dono do arquivo) pode ler, alterar e executar o arquivo. Todos os usurios que pertenam ao grupo instrutores podem ler e alterar o arquivo mas no podem executa-lo. Qualquer outro usurio s poder ler o arquivo. A proteo assinalada ao arquivo diretrio determina o primeiro nvel de proteo para todos os arquivos deste diretrio e tem prioridade sobre as protees associadas individualmente a cada arquivo. Por exemplo, caso um usurio no tenha permisso de escrita em um arquivo diretrio, no poder eliminar nenhum arquivo deste diretrio, ainda que as protees dos arquivos indiquem o contrrio.

Alterao das Permisses


Para alterarmos as permisses em um arquivo utilizamos o comando chmod (change file mode). Ele possui dois formatos: Formato 1 $ chmod [ugoa] [+=-] [rwx ugo] arquivos A letra u representa os privilgios do dono do arquivo; a letra g os privilgios do grupo e a letra o os privilgios dos demais usurios. A letra a (all) representa todas as categorias de usurios. O sinal + significa a adio de um privilgio e o sinal - a retirada de um privilgio. A opes r, w e x representam respectivamente as permisses de leitura, alterao e execuo. Podemos alterar vrios privilgios em um nico comando, separando-os por vrgulas. Classes de usurios e nveis de proteo que no forem especificados no comando no sero alterados. Exemplo: $ ls -l -rw-rw-rw1 jose alunos 138 $ chmod g-w,o-rw arquivo

Jan 14 16:15 arquivo

20

$ ls -l -rw-r----$ Formato 2

jose

alunos 138

Jan 14 16:30 arquivo

$ chmod nnn arquivo Onde nnn o cdigo em octal que representa os tipos de acesso concedidos cada categoria de usurio. Cada permisso tem um nmero associado: execute = 1, write=2 e read = 4. A tabela abaixo ilustra as combinaes possveis: Nmero em Octal
0 1 2 3 4 5 6 7

Permisses

Descrio

--Nenhum acesso permitido. --x Acesso execute -wAcesso write -wx Acesso write e execute r-Acesso read r-x Acesso read e execute rwAcesso read e write rwx Acesso read, write e execute Tabela 8: Representao de permisses atravs de nmero octal

Exemplo: $ ls -l -rw-rw-rw1 jose $ chmod 640 arquivo $ ls -l -rw-r----$

alunos 138

Jan 14 16:15 arquivo

jose

alunos 138

Jan 14 16:30 arquivo

Alterao do Grupo e Dono


Se voc membro de mais de um grupo, voc pode eventualmente precisar alterar o grupo de um arquivo. Isto feito atravs do comando chgrp. Sua sintaxe : $ chgrp grupo arquivo Exemplos: $ ls -l arquivo -rw-r----1 jose alunos $ chgrp monitores arquivo $ ls -l arquivo -rw-r----1 jose monitores $

138

Jan 14 16:15 arquivo

138

Jan 14 16:25 arquivo

21

Caso desejemos saber todos os grupos existentes podemos listar o arquivo /etc/group com o comando: $ cat /etc/group. importante ressaltar que para utilizar o comando chgrp, o usurio deve pertencer ao novo grupo especificado e ser o dono do arquivo, ou ento o superusurio. Enquanto o comando chgrp permite a alterao do grupo do arquivo, o comando chown permite alterar o seu owner (dono). # chown dono arquivo Exemplos: # ls -l arquivo -rw-r----1 jose # chown luiz arquivo # ls -l arquivo -rw-r----1 luiz #

alunos 138

Jan 14 16:15 arquivo

alunos 138

Jan 14 16:25 arquivo

Este comando s pode ser utilizado pelo superusurio, pois s ele tem acesso a todas as contas e usernames do sistema.

Sites para consulta


Como o Linux um software gratuito, existem vrios sites com manuais e explicaes gratuitas sobre o mesmo, ou seja, grande parte dos assuntos discutidos sobre o Linux pode ser encontrada nestes sites. Abaixo podemos conferir alguns desses sites: http://focalinux.cipsga.org.br/ site com vrios manuais para downloads. http://www.linuxiso.org/ site oficial do Linux onde todas as distribuies podem ser baixadas gratuitamente sem dificuldades. http://www.softwarelivre.gov.br/links site com vrios links importantes sobre o Linux. http://www.conectiva.com.br/cpub/pt/incConectiva/suporte/pr/hardware.html site oficial de suporte da Conectiva com explicaes de vrias dvidas comuns sobre diversas configuraes de hardware e software no Linux. http://www.rau-tu.unicamp.br/linux/ site de perguntas e respostas sobre Linux. Caso no encontre a resposta no site, voc pode formular e enviar sua pergunta e aguardar uma resposta de um colaborador.

22

Vous aimerez peut-être aussi