Aulas Linux

16

Click here to load reader

Transcript of Aulas Linux

Page 1: Aulas Linux

1

CURSO SUPERIOR DE TECNOLOGIA EM GESTAO DA TI DISCIPLINA DE SISTEMAS OPERACIONAIS

LINUX – NOTAS DE AULA Prof Leomar Cassol Monego

1-Introdução A Historia do Linux O Linux é um clone UNIX de distribuição livre para PCs. Não contem nenhum código original ou proprietário do Unix , é totalmente independente.O Linux foi escrito inteiramente do nada, não há código proprietário em seu interior. O Kernel do Linux foi, originalmente, escrito por Linus Torvalds, um estudante da Universidades de Helsinki, Finlândia. Linus Torvalds iniciou cortando (hacking) o kernel como um projeto particular, inspirado em seu interesse no Minix, um pequeno sistema UNIX. Ele se limitou a criar, em suas próprias palavras, "um Minix melhor que o Minix". E depois de algum tempo de trabalho em seu projeto,em outubro de 1991 ele distribuiu os fontes na internet para com a ajuda de vários programadores voluntários se tornar o Sistema Operacional que é hoje. Características do Linux • Freeware (gratuito) - Todo o código fonte esta disponível, inclusive o kernel completo e todos os drivers, alem

de sw adicionais como servidor web, sw administração de rede, BD, Firewalls, ... • Multitarefa real - várias tarefas sendo executadas ao mesmo tempo. • Memória virtual - Como na memória RAM, o kernel divide o espaço em disco reservado para memória virtual

em páginas e sabe exatamente o que deve mandar para esta e o que manter na memória principal, evitando acessos desnecessário a memória virtual(/SWAP), que torna a execução mais lenta.

• Multiusuário: diversos usuários utilizando a mesma máquina ao mesmo tempo sem necessidade de adquirir licenças de uso.

• Biblioteca compartilhada - usar bibliotecas compartilhadas economiza espaco em disco, economiza espaco em memoria, e por isso melhora o desempenho da paginação. • "Demand loading" - o Linux só lê do disco aquelas partes do programa que são realmente usadas. • Gerenciamento de memória próprio – possui uma proteção de memória entre os processos onde um programa

mau comportado não pode derrubar todo o sistema. Possui memória unificada para programas de usuários e cache de disco, fazendo com que toda a memória livre seja usada para cache, sendo este reduzido conforme os programas necessitem de memória.

• Executáveis "copy-on-write" compartilhados - Isto significa que múltiplos processos podem usar a mesma parte da memória para executar, compartilhando páginas comuns, isto é, quando um processo tenta gravar naquela página, ela é copiada para outro lugar.

• Multiprocessamento – mais de um processador trabalhando em conjunto; • X Windows – as varias interfaces gráficas • Segurança – Todo o sistema de arquivos baseados em permissões de 3 niveis de acesso oriundos do Unix com

mais de 3decadas de aperfeiçoamento, alem de diversas ferramentas básicas de segurança , encriptaçao, firewalls, IDS ...

• Suporte na Internet: nenhum outro SO possui tantas páginas, Newgroups, lista de discussões, how to, que podem facilmente encontrar soluções de problemas e conselhos.

• Portabilidade: compatibilidade com diversas plataformas: PC’s Intel, Dec Alpha, Sun-Os, Solaris, etc...também roda em praticamente qualquer computador.

Outras características interessantes do Linux: estabilidade, ótima performance e uma multiplicidade de recursos.

Distribuição O linux, em si, é apenas o Kernel (núcleo) do SO, ou seja, a parte que controla o HW, gerencia arquivos, processos, memória, etc... Existem combinações de linux com vários utilitários e aplicativos de modo a formar um SO completo comercializados por empresas. Cada uma dessas combinações é chamada de distribuição. Estas empresas que pegam o Linux ,adicionam algumas facilidades ou recursos (e com seu grupo de desenvolvedores), juntam com aplicativos/utilitários desenvolvidos também por outras empresas e colocaram seus CDs à disposição dos interessados, juntamente com suporte, manuais, etc. As principais distribuições são: Red Hat (a mais popular), projeto Fedora Core da Red Hat, Slackware, Corel, SuSE, Debian, Open Linux Caldera, Conectiva do Brasil e muitas outras. Os arquivos /proc/version e /etc/issue informam respectivamente a versão do kernel e a distribuição que esta sendo usada. Requisitos de HardWare

Page 2: Aulas Linux

2

É importante entender que o Linux é formado pelo núcleo do sistema, chamado de Kernel e de alguns comandos básicos. Interfaces gráficas, jogos, editores de texto, serviços de rede, bancos de dados, linguagens de programação e todas os demais programas não são LINUX, são utilitários que complementam o Sistema Operacional. O Linux pode rodar em PCs baseados em 386/486/Pentium, com pelo menos 2Mb de RAM e um disco de 10MB para experimentá-lo. Para fazer qualquer coisa útil, mais RAM (4Mb para instalar a maioria das distribuições, e 32Mb é altamente recomendado para rodar X) e um disco rígido de preferência superior a 400MB . Instalação A instalação e atualização do Linux podem ser feitas de varios métodos, como: - Via CD-ROM: os pacotes são lidos do CD e instalados no seu disco rígido. A inicialização do programa de instalação é feita direta do CD, se permitir o boot pelo CD, senão deve ser criado um disquete de inicialização; -Via rede: através de sites de FTP e http que fazem o espelhamento do linux, os pacotes são carregados através da rede até seu computador e instalados ou atualizados no disco rígido; - Via disco rígido: pode-se copiar os arquivos diretamente para o HD, fazendo a instalação apartir do sistema local. Caso você pretende instalar o Linux no mesmo HD do windows, deve-se particionar o HD em no mínimo 2 partições, instalar o windows na primeira partição e depois o linux na outra. Aviso Se você escolher não particionar manualmente, uma instalação de servidor removerá todas as partições existentes em todos os discos rígidos instalados. Não escolha este tipo de instalação a não ser que você esteja certo de não ter dados que queira salvar. Para o Linux, é recomendado que você crie pelo menos 3 partições (no momento da instalação): - Partição de Troca ( /swap) – destinada ao suporte á memória virtual, obrigatório para micros com menos de 16 MB de ram. O tamanho desta partição pode ser igual (se tiver bastante memória) ou o dobro ( se tiver pouca) da Ram do seu equipamento; -Partição de boot ( /boot)) *não obrigatoria* – contem o kernel do SO, juntamente com outros arquivos necessários ao processo de inicialização. Obrigatório para micros com Bios desatualizada que possuem HDs de grande capacidade, isto faz com que o gerenciador de inicialização localize o /boot abaixo do cilindro 1024 do disco. O tamanho dessa partição deve ter entre 5 a 20 MB; -Partição Raiz ( /) – é onde irão ser instalados todos os arquivos restantes do linux. Deve ter o tamanho restante disponível do disco. Recomendações antes de instalar o Linux (Fedora core): Como Computador Pessoal Uma instalção de computador pessoal, incluindo um ambiente gráfico da área de trabalho, requer pelo menos 1.7GB de espaço livre. Caso voce escolha ambos ambientes de trabalho, GNOME e KDE, precisar· de pelo menos 1.8GB de espaço livre em disco. Como Estação de Trabalho Uma instalação de estação de trabalho, incluindo um ambiente gráfico da área de trabalho e ferramentas de desenvolvimento de software, requer pelo menos 2.1GB de espaço livre. Ao escolher ambos ambientes de trabalho, GNOME e KDE, voce precisara de pelo menos 2.2GB de espaço livre em disco. Como Servidor Uma instalação de servidor requer 850MB para uma instalação minima sem X (o ambiente gráfico), pelo menos 1.5GB de espaço livre se todos os grupos de pacotes alem do X estiverem instalados, e pelo menos 5.0GB para instalar todos os pacotes incluindo os ambientes de trabalho gráfico GNOME e KDE. Como Personalizada Uma Instalação Personalizada requer 475MB para uma instalação minima e pelo menos 5.0GB de espaço livre se todos os pacotes forem selecionados. OBS: Estas recomendações não consideram espaço adicional para dados do usuário. Você deve ter espaço adicional disponível se planeja salvar quaisquer dados do usuário (arquivos pessoais) em seu sistema.

Page 3: Aulas Linux

3

2- Sistema de Arquivos ( File System ) 2.1 – Arvore Hierárquica / - O Diretório Raiz (root) A composição do diretorio raiz de um sistema Linux típico pode ser representado pelos seguintes subdiretórios: /bin - Arquivos executáveis(binários) de comandos essenciais pertencentes ao sistema e que são usados

com freqüencia. (usados por todos os usuários) /boot - Arquivos estáticos de boot de inicialização(boot-loader) /dev - Arquivos de dispositivos de entrada/saída /etc - Arquivos de configuração e administração do sistema /home - Diretórios local(home) dos usuários /lost found – arquivos perdidos em crashes do sistema (por ex. arq recuperados pelo fsck) /lib - Arquivos da biblilotecas compartilhadas usados com freqüência /mnt - Ponto de montagem temporária de partições ou discos /root - Diretório local do superusuário (root) /sbin - Arquvios de sistema essenciais, normalmente executados pelo próprio kernel (prog usados pelo root) /tmp - Arquivos temporários gerados por alguns utilitários /usr - Todos os arquivos de usuários devem estar aqui (segunda maior hierárquia), é aqui que ficam os

executáveis e bibliotecas de todos os principais programas. (/usr/lib*) /var - Informação variável, normalmente base de correio eletrônico, logs e cachês. 2.2 – Acesso a arquivos e diretórios

O usuário root deve ser o administrador do sistema, aquele que tem poder de alterar ou apagar quase tudo, portanto deve-se utilizar o sistema com esse usuário ou com os poderes dele apenas para manutenção do sistema. Utilize o sistema como usuário comum sempre, a menos que precise executar tarefas de administração do sistema. Este procedimento torna o sistema mais estável, embora no começo seja mais trabalhoso, pois força um maior aprendizado do sistema, pois muitas coisas não serão permitidas ao usuário comum.

Para criar um usuário você deve se logar como root e utilizar o comando adduser nome_usuario, e em seguida passwd nome_usuario para definir sua senha.

Permissões de arquivos (e diretórios) diz respeito ao que é permitido ao usuário fazer em relação aos arquivos/diretórios. Como o Linux é um SO multiusuário, ele divide os usuários em três classes que podem ter acesso aos arquivos: o dono (a pessoa que criou o arquivo), o grupo (usuários que são agrupados pelo administrador do sistema) e os outros (todos os usuários conectados a rede). Os 10 primeiros caracteres das linhas listadas pelo "ls -l" definem precisamente o que os usuários de cada classe podem fazer com seus arquivos. Esses caracteres são chamados de modos de permissão dos arquivos.

O primeiro caractere define o tipo de arquivo: se for um "-" então é um arquivo normal. Se for um "d", é o nome de um diretório. Se for um "l" entao é um 'link' simbólico (é um ponteiro para outros arquivos)

Os outros 9 caracteres devem ser separados em 3 grupos de 3 caracteres: o primeiro grupo define as permissões do dono do arquivo, o segundo grupo as permissões do grupo de usuários e o terceiro define as permissões de todos os outros usuários.

Em cada grupo, as permissões sempre aparecem na ordem leitura-escrita-execução (r,w,x). A permissão de leitura é sempre indicada com um "r", a permissão de escrita com um "w" é a permissão de execução com um "x". Permissão negada é indicada com um "-". Por ex:

-rwxr--r-- 1 ana ftp-adm 53104 May 16 11:26 teste

O primeiro "-" significa que teste é um arquivo comum. As permissões do dono de teste são "rwx", o que significa que o dono pode ler e escrever e executar o arquivo. As permissões do grupo ou dos outros usuários é "r--" o que significa que eles podem apenas ler (ou copiar) o arquivo.

É possível alterar as permissões dos arquivos e diretórios através dos comandos chown, chgrp, chmod que vermos mais adiante.

Só quem pode mudar as permissões do arquivo é o dono dele ou então o root. As permissoes tambem protegem os arquivos de programas não autorizados (virus) ou tambem de

instalação de programas por usuarios comuns.

Page 4: Aulas Linux

4

3 – Gerenciamento de Partições (drives e partições) Partições de disco são divisões lógicas feitas no seu HD de forma que ele opere com vários sistemas de arquivos iguais ou diferentes armazenados na mesma mídia. Uma partição é um conjunto de blocos contíguos em um drive que são tratados como discos independentes. Aos drives e partições do Linux são dados nomes diferentes aos no windows, os drives de disquetes não são referidos como A: e B: e as partições do disco rigido não são denominadas C: e D:, etc. (são representados na forma de arquivos de dispositivos ou drives de dispositivo). Os drives do dispositivo, encontramos no diretório /dev, são usados para a comunicação com os dispositivos em seu sistema (como: drives de disquete, CD-Rom, disco rígidos, mouses, pen drive, etc.). Por exemplo: se você tiver um disquete em seu sistema, irá acessa-lo através do drive /dev/fd0, um cd em /dev/cdrom, um mouse em /dev/mouse. O Linux refere-se às diversas partições dos discos de uma forma muito mais completa e complexa que no DOS e seus descendentes. Eis um resumo:

• Duas primeiras letras: indicam o tipo de dispositivo onde a partição reside. Normalmente vão ser hd (para partições em drives IDE) ou sd (para partições em drives SCSI).

• Terceira letra: indica em qual dispositivo a partição se encontra. Por exemplo, /dev/sdb é o segundo drive scsi, e /dev/hda é o primeiro interface IDE.

• O número: denota a partição. Por exemplo, /dev/hda3 é a terceira partição primária no primeiro drive IDE, /dev/hda5 é a primeira partição lógica no primeiro drive IDE.

Dispositivo Nome do drive no Linux

Primeiro disquete (A:) /dev/fd0

Segundo disquete (B:) /dev/fd1

Unidade de CD-ROM /dev/cdron, /dev/hdc

Primeiro disco rigido (todo o drive) /dev/hda

Primeiro disco rigido, particao primaria 1 /dev/hda1

Primeiro disco rigido, particao primaria 2 /dev/hda2

Primeiro disco rigido, particao primaria 3 /dev/hda3

Primeiro disco rigido, particao primaria 4 /dev/hda4

Primeiro disco rigido, particao logica 1 /dev/hda5

Primeiro disco rigido, particao logica 2 /dev/hda6

etc.

Segundo disco rigido (todo o drive) /dev/hdb

Segundo disco rigido, particao primaria 1 /dev/hdb1

etc.

Primeiro disco rigido SCSI (todo o drive) /dev/sda

Primeiro disco rigido SCSI, particao primaria 1 /dev/sda1

etc.

Primeira impressora paralela /dev/lp0

Primeira porta serial ( com1) /dev/cua0

fdisk –l - comando usado para enxergar discos, dispositivos (partições) e tipo de filesystem. O comando fdisk é usado para criar partições, por exemplo fdisk /dev/hda2 df - comando usado para verificar os discos que estão montados no sistema. Ex: df –H mount – visualizar todos os dispositivos montados e tipo de filesystem para cada dispositivo montado. O arquivo que contem as informações das partições é o /proc/partitions

Page 5: Aulas Linux

5

3- Montagem de Dispositivo No Linux, os arquivos em qualquer dispositivo de armazenamento (disquete, CDROM ou HD), devem fazer parte do sistema de arquivos para poderem ser acessados. Ou seja, é diferente do DOS / Windows, que trata cada unidade (a:, c:, etc) como um sistema de arquivos isolado. Para que os arquivos armazenados em um disquete, CDROM ou HD possam fazer parte do sistema de arquivos, é preciso realizar uma operação chamada "montagem". Basicamente a montagem consiste em informar ao sistema os parâmetros necessários para o acesso aos dados, como o ponto de montagem, o dispositivo utilizado, o tipo do sistema de arquivo, entre outros. A operação de montagem pode ser realizada manualmente ou pode ser automatizada para que seja realizada em determinadas circunstâncias, especialmente na inicialização do sistema. Da mesma forma, quando um sistema de arquivos em um dispositivo não é mais necessário, ele deve ser "desmontado" antes de ser fisicamente removido, de modo a não fazer mais parte do sistema de arquivos raiz (/). O arquivo /etc/fstab contém informações que permitem sintetizar os comandos de montagem de dispositivos, já que as informações contidas nele não precisarão ser informadas ao sistema durante a operação de montagem dos dispositivos nele relacionados. Mais adiante veremos como isto funciona. 3.1 - Ponto de Montagem Como vimos anteriormente, "ponto de montagem" é a denominação do local onde um sistema de arquivos está montado. No Linux, o diretório destinado à montagem de sistemas de arquivos temporários é o /mnt, na distribuição fedora /media. Porém nada impede que os mesmos sejam montados em outros diretórios, atentando apenas para o fato de estarmos saindo um pouco fora dos padrões adotados em consenso pela comunidade Linux. Veremos a seguir os principais pontos de montagem normalmente utilizados nos diversos sistemas Linux:

Dispositivo Ponto de Montagem

Floppy drive /mnt/floppy

CDROM /mnt/cdrom

Desta forma, se quisermos acessar o conteúdo de um disquete, devemos montá-lo e teremos acesso a seus dados através o diretório /mnt/floppy. Da mesma forma com os dados de um CDROM, porém neste caso o diretório que nos dará o acesso aos dados é /mnt/cdrom.

Para montar um drive ou uma partição na inicialização do seu Linux, você precisa editar o arquivo fstab, que se localiza no diretorio /etc. ( vi /etc/fstab ). Este arquivo permite configurar o sistema para montar partições, cdroms. Disquetes, outras mídias e compartilhamentos de rede durante o boot O conteudo do arquivo é o seguinte: /dev/hdb2 swap swap defaults 1 1 ( em muitos casos é /dev/shm ) /dev/hdb1 / ext2 defaults 1 1 none /proc proc defaults 1 1 Por ex: Para montar o seu drive A: (disco flexível) é so adicionar a seguinte linha: /dev/fd0 /mnt/a: msdos defaults 1 1 OBS: Nao esqueça de que o diretório /mnt/a: tem que ser criado previamente - Para mountar uma partição do Windows (fat) no Linux, adicione a seguinte linha: /dev/hda1 /mnt/win vfat defaults 1 1 OBS: Criar antes o diretório /win dentro do /mnt ou no fedora em /media

Page 6: Aulas Linux

6

4 - CONFIGURAÇÃO DO LINUX Alguns comandos úteis e utilitários de distro baseada no RED HAT: Setup – menu com varias configurações sndconfig - detecção e configuração de placas de som ntsysv – comando para habilitar os pacotes na inicialização mouseconfig - configuração do mouse kbdconfig - configuração do teclado timeconfig - configuração das timezones (fuso horário) printtool – instalar impressora modemtool – instalar modem netconfig – configurar rede fsck - verifica e repara a integridade de um sistema de arquivos do Linux. Ex fsck /dev/hda1 e2fsck - verifica e repara mais profundamente a integridade de um sistema de arquivos ext2 ou ext3, recomendável rodar com a partição de disco desmontada. badblocks – comando para verificar ocorrência de blocos ruins do disco dmesg - Lista todos os dispositivos detectados no boot (similar ao lspci) system-config - e pressione a tecla tab duas vezes – é para rodar os aplicativos de configuração. chkconfig - configura serviços para inicar junto com o boot, seleciona por nível de inicialização, é aplicado nos scripts de inicialização Alguns arquivos de configuração: Para editar os arquivos, de preferencia esteja logado como root, e use um editor como o "joe", "vi" ou "pico". Para ver use cat ou more /etc/passwd – Senhas, usuarios e grupos /etc/group – configuração de grupos : senhas e usuarios /etc/login.defs - Configuracao de login /etc/shadow - Senhas em shadow ( proteção de senhas ) /etc/fstab - Definicoes do mount ( o que esta montado no sistema) /etc/inetd.conf - Programas de rede que vao rodar /etc/hosts.deny - Quem nao entra no sistema pela rede /etc/hosts.allow - Quem entra no sistema pela rede /etc/host – define nome de maquina na rede /etc/inittab – como os processos são inicializados pelo sistema em um determinado nível /etc/profile – contem comandos que serão executados para todos os usuarios do sistema no momento do login /proc/cpuinfo – todas informações da cpu /proc/meminfo – todas informações da memoria

Page 7: Aulas Linux

7

5 -Principais comandos do Linux OBSERVAÇÕES SOBRE ARQUIVOS NO LINUX: - No Linux o * e ? também podem ser usados e de maneira semelhante ao DOS, com algumas diferenças também. No Linux *.* procura apenas pelos arquivos que contem um ponto, já no DOS procura todos os arquivos. Ex.: cp s* /teste (copia todos os arquivos começados com s para o diretório /teste. - Diferencia Maiúsculas e minúsculas . LS não existe e ls é um comando. - Arquivos de backup no Linux terminam com "~" semelhante aos .bak do DOS. - Arquivos executáveis são os que quando usamos ls -F aparece um asterisco ao lado direito. Exs.: ls*, mkdir*, teste.txt. Os arquivos ocultos começam por um ponto (.) - Enquanto no DOS os diretórios são c:\teste\arquivo.rmx no Linux ficaria assim teste/arquivo.rmx - # - prompt do superusuario $- prompt do usuario comum ATALHOS ESSENCIAIS: <Ctrl><Alt><F1> Muda a tela para o primeiro terminal texto. Sob Linux você pode ter vários (6 na definição padrão) terminais abertos ao mesmo tempo; <Ctrl><Alt><Fn> (n=1..6) Muda a tela para o terminal texto numero n. O comando tty mostra o nome do terminal no qual você está digitando este comando; <Ctrl><Alt><Fn> (n=7..12) Muda a tela para o terminal gráfico n (se um terminal gráfico estiver sendo executado na tela n - 1). Por default, o primeiro servidor X roda no terminal 7; <Tab> (Em um terminal texto) Completa automaticamente o comando se há somente uma opção ou, em caso contrário, mostra todas as opções disponíveis; <Seta para cima> (Em um terminal texto) Varre, mostra e edita o histórico de comandos. Pressione <Enter> para executar. ~ (til) Meu diretório padrão (diretório padrão, normalmente o diretório /home/meu_nome_de_login); <Ctrl>c Fecha o processo corrente(funciona na maioria das vezes em aplicações em modo texto). CRIAÇÃO DE USUÁRIOS Uma conta é a maneira como o usuário é identificado no sistema (através do login). Criar uma conta para cada usuário no sistema operacional não serve apenas para restringir ou permitir o acesso aos recursos oferecidos, mas também para respeitar o espaço que cada pessoa tem. Com uma conta, uma pessoa poderá ter os seus próprios diretórios, personalizar o seu desktop, ter atalhos e configurações para os seus programas preferidos, entre outros. Por padrão o linux cria seus usuários no diretório /home 1 - adduser ou useradd - comando para adicionar ou atualizar um usuário.

- Ex.: adduser Nome. Para remover um usuário – userdel Nome 2 - passwd : Modifica a senha pessoal do usuário. Quando o sistema pedir "Old Password:" , digite sua senha atual. Quando o sistema pedir "New Password:", digite sua nova senha. O último prompt , "Retype new password", pede que você digite a nova senha novamente. Ex: passwd Nome Comandos Relacionados: chage – estabelece que a senha expire em x dias para um usuário userdel - deleta o usuário Ex userdel meu_user userdel -r meu_user - deleta o usuário meu_user junto com o diretório usermod – comando para modificar contas de usuários já criados. chfn: comando para mudar as informações adicionais do usuário (nome completo, telefone, etc). Também podemos editar o arquivo /etc/passwd, para modificar uma conta, veja: meu_user:x:591:502:user:/home/meu_user:/bin/bash, Onde: meu_user- nome da conta, login x- indica que está sendo utilizado o método shadow de encriptação de senhas 591- ID do usuário (UID = user identification) 502- ID do grupo (GID = group identification) user- nome completo /home/meu_user -diretório home do usuário meu_user /bin/bash- shell padrão do usuário meu_user

Page 8: Aulas Linux

8

Então: Original : joao:x:591:502:Joao silva:/home/joao:/bin/bash Modificar para: Manuel:x:591:502:Manuel silva:/home/manuel:/bin/bash 3 - Comandos que exibem informações: uname – informações sobre o sistema ex: uname –a free –informações da memória finger- todas informações do usuário,inclusive o acesso set- informações do ambiente completo do usuário df : informações sobre o espaço ocupado e livre das partições e dispositivos montados. Ex: df -H stat : exibe as informações gerais a respeito de um arquivo. Ex: stat nome do arquivo date : informaçõe da data configurada no sistema. Alterações somente realizadas pelo super-usuário. Para exibir a data local, basta executar "date". Caso queira a data GMT utilize a opção "-u". Sintaxe: date MMDDhhmmYYYY apropos - Exibe uma lista de comandos que tenham alguma relação. Ex apropos user. Man tópico - mostra o conteúdo das paginas de manual para aquele tópico. Pressione "q" para sair history – mostra a lista de comandos executados anteriormente. last - mostra uma listagem dos últimos usuários que se logaram no sistema. ls – informaçoes sobre arquivos nomeados e diretórios, é usado para visualizar o conteúdo de um diretório. Sintaxe: ls (diretório)[opções] $ ls –a irá mostrar todos os detalhes do arquivo $ ls –l mostra informação extra sobre os arquivos, ex -rw-r--r-- 1 xyz users 2321 Mar 15 1994 Fontmap drwxr-xr-x 2 xyz users 1024 Apr 23 1995 Programs

A primeira coluna mostra as permissões do arquivo ou diretorio A segunda coluna desta listagem mostra o número de links que o arquivo possui. A terceira coluna mostra o proprietário ( dono ) do referido arquivo . É o "xyz". Na próxima coluna é mostrado o grupo ao qual pertence o proprietário do arquivo ( no exemplo temos o grupo users).

Na quinta coluna temos o tamanho do arquivo em bytes. Por fim, na sexta e sétima colunas, temos a data da última modificação feita no arquivo e o nome do mesmo, respectivamente. Vale lembrar que várias opções podem ser usadas de forma composta. Por exemplo, podemos executar o comando: $ ls -la e este mostrará todos os detalhes que as opções -l e -a dispõem.

Símbolo do Tipo do Arquivo Primeiro caracter

Significado

- Arquivo normal ou hard link d Diretório l Link simbólico b Arquivo especial bloco c Arquivo especial caractere s Socket p Named pipe

GERENCIANDO ARQUIVOS E DIRETORIOS 4 - cd : Muda o diretório de trabalho corrente, o diretório deve ter a permissão “X”. Sintaxe : cd < diretório > " um diretório acima do que você está, use o comando : cd .. Você também pode usar nomes-de-caminho (pathnames) como argumento para o comando cd. Por exemplo : cd /diretorio1/diretorio2 o posicionará diretamente em "diretório2". O uso de "cd" sem nenhum argumento fará com que você retorne para o seu "home-directory" . 5 - mkdir : usado para a criação de novos diretórios, o diretório deve ter a permissão “W”. Sintaxe : mkdir (diretório 1) (diretório 2) ...(diretório n) onde (diretório 1) até (diretório n) são os diretórios a serem criados. Ex: mkdir teste mkdir /home/novodir - para criar um diretório nesse local específico mkdir -p /dir1/sub1/sub2 (criar toda a hierarquia de diretórios).

Page 9: Aulas Linux

9

6 - cat : Oficialmente usado para concatenar arquivos. Também usado para exibir todo o conteúdo de um arquivo de uma só vez, sem pausa.(somente para arq texto ou binário) Sintaxe: cat < arquivo1 > < arquivo2 >... < arquivo n >, onde (arquivo1) até (arquivo n) são os arquivos a serem mostrados. "cat" lê cada arquivo em sequencia e exibe-o na saída padrão. Deste modo , a linha de comando: cat < arquivo > - exibirá o arquivo em seu terminal; cat < arquivo1 > < arquivo2 > > < arquivo3 > - concatenará "arquivo1" e "arquivo2", e escreverá o resultado em “arquivo 3” . O símbolo ">", usado para redirecionar a saída para um arquivo ou dispositivo, tem caráter destrutivo; em outras palavras, o comando acima escreverá por cima do conteúdo de < arquivo3 >. Se, ao invés disto, você redirecionar com o símbolo ">>", a saída será adicionada a <arquivo3 >, ao invés de escrever por cima de seu conteúdo. 7 - more : Exibe o conteúdo de arquivos nomeados, fazendo pausas a cada tela cheia. O caracter "b" faz com que "more" exiba a tela anterior. O caracter "q" provoca a parada de execução do comando more. Sintaxe: more (arquivo 1) (arquivo 2) ... (arquivo n) onde (arquivo 1) até (arquivo n) são os arquivos a serem exibidos. Pode-se procurar por uma palavra (ou uma cadeia de caracteres) em um arquivo. Para isso, pressione o caracter "/", digite a palavra (ou a cadeia de caracteres),e tecle (Enter). Comando relacionado: less – permite vizualizar arquivos fazendo paginação, usado para arquivos grandes, permite usar as setas do teclado para rolar. Para sair pressione “q” 8 - pwd : Exibe o diretório corrente. Este comando é utilizado para exibir o seu diretório corrente no sistema de arquivos. 9 - cp : Copia arquivos para um outro arquivo ou diretório.O arquivo deve ter a permissão “r” Sintaxe: cp (arquivo1) (arquivo2) ... (arquivo n) (destino) onde (arquivo1) até (arquivo n) são os arquivos a serem copiados, e (destino) é o arquivo ou o diretório para onde os arquivos serão copiados. Se o arquivo-destino não existe, "cp" criará um arquivo com o nome especificado em . Se o arquivo-destino já existia antes e nào for um diretório, "cp" escreverá o novo conteúdo por cima do antigo. Cuidado: se errar o caminho, ele cria um novo. Ex : cp teste /home – copia arquivo teste para o diretório home cp -r temp temp1 - Este comando copia todos os arquivos e subdiretórios dentro do diretório temp para um novo diretório temp1. Esta é uma cópia recursiva, como designado pela opcão -r. Se você tentar copiar um diretório sem utilizar esta opcão, você verá uma mensagem de erro. Para ver todos os arquivos copiados utilize a opção “-v”. Comando relacionado: touch <nome> - cria um arquivo vazio ou muda data/hora de um já existente. 10 - du : Exibe o espaço ocupado de um diretório e de todos os seus subdiretórios, em blocos de 1kbytes; isto é, unidades de 1 kbytes ou caracteres.. "du" mostra a utilização do disco em cada subdiretório, ex, du –a Comando relacionado: df <diretório> - mostra quantos KBytes estão livres na unidade de disco onde se encontra o diretório. Se o diretório for omitido, será mostrado o epaço disponível em todas as unidades que estão montadas. 11 – man : exibe páginas do manual sobre comandos e programas em geral, aperte a letra "Q" que ele volta ao console. Ex : man ls Comando relacionado: “comando” –help|more – exibe o help do comando Comando relacionado: Info <tópico> Mostra o conteúdo de informações sobre um comando em particular, info é uma substituição das paginas man porisso ela contem as atualizações mais recentes da documentação do sistema. 12 - mv : Move arquivos para um outro arquivo ou diretório.Tambem renomeia. Este comando faz o equivalente a uma cópia seguida pela deleção do arquivo original. Pode ser usado para renomear arquivos. Sintaxe: mv (arquivo 1) (arquivo 2) ... (arquivo n) (destino)

Page 10: Aulas Linux

10

onde (arquivo 1) até (arquivo n) são os arquivos a serem movidos, e (destino) é o arquivo ou o diretório para onde os arquivos serão movidos. Se (destino) não for um diretório, somente um arquivo deverá ser especificado como fonte. Se for um diretório, mais de um arquivo poderá ser especificado. Se (destino) não existir, "mv" criará um arquivo com o nome especificado. Se (destino) existir e não for um diretório, seu conteúdo será apagado e o novo conteúdo será escrito no lugar do antigo. Se (destino) for um diretório, o(s) arquivo(s) será(ão) movido(s) para este diretório. *Opções: -i Com esta opção, "mv" irá perguntar a você se é permitido escrever por cima do conteúdo de um arquivo destino existente. Exemplo: $ pwd /home/usuário1/temp $ ls teste $ mv teste ../temp1 Neste exemplo, o diretório teste foi movido de temp para temp1 com o comando "mv". 13 - rm : Este comando é utilizado para apagar arquivos. É importante lembrar que quando os arquivos são apagados, no sistema Unix, é impossível recuperá-los. Tem que ter a permissão “w” Sintaxe: rm (arquivo 1) (arquivo 2) ... (arquivo n) onde (arquivo 1) até (arquivo n) são os arquivos a serem apagados. *Opções: -f - remove todos os arquivos (mesmo se estiverem com proteção de escrita) em um diretório sem pedir confirmação do usuário. -r - opção recursiva para remover um diretório e todo o seu conteúdo, incluindo quaisquer subdiretórios e seus arquivos. Ex: rm –rf /teste/* - apaga todos os arq e subdir do diretorio teste. -> CUIDADO : diretórios e seus conteúdos removidos com o comando "rm -r" não podem ser recuperados. 14 - rmdir : é utilizado para apaga diretórios vazios. Deve ter permissão “W” Sintaxe: rmdir (diretório 1) (diretório 2) ... (diretório n) onde (diretório 1) até (diretório n) são os diretórios a serem apagados. O comando "rmdir" se recusa a apagar um diretório inexistente, exibindo a mensagem: rmdir : (nome-do-diretório) : No such file or directory Quando usar "rmdir", lembre-se que o seu diretório de trabalho corrente não pode estar contido no(s) diretório(s) a ser(em) apagado(s). Se você tentar remover seu próprio diretório corrente, será exibida a seguinte mensagem: rmdir : . : Operation not permited -> CUIDADO : diretórios removidos com o comando "rmdir" não podem ser recuperados! 15 - file : Exibe o tipo de um arquivo. Alguns arquivos, tais como arquivos binários e executáveis, não podem ser visualizados na tela. O comando "file" pode ser útil se você não tem certeza sobre o tipo do arquivo. O uso do comando permitirá a visualização do tipo do arquivo. Exemplo : file copyfile copyfile: ascii text 16 - grep : Exibe todas as linhas, dos arquivos especificados, que contém um certo padrão. Sintaxe: grep [padrão] <arquivo_1> <arquivo_2> ... <arquivo_n> onde [padrão] é uma expressão regular, e "arquivo_1" até "arquivo_n" são os arquivos nos quais a procura será feita. Por exemplo, o comando grep trabalho /trabalho/unix/grep.html mostrará todas as linhas no arquivo /trabalho/unix/grep.html que contém o padrão "trabalho". 17 – find : Localiza os arquivos c/ características especificas. Ex: find –name *.pl - procura os arquivos que terminam com .pl. find -size +10000k - procura arquivos com mais de 10000k.

Page 11: Aulas Linux

11

comando relacionado: whereis – exibe os locais que se encontram os arquivos executáveis, fonte e paginas de manuais de um comando. Ex whereis Firefox which - mostra caminho completo do programa (arquivo binário) Ex: which firefox ADMINISTRANDO USUARIOS E GRUPOS 18- chgrp : Modifica o grupo de um arquivo ou diretório. Sintaxe: chgrp [-f] [-h] [-R] gid nome-do-arquivo "chgrp" modifica o identificador de grupo ("group ID" , gid) dos arquivos passados como argumentos. "gid" pode ser um número decimal especificando o group id, ou um nome de grupo encontrado no arquivo "/etc/group". Você deve ser o proprietário do arquivo, ou o super-usuário, para que possa utilizar este comando. cat /etc/group => nome do grupo:senha:gid:usuários Neste arquivo você pode adicionar usuários ao grupo que quizer. Opções -h : se o arquivo for um link simbólico, esta opção modifica o grupo do link simbólico. Sem esta opção, o grupo do arquivo referenciado pelo link simbólico é modificado. - R : esta opção é recursiva."chgrp" percorre o diretório e os subdiretórios, modificando o GID à medida em que prossegue. Comandos relacionados: id: identifica todos os grupos que esta o usuario. Ex: id joão groupadd ou addgroup – criar um grupo groupdel – apaga o grupo groups – verifica o grupo do ususario. Ex groups joao passwd –g – definir a senha do grupo newgrp – troca a identificação do grupo do usuário por um outro grupo do qual ele faz parte. Essa operação somente é executada caso o grupo tenha senha; groupmod- alterar o nome ou id de um grupo já criado. Ex: groupmod –n novo_nome nome_antigo OBS: se o dono do arquivo for trocar o grupo deste, ele deve pertencer ao grupo que será setado. 19 - chmod : Modifica as permissões de um arquivo ou diretório.Você deve ser o proprietário de um arquivo ou diretório, ou ter acesso ao root, para modificar as suas permissões. Sintaxe : chmod permissões nome_do_arquivo onde : permissões - indica as permissões a serem modificadas; nome - indica o nome do arquivo ou diretório cujas permissões serão afetadas.

Para ver todos os usuários: cat /etc/passwd => nome do usuario:senha:UID:GID:nome completo:diretório do usuario As permissões podem ser especificadas de várias maneiras. Aqui está uma das formas mais simples de realizarmos esta operação : 1- Use uma ou mais letras indicando os usuários envolvidos: . u (para o usuário) . g (para o grupo) . o (para "outros") . a (para todas as categorias acima) 2- Indique se as permissões serão adicionadas (+) ou removidas (-). Pode ser (=) para definir, ex: ugo=rw. Ou copia permissões, ex: o=u (opções dos outros seja iguais ao dono) 3- Use uma ou mais letras indicando as permissões envolvidas : . r (para "read") (ler) . w (para "write") (escrever) . x (para "execute") (executar) Exemplo : No exemplo a seguir, a permissão de escrita ("write") é adicionada ao diretório "dir1" para usuários pertencentes ao mesmo grupo. (Portanto, o argumento "permissões" é g+w e o argumento "nome" é dir1). drwxr-xr-x 3 dir1 1024 Feb 10 11:15 dir1 $ chmod g+w dir1 $ ls -l dir1 drwxrwxr-x 3 dir1 1024 Feb 10 11:17 dir1 chmod a=rwx nomearq – coloca todas as permissões (poderia ser também a+rwx)

Page 12: Aulas Linux

12

Quando você cria um novo arquivo ou diretório, o sistema associa permissões automaticamente. Geralmente, a configuração "default" (assumida) para os novos arquivos é: - r w - r - - r - - e para novos diretórios é: d r w x r - x r – x Mais informações: Modo de permissão octal: utilização de números nas permissões de acesso aos arquivos

Número binario equiv. permissões Outro modo de lembrar: Cada letra significa um numero r = 4 w = 2 x = 1 Por exemplo: chmod 764 nomearq rwxrw-r-- Seus respectivos valores são: -rwx = 7(4+2+1(na ordem)) = acesso total rw- = 6(4+2) = acesso de leitura(4) e gravação(2) r-- = 4 = acesso de leitura

0 000 --- 1 001 --x 2 010 -w- 3 011 -wx 4 100 r-- 5 101 r-x 6 110 rw- 7 111 Rwx Exemplo: chmod 625 teste.txt Observando a tabela, o 6 corresponde a "rw-", o 2 corresponde a "-w-" e o 5 corresponde ao "r-x". Portanto, se texte.txt for um arquivo (tipo "-") as permissões após o chmod serão -rw--w-r-x. Exemplos diversos: Permissões Comando Descrição

-r-------- chmod 400 arquivo Somente o dono pode ler o arquivo, ninguem pode escrever.

-r--r--r-- chmod 444 arquivo Todos podem ler o arquivo, ninguem pode escrever. -rw-rw-rw- chmod 666 arquivo Todos podem ler e escrever no arquivo. drwxrwxrwx chmod 777 diretorio Todos podem ler, escrever, criar ou apagar arquivos do diretorio. drwx------ chmod 700 diretorio Somente o dono pode ler, escrever, criar ou apagar arquivos. Ninguem mais

pode ter acesso a este diretorio. drwx-wx-wx chmod 733 diretorio O dono pode ler ou escrever no diretorio. Todos os outros usuarios podem apenas

escrever. Etapas para acesso a um arquivo/diretório O acesso a um arquivo/diretório é feito verificando primeiro se o usuário que acessará o arquivo é o seu dono, caso seja, as permissões de dono do arquivo são aplicadas. Caso não seja o dono do arquivo/diretório, é verificado se ele pertence ao grupo correspondente, caso pertença, as permissões do grupo são aplicadas. Caso não pertença ao grupo, são verificadas as permissões de acesso para os outros usuários que não são donos e não pertencem ao grupo correspondente ao arquivo/diretório. Após verificar aonde o usuário se encaixa nas permissões de acesso do arquivo (se ele é o dono, pertence ao grupo, ou outros usuários), é verificado se ele terá permissão acesso para o que deseja fazer (ler, gravar ou executar o arquivo), caso não tenha, o acesso é negado, mostrando uma mensagem do tipo: "Permission denied" (permissão negada). O que isto que dizer é que mesmo que você seja o dono do arquivo e definir o acesso do dono (através do comando chmod) como somente leitura (r) mas o acesso dos outros usuários como leitura e gravação, você somente poderá ler este arquivo mas os outros usuários poderão ler/grava-lo. As permissões de acesso (leitura, gravação, execução) para donos, grupos e outros usuários são independentes, permitindo assim um nível de acesso diferenciado. Lembre-se: Somente o dono ou o root pode modificar um arquivo/diretório!

OBSERVAÇÕES: • *************O usuário root não tem nenhuma restrição de acesso ao sistema. ******************** • Se você tem permissões de gravação no diretório e tentar apagar um arquivo que você não tem permissão de

gravação, o sistema perguntará se você confirma a exclusão do arquivo apesar do modo leitura. Caso você tenha permissões de gravação no arquivo, o arquivo será apagado por padrão sem mostrar nenhuma mensagem de erro (a não ser que seja especificada a opção -i com o comando rm).

• Por outro lado, mesmo que você tenha permissões de gravação em um arquivo mas não tenha permissões de gravação em um diretório, a exclusão do arquivo será negada.

Isto mostra que é levado mais em consideração a permissão de acesso do diretório do que as permissões dos arquivos e sub-diretórios que ele contém. chmod [opções] [permissões] [diretório/arquivo]

• ugoa Controla que nível de acesso será mudado. Especificam, em ordem, usuário (u), grupo (g), outros (o), todos (a).

• +-= + coloca a permissão, - retira a permissão do arquivo e = define a permissão exatamente como especificado. Exemplos de permissões de acesso: chmod g+r *

Page 13: Aulas Linux

13

Permite que todos os usuários que pertençam ao grupo dos arquivos (g) tenham (+) permissões de leitura (r) em todos os arquivos do diretório atual.

chmod o-r teste.txt Retira (-) a permissão de leitura (r) do arquivo teste.txt para os outros usuários (usuários que não são donos e não pertencem ao grupo do arquivo teste.txt).

chmod uo+x teste.txt Inclui (+) a permissão de execução do arquivo teste.txt para o dono e outros usuários do arquivo.

chmod a+x teste.txt Inclui (+) a permissão de execução do arquivo teste.txt para o dono, grupo e outros usuários.

chmod a=rw teste.txt Define a permissão de todos os usuários exatamente (=) para leitura e gravação do arquivo teste.txt.

20 - chown : (change owner ship) Modifica o proprietário de um arquivo ou diretório. Sintaxe: chown [-fhR] (proprietário) (nome-do-arquivo) Ex chown –R adm /urcamp - este comando troca o dono pra adm de todo diretório e subdiretórios O argumento "proprietário" especifica o novo proprietário do arquivo. Este argumento deve ser ou um número decimal especificando o userid do usuário ou um "login name" encontrado no arquivo "/etc/passwd". Somente o proprietário do arquivo ( ou o super-usuário ) pode modificar o proprietário deste arquivo. Quando outro usuário qualquer copia um arquivo, este novo arquivo passa a pertencer a ele. 21 - su : sair de uma sessão e entrar em outra , até como superusuário (sem sair do console), usado para tarefas de administração.

Ex.: su antonio, su root ou apenas su su – neste caso o usuário adquire os privilégios do superusuário porém com todas as variáveis de ambiente do usuário original, ou seja, os arquivos .cshrc, login, .profile, etc. do root não são lidos. Para torna-lo root com toda a configuração do ambiente do usuário root use su -

22 - exit e logout : sai da sessão atual. O logout encerra de uma vez a sessão corrente do usuário, o comando exit encerra somente o shell de comandos corrente. 23 – halt ou poweroff: desliga o micro (halt apenas como root) reboot, init 6: reinicia o micro ( alem de ctrl+alt+Del é claro) 24 - shutdown : Reboota a maquina, encerra todas as atividades do Linux e prepara para o micro ser desligado. Sintaxe: shutdown –opçao [hora] [msg] shutdown -r now (reseta), shutdown -h now (desliga), shutdown –r 20 (reinicio apos 20 min) shutdown –r 15:00 O sistema será reiniciado as 15:00 (envia esta msg a todos os usuários) Comandos relacionado: uptime - Tempo que passou desde o último reboot. 25 – who, w : usado para determinar a quantidade e identidade dos usuários que estão utilizando o sistema no momento.

Alem do nome dos usuários, o comando who pode também informar a hora de abertura da sessão e outras infos Who am i - mostra quem voce é, útil quando você esquece com que login entrou. Comandos relacionado: users – mostra o nome de usuários atualmente usando o sistema. last – exibe os ultimos usuarios que se logaram lastb - ("=last bad") Mostra a ultima tentativa de login não bem sucedida no sistema. hostname - mostra o nome do host local(a maquina na qual estou trabalhando). GERENCIANDO PROCESSOS Processo é um programa ou comando em execução, carregado na memória. Cada processo ocupa um certo tempo do processador, uma certa quantidade da Ram e tem uma certa prioridade de execução. Processos foreground são aqueles criados por linha de comando, ou seja precisam da interação do usuário. Processos background são rodados, independentemente da criação, pela linha de comando, sem a interação com o usuario. A criação de processos obedece a hierarquia pai-filho, assim todo processo pai pode ter mais de um processo filho ( pstree). Daemons são processos criados no momento do boot (serviços de sistema). 26 - ps : Exibe um status dos processos ativos

Page 14: Aulas Linux

14

As opções mais importantes são os seguintes: a - mostra todos os processos existentes; e - exibe as variáveis de ambiente relacionadas aos processos; f - exibe a árvore de execução dos processos; l - exibe mais campos no resultado; m - mostra a quantidade de memória ocupada por cada processo; u - exibe o nome do usuário que iniciou determinado processo e a hora em que isso ocorreu; x - exibe os processos que não estão associados a terminais; w - se o resultado de processo não couber em uma linha, essa opção faz com que o restante seja exibido na linha seguinte. Ex : ps –ef - UID – id do dono do processo PID – id do nº do processo PPID – nº do processo pai TTY – terminal de controle do processo CMD – nome do processo ps ax - informações sobre o sistema: uso da memória, do processador, etc. ps –lax – todos os processos rodando na maquina, incluindo os de outros usuarios.

A seguir, segue a descrição dos campos mostrados anteriormente e alguns que só são mostrados com a combinação lax: USER - nome do usuário dono do processo; UID - número de identificação do usuário dono do processo; PID - número de identificação do processo; PPID - número de identificação do processo pai; %CPU - porcentagem do processamento usado; %MEM - porcentagem da memória usada; VSZ - indica o tamanho virtual do processo; RSS - sigla de Resident Set Size, indica a quantidade de memória usada (em KB); TTY - indica o identificador do terminal do processo; START - hora em que o processo foi iniciado; TIME - tempo de processamento já consumido pelo processo; COMMAND - nome do comando que executa aquele processo; PRI - valor da prioridade do processo; NI - valor preciso da prioridade (geralmente igual aos valores de PRI); WCHAN - mostra a função do kernel onde o processo se encontra em modo suspenso; STAT - indica o estado atual do processo, sendo representado por uma letra: R - executável; D - em espera no disco; S - Suspenso; T - interrompido; Z - Zumbi. Essas letras podem ser combinadas e ainda acrescidas de: W - processo paginado em disco; < - processo com prioridade maior que o convencional; N - processo com prioridade menor que o convencional; L - processo com alguns recursos bloqueados no kernel.

ps –ex – todos os processos controlados por tty. ps aux |grep nome do processo – para ver se tal processo esta em execução. Comandos relacionado: top – mantem permanente uma listagem de processos em execução, classificados pelo uso da cpu e prioridade. nice- define prioridade (20 á -20) para execução dos processos. Ex Nice -n 19 backup – prioridade máxima. O caracter & coloca o processo em segundo plano. Ex. Firefox & renice- mudar a prioridade de um processo que já está rodando jobs - serve para visualizar os processos que estão parados ou executando em segundo plano (background). lsmode – exibe os módulos do kernel que estão sendo carregados na memória no exato momento. 27 - kill : Termina um processo que esta ativo no sistema.

Você sendo usuário normal só pode encerrar seus processos, já o root super usuário pode encerrar todos os processos ( killall – mata processo pelo nome )

Sintaxe: kill numero_do_sinal PID O -9 é o SIGKILL causa termino incondicional.

BACKUP E COMPRESSÃO 28 – tar : compacta vários arquivos mantendo-se as permissões originais, transformando em apenas um. Ex: tar -czvf backup.tar * "Backup.tar" é o nome do arquivo criado e * são os arquivos a serem compactados. c Cria um novo arquivo tar. v modo verboso (ou falante, mostra tudo o que faz) z faz a compactação do arquivo, comprime o arquivo tar no formato gzip (.tar.gz) j faz a compactação do arquivo, comprime o arquivo tar no formato bzip2 (.tar.bz2) f indica compactar para um arquivo (ao contrário de uma fita que é o default) -X exclui um sub-diretório do arquivo compactado. -p Preserva as permissões de acesso originais dos arquivos. -r Acrescenta arquivos a um arquivo tar.

Page 15: Aulas Linux

15

-t Lista o conteúdo de um arquivo tar. -w Solicita confirmação antes de cada ação. -x Extrai arquivos de um arquivo tar. -C dir Especifica o diretório dos arquivos a serem armazenados. Obs.: Em alguns parâmetros o - (hífem) não é necessário. Nota: Para descompactar arquivos "tagged"(.tar.gz, .tgz, etc) - tar xpvf (nome_do_arquivo) tar –xjvf (nome arq) para arq .bz2 29 – mount : este comando anexa o sistema de arquivos especificado por special file no diretório especificado como parâmetro. Somente o superusuário pode montar arquivos. Muito usado para disquete e CD-ROM. mount -t iso9660 -r /dev/cdrom /mnt/cdrom mount /mnt/a: mount –t vfat /mnt/a: ( se for um disquete formato windows ) Para trocar o dispositivo devemos desmontar com o comando: umount

INSTALAÇÃO DE PROGRAMAS 30 - rpm - instala e desinstala programas em pacotes rpm (RedHat Package Manager) Um pacote é um arquivo que, além de conter os arquivos necessários para a instalação de um determinado aplicativo, contém também as informações necessárias para que o gerenciador de pacotes possa instalar, manter e remover programas. Site : www.rpmfind.com Sintaxe: rpm -opção <nome do pacote> Opções: -i (instala pacotes) -v (verifica os arquivos durante a instalação) -h (mostra uma série de "#" durante a instalação. Funciona como uma barra de progresso) -U (utilizado para atualizar programas que já estão instalados) --force (força a instalação de um determinado programa) -q (verifica se o pacote esta instalado) –qi (mostra todas as informações do pacote instalado) -e (desinstala pacotes) Ex: rpm -ivh - Instalação de pacotes;

rpm -Uvh - Atualização de pacotes; rpm -qi - Informações sobre o pacote; rpm -ql - Lista os arquivos do pacote; rpm -e - Desinstala o pacote; rpm -qa - Lista os pacotes instalados; rpm –qa | grep samba – mostra todos os pacotes do samba

Observação: alguns programas necessitam de outros para poder funcionar. Assim é possível que em alguns casos, quando usamos o comando rpm -i, para instalar um pacote, recebamos a mensagem de "falha de dependência" e a relação de pacotes que são exigidos por esse determinado programa. Para resolver o problema basta instalar os pacotes relacionados na mensagem e depois voltar a instalar o pacote desejado. Comando Relacionado: yum – é um gerenciador de instalação/desinstalação de pacotes no Fedora. yum install pacote – o yum irá baixar o pacote da Internet e instalar para você yum remove pacote - para desinstalar o pacote yum update pacote – para atualizar um pacote yum groupinstall pacote – instala um grupo de pacotes. Um grupo de pacotes é um conjunto de pacotes necessários para se instalar alguma funcionalidade no sistema 31 – lpr : comando para imprimir arquivos na linha de comando.

Ex.: lpr teste.doc 32 – fdformat: faz uma formatação de baixo nível em disquetes. Ex: fdformat /dev/fd0h1140 Onde /sbin/fdformat é o comando que formata e checa os blocos do disco, e /dev/fd0H1440 é o driver que aponta para o disquete. O seu disquete agora nao pode ser utilizavel no Windows entao caso vc queira usar no Windows, vc deve fazer os seguintes comandos. #/sbin/mkfs [dispositivo] [tamanho] -t [file system] Que ficará da seguinte forma: # /sbin/mkfs /dev/fd0H1440 1440 -t msdos

Page 16: Aulas Linux

16

No comando acima, 1440 é o número em k-bytes de blocos que serão formatados no disquete.