Você está na página 1de 148

DebianBsicoDesktop Paran

Debian Bsico - Desktop Paran

Direitos autorais: Essa Apostila est licenciada sob uma Licena Creative Commons Atribuio-Uso No-ComercialCompartilhamento pela mesma licena 2.0 Brazil. Pode ser copiada, distribuda e modificada. Para ver uma cpia desta licena, visite http://creativecommons.org/licenses/by-nc-sa/2.0/br/ ou envie uma carta para Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Assembleia.

Documento Verso Data de Reviso

Debian Bsico - Desktop Paran 1.0-4 09 de maro de 2009 por Jos Manuel da Pena Rosa 10 de maro de 2009 por Fbio Tobich 20 de abril de 2009 por Felipe Camargo de Pauli 07 de maio de 2009 por Felipe Camargo de Pauli 21 de maio de 2009 por Felipe Camargo de Pauli 15 de julho de 2009 por Felipe Camargo de Pauli 05 de agosto de 2009 por Felipe Camargo de Pauli 21 de agosto de 2009 por Felipe Camargo de Pauli Mantenedor: Felipe Camargo de Pauli Revisor: Fbio Tobich Colaboradores: Andr Lucas Falco David Alves Frana Coordenao do projeto: Jonsue Trapp Martins 148 pginas

Equipe Tcnica

Pginas

Debian Bsico - Desktop Paran

ndice
Introduo.......................................................................................................................................................9 Histria do GNU/LINUX................................................................................................................................10 Multics, Unix e Minix: os avs do GNU/Linux............................................................................................10 O surgimento do projeto GNU....................................................................................................................11 Nasce o Kernel Linux.................................................................................................................................12 O encontro do GNU com o Pinguim..........................................................................................................13 Debian.......................................................................................................................................................13 Discos e parties de disco.........................................................................................................................15 O que so parties?.................................................................................................................................15 Partio primria, estendida e lgica.........................................................................................................16 Sistemas de arquivos...................................................................................................................................20 Blocos........................................................................................................................................................20 Journaling..................................................................................................................................................20 Principais diferenas entre os principais....................................................................................................21 Abstrao de hardware................................................................................................................................23 Ns de dispositivos....................................................................................................................................23 Nomeao de dispositivos.........................................................................................................................26 Estrutura de diretrios.................................................................................................................................28 Endereos..................................................................................................................................................29 Diretrios do Sistema................................................................................................................................30 Exerccios de fixao (parte 1)....................................................................................................................33 Iniciao........................................................................................................................................................34 Como obter ajuda?....................................................................................................................................34 Terminais...................................................................................................................................................34 Usurios e grupos......................................................................................................................................35 Entendendo o terminal...............................................................................................................................37 Comandos para informaes sobre sesses.............................................................................................37 Coringas....................................................................................................................................................38 Recursividade............................................................................................................................................39 Redirecionadores.......................................................................................................................................40 2>...............................................................................................................................................................42 VIM.................................................................................................................................................................44 Criando um arquivo...................................................................................................................................44 Editando um arquivo existente...................................................................................................................44 Modos do vim............................................................................................................................................44 Comandos essenciais..................................................................................................................................46 cd...............................................................................................................................................................46 ls................................................................................................................................................................47 pwd............................................................................................................................................................48 mkdir..........................................................................................................................................................49 > (De novo este redirecionador)................................................................................................................50 cp...............................................................................................................................................................50 mv..............................................................................................................................................................51 rm..............................................................................................................................................................52 diff..............................................................................................................................................................53 file..............................................................................................................................................................54 tree............................................................................................................................................................54 O completo APT............................................................................................................................................56 Repositrios...............................................................................................................................................57 Utilizando o apt..........................................................................................................................................57 dpkg...........................................................................................................................................................61 Exerccios de fixao (parte 2)....................................................................................................................65 Comandos para visualizao de contedo de arquivos ..........................................................................68 sort.............................................................................................................................................................68 cat..............................................................................................................................................................68 tac..............................................................................................................................................................69 head...........................................................................................................................................................69 tail..............................................................................................................................................................70
5

Debian Bsico - Desktop Paran

more..........................................................................................................................................................71 less............................................................................................................................................................71 nl................................................................................................................................................................71 Comandos para pesquisa............................................................................................................................72 find.............................................................................................................................................................72 locate.........................................................................................................................................................73 grep...........................................................................................................................................................74 Comandos diversos......................................................................................................................................75 alias...........................................................................................................................................................75 badblocks...................................................................................................................................................75 clear...........................................................................................................................................................76 date............................................................................................................................................................76 df................................................................................................................................................................77 dmesg........................................................................................................................................................78 echo...........................................................................................................................................................78 free............................................................................................................................................................78 ln................................................................................................................................................................80 su...............................................................................................................................................................82 time............................................................................................................................................................82 touch..........................................................................................................................................................83 uname........................................................................................................................................................83 uptime........................................................................................................................................................84 whatis........................................................................................................................................................84 watch.........................................................................................................................................................85 which.........................................................................................................................................................85 reboot........................................................................................................................................................85 halt.............................................................................................................................................................86 shutdown...................................................................................................................................................86 Montagem de Dispositivos (mount e umount)............................................................................................86 Exerccios de fixao (parte 3)....................................................................................................................89 Comandos para gerenciamento de rede.....................................................................................................90 Informaes bsicas..................................................................................................................................90 Ifconfig.......................................................................................................................................................92 /etc/network/interfaces...............................................................................................................................92 ping............................................................................................................................................................94 route..........................................................................................................................................................94 nmap..........................................................................................................................................................95 hostname...................................................................................................................................................97 Exerccios de fixao (parte 4)....................................................................................................................98 Comandos de gerenciamento de contas....................................................................................................99 Arquivos de contas de usurios e grupos..................................................................................................99 adduser....................................................................................................................................................101 userdel.....................................................................................................................................................101 addgroup..................................................................................................................................................102 groupdel...................................................................................................................................................102 passwd.....................................................................................................................................................103 id..............................................................................................................................................................103 groups......................................................................................................................................................103 getent.......................................................................................................................................................103 Comandos para gerenciamento de processos........................................................................................105 ps.............................................................................................................................................................106 top............................................................................................................................................................107 kill............................................................................................................................................................107 killall.........................................................................................................................................................108 jobs..........................................................................................................................................................108 fg..............................................................................................................................................................109 bg.............................................................................................................................................................109 Comandos para gerenciamento de permisses.......................................................................................111 Proprietrios, grupos e outros usurios....................................................................................................111 Tipos de permisses................................................................................................................................111

Debian Bsico - Desktop Paran

Diretrios..................................................................................................................................................112 Arquivos...................................................................................................................................................113 chown.......................................................................................................................................................114 chgrp........................................................................................................................................................114 chmod......................................................................................................................................................115 umask......................................................................................................................................................116 newgrp.....................................................................................................................................................117 usermod...................................................................................................................................................119 Exerccios de fixao (parte 5)..................................................................................................................120 Instalao de impressoras.........................................................................................................................122 Abrindo o Gerenciador.............................................................................................................................122 Definindo uma impressora padro...........................................................................................................122 Adicionar uma nova impressora..............................................................................................................123 Remover uma impressora........................................................................................................................125 SSH..............................................................................................................................................................126 Instalando e iniciando o servio...............................................................................................................126 Conectando-se ao servidor......................................................................................................................127 Copiando com o ssh................................................................................................................................128 Anexo I (Instalao do Sistema Operacional Desktop Paran 2.0 - Zandor)......................................130 Primeira etapa da instalao...................................................................................................................130 Segunda Etapa da Instalao..................................................................................................................131 Anexo II (Alsa).............................................................................................................................................133 Eventuais problemas...............................................................................................................................133 Referncias Bibliogrficas.........................................................................................................................134

Debian Bsico - Desktop Paran

ndice de Figuras
Figura 1: Richard M Stallman.........................................................................................................11 Figura 2: Linus Torvalds.................................................................................................................12 Figura 3: O casamento: GNU e Linux.............................................................................................13 Figura 4: Algumas distribuies......................................................................................................13 Figura 5: MBR - Master Boot Record.............................................................................................16 Figura 6: Informaes que definem uma partio..........................................................................17 Figura 7: Quatro parties primrias..............................................................................................18 Figura 8: Trs primrias mais uma lgica.......................................................................................18 Figura 9: Uma primria mais trs lgicas.......................................................................................19 Figura 10: Estrutura de diretrios...................................................................................................27 Figura 11: Cilindros, trilhas e setores..............................................................................................80 Figura 12: Adduser x Userdel.......................................................................................................101 Figura 13: Caixa de dilogo "Configurao da impressora"..........................................................123 Figura 14: Definindo uma impressora padro...............................................................................123 Figura 15: Procurando o dispositivo.............................................................................................124 Figura 16: Instalando uma impressora que esteja no Windows....................................................126 Figura 17: Instalando o driver da impressora...............................................................................127 Figura 18: Menu de contexto para remover uma impressora.......................................................127

Debian Bsico - Desktop Paran

INTRODUO
A migrao de diversos servios que possuem seus cdigos-fonte fechados para alternativas livres uma realidade dentro do estado do Paran. uma questo de tempo at que todas as estaes de trabalho de todas as secretarias estejam com a distribuio Debian personalizada pela Celepar, denominada Desktop Paran, e diversas ferramentas do projeto GNU e de outros projetos alternativos livres estejam instalados e em produo. A CPPC (Coordenao de Projetos, Pesquisa e Capacitao) a coordenao dentro da Celepar responsvel por tentar diminuir o impacto dessa transio, atravs de uma ampla documentao de servios adotados pelo estado e cursos para usurios e tcnicos. Esta apostila a primeira de uma srie de trs volumes. So eles: Debian Bsico; Debian Intermedirio; e Debian Avanado. Todos estes volumes visam fazer com que os administradores de redes que desenvolvem trabalhos dentro do estado do Paran ou qualquer interessado da comunidade consigam realizar suas competncias j existentes de gerenciamento, mas agora com ferramentas completamente livres. O curso de Debian Bsico tem como objetivo transmitir aos tcnicos interessados conceitos bsicos de informtica, introduo a conceitos utilizados nas verses Unix like, e ensinar-lhes vrios comandos para serem utilizados para gerenciamento de uma rede. Este curso bsico, por isso ter uma srie de introdues a assuntos sem aprofundamento. O estudante ter a possibilidade de manusear uma srie de ferramentas e entender o que acontece com o computador, mas as solues e anlises mais profundas do sistema, capacidade de criao de projetos de redes complexas, ser adquirida apenas com a concluso dos trs volumes. A release atual do Desktop Paran possui o codinome Zandor, que possui a estrutura do Debian Lenny com as alteraes feitas pela Celepar. Ser esta a distribuio que este curso ir abordar, porm, deve-se ficar claro que qualquer outra distribuio, at mesmo uma Unix-Like sem vnculos com o Debian, segue os mesmos princpios do Zandor e possui muitos comandos e arquivos idnticos ou parecidos. Tenham um bom curso!

Debian Bsico - Desktop Paran

HISTRIA DO GNU/LINUX
Sem um sistema operacional no conseguimos utilizar o computador para nada, pois o sistema operacional que permite a interao entre o homem e a mquina. Para entendermos melhor sobre o surgimento do Debian, o sistema operacional adotado pelo Paran, vamos ver um pouco da histria dos sistemas operacionais.

MULTICS, UNIX E MINIX: OS AVS DO GNU/LINUX


Apesar de no ter sido o primeiro sistema operacional criado, vamos comear nossa histria com o MULTICS, por volta de 1969. Cientistas da computao, em um encontro que ocorreu no MIT (Massachusetts Institute of Technology), inclinaram-se sobre uma ideia que quase todos tinham em comum: a possibilidade de se criar um sistema operacional time-sharing. Ele teria caractersticas de tempo de compartilhamento, que nada mais do que vrios usurios compartilhando os recursos de um computador. At ento, os computadores no permitiam tal tarefa. Somente um processo poderia rodar por vez em cada computador. De uma ideia surgiu um consenso. De um consenso surgiu um esboo. De um esboo surgiu um projeto e sobre este projeto derramou-se muito dinheiro. O que antes s existia em mentes e papis passava a ganhar linhas de cdigos em computadores de vrios programadores. Os investidores de recursos financeiros e humanos uniram-se no esforo de um nico fim. Eram eles:

ARPA Departamento de defesa dos EUA (principal auxlio: recurso financeiro.

Interessado em novas tecnologias para serem usadas em armas cada vez mais precisas e devastadoras);

General Eletric (principal auxlio: espao fsico e computadores); Laboratrios Bell da AT&T (principal auxlio: programadores renomados, sendo o mais MIT (principal auxlio: programadores renomados e o esboo do projeto).

importante para ns: Ben Thompson);

Os anos foram se passando e, devido a complexidade maior do que esperada da tarefa, os resultados desejados no foram atingidos. Isto fez com que o projeto MULTICS perdesse fora e, aos poucos, cada uma das entidades envolvidas foram o abandonando. O sonho do multiprocessamento em um sistema operacional foi morrendo. Foi morrendo at que morreu. Em 1969 o projeto foi abandonado. Ken Thompsom, funcionrio dos Laboratrios Bell e ex-integrante do grupo que desenvolvia o MULTICS, continuou estudando o sistema e decidiu criar um outro sistema operacional mais simples, mas que conservasse as ideias bsicas do MULTICS, nascendo assim o UNICS (Uniplexed Information and Computing Service), que mais tarde passou a se chamar UNIX. Ele ficou bom e convincente, fazendo assim com que a AT&T resolvesse patrocin-lo. Era a volta do sistema operacional multiprocessado. Inicialmente o UNIX foi escrito em Assembly, o que causava grandes dificuldades pelo fato de que praticamente o sistema operacional s funcionaria em uma arquitetura. Como Assembly uma linguagem de baixo nvel e muito complicada, Thompson tinha a inteno de passar o Unix para uma linguagem de alto nvel. Aps algumas tentativas mal sucedidas, surgiu a linguagem C, e o UNIX finalmente foi reescrito sob esta linguagem no ano de 1973.

10

Debian Bsico - Desktop Paran

O UNIX cresceu muito na AT&T, que at ento, no o comercializava e o distribua gratuitamente para s universidades para fins educacionais. Mas com o seu crescimento, a partir da verso UNIX System IV (em 1983), a AT&T comeou a comercializ-lo cobrando pelo seu uso e no disponibilizando mais seu cdigo fonte. Por no ter mais acesso ao cdigo fonte do UNIX, o professor universitrio, Dr Andrew Tanenbaum, motivado por fins educacionais, resolveu desenvolver um novo sistema operacional baseado no UNIX, criando assim o MINIX. Era um sistema operacional limitado, pois possua apenas fins didticos, e nesta tarefa cumpria bem seu papel, mas para ser usado para outros fins era considerado fraco.

O SURGIMENTO DO PROJETO GNU


Em 1984, Richard M. Stallman descobriu que software proprietrio fazia vtimas diretas quando ele mesmo se tornou uma delas. Tudo comeou quando a Xerox resolveu presentear o Laboratrio de Inteligncia Artificial do MIT (o mesmo laboratrio de onde surgiu o projeto do MULTICS e local onde Richard M. Stallman trabalhava) com uma super impressora Laser de ponta. A impressora era extremamente instvel, ou seja, travava toda hora. Algum mandava algum trabalho para ser impresso e quando ia buscar depois de meia hora, descobria que a impressora havia travado na metade do trabalho. Arrumava-a, enviava novamente o trabalho e depois de uma hora retornava para buscar, mas adivinha o que ele descobria? Que a impressora havia novamente travado h 59 minutos (haja pacincia). Antes de ganhar essa impressora da xerox, eles tinham uma
Figura 1: Richard M Stallman

outra impressora que apresentara o mesmo problema. Como no era

possvel fazer alteraes no hardware da impressora para corrigir os problemas devido a falta de tecnologia da poca, eles faziam alteraes no driver da mesma, adicionando algumas funes (gambiarras). Uma dessa funes que eles haviam adicionado fazia com que aparecesse uma mensagem na tela de cada usurio que havia mandado uma impresso informando se a tal estava pronta ou no. Avisava tambm problemas na impresso, caso isso ocorresse. Assim, quando havia algum problema, algum iria correndo para sanar o problema o quanto antes. Ento j haviam encontrado no a soluo, mas um jeito de fazer com que a remediao fosse mais rpida. Bastava implementar as mesmas alteraes no driver dessa outra impressora. E isso foi feito? Infelizmente no era possvel pois o driver daquela impressora era proprietrio, pertencia Xerox, e s estava disponvel na forma binria. O cdigo-fonte era exclusivo da xerox. Para se alterar um programa necessrio seu cdigo-fonte (como se fosse a receita de um bolo. o cdigo em que encontramos toda a programao que faz um programa funcionar). Richard e seus companheiros de trabalho estavam impotentes diante desse problema. Quando Richard soube que um colega de outra universidade tinha o cdigo fonte para esse driver, procurou-o. Para sua surpresa, o colega se negou a lhe repassar o cdigo-fonte, pois ele havia assinado um acordo de responsabilidade que o impedia, legalmente, de compartilhar essa informao com quem quer

11

Debian Bsico - Desktop Paran

que fosse. Se Richard Stallman quisesse ter acesso ao cdigo fonte ele teria que assinar um acordo igual ao que seu colega assinara. Isso ia contra seus princpios. Muito pouco tempo depois de tudo isso, o MIT desencadeou um processo de reestruturao tecnolgica. Os softwares que j estavam obsoletos foram substitudos. Os novos softwares, apesar de mais sofisticados e fceis de se usar, vieram com acordos iguais quele que seu colega havia assinado, permitindo a ele alterar os programas, mas no os redistribuir. Alm disso, no poderia divulgar o cdigo fonte original. Richard se viu ento num grande impasse: se ele quisesse continuar a trabalhar com informtica, ele teria que assinar o mesmo tipo de acordo que havia feito ele conviver com uma impressora destruidora de pacincia. Ele sentia que no podia assinar esse contrato, mas ao mesmo tempo isso passava a ser tendncia do mercado. Ele era contra tudo isso e no queria mais jogar dessa forma, mas no passava em sua mente deixar a informtica. Foi ento que, no ano de 1984, Richard resolveu no assinar o acordo, sair da MIT e fundar a FREE SOFTWARE FOUNDATION, com a proposta de lutar para que as pessoas pudessem ter acesso a softwares livres, com direito a olhar seu cdigo fonte, modificar e distribuir os programas livremente, promovendo o livre fluxo de ideias na rea de softwares. Atravs da FREE SOFTWARE FOUNDATION foi criado o projeto GNU, que idealizava a criao de um alternativa livre para cada software proprietrio existente. Claro que uma das metas era um sistema operacional completamente livre. Qualquer pessoa teria o direito de usar, modificar e redistribuir esses softwares, desde que fossem garantidos esses mesmos direitos aos softwares derivados. O nome GNU foi escolhido porque, alm do significado original do mamfero Gnu, um acrnimo recursivo de GNU is Not Unix (em portugus Gnu No Unix). Esse sistema operacional deveria ser compatvel com o UNIX, mas no poderia usar nenhuma parte do cdigo fonte do UNIX, j que este era fechado. Assim a partir de 1984, liderados por Richard Stallman, um grupo de programadores que aderiram causa comearam a desenvolver as principais peas de um sistema operacional e aplicativos diversos. Em 1991 o sistema operacional GNU estava quase pronto, mas ainda faltava a sua parte mais importante: o seu ncleo, que na informtica chamado de kernel. Assim Richard e sua equipe concentraram seus esforos na criao do kernel chamado Hurd. Enquanto isso...

NASCE O KERNEL LINUX


Num outro lugar do mundo, um cara chamado Linus Torvalds, finlands, estudante de Cincias da Computao na Universidade de Helsink, deparou-se com o MINIX. Lembram-se que o cdigo fonte do UNIX passou a no ser mais disponibilizado fazendo com que Tanembaum criasse o MINIX para que os acadmicos pudessem estudar sistemas operacionais na prtica? Ento! L estava o MINIX sendo explorado por Linus. S que o MINIX era muito limitado, afinal de contas, fora desenvolvido para fins didticos. Mas foi suficiente para despertar em Linus, em 1991, a ideia de criar um novo sistema operacional mais completo, baseado no UNIX, utilizando as diretrizes POSIX, regras tambm observadas na criao do MINIX. Linus teve a ideia e a divulgou na Usenet, um sistema de comunicao instantnea remota que foi precursor da internet. No fim de
Figura 2: Linus Torvalds
12

Debian Bsico - Desktop Paran

1991 disponibilizou na rede a primeira verso do kernel criado por ele. Linus queria que todos os programadores que quisessem se envolver no projeto, auxiliassem-no a melhorar sua criao. Essa mesma comunidade que o ajudou a fazer com que o kernel crescesse, resolveu homenage-lo dando o nome ao kernel de Linux, que a contrao de Linus (idealizador) e Unix (sistema em que o Linux foi baseado). Mas o Linux ainda era apenas um kernel, e precisava de todo restante dos programas para funcionar como um sistema operacional completo. Por coincidncia, faltava exatamente o que fora produzido no projeto GNU. Mas a juno de tudo no era algo fcil. Para utilizar o Linux, o prprio usurio tinha que encontrar os outros programas do projeto GNU, compil-los e configur-los; talvez por isso, o Linux tenha comeado a ter fama de sistema operacional para tcnicos.

O ENCONTRO DO GNU COM O PINGUIM


O Linux atingiu um nvel de desenvolvimento que nenhum kernel criado pela Free Software Foundation havia alcanado, alm de suportar todas as peas do sistema
Figura 3: O casamento: GNU e Linux

operacional GNU. Foi a que, numa deduo bvia, pensou-se em unir os dois, GNU e Linux. Um completaria o outro, e assim, surgiu um sistema operacional forte, completo e o melhor, com todo seu cdigo aberto! Atualmente, o sistema operacional GNU com o kernel Linux conhecido como GNU/Linux, que como o projeto solicita aos utilizadores que se refiram ao sistema completo, embora a maioria das pessoas se refiram ao sistema apenas como Linux, por uma questo de facilidade.

DEBIAN
Qual a diferena entre um buffet e um prato la carte? No primeiro, voc poder escolher, dentro de todas as opes oferecidas pelo restaurante, o que mais lhe agrada. No segundo, voc diz o nome do prato e este vem pronto com os ingredientes e propores que o restaurante define. Os sistemas operacionais proprietrios e livres funcionam analogamente aos buffets e pratos prontos. Sistemas proprietrios vm prontos, permitindo que voc configure somente aquilo que tem permisso e que insira programas feitos para eles. J os livres permitem que, dentre todos os softwares do projeto GNU ou qualquer outro projeto, voc escolha quais quer ter e como eles devem interagir. O GNU/Linux , ento, o restaurante que fornece uma gama grandssima de opes para que voc escolha qual deseja usar e como eles devem trabalhar juntos. Qualquer pessoa pode criar seu prprio prato. E esses pratos que so as distribuies. O Debian uma distribuio GNU/Linux, j que ele pega o que deseja do projeto GNU, encaixa ao kernel Figura 4: Algumas distribuies

13

Debian Bsico - Desktop Paran

Linux, insere outros softwares criados por ele ou terceiros (alguns programas at proprietrios, como o java) e os deixa prontos para serem utilizados. Outros exemplos de distribuio so Ubuntu, SuSE, Mandriva, etc. Veja na figura 4 logos das principais. O Debian nasceu em 1993, mais precisamente no dia 16 de agosto daquele ano. Seu criador foi Ian Murdock. A ideia de Murdock era criar um sistema operacional que fosse livre, consoante filosofia da comunidade criada por Stallman. No comeo Ian conseguiu a ajuda de alguns hackers e da prpria Free Software Fundation. Eles tinham como preocupao compilar os vrios pacotes do GNU/LINUX, mas seguindo um mtodo que tornava o controle do sistema organizado. Cada pacote (conjunto de arquivos que ganham um rtulo. Ser visto na pgina 56) tinha um mantenedor que era responsvel por resolver problemas de dependncias, instabilidade, novas verses, ou seja, tudo que envolvesse estes pacotes. Alm disso, ferramentas permitiam que a instalao fosse facilitada, sendo criado at um repositrio, que um servidor de pacotes acessvel atravs de um simples comando. Padres de criao de pacotes, documentao de tudo, fases de maturao, tudo isso e mais vrias outras coisas fizeram com que o Debian crescesse e se tornasse uma das distribuies mais completas, maduras, robustas e organizada de todas. Hoje a empresa conta com uma constituio, contrato social e padro para organizao de pacotes. Qualquer um pode contribuir com o projeto, s que seus pacotes devem seguir as regras da comunidade. Murdock, antes de se envolver com o projeto do Debian, trabalhou no filme Toy Story. Como ficou emocionalmente envolvido com os personagens, resolveu dar o nome de um personagem do desenho a cada nova release do Debian. Veja alguns deles: Debian 1.1 Buzz (17 de junho de 1996) Debian 1.2 Rex (12 de dezembro de 1996) Debian 1.3 Boo (05 de junho de 1997) Debian 2.0 Ham (24 de julho de 1998) Debian 2.1 Slink (09 de maro de 1999) Debian 2.2 Potato (15 de agosto de 2000) Debian 3.0 Woody (19 de julho de 2002) Debian 3.1 Sarge (6 de junho de 2005) Debian 4.0 Etch VERSO ESTVEL Debian Lenny VERSO DE TESTE Debian Sid VERSO INSTVEL PARA SEMPRE

ebian vem da contrao do nome de Ian Murdock com o da sua mulher, Debra.

DEBra e IAN Murdock

14

Debian Bsico - Desktop Paran

DISCOS E PARTIES DE DISCO


Antes de comearmos a estudar os comandos para administrao do Debian, precisaremos ver alguns conceitos de informtica necessrios no decorrer deste curso. Iremos abordar esses conceitos primeiramente de uma forma genrica, depois iremos analis-los sob a tica Debian.

O QUE SO PARTIES?
Alguns dispositivos de armazenamento permitem-nos criar divises lgicas de seu espao total. Ao criar parties, aos olhos do sistema operacional, cada uma delas como se fosse um dispositivo de armazenamento diferente. Essa diferenciao permite que: (a) tenhamos mais segurana dos dados armazenados em situaes crticas; (b) mais de um tipo de sistema operacional no mesmo dispositivo fsico; (c) uma otimizao na utilizao do espao disponvel. Existem mais razes, mas essas so as principais.

(a) Segurana da integridade de dados


Ao criar mais de uma partio, poderemos definir uma natureza para cada uma delas. Vejamos uma situao hipottica, a qual sugerimos que adote (inclusive na instalao, no final do curso, iremos utilizar essa configurao): Nome /boot / /home Swap Natureza Partio destinada aos dados de inicializao do sistema. Mesmo existindo uma partio com este fim, ainda ser necessrio alguns arquivos de inicializao dentro do diretrio barra (/). Partio onde ficam os dados essenciais e no essenciais ao funcionamento do sistema bsico. Extremamente necessria para se ter suporte a todos os recursos do computador. Partio destinada apenas ao armazenamento de informaes e documentos pessoais de cada usurio. a rea de troca do sistema operacional. Sempre que a utilizao real da memria principal atingir 60%, os dados armazenados em cache por mais tempo comeam a ser realocados para a swap. Desta forma, os dados continuam alocados em cache para serem utilizados quando requisitados e libera-se a memria principal para novos processos ou processos ativos que necessitem do espao em memria de imediato. Essa diviso bsica e muito utilizada permite que tenhamos mais segurana durante a manipulao dos dados. O computador, em seu estado normal, inicia o sistema operacional a partir de uma imagem do sistema bsico armazenada no /boot. Depois ele carrega outros aplicativos que so importantes para a explorao mxima do potencial do computador. Estes aplicativos ficam no /. Aps a inicializao do sistema bsico, o computador carrega as informaes do usurio que iniciar a sesso, armazenadas dentro do /home. Caso uma dessas parties acabe sendo danificada, as outras mantero-se intactas. Se o /boot for danificado possvel iniciar o computador atravs de um disco de inicializao e restaurar a partio que falta, voltando, assim, a ter acesso a todos os programas, configuraes e arquivos pessoais dos usurios. Caso o / esteja com problema, possvel que voc inicie o computador no modo de segurana e tente consertar o que est de errado. Caso pense-se em apenas reinstalar todo o computador, mas pretenda-se manter os arquivos pessoais dos usurios, basta reinstalar o sistema operacional mantendo o /home. Mais organizao e segurana, com certeza.

15

Debian Bsico - Desktop Paran

(b) Mais de um sistema operacional


A maioria dos sistemas operacionais possuem sistemas de arquivos diferentes entre eles (este assunto ser abordado na pgina 20). No possvel se ter um dispositivo com mais de um sistema de arquivos. Criando parties, temos, virtualmente, vrios dispositivos diferentes. Cada um deles pode ter um sistema operacional. Isso nos permite ter instalado, por exemplo, num mesmo disco rgido, o Windows e o Debian. Para decidir qual ser carregado usamos os chamados boot-loaders. O mais conhecido o GRUB do projeto GNU. Ao instalar o Debian, o GRUB instalado por padro (se voc quiser poder optar por no o instalar). Voc deve conhecer parte dele. Lembra da tela azul que aparece aps o computador ter sido ligado que todos os sistemas operacionais aparecem? Esse o safado.

(c) Otimizao da utilizao do espao disponvel


Cada sistema de arquivos possui um padro de unidade mnima de armazenamento, chamada bloco. Se voc enviar a um bloco alguma arquivo com tamanho inferior a ele, o espao vazio ser perdido. Como existem arquivos de sistema que possuem um desempenho melhor com arquivos grandes e outros com tamanhos pequenos, interessante definir sistemas de arquivos diferentes para parties diferentes, de forma que eles explorem melhor o potencial do hardware (velocidade e real utilizao do disco rgido).

PARTIO PRIMRIA, ESTENDIDA E LGICA


As parties primrias e lgicas tm funes iguais: criar divises em um dispositivo de armazenamento para que o sistema operacional pense se tratar de mais de um dispositivo fsico. A partio estendida j tem um papel diferente. Ela define onde a partio lgica inicia. Para entender isso necessrio que saibamos como a estruturada a MBR. A MBR (Master Boot Record) um local situado no incio de um disco rgido que aloca a tabela de parties e os boot-loaders. Seu tamanho de 512 bytes. Veja na figura 5 como esses bytes so distribudos.

Figura 5: MBR - Master Boot Record

Os 64 bytes referentes a tabela de parties so divididos em quatro partes, tendo 16 bytes cada uma. Dentro desse espao de 16 bytes onde encontramos a diferena entre os tipos de parties. Ele pode conter informaes a respeito de uma partio ou ento o endereo do espao que contm as informaes da prxima partio lgica.
16

Debian Bsico - Desktop Paran

Dentro da MBR Informaes que definem uma partio Dentro da MBR Referncia para a primeira partio lgica Fora da MBR Informaes a respeito de uma partio no primeiro espao de 16 bytes; referncia para a prxima lgica, se existir, nos outros 16 bytes; e 32 bytes finais sem nada (espao perdido mesmo)

Primria Estendida Lgica

Mas o que so essas informaes que definem uma partio? So os dados que definem exatamente onde comea e onde termina uma partio. Esses dados so mostrados na tabela abaixo:

Figura 6: Informaes que definem uma partio

A figura 6 mostra o que cada 16 bytes dentro da MBR armazena. Quando temos uma partio estendida, esses 16 bytes s tero o endereo do espao que contm a primeira partio lgica. Cada espao fora da MBR que tenha informaes sobre uma partio lgica tambm ter 64 bytes, s que ser organizada de uma forma diferente. Os primeiros 16 bytes sero reservados para definir a partio, como mostrado na figura 6. Os outros 16 bytes indicam qual o endereo da nova partio lgica. Os outros 32 bytes no armazenam nada, s existindo para que assuma o mesmo padro da MBR. como se tivssemos uma tabela de parties da MBR de 64 bytes para cada partio lgica.

Propriedades importantes
1. As parties primrias s podem existir dentro da MBR, por isso, o nmero mximo desta partio que podemos ter em um disco rgido quatro. 2. A partio estendida s serve para criar um vnculo entre a MBR e a primeira partio lgica, por isso no enxergamos ela. 3. Cada nova partio lgica deve ser referenciada por uma lgica anterior, sendo que a primeira delas deve ser referenciada pela partio estendida dentro da MBR. 4. A ltima partio lgica encerrar com uma assinatura, para que o sistema saiba que acabaram as parties. 5. No ser possvel, aps criar uma partio estendida, criar uma partio primria. 6. O mximo de parties que se pode criar em um disco rgido dezesseis, sendo que somente quinze so utilizveis, j que uma ser a estendida.
17

Debian Bsico - Desktop Paran

Exemplos de divises de um disco rgido

Com 4 parties primrias:

Figura 7: Quatro parties primrias

Com 3 parties primrias, uma estendida apontado para a primeira lgica de 1:

Figura 8: Trs primrias mais uma lgica

Com 1 partio primria, 1 estendida apontando para a primeira lgica de 3:

Figura 9: Uma primria mais trs lgicas


18

Debian Bsico - Desktop Paran

Esse sistema de mximo de parties primrias, partio estendida e encadeamento de lgicas existe pois, antigamente, os sistemas operacionais s trabalhavam com parties primrias. Quatro parties eram suficientes, j que os discos tinham os incrveis tamanhos de 30MB, 540MB, 730MB, 850MB, alm dos mais sofisticados e de alta capacidade de armazenamento, de 1.28GB! Hoje em dia, com discos de 80GB, 120GB, 160GB, 500GB e outras capacidades maiores, mais parties so necessrias. Para que pudessem ser criadas mais de quatro parties havendo compatibilidade com sistemas antigos, foi necessrio criar um sistema em que as informaes de parties ficassem fora da MBR, j que somente os 64 bytes no eram suficientes para armazenar tantas informaes. O mtodo explicado anteriormente foi a soluo encontrada.

19

Debian Bsico - Desktop Paran

SISTEMAS DE ARQUIVOS
Sistemas de arquivos, ou filesystem, o que chamamos de formatao lgica de um disco. A primeira formatao a fsica, feita pelo fabricante do disco. Ela no ser abordada neste curso. A segunda formatao a lgica, feita pelo sistema operacional, sendo esse o motivo de cada sistema operacional ter suporte a sistemas de arquivos diferentes. Essa formatao tem funo de preparar o disco para ser utilizado pelo sistema. Tambm possui um conjunto de regras que define como os dados sero manipulados, ou seja, armazenados e recuperados. Alguns tipos de sistemas de arquivos possuem recursos a mais do que outros, como por exemplo journaling, tail, etc, alm de blocos de tamanhos diferentes.

BLOCOS
O bloco a menor unidade de armazenamento em um disco. Imagine um banco da Sua. Voc milionrio e possui uma seo s para voc, e dentro dessa seo existem vrias maletas. A poltica do banco no permite que voc entre em sua seo por motivo de segurana. Sempre que voc queira colocar ou retirar algo do banco, voc precisar solicitar uma maleta especfica que esteja dentro da sua seo. Voc tem 50 anis de ouro na maleta A e apenas um de prata na B. Se voc quiser retirar o anel de prata, ter que solicitar a maleta B inteira. Se voc quiser apenas um de ouro, ter que solicitar a maleta A inteira do mesmo jeito. Essa maleta como o bloco dos sistemas de arquivos. O tamanho real de um arquivo no importa, e sim a soma do total de bytes dos blocos que ele usa. E a diferena entre bloco e setor que este criado pela formatao fsica e muito pequeno. Serve como referncia para que a formatao lgica possa definir quantos setores representaro a menor unidade do sistema de arquivos, ou seja, quantos setores representaro um bloco de dados.

or padro, os sistemas de arquivos no misturam dados de arquivos diferentes dentro do mesmo bloco. Se temos um arquivo A que precisa de 2 blocos e meio, a metade do

terceiro no ser usado para armazenamento de um arquivo B. Os dados so armazenados no quarto bloco. Isso por padro, mas existem alguns recursos que possuem blocos especiais que armazenam caldas de arquivos (da tail). Os dados que completam blocos cheios so gravados sequencialmente e os dados finais de todos os arquivos, os restos, so armazenados num bloco especial. Este recurso chama-se tail packing.

JOURNALING
um recurso que registra tudo que o sistema de arquivos faz, permitindo que em caso de queda de energia ou travamento no haja corrompimentos. Quando abrimos um arquivo ou programa, ele carregado na memria. Tudo que fazemos alterado na memria e, somente aps um tempo determinado pelo aplicativo, sistema operacional ou usurio (atravs das opes de salvar, sincronizar, etc), ser feita a alterao dos dados no disco. Essa alterao no gravada sobre os dados anteriores, mas sim em um espao novo no disco. O espao que continha os dados antigos considerado como disponvel, mas continuar com os dados antigos at que o sistema realmente precise dele. Se durante o processo de sincronia de dados entre memria RAM e disco momento esse em que um novo espao no disco
20

Debian Bsico - Desktop Paran

referenciado como local de armazenamento do arquivo houver uma queda de energia ou travamento, o sistema de arquivos perder a ligao com o espao antigo e o espao novo ter somente parte dos dados atualizados. O arquivo estar corrompido. Com o sistema de journaling, antes de realizar qualquer tarefa, o sistema de arquivos a registrar. No caso de haver um problema, como no exemplo anterior, o sistema de arquivos saber o endereo do espao antigo e conseguir recuper-lo. No teremos o espao atualizado, j que esse nunca foi passado completamente da memria RAM para o disco, mas teremos o arquivo no estado anterior, que j alguma coisa (as vezes muita coisa).

PRINCIPAIS DIFERENAS ENTRE OS PRINCIPAIS


Existe uma srie de testes que foram feitos para averiguar as principais caractersticas de cada sistema de arquivos. Os principais sistemas de arquivos no linux so Ext3, ReiserFS e XFS. Aps analisar vrios relatrios podemos concluir o seguinte.

Capacidade de armazenamento
A porcentagem definida pela razo entre blocos utilizveis e total de blocos mostra que, na maioria dos relatrios o ReiserFS e XFS so mais eficazes que o Ext3. Isso quer dizer que o Ext3 possui muitos blocos perdidos para controle de si mesmo, enquanto o sistema dos outros sistemas de arquivos mais inteligente.

Criao, montagem e desmontagem de sistemas de arquivos


Para criao de sistemas de arquivos, o pior sistema de arquivos o Ext3. Em um teste realizado pelo site www.debian-administration.org, para se criar o Ext3 em um HD de 20GB, levou-se 14,7 segundos, enquanto os outros dois levaram menos de 2 segundos. Mas o ReiserFS foi o pio no quesito montagem de dispositivos. E foi feio, j que levou de 5 a 15 vezes (cerca de 2,3 segundos) mais tempo do que os outros dois para executar a tarefa (menos de 0,5 segundo) e cerca de 1 a 3 vezes (0,4 segundo) mais tempo para desmontar que os outros. O XFS foi quase que unnime, porm durante a desmontagem utiliza o dobro de processamento que os outros sistemas de arquivos. O computador utilizado para os testes tinha um processador Intel Celeron 533 com 512MB de RAM. Para criao e montagem, todos exigem quase a mesma coisa do processador, cerca de 60% de sua capacidade para criar e cerca de 40% para montar. Porm, para desmontar, o XFS mostrou-se muito menos econmico juntamente com o Ext3, j que exigiram o dobro do processador (cerca de 40%) que o ReiserFS exigiu (cerca de 20%).

Operaes com arquivos grandes


O ReiserFS o mais lento para criar uma cpia de um arquivo grande de outra partio ou da mesma partio. O Ext3 ficou em segundo e o XFS o que criou as cpias mais rapidamente, mostrando-se ser o melhor sistema de arquivos para ser utilizado com este tipo de arquivos. Na remoo de um arquivo grande, o XFS deu uma lio nos outros sistemas de arquivos, sendo 100 vezes mais rpido que os outros dois, sendo o Ext3 o mais lento na realizao desta atividade. Quanto a utilizao do processador, o ReiserFS faz feio. Nas cpias tudo parecido, mas na remoo, ele exige 50% da capacidade do processador enquanto os outros dois pedem precisam de somente 10% para realizar a mesma tarefa.

21

Debian Bsico - Desktop Paran

Operaes com arquivos pequenos


Os testes mostraram, em sua maioria, que em relao a arquivos pequenos a utilizao do processador e o tempo de execuo de tarefas (cpias e remoes) todos os sistemas de arquivos so parecidos. Apesar disso, o ReiserFS se mostrou um pouco pior que os outros dois. A nica vez que ganhou dos outros foi na velocidade para remoo de arquivos, perdendo ou empatando em todos outros quesitos.

22

Debian Bsico - Desktop Paran

ABSTRAO DE HARDWARE
Sempre que iniciamos o computador, o sistema operacional faz uma varredura procurando todos os dispositivos de hardware disponveis para utilizao. Quando encontrados, cada um deles recebe um nome e criado dentro do diretrio /dev um arquivo especial chamado de n de dispositivo, que nada mais que um espao na memria RAM que ser o local ao qual o hardware enviar e receber dados do sistema e vice-versa. Sempre que um aplicativo precisar acessar alguma informao do hardware, ele s precisar abrir o arquivo especial referente.

NS DE DISPOSITIVOS
Cada n precisar de um driver para funcionar. No Windows, sempre que voc adiciona um dispositivo, necessrio que voc instale o driver que tenha as instrues de funcionamento dele. Aps instalado, aparece no gerenciador de dispositivos um cone pelo qual o administrador consegue fazer as configuraes necessrias. Os aplicativos que precisam dele criam referncias apontando para este representante. No Debian, quase sempre os dispositivos de hardware encontrados j tm suporte do sistema e funcionam sem necessidade de configurao. Quando isto no acontecer, o administrador ter que inserir um mdulo que dar suporte ao dispositivo (o mdulo ensina o sistema a utilizar aquele dispositivo). Se tudo estiver certo, o dispositivo aparecer dentro do diretrio /dev. O comando abaixo ir mostrar todos os ns de dispositivos que o sistema encontrou.
$ls -l /dev brw-rw---- 1 root disk 3, 1 Nov 21 13:27 hda1

Existem quatro tipos de ns de dispositivos. Sempre que executamos o comando ls mostrado anteriormente (comando este que ser abordado na pgina 47), podemos verificar vrias informaes a respeito dos arquivos e diretrios. O primeiro set de configurao (a primeira letra) responsvel por informar qual o tipo de arquivo listado. Veja quais so os arquivos especiais abaixo:

Ns de dispositivos de bloco (b)


So os dispositivos de hardware que trocam informaes em blocos, ou seja, vrios pacotes de dados so trafegados simultaneamente entre o dispositivo e o sistema. Alm disso, estes dispositivos podem ser formatados em blocos, o que permite que o sistema consiga acessar exatamente a informao desejada. Se tivssemos apenas um bloco para armazenamento no HD inteiro, por exemplo, toda vez que precisssemos de alguma informao de dentro dele, todo o bloco teria que ser copiado para a memria. Imagine voc tentando abrir um documento de 100 bytes armazenado em um HD de 160 giga bytes? Se houvesse apenas um bloco de 160GB, todo ele deveria ir para a memria para voc acessar o seu documento. Com os blocos, o sistema pode solicitar a cpia apenas daqueles blocos que so necessrios, ou seja, voc iria praticamente direto aos dados que deseja e s carregaria na memria o que fosse necessrio. Mais rpido e melhor para a memria. Normalmente estes blocos tm 4 kB, podendo variar de acordo com a formatao do disco (varia por causa do sistema de arquivos escolhido e/ou configuraes do administrador).

23

Debian Bsico - Desktop Paran

Ns de dispositivos de caractere (c)


So os dispositivos de hardware que trocam informaes em srie, ou seja, apenas um pacote por vez trafegado entre o dispositivo e o sistema. Alm disso, eles possuem apenas um bloco de dados que muda dinamicamente. Toda alterao enviada ao sistema para que ele possa interpretar a mudana e realizar as atividades necessrias. Por exemplo, o mouse ao ser movido ir enviar os dados das variaes percebidas pelos seus dispositivos de captao de movimento para o arquivo /dev/psaux. O envio feito serialmente, ou seja, um bloco por vez.

Ns de dispositivos de soquete (s)


So um pouco diferentes dos outros ns, j que ele representa um dispositivo fsico, mas no direciona as informaes que chagam a ele diretamente para o representado, mas sim para um processo que gerencia os dados do dispositivo. Os dispositivos de soquete so uma verso dos arquivos FIFO melhorados (tantos que os FIFO j esto em desuso). Eles funcionam como os pipes do shell (a barra vertical, |), que envia o resultado de um comando para outro. Os arquivos de soquete possuem sempre 0 byte, isso porque eles s fazem ligaes entre aplicativos. Quando o administrador configura uma impressora com o protocolo de soquete, todos os trabalhos enviados impressora so, na verdade, enviadas para o soquete dela (o arquivo especial). Todos os dados que entram so, ento, enviados para o gerenciador de trabalhos da impressora, que um programa que roda na prpria impressora ou no servidor de impresso. Ou seja, o ponto de ligao entre processos de aplicativos. Todos os dados que so enviados para este arquivo seguem o mesmo padro do antigo FIFO (First In, First Out Primeiro que Entra, Primeiro que Sai). Os primeiros dados que chegam ao soquete so os primeiros que so enviados para o gerenciador de trabalhos da impressora. Funciona, ento, como uma primeira fila de impresso.

Ns de dispositivos de pipe (p)


Quase igual aos dispositivos de soquete, com a diferena que realizam conexes entre aplicaes que no representam dispositivos. Informaes so enviadas de aplicaes para o arquivo pipe, que as encaminha para entrada de outro aplicao. Mesmo que no tenhamos visto nenhum comando, execute exatamente os comandos abaixo para que possa ter uma visualizao desse tipo de arquivo. 1.Abra a console atravs do caminho Aplicaes/Acessrios/Terminal; 2.Crie um arquivo pipe com o comando abaixo:
mkfifo Arquivo-Pipe <Enter>

3.Agora iremos enviar dados para o arquivo Pipe:


echo Eu quero aparecer em outra aba > Arquivo-Pipe

4.O comando acima enviou a informao Eu quero aparecer em outra aba para o Arquivo-Pipe que a armazenou. Esta frase fica em stand-by at que outro aplicativo permitido requeira as informaes. Abra um novo terminal clicando, no menu do terminal, em Arquivo/Abrir Aba; 5.Nessa nova aba, veja o contedo do arquivo Arquivo-Pipe utilizando o comando abaixo:
cat Arquivo-Pipe

24

Debian Bsico - Desktop Paran

6.A mensagem Eu quero aparecer em outra aba aparecer. Se voc voltar para a primeira aba, perceber que o comando que estava em primeiro plano foi finalizado, j que ele enviou a informao que guardava para um outro comando. Os arquivos pipe tm a mesma funo do redirecionador |, tambm conhecido pelo nome pipe. Veremos vrios redirecionadores na pgina 40.

Pseudo dispositivos
Estes ns aparentam ser ns de dispositivos, mas no necessariamente representam um dispositivo fsico, real. Eles so interessantes para algumas tarefas do sistema operacional. Veja quais so os pseudo dispositivos:

seudo dispositivo um grupo que abrange ns de dispositivos que compartilham uma mesma caracterstica: serem falsos. Existem vrios deles.

/dev/null (dispositivo de caractere) Este arquivo vai receber todos os dados enviados a ele, porm os descartar sem nenhuma sada. como se fosse um buraco negro em que tudo que cai ali dentro se perde para sempre. Se voc configurar uma impressora como local e definir que o n que o referencia o null, todos os trabalhos de impresso no apresentaro erro, j que o arquivo o aceitar, porm no sero impressos, mas sim descartados. Execute o comando abaixo para entender melhor:
fcamargo@amontoado:~$ total 389200 drwx------ 5 fcamargo drwx------ 3 fcamargo drwx------ 7 fcamargo fcamargo@amontoado:~$ fcamargo@amontoado:~$ fcamargo@amontoado:~$ ls -l celepar celepar celepar 41 Dez 23 15:53 Acervo 16 Dez 24 09:25 Backup 4096 Dez 23 15:51 Desktop

ls -l > /dev/null

No exemplo acima, o primeiro comando resulta na listagem dos subdiretrios e arquivos do diretrio corrente. No segundo comando, a sada (a listagem) foi redirecionada da tela para o null, que a recebeu tranquilamente sem apresentar erros, mas depois a ignorou e mandou-a para o alm. Num futuro, quando voc estiver criando um script e usar um comando que normalmente traz um resultado na tela, mas voc no desejar que ela aparea, voc poder direcionar a sada para o null sem interferir na tarefa por ele executado. /dev/random (dispositivo de caractere) Este arquivo, quando solicitado, envia um fluxo de caracteres aleatrios para a sada solicitada. Utilidades aparecem a partir do momento que voc se familiarizar com outras ferramentas do Debian. /dev/zero (dispositivo de caractere) Igual ao random, j que produz um fluxo de caracteres, mas todos os caracteres so o zero. Ideal para zerar trechos conhecidos do hd, como por exemplo a MBR. Voc ver como fazer isso em conjunto do comando dd no curso de Debian Avanado.

25

Debian Bsico - Desktop Paran

NOMEAO DE DISPOSITIVOS
Os arquivos especiais no recebem um nome qualquer de acordo com a criatividade e humor do sistema operacional. Existe um padro, e agora veremos como ele nomeia alguns dos principais dispositivos. Na maioria das vezes teremos um prefixo que identificar qual a interface utilizada pelo dispositivo para se comunicar com a unidade central de processamento. hda hdb hdc hdd hda1 sda sda5 fd0 ttyS0 Dispositivo conectado ao IDE 0 mestre. Dispositivo conectado ao IDE 0 escravo. Dispositivo conectado ao IDE 1 mestre. Dispositivo conectado ao IDE 1 escravo. Primeira partio do dispositivo conectado ao IDE 0 mestre. Dispositivo conectado ao primeiro slot SATA ou a uma porta USB. Quinta partio do dispositivo conectado ao primeiro slot SATA. Drive de disquete. Porta serial 0.

psaux Mouse. video0 N da webcam. wlan0 Primeira placa de rede wireless (sem fio). eth1 Segunda placa de rede wired (com fio).

Vamos ver um exemplo prtico de nomeao dos discos rgidos IDE. Comearemos ento com a seguinte configurao: 1. Disco rgido conectado IDE0 como mestre; 2. Drive DVD conectado IDE1 como mestre; 3. Gravador de DVD conectado IDE1 como escravo. A nomeao fcil e invarivel. Veja como feita:
Prefixo de acordo com a forma de conexo Letra de a a e referente ao slot conectado Nmeros de parties.

As letras seguem a seguinte regra: IDE 0 (primeira) mestre (master) LETRA a IDE 0 (primeira) mestre (master) LETRA b IDE 1 (segunda) escravo (slave) LETRA c IDE 1 (segunda) escravo (slave) LETRA d Agora ficou fcil. Voltando ao exemplo anterior, vejamos como cada dispositivo seria nomeado: 1. Disco rgido conectado IDE0 como mestre = hda; 2. Drive DVD conectado IDE1 como mestre = hdc; 3. Gravador de DVD conectado IDE1 como escravo = hdd. Se existisse um arquivo em determinada partio do disco rgido hda, para que possamos trabalhar
26

Debian Bsico - Desktop Paran

com ele teramos que informar ao sistema exatamente onde ele est. Se ele estiver na segunda partio lgica do disco, ento o endereo ser hda6. Mas por qu?

As parties primrias so nomeadas de 1 a 4, de acordo com a ordem; Se mais de 4 parties forem necessrias, faz-se necessria a criao de parties lgicas Para que exista uma partio lgica, necessrio que exista uma partio estendida

que sempre comeam a ser nomeadas a partir do nmero 5 e vo at o nmero 16;

referenciando a primeira das lgicas. Esta partio assumir um nmero assim como as primrias (de 1 a 4);

Se a partio estendida assumir um nmero de 1 a 3, as parties restantes at 4 sero

inutilizadas. Se tivermos uma partio primria e uma partio lgica: Partio primria Partio lgica impossibilidade de utilizao das parties lgicas. Partio primria Partio primria Partio primria Partio primria 1 2 3 4 1 5

Partio estendida (mesmo que no aparea) 2 Se tivermos quatro parties primrias, no haver espao para a estendida, o que acarretar em

27

Debian Bsico - Desktop Paran

ESTRUTURA DE DIRETRIOS
essencial que, antes de se iniciar o estudo dos comandos e interao com o interpretador de comandos, o estudante tenha pleno domnio sobre a estrutura de diretrios utilizada pelo Debian. Sempre teremos apenas dois gneros de dados em nosso computador: arquivos ou diretrios. Os arquivos podem ser de vrias espcies: arquivo de texto, binrios, links (bastante conhecido como atalho), etc. J os diretrios s podem ser ou diretrios ou links para outros diretrios. Os diretrios existem para criar uma diviso lgica dentro do disco de armazenamento, tornando a alocao dos arquivos muito melhor organizada. preciso que tenhamos um ponto de origem a partir do qual uma rvore de subdiretrios repouse. Este ponto ser a base de todo o sistema. Abstratamente, todos os arquivos e diretrios estaro dentro dele. Podemos comparar o / (barra) ao Meu computador do Windows. O Meu computador representar o sistema inteiro e todos os locais aos quais o usurio tem acesso: disquetes (A://), parties de discos rgidos e drives de CD/DVD (C://, D://, E:// e assim por diante). J no Debian, temos o / (barra diretrio raiz) e dentro dele temos acesso a disquetes (/media/floppy0), parties de discos rgidos (/boot, /home e os outros diretrios do /) e qualquer local que o usurio tenha acesso a partir do seu sistema. Na figura abaixo possvel visualizar o funcionamento da estrutura de diretrios:

Figura 10: Estrutura de diretrios

A estrutura comea com o / e depois vai indo nveis abaixo. Os diretrios etc, dev, lib e media esto um nvel abaixo em relao ao / (primeiro nvel) e no mesmo nvel em relao a eles. Os arquivos fstab, sudoers e o diretrios pendrive esto no mesmo nvel em relao ao / (segundo nvel), mas esto em diretrios diferentes.

28

Debian Bsico - Desktop Paran

ENDEREOS
A estrutura de diretrios muito simples, como foi visto anteriormente, principalmente no modo grfico. Mas quando estivermos utilizando linhas de comando atravs de um terminal virtual (interpretador de comandos), necessrio saber trabalhar com endereos.

Endereos Absolutos
o caminho que deve ser seguido do diretrios raiz (o /) at o diretrio ou arquivo desejado. Sempre que se muda de nvel, coloca-se uma barra para fazer a separao. Usando a figura 10 como referncia, veja alguns endereos absolutos. Diretrio corrente aquele diretrio que o usurio est no momento. Arquivo ou diretrio que se deseja ter o endereo absoluto Arquivo fstab Arquivo sudoers Diretrio pendrive Diretrio dev Diretrio / /etc/ /home/felipe /etc/ /etc/ /home/tiaogalinha/Desktop Diretrio corrente Endereo absoluto /etc/fstab /etc/sudoers /media/pendrive/ /dev/ /

Perceba que o diretrio corrente nada interfere no endereo absoluto.

Endereos Relativos
O endereo absoluto o caminho do / at o arquivo ou diretrio desejado, independente do diretrio corrente. J o endereo relativo o caminho do diretrio corrente ao arquivo ou diretrio desejado. Arquivo ou diretrio que se deseja ter o endereo relativo Arquivo fstab Arquivo sudoers Diretrio pendrive Diretrio dev Diretrio / /etc/ /home/felipe / /etc/ / Diretrio corrente fstab ../../etc/sudoers media/pendrive/ ../dev . Endereo relativo

possvel perceber dois fatos no quadro acima: os endereos relativos, diferente dos absolutos, no comeam com /; e quando o arquivo ou diretrio no est vinculado verticalmente ao diretrio corrente, melhor usar o endereo absoluto.

s dois pontos consecutivos (..) indicam o diretrio de um nvel acima enquanto o ponto simples (.) indica diretrio corrente.

29

Debian Bsico - Desktop Paran

DIRETRIOS DO SISTEMA
Agora que voc j sabe como funciona o mecanismo da estrutura dos diretrios, vamos ver a forma como o Debian organiza seus arquivos. Atravs do comando mostrado abaixo, possvel listar os diretrios visveis do diretrio raiz.

fcamargo@amontoado:~$ total 41 drwxr-xr-x 2 root drwxr-xr-x 5 root drwxr-xr-x 11 root drwxr-xr-x 103 root drwxr-xr-x 8 root drwxr-xr-x 14 root drwxr-xr-x 12 root drwxr-xr-x 2 root dr-xr-xr-x 118 root drwxr-xr-x 17 root drwxr-xr-x 2 root drwxrwxrwt 16 root drwxr-xr-x 11 root drwxr-xr-x 14 root

ls -l / root root root root root root root root root root root root root root 4096 1024 3720 8192 95 4096 139 6 0 4096 4096 4096 109 140 Nov Nov Dez Dez Nov Nov Nov Ago Nov Nov Nov Dez Nov Nov 27 18 2 2 25 27 21 5 21 26 27 2 17 17 06:41 11:44 06:45 08:12 09:01 06:40 13:39 13:17 11:27 17:01 06:41 08:34 10:12 10:13 bin boot dev etc home lib media mnt proc root sbin tmp usr var

/boot
Possui a imagem do sistema bsico do kernel e arquivos importantes para inicializao do sistema. Esta imagem o sistema bsico que vai ser carregado na memria principal quando o computador for inicializado.

/dev
Todos os arquivos especiais ficam dentro deste diretrio. Eles no ocupam espao no disco rgido, j que tm a funo apenas de criar uma conexo entre os aplicativos e os componentes de hardware na memria RAM. Alm disso, o arquivo binrio makedev, responsvel por criar os arquivos especiais tambm alocado dentro do /dev.

/etc
o centro nervoso do Debian. Possui quase todos os arquivos de configurao de tudo. Todos os arquivos que ali esto devem ser de texto. Deve-se evitar alocar arquivos binrios dentro deste diretrio.

/home
Todos as configuraes pessoais dos usurios so gravadas dentro de uma pasta pessoal que ganha o seu nome e armazenada dentro do diretrio /home. Alm disso, os arquivos pessoais dos usurios tambm so armazenadas dentro de seus respectivos diretrios.

30

Debian Bsico - Desktop Paran

/lib
Possui as bibliotecas necessrias para a inicializao dos servios, mdulos e aplicativos aps o carregamento do sistema bsico da imagem do kernel que fica dentro do /boot.

/media
o diretrio que contm subdiretrios que servem de pontos de montagem de dispositivos. Veremos montagem de dispositivos na pgina 86). Sugere-se que dentro do /media tenha-se apenas pontos de montagem permanentes, como o drive de cd, dvd, compartilhamentos, disquete, etc.

/mnt
um diretrio destinado a montagem de dispositivos temporariamente. Caso deseje-se montar um dispositivo permanentemente, recomendado utilizar o /media.

/root
Diretrio pessoal do superusurio. Ele no fica dentro do /home para evidenciar que o diretrio do superusurio e para no caso do sistema estar crtico e no for possvel montar as outras parties, ser possvel acessar mesmo assim os arquivos pessoais do superusurio, j que ele fica dentro da mesma partio do sistema. como o capito que no abandona o navio.

/sbin
Os arquivos binrios essenciais para o funcionamento do sistema ficam dentro deste diretrio. Normalmente esses binrios no podem ser executados pelos usurios sem privilgios de superusurio.

/bin
Comandos essenciais para o sistema que esto disponveis para todos os usurios.

/tmp
Qualquer arquivo temporrio poder ser armazenado dentro deste diretrio. Aplicativos tambm o usam sem voc saber. Toda vez que o computador reiniciado o contedo deste diretrio apagado.

/usr
Contrao de Unix ShaRe. o diretrio que possui o maior volume de dados. A ideia deste diretrio criar um local em que as aplicaes no essenciais para o sistema fiquem a disposio de todos os usurios, mas somente com permisso de leitura. Um aplicativo alocado aqui pode ser acessado com suas respectivas bibliotecas e arquivos de configurao, mas qualquer coisa que o usurio crie e modifique ficar dentro da sua pasta pessoal.

31

Debian Bsico - Desktop Paran

Subdiretrios /usr/bin /usr/sbin

Descrio Contm os aplicativos destinados aos usurios. No so essenciais ao sistema. Contm os aplicativos do sistema que no so essenciais para o seu funcionamento. Normalmente servem para explorar melhor o potencial do computador. Contm as bibliotecas utilizadas pelos aplicativos alocados no /usr/bin e /usr/sbin. Dados que sempre sero instalados, independente da arquitetura para qual o pacote foi criado. Documentao,plugins, configuraes bsicas, pginas de manuais, dicionrios e imagens de cones so alguns exemplos.

/usr/lib /usr/share

/var
Um bom sistema operacional precisa de um local em que dados variveis possam ser criados, modificados e excludos dinamicamente por processos . O /var tem essa funo. Vejamos alguns dos seus principais subdiretrios: Subdiretrios /var/cache /var/log Descrio Alguns aplicativos precisam de um diretrio para armazenar alguns dados que utilizam sempre, tornando a reutilizao desses dados mais rpida. Existem alguns daemons (gerenciadores de servios) que criam entradas de log em arquivos para que o administrador possa saber o que est acontecendo no computador. Estes registros ficam dentro deste diretrio. Possui filas de dados para aplicativos. O CUPS envia os trabalhos de impresso para o /var/spool/cups/tmp. Semelhante ao /tmp, porm os dados de dentro dele no sero apagados aps a reinicializao do sistema. Alguns aplicativos precisam armazenar dados temporariamente, mas exigem que para apag-los seja enviada uma ordem para isso.

/var/spool /var/tmp

32

Debian Bsico - Desktop Paran

EXERCCIOS DE FIXAO (PARTE 1)


1.A base do Debian (GNU/Linux) possui influncias de qual sistema operacional? a)Minix b)Windows c)Unix d)Mac OS 2.Qual era a proposta da Free Software Foundation? 3.GNU e Linux so a mesma coisa? Se no, defina-os. 4.Qual a diferena entre uma partio lgica e uma estendida? 5.Faa a associao das colunas: (a) /boot (I) Arquivos e diretrios essenciais para o sistema bsico e quase todos os outros arquivos e diretrios de aplicativos. rea dentro do disco destinada ao armazenamento de dados da memria por esgotamento da mesma.

(b) /

(II)

(c) /home

(III) Local padro de alocamento de diretrios de todos os usurios, exceto do root e de usurios do sistema, com seus respectivos arquivos e configuraes pessoais. (IV) Imagem do sistema bsico.

(d) swap

Resposta: a = ___ , b = ___ , c = ___ , d = ___ 6.Assinale com um V as proposies verdadeiras e com um F as proposies falsas: ( ) A MBR no pode ser alterada, j que se trata de uma memria ROM; ( ) possvel se ter uma partio lgica sem uma estendida; ( ) Dentro da MBR podem ser armazenadas informaes de at 16 parties; ( ) Aps a criao de uma partio lgica, no possvel criar uma partio primria; 7.Qual a menor unidade de armazenamento que temos em um disco? 8.Indique qual o tipo de arquivo criado pelo Debian para se comunicar com o: a)Mouse b)Disco Rgido c)Memria Ram 9.Escreva o nome atribudo pelo Debian a: a)3 partio lgica de um disco conectado IDE 0 configurado como slave b)1 pendrive conectado a um computador com um disco IDE c)2 pendrive conectado a um computador com um disco SATA d)Drive de disquete de um computador com dois discos SATA e um IDE 10. Qual o diretrio que contm os pontos de montagem, por padro, do drive de cd e pendrive? 11. O que, em um comando, caracteriza um endereo absoluto? 12. Qual foi a inteno ao se criar o diretrio /usr ?

33

Debian Bsico - Desktop Paran

INICIAO
Antes de iniciarmos a utilizao efetiva do interpretador de comandos, devemos ter algumas noes bsicas bem claras. Mas ainda, antes disso, importante que o estudante saiba onde encontrar informaes a respeito de comandos e funcionamento do sistema operacional, j que nem sempre encontrar suas dvidas sanadas por apostilas, manuais e cursos. Tudo isso ser visto neste captulo.

COMO OBTER AJUDA?


Internet
Alguns sites so muito bons para se procurar informaes. Visite-os antes, durante e depois de apareceram as dvidas:
Site oficial do Debian (http://www.debian.org); Guia foca linux - Bsico Intermedirio Avanado (http://focalinux.cipsga.org.br/gol.html); Vrios tutoriais em ingls sobre linux (http://www.howtoforge.com/);

Frum
Em alguns casos, a experincia de outras pessoas o melhor caminho para se encontrar uma soluo. Esses links levam a fruns interessantes a respeito do Debian:
http://www.forumdebian.com.br http://wiki.forumdebian.com.br http://ubuntuforum-br.org

Manuais
Quase todos os comandos e arquivos de configurao possuem manuais. Para acess-los, basta digitar man antes deles no interpretador de comandos.
fcamargo@amontoado:~$ man interfaces ( um arquivo) fcamargo@amontoado:~$ man ifconfig ( um comando)

Para sair dos manuais pressione a tecla <q> do teclado. Q de quit, sair em ingls.

TERMINAIS
Para poder entregar dados para que a unidade central do computador possa fazer os devidos processamentos, necessrio que voc interaja com o sistema operacional. Os terminais permitem que essa conexo seja feita. Vejamos agora as principais formas de se fazer isso.

Terminal virtual
o interpretador de comandos que independe de modo grfico. Para que possa ser acessado e ser iniciada uma sesso com um usurio vlido, o usurio deve pressionar simultaneamente as teclas <CTRL>+<ALT>+<F[1 a 6]> se estiver no modo grfico ou ento somente <ALT> + <F[1 a 6]>. Qualquer aplicativo que precise de suporte do servidor grfico no funcionar neste terminal. O

34

Debian Bsico - Desktop Paran

interessante dele que se o modo grfico travar, o administrador poder fazer seu diagnostico e corrigir eventuais problemas atravs de outro acesso ao sistema operacional.

Terminal emulado
uma emulao do terminal virtual. Ele inciado a partir do modo grfico. A diferena que no emulado possvel alterar o perfil da tela (cores, transparncia, fundo de tela, etc), mas caso o modo grfico trave, o terminal emulado tambm travar. Para acess-lo v em:

Aplicaes/Acessrios/Terminal

Modo grfico
Por fim, o modo grfico outra forma de interao. Com ele, aps iniciar uma sesso, o usurio contar com uma interface grfica e o auxlio do mouse em suas atividades. O problema que o modo grfico nem sempre disponibiliza uma forma de se acessar ou alterar alguns arquivos e locais que administradores precisam configurar.

USURIOS E GRUPOS
O Debian um sistema multiusurio. Isso quer dizer que vrios usurios podem utilizar o mesmo sistema ao mesmo tempo. Mas a voc vem e me diz que isso impossvel, j que s existem conectores para um mouse e um teclado. Quer dizer que se dois usurios quiserem utilizar o mesmo sistema, cada um ter de usar uma metade do teclado e somente um boto do mouse? Calma filha. Utilizam-se terminais virtuais. Pode-ser ter vrios usurios conectados em terminais diferentes sendo utilizados um de cada vez atravs do mesmo conjunto de teclado e monitor; ou ento usurios sendo manipulados remotamente por uma ou mais pessoas. Para que haja uma organizao das sesses iniciadas, so criados os usurios, que podem ser os de sistema (utilizados somente pelo sistema operacional) e os usurios normais: o joao, a maria, etc. Cada usurio ter locais dentro do computador para armazenar arquivos pessoais e informaes referentes s suas preferncias. como se fosse o Documents and Settings do Windows. No linux, o diretrio que contm as pastas pessoais o /home. Se eu me logo como macale, qualquer arquivo que eu gravar em minha pasta pessoal ou Desktop, alteraes no GNOME (como temas e papis de parede), variveis de ambiente do interpretador de comandos (como definio de proxy, shell padro do usurio e path), ficam dentro da sua respectiva pasta dentro do /home/macale. Alm disso, processos (programas carregados na memria) so gerenciados atravs de uma srie de identificaes. Dentre elas, o proprietrio e grupo de cada instncia do processo. Usurios e grupos servem, ento, para que seja possvel um bom funcionamento das permisses, gerenciamento de instncias de processos e armazenamento de configuraes pessoais.

Superusurio (root)
Para que o sistema fique mais seguro, os sistemas baseados no GNU/Linux possuem um usurio administrador que o nico que tem plenos poderes sobre o sistema. Sempre que o administrador precisar fazer alguma configurao, instalao, ou qualquer tarefa de gerenciamento do sistema, dever estar logado como superusurio, caso contrrio esbarr em proibies devido a falta de permisses. O nome que dado ao superusurio root.
35

Debian Bsico - Desktop Paran

Usurio normal
So todos usurios que no sejam o superusurio. Eles, por padro, s tem permisso de realizar tarefas nos locais e processos que so proprietrios. Isso faz com que um usurio no interfira no trabalho do outro. Possuem seus arquivos e configuraes alocados dentro de suas pastas pessoais, que por sua vez ficam no endereo /home.

A
Grupos

pasta pessoal do superusurio a nica que no fica dentro do /home. Fica dentro do prprio diretrio raiz. Seu endereo /root.

Grupos so obrigatrios nos sistemas baseados no GNU/Linux. Eles que permitem que usurios com privilgios iguais compartilhem as mesmas permisses de uma forma mais fcil. Se existirem 1000 usurios numa rede, mas somente 10 podem acessar um diretrio chamado CAIXA PRETA, deve-se criar um grupo com tal permisso e inserir essas 10 pessoas ao grupo. As outras 990 pessoas sero barradas.

Iniciando/finalizando uma sesso


Para iniciar uma sesso com um usurio qualquer necessrio que se informe o nome do usurio e a sua respectiva senha. Se as duas chaves estiverem certas, a pessoa ter acesso a todos os locais permitidos ao usurio logado, e o sistema carregar todas as suas configuraes feitas anteriormente. A sesso pode ser iniciada em qualquer interface mostrada anteriormente. Vejamos como iniciar a sesso atravs dos terminais virtuais.
Debian Gnu Linux 5.0 amontoado tty1 amontoado login:

A tela acima acessvel, caso o usurio esteja no modo grfico, atravs do comando <CTRL><ALT><F[1 a 6]>, ou ento escolhendo a opo SINGLE MODE no grub. Ser necessrio inserir primeiramente o nome do usurio e depois a senha.
Debian Gnu Linux 5.0 amontoado tty1 amontoado login: fcamargo password: <Digite a senha Normalmente.

Os

asteriscos

no

aparecem para aumentar a segurana>


Last login: Thu Jan 29 11:00:00 BRST 2009 on tty5 Linux amontoado 2.6.26-1-686 #1 SMP Mon Dec 15 18:15:07 UTC 2008 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribuition terms of each program are described in the individual files in /unix/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to extent permitted by aplicable law. fcamargo@amontoado:~$

A
36

o iniciar um terminal emulado, a sesso ser iniciada automaticamente com o usurio que entrou no modo grfico, sem necessidade de digitar novamente a senha.

Debian Bsico - Desktop Paran

ENTENDENDO O TERMINAL
Sempre que voc logar no BASH, um dos terminais mais utilizados pelos usurios Linux, uma linha de comando fica disponvel para que o usurio digite os comandos. Entenda as informaes que aparecem nessa linha: <nome_do_usurio>@<nome_do_computador>:<diretrio_corrente>[caractere_de_status] Ex: fcamargo@amontoado:/tmp/$ O caractere cifro ($) indica que o usurio logado no o superusrio. Isso obvio, mas com o passar do tempo voc notar que esse caractere mais fcil de se visualizar que o nome do usurio. Para o usurio root, o nome do usurio e o @ no aparecem, e o caractere de status muda para o jogo da velha. Ex: amontoado:/etc/#

Recursos do terminal
Comandos CTRL+C CTRL+Z CTRL+L CTRL+D CTRL+U CTRL+Y Resultado Termina a execuo de um programa que esteja sendo executado em 1 plano. Pra (pausa) a execuo de um programa que esteja sendo executado em 1 plano. Limpa a tela e mantm o comando escrito na linha de comando. Sai do sistema (mesma coisa que digitar logout). Apaga (similar ao recurso RECORTAR) tudo que estiver entre o cursor do teclado e o incio da linha de comando. Insere o trecho recortado com o CTRL+U a partir de onde o cursos estiver.

TAB (Completando automaticamente)


A tecla <TAB> do teclado permite que o usurio do BASH pea para que ele complete um comando ou um endereo automaticamente, de acordo com as possibilidades existentes. Por exemplo, se
# if <TAB> <TAB> if ifconfig ifdown ifup # ifc <TAB> Ser automaticamente completado para # ifconfig

A mesma coisa acontece com o os endereos.


# cd /m <TAB> <TAB> media/ mnt/ # cd /me <TAB> Ser automaticamente completado para # cd /media/

COMANDOS PARA INFORMAES SOBRE SESSES


who (quem?)
Com o comando who possvel ver todos os usurios que esto conectados ao sistema (usurios normais e superusurio, no usurios do sistema, como daemon ou games).

37

Debian Bsico - Desktop Paran

fcamargo@amontoado:~$ who root tty2 2009-01-29 fcamargo tty7 2009-01-27 fcamargo pts/0 2009-01-29 fcamargo pts/1 2009-01-29

11:00 09:56 (:0) 15:40 (:0.0) 15:46 (10.15.15.15)

Como pode-se observar, os dados apresentados so: [usurio_conectado] [terminal] [data e hora do incio da conexo] [interface intermediria] A interface intermediria aquele que fica entre o sistema operacional e a interface em questo. Se o usurio se loga no modo grfico, este modo faz uma ponte entre o usurio e um terminal virtual. Como o primeiro modo grfico representado por ( : 0 ), ento na interface intermediria teremos essa representao. Caso a conexo seja remota, o terminal utilizado sempre ser pts/n (onde o n o prximo nmero disponvel), e o intermedirio ser o IP ou HOSTNAME (nome) do computador remoto. No caso de um terminal emulado, este tambm utilizar o formato pts/n, porm a interface intermediria ser um termo composto pela representao do modo grfico mais .0.

e um usurio se logar no modo grfico, travar a tela e um novo usurio se logar, este novo modo grfico ganhar a representao ( : 20 ) e se conectar ao terminal tty8.

who am i (quem sou eu?)


Este comando mostra o nome do usurio proprietrio do terminal. Se existirem 5 abas abertas em um terminal emulado, com este comando voc sabe exatamente qual o usurio dono do terminal em que o comando foi executado e as demais informaes vistas anteriomente.
fcamargo@amontoado:~$ who am i fcamargo pts/0 2009-01-29 15:40 (:0.0)

CORINGAS
Existem alguns caracteres que servem como os famosos coringas do baralho. Eles representam muitos outros caracteres. Alguns coringas representam todos caracteres, outros restringem-se a grupos especficos. Eles fazem com que uma tarefa que envolvesse vrios arquivos e/ou diretrios acabe se tornando muito mais fcil e rpida.

Casas
Cada caractere ocupa uma casa. Entende-se como caractere qualquer um dos smbolos presentes nas tabelas de caracteres ASCII ou UTF. [4 casas] [9 casas] [13 casas] [28 casas] Eita Meu Saci! Thunder cats! O Roger come como um cavalo.

* (tudo)
Este caractere representa todos os caracteres, independente do nmero de casas. *.odt Representa todos os arquivos terminados em .odt.

38

Debian Bsico - Desktop Paran

Ex: Como deixar de ser feio.odt CPPC.odt Co* Representa tudo que comea com Co. Ex: Comanda.odg Como deixar de ser feio.odt Co*.odt Representa tudo que comea com Co e termina com .odt. Ex: Como deixar de ser feio.odt

? (um caractere)
quase igual ao asterisco (*), porm em vez de aceitar ilimitados caracteres no lugar do coringa, ter um nmero fixo de casas. O nmero de casas vai ser igual ao nmero de interrogaes que se colocar. B*o Representa todos os arquivos que comeam com B e terminam em o. Ex: Bati no Robzila com um ourio Beio B??o Representa todos os arquivos que comeam com B e terminam em o, que possuem apenas duas casas entre os dois critrios. Ex: Beio [2 casas entre B e o]

[ ] (definindo o caractere)
Esta a forma mais precisa de coringa, pois o usurio poder definir exatamente quais caracteres devero ser usados como critrios. Cada duplo colchete, independente do nmero de termos que contiver dentro deles, representaro uma casa (exceto para o caso dos colchetes). [15adB] Representa todos os caracteres que esto dentro das chaves. [a-n] Representa os caracteres que estiverem entre a e n (somente letras minsculas). [a-fh] Representa os caracteres que estiverem entre a e f (somente letras minsculas) mais a letra h. [a-zA-C] Representa todos as letras minsculas mais as letras maisculas entre A e C. {oi,oe}[14-6] Representa arquivos que tenham nas duas primeiras casas a palavra exata oi ou oe e na terceira casa qualquer nmero entre o 4 e 6 mais o 1.

s chaves servem para que os critrios sejam palavras inteiras (no caracter por caracter) e devem substituir os colchetes, no ficar dentro deles. [HD][HD] poder

retornar ou HH ou HD ou DH ou DD. {HD} retornar somente HD.

RECURSIVIDADE
Este termo deve ficar bem claro, j que frequentemente um usurio ou administrador ter que utilizlo. Vocs cansaro de usar o -R. Veja o esquema abaixo para entender a ideia da recursividade. Quando voc ler isto pela segunda vez, a recursividade ter acabado. Se for a primeira vez, leia o pargrafo abaixo. Se este for o ltimo pargrafo, apague-o e v para o pargrafo acima, caso contrrio, v para o prximo pargrafo. Se este for o ltimo pargrafo, apague-o e v para o pargrafo acima, caso contrrio, v para o prximo pargrafo. Se este for o ltimo pargrafo, apague-o e v para o pargrafo acima, caso contrrio, v para o prximo pargrafo.

39

Debian Bsico - Desktop Paran

A recursividade atribuda a um comando faz com que este comando seja executado sobre os arquivos e subdiretrios do ltimo nvel, depois nos arquivos e subdiretrios de um nvel acima e assim por diante, at chegar a um diretrio final que acaba com a recursividade. Voc entender ele melhor quando comearmos a utilizar alguns comandos.

REDIRECIONADORES
Programas so compilaes de ordens bem definidas que possuem objetivos. Ento dados so recebidos, processados pelo processador sob os comandos dos programas e um resultado surge. Podemos dividir este processo em trs etapas: 1. Entrada de dados. Isto se d atravs do que chamamos Entrada de um comando; 2. Processamento e gerao de um resultado, que fica registrado na memria principal aguardando uma indicao de o qu fazer com os dados; 3. Sada dos dados. Isto se d atravs do que chamamos Sada de um comando. Os comandos possuem entradas e sadas definidas, que chamamos de entrada e sada Padro, mas o usurio poder a qualquer momento alterar a forma de coleta e entraga de dados de um comando. Isso feito atravs dos redirecionadores.

>
Altera a sada de um comando. Iremos usar um exemplo muito simples para que vocs possam entend-lo. Se dermos um echo em um bash qualquer, a mensagem digitada ser mostrada dentro do bash em que o comando rodou (o comando echo ser visto na pgina 78). Este o padro, a sada padro do comando. Mas podemos fazer com que, em vez de sair no bash corrente, ele saia em outro bash. Vejamos o exemplo a seguir.
blanka@amontoado:~$ echo Bom dia estrela do planeta Terra! Bom dia estrela do planeta Terra!

Agora iremos abrir uma nova aba utilizando as teclas de atalho <Ctrl>+<Shift>+<t>. Nesta aba, teremos que descobrir qual o nome da sua interface.
blanka@amontoado:~$ who am i fcamargo pts/1 2009-03-10 15:50 (:0.0)

Agora iremos voltar para o outro bash eredirecionar a sada para o /dev/pts/1.
blanka@amontoado:~$ echo Bom dia estrela do planeta Terra! > /dev/pts/1 blanka@amontoado:~$

Desta vez no apareceu nenhum resultado. Agora v at o terminal /dev/pts/1 e veja o resultado. Quando um arquivo usado como sada e usa-se este redirecionar, se o arquivo no existir ser criado automaticamente e se o arquivo existir ser sobrescrito, tendo como contedo o resultado do comando executado antes do >.
bozo@amontoado:~$ ls / > eita.txt bozo@amontoado:~$ cat eita.txt

40

Debian Bsico - Desktop Paran

bin boot cdrom Curso ... (alm dos outros diretrios)

>>
Igual ao anterior, porm, quando usado um arquivo como sada, ele no descarta o arquivo existente, e sim adiciona as novas informaes ao fim do arquivo.
bozo@amontoado:~$ bozo@amontoado:~$ Carro bozo@amontoado:~$ bozo@amontoado:~$ Carro FIM echo "Carro" > O-que-torna-o-Macauli-bonito cat O-que-torna-o-Macauli-bonito echo FIM >> O-que-torna-o-Macauli-bonito cat O-que-torna-o-Macauli-bonito

<<
Finaliza a execuo de um comando no momento que um critrio seja atendido. Veja o exemplo:
amontoado:/home/fcamargo# cat << FIM? > ser <Enter> > que <Enter> > isto <Enter> > chegar <Enter> > ao <Enter> > FIM? <Enter> ser que isto chegar ao amontoado:/home/fcamargo#

No exemplo acima podemos observar que tudo que est aps o sinal de maior est sendo digitado, e aps o <Enter>, uma nova entrada criada. Quando o termo do critrio digitado, o comando finalizado e tudo que foi digitado passa para o cat, que mostra todas as entradas, exceto aquela que serviu de critrio.
amontoado:/Curso# cat > Baralho << FIM > Oi > meu > amiguinho > FIM amontoado:/Curso# cat Baralho Oi meu amiguinho amontoado:/Curso#

Acima podemos ver que primeiro temos o critrio FIM, depois temos a criao do arquivo Baralho e o a lista criada com todos os resultados, exceto o termo FIM enviado para o comando cat, que visualiza, s que em vez de mostrar na tela, envia a sada para o arquivo criado Baralho.

41

Debian Bsico - Desktop Paran

2>
um filtro que deixa a tela limpa de erros. Ele redireciona as mensagens de erro para um novo arquivo de texto. Se j existir outro arquivo, no mesmo diretrio, com o mesmo nome, ele ir sobrescrev-lo.
amontoado:/Curso# cat cat: Petinho: Arquivo amontoado:/Curso# cat amontoado:/Curso# cat cat: Petinho: Arquivo Petinho ou diretrio no encontrado Petinho 2> Soh-Erro.txt Soh-Erro.txt ou diretrio no encontrado

2>>
Tem a mesma finalidade do 2>, mas em vez de criar um arquivo novo, ele ir adicionar as novas linhas ao fim do documento especificado.
amontoado:/Curso# cat cat: Petinho: Arquivo amontoado:/Curso# cat cat: Petinho: Arquivo amontoado:/Curso# cat amontoado:/Curso# cat cat: Petinho: Arquivo cat: Petinho: Arquivo Soh-Erro.txt ou diretrio no encontrado Petinho ou diretrio no encontrado Petinho 2>> Soh-Erro.txt Soh-Erro.txt ou diretrio no encontrado ou diretrio no encontrado

| (pipe)
O pipe tem a funo de direcionar a sada de um comando para a entrada de um outro. Como os estudantes tm dificuldade em entender este comando e ainda no estudamos realmente nenhum comando, iremos usar um exemplo que no possui nenhuma relao com o linux. Temos os seguintes comando no nosso bash (isto fictcio, tendo apenas fins didticos): Comando safadinho Descrio Crie uma lista com todas as namoradas que o Chicken Little j teve. Essa lista deve trazer em linhas: (a) o nome delas; (b) suas habilidades. Sintaxe: safadinho <Enter> Mostre apenas as linhas que contenham o que for escrito aps o comando. Sintaxe: garimpe <termo-a-ser-pesquisado> <entrada> A entrada pode ser um arquivo ou o resultado de um outro comando.

garimpe

Vejamos ento o que acontece quando executamos o comando safadinho:


safadinho <Enter> Nome burns fellipa joze-eduarda robseia Habilidades espremer laranja com as temporas;ser irritante dana do ventre;engraadinha olhar penetrante;gosta de jogos e apostas humor diferenciado;bale medieval

O resultado acima foi mostrado no formato de lista. Podemos pegar esta lista, que a sada do comando safadinho (j que o resultado dele), e encaminh-lo para o comando garimpe, para que ele possa filtrar a lista, mostrando na tela apenas as linhas que contenham o termo pedido. No necessrio informar nada de onde o comando garimpe deve pegar os dados para fazer a filtragem, j que o prprio pipe indica isso.
42

Debian Bsico - Desktop Paran

Sada padro

Pipe alterando a sada

Vamos ler o esquema acima: execute o comando safadinho e o seu resultado, em vez de ser mostrado na tela, dever ser encaminhado para o comando garimpe, que ir procurar linhas que contenham o termo ventre. Veja como ficaria se estivssemos trabalhando no bash:
safadinho | garimpe ventre <Enter> fellipa dana do ventre;engraadinha

Lembre-se disso e ser meste em pipe: o pipe serve como um conector, ligando a sada de um comando com a entrada de outro.

tee
O resultado de um comando que precede o tee enviado para um arquivo de texto e para a sua sada padro ao mesmo tempo. Deve ser usado juntamente com o pipe. Vamos usar o mesmo exemplo do >:
bozo@amontoado:~$ ls / | tee eita.txt bin boot cdrom Curso ... (alm dos outros diretrios) bozo@amontoado:~$ cat eita.txt bin boot cdrom Curso ... (alm dos outros diretrios)

Perceba que no seria necessrio visualizar o arquivo criado. S o tee j faz tudo: mostra e grava no arquivo. Estamos usando o cat somente para confirmar se ele fez seu trabalho direito.

43

Debian Bsico - Desktop Paran

VIM
Quando o administrador estiver gerenciando o sistema atravs de um interpretador de comandos, precisar ter domnio de pelo menos um editor de texto. Voc poder usar at o Gedit (bloco de notas do Debian) se quiser, mas imprescindvel que ao menos um editor feito para rodar em um terminal virtual seja dominado, j que nem sempre o servidor grfico estar presente. O vim o editor de texto mais utilizado pelos administradores de sistemas Debian, por isso ele ser abordado neste captulo.

CRIANDO UM ARQUIVO
Para criar um arquivo com o vim fcil, basta utilizar a seguinte sintaxe: vim {endereo}<nome.do.arquivo> Abaixo um exemplo do arquivo de texto robzila dentro do diretrio pessoal do usurio feio.
$vim /home/feio/robzilla <ENTER>

EDITANDO UM ARQUIVO EXISTENTE


O processo igual ao anterior, porm, em vez de darmos um nome para o arquivo, iremos colocar o nome do arquivo que desejamos alterar.
$vim /etc/hosts <ENTER>

nico detalhe que diferencia a criao e edio de arquivos com o vim se o arquivo j existe ou no. Se o nome dado j existir, ele ser aberto para edio, se no existir,

um novo arquivo se abrir.

MODOS DO VIM
Existem trs tipos de modos possveis de se trabalhar no vim: Insero de texto Edio de texto Linha de comando

Insero de texto
Rodap Tecla de atalho Detalhes Rodap: -- INSERT -Permite que o usurio crie, modifique ou apague dados sempre aumentando ou diminuindo o tamanho total do texto. Se existir a linha abaixo: 2111 bom 1112 e voc inserir dia com o <Insert>, a linha ficar 2111 bom dia 1112 Rodap: -- REPLACE - igual ao INSERT com a diferena que manter o tamanho original do texto. Isso porque qualquer novo dado inserido sobrescrever o que j existe. O mesmo procedimento feito antes, mas com o REPLACE, resultar no seguinte: 2111 bom 1112 2111 bom dia2 INSERO DE <Insert> para TEXTO esquerda do cursor NORMAL <i> - para esquerda do cursor <a> - para direita do cursor INSERO DE <Insert Insert> TEXTO <R> SOBRESCREVENDO

44

Debian Bsico - Desktop Paran

Edio de texto
Funes Tecla de atalho Detalhes Rodap: (nada) Independente do modo que voc estiver, ao pressionar a tecla <Esc> voc iniciar o modo de edio. Rodap: n line(s) yanked Ir copiar uma ou mais linhas inteiras para a rea de transferncia, esperando que o usurio indique, atravs do posicionamento do cursor e pressionamento da tecla <p>, onde dever ser criada a cpia no documento. Entrar no modo <Esc> de edio COPIAR <yy> Copia a linha em que o cursor est. <y>n<y> Copia n linhas a partir de onde o cursor estiver para baixo.

RECORTAR

<yy> Recorta a linha Rodap: n line(s) less em que o cursor est. Idem ao copiar, s que no manter a linha que deu origem <y>n<y> Recorta n cpia. linhas a partir de onde o cursor estiver para baixo. <p> Rodap: n more line(s) Ir inserir no texto a cpia criada ou pelo Copiar ou pelo Recortar. A ou as novas linhas sempre sero inseridas na linha abaixo de onde o cursor esteja.

COLAR

APAGAR COM <v> + setas direcionais Rodap: -- VISUAL -O VISUAL + <Delete> Este modo permite que mesmo fora do modo de insero, voc consiga apagar trechos selecionados e no somente linhas inteiras. Aps pressionar o <v> fora do modo de edio, utilize as setas direcionais para selecionar o trecho que deseja apagar e ento pressione a tecla <Delete>. Automaticamente voc sair do modo Visual.

Linha de comando
Funes Tecla de atalho Detalhes Para iniciar a pesquisa atravs da linha de comando, sempre ser necessrio sair do modo de insero de texto atravs do <Esc> e depois digitar o comando. Para encontrar o texto, basta pressionar a tecla </> e depois escrever o que deseja encontrar. Para avanar para a prxima entrada encontrada no texto, pressione <n> (next - prximo). Aps fazer todas as alteraes necessrias, voc poder sair salvando ou no o documento. Ao lado esto listadas as formas possveis de se sair. O q de quit (sair), o w de write (escrever) e o x um atalho para wq. Ao utilizar a exclamao, voc estar forando a sada. Algumas vezes, o vim ir impedir que o usurio salve as alteraes feitas pois trata-se de um documento importante. O exclamao serve para voc dar certeza de que tem cincia do que est fazendo. Preparar para <Esc> entrar no modo linha de comando PESQUISAR </>string

SAIR

<:q> = Sai sem salvar. <:x> = Salva e sai. <:wq> = Salva e sai. <:q!> = Sai sem salvar forado. <:x!> = Salva e sai forado. <:wq!> = Salva e sai forado.

45

Debian Bsico - Desktop Paran

COMANDOS ESSENCIAIS
Agora que j foram abordados alguns dos conceitos bsicos necessrios para o entendimento de alguns fatores que aparecem na prtica, est na hora da abordagem dos comandos que so necessrios para que um administrador possa fazer um bom gerenciamento do sistema. Este captulo trar apenas os comando essenciais do bash. Estes comandos so necessrios para que voc possa manipular e gerenciar arquivos e diretrios do sistema. A ordem em que eles esto dispostos deve ser seguida para que voc inicie dos mais simples para os mais complicados. A cada novo comando haver um acmulo de conhecimento que o tornar apto para resolver problemas mais complexos no decorrer do curso.

O
CD

s comandos abaixo viro sempre com um campo inicial chamado Assimilao, que informar o que o comando quer dizer para que voc possa memoriz-lo de uma

forma mais fcil. O comando na maioria das vezes vai ser um verbo no imperativo. Voc mandar o computador fazer algo.

Assimilao:(Change DirectoryMudeodiretrio!)

Sintaxe: cd <diretrio de destino>


Muda o diretrio corrente. O diretrio de destino poder ser informado por um endereo absoluto (com o / no comeo), relativo (sem o / no comeo) ou com um parmetro (-, .., ., ~) No exemplo abaixo, voc pode acompanhar tudo que possvel fazer com o comando cd. 1. Entrar em um diretrio atravs de um endereo absoluto; 2. Entrar em um diretrio atravs de um endereo relativo; 3. Entrar no diretrio em que o usurio estava antes do atual; 4. Entrar no diretrio de um nvel acima; 5. Entrar no diretrio pessoal (tambm pode ser usado o cd ~).

((1)) fcamargo@amontoado:~$ cd /media/cdrom ((1)) fcamargo@amontoado:/media/cdrom$ cd /home/fcamargo/ ((3)) fcamargo@amontoado:/home/fcamargo$ cd /media/cdrom ((4)) fcamargo@amontoado:/media/cdrom$ cd .. ((1)) fcamargo@amontoado:/media$ cd / ((5)) fcamargo@amontoado:/$ cd ((2)) fcamargo@amontoado:/home/fcamargo$ cd Desktop/ ((2e4)) fcamargo@amontoado:/home/fcamargo/Desktop$ cd ../.. ((2)) fcamargo@amontoado:/home$ cd fcamargo/Desktop/ ((1)) fcamargo@amontoado:/home/fcamargo/Desktop$ cd / ((2)) fcamargo@amontoado:/$ cd home/ ((2)) fcamargo@amontoado:/home$ cd fcamargo/

46

Debian Bsico - Desktop Paran

((2)) fcamargo@amontoado:/home/fcamargo$ cd Desktop/ fcamargo@amontoado:/home/fcamargo/Desktop$

LS
Assimilao:(ListListe!) Sintaxe: ls <diretrio 1> ... <diretrio n> [parmetros] Mostra o contedo do(s) diretrio(s) desejado. Caso voc deseje listar o contedo do diretrio corrente, basta digitar ls e pressionar <Enter>. Para listar diretrios diferentes do corrente sem sair deste, informe o endereo absoluto ou relativo daqueles. fcamargo@amontoado:/curso$ ls
arquivo Saci

fcamargo@amontoado:/curso$ ls /home
fcamargo fellipeveiga marcius

parana

tiaogalinha

fcamargo@amontoado:/curso$

Parmetro -l (liste em linhas)

Descrio Em vez de trazer o contedo em colunas, um ao lado do outro, este parmetro ir listar o contedo em linhas, trazendo informaes adicionais de cada arquivo ou diretrio. Estas informaes sero vistas aps esta tabela. Lista tudo, inclusive os arquivos ocultos. Arquivos ocultos tem seus nomes comeados por um ponto simples. Exemplo: .oculto (para criar um arquivo oculto, basta renomelo com um ponto na frente). Deve-se ser usada em conjunto ao -l. A coluna do tamanho dos arquivos ser mostrado em unidades de bytes (B, KB, MB, GB, TB, etc), linguagem mais fcil de entender por ns humanos. Mostra ao lado direito do nome do diretrio ou arquivo um caractere que indica qual o tipo do dado. Diretrio(/) - Binrio(*) ; Pseudo Arquivo(|) ; soquete(=) ; Link Simblico(@) Ativa a opo de recursividade (pgina 39).

-a (lista all - tudo)

-h (humanos)

-F (faz o qu?)

-R (recursivo)

Informaes do INODE (ls -l)


A sada do comando ls -l a seguinte:
amontoado:/curso# ls -l total 0

-rw-r--r-- 1 fcamargo grupo-celepar-usuarios 0 Dez drwxr-xr-x 2 fcamargo grupo-celepar-usuarios 6 Dez


amontoado:/curso#

5 10:05 arquivo 5 10:05 Saci

Todas essas informaes que aparecem a mais nas colunas ficam no inode de cada arquivo ou diretrio. Inode um cabealho que cada arquivo ou diretrio possui para controle do sistema de arquivos e armazenamento de informaes. Primeira coluna: Tipo de dado e Permisses A primeira coluna composta por um set que indica o tipo de dado da linha; trs sets que indicam as permisses do proprietrio; trs sets que indicam as permisses de quem faz parte do grupo ao qual o arquivo ou diretrio pertence; e por fim, trs sets que indicam as permisses de quem no nem
47

Debian Bsico - Desktop Paran

proprietrio, nem faz parte do grupo.


d = diretrio l = link simblico - = arquivo b = n de dispositivo de bloco s = n de dispositivo de soquete p = n de pseudo dispositivo

s ns de dispositivos foram vistos na pgina 23. As permisses sero abordadas na pgina 111.

Segunda coluna: Nmero de ligaes diretas Diretrios: Indica o nmero de ligaes diretas que se tem a partir do diretrio em questo. Por padro, sempre teremos duas ligaes, mas por qu? Porque se o usurio entrar no diretrio que tenha 2 acessos a partir dele, ser possvel ver o contedo do diretrio (1 ligao) e voltar para o diretrio de um nvel acima (2 ligao). Ento, se nesta coluna aparecer o nmero 5, o diretrio ter 3 subdiretrios, mas 5 opes ligadas diretamente a ele. Arquivos: O nmero sempre ser 1, porque a nica ligao existente a com o seu contedo. Terceira coluna: Proprietrio Indica o nome do proprietrio do arquivo ou diretrio. Quarta coluna: Grupo Informa qual o grupo que o arquivo ou diretrio pertence. Quinta coluna Diretrios: Informa o espao ocupado pelo contedo do diretrio e somente dele, no contabilizando o contedo dos subdiretrios. Arquivo: Informa o tamanho do arquivo. Sexta, stima e oitava coluna Informa a data de criao ou da ltima modificao. Nona coluna Nome do arquivo ou diretrio.

PWD
Assimilao:(PrinttheWorkingDirectoryPowerdirectory!) Sintaxe: pwd Mostra qual o diretrio corrente. fcamargo@amontoado:~$ pwd
/home/fcamargo/

fcamargo@amontoado:~$

48

Debian Bsico - Desktop Paran

MKDIR
Assimilao:(MakedirCrieo(s)diretrio(s)!) Sintaxe: mkdir <nome do diretrio> Cria um diretrio ou toda uma estrutura linear de diretrios. O interpretador de comandos sempre criar o ltimo nome que voc colocou. O resto ser o endereo para chegar ao diretrio em que ser criado o novo diretrio. No exemplo a seguir, podemos observar formas de se usar o mkdir. 1. Criao do diretrio Pequeno dentro do /tmp. 2. Tentativa de se criar o diretrio Paulo dentro do diretrio /home/fcamargo/Pequeno, sendo que este no existe. Por isso, retornado um erro. 3. Criao do diretrio Pequeno dentro do diretrio corrente (perceba que no h a / na frente de Pequeno, por isso, trata-se de um endereo relativo). 4. Procedimento igual ao do ponto 2, porm agora ir d certo j que a estrutura para o Paulo existe. ((1)) fcamargo@amontoado:~$ mkdir /tmp/Pequeno ((2)) fcamargo@amontoado:~$ mkdir Pequeno/Paulo mkdir: no possvel criar o diretrio `pequeno/Paulo': Ar quivo ou diretrio no encontrado ((3)) fcamargo@amontoado:~$ mkdir Pequeno ((4)) fcamargo@amontoado:~$ mkdir Pequeno/Paulo fcamargo@amontoado:~$

possvel criar mais de um diretrio por vez. Para isso basta separar o nome dos diretrios por espao. Se voc desejar ter um diretrio com espao no nome (nome composto), coloque-o entre aspas.

fcamargo@amontoado:/curso$ mkdir Burro Robzila fcamargo@amontoado:/curso$ ls -l total 0 drwxr-xr-x 2 fcamargo grupo-celepar-usuarios 6 drwxr-xr-x 2 fcamargo grupo-celepar-usuarios Leo Dourado drwxr-xr-x 2 fcamargo grupo-celepar-usuarios 6

Mico Leo Dourado Dez 5 16:20 Burro 6 Dez 5 16:20 Mico Dez 5 16:20 Robzila

Se voc quiser ter 10 diretrios com nomes 1, 2... at 10, um dentro do outro linearmente, voc no conseguir da forma normal. Isso porque o nico diretrio que se tentar criar ser o 10, mas todo o resto ter que existir para funcionar. fcamargo@amontoado:~$ mkdir 1/2/3/4/5/6/7/8/9/10 mkdir: no possvel criar o diretrio `1/2/3/4/5/6/7/8/9/10': Arquivo ou diretrio no encontrado

Agora se voc usar o parmetro -p (parents pais), voc ir criar toda a estrutura de diretrios que faltam para finalmente se criar o 10.

49

Debian Bsico - Desktop Paran

> (DE NOVO ESTE REDIRECIONADOR)


Como j vimos anteriormente, o > utilizado para mudar a sada padro de um documento. No decorrer deste curso, ser necessrio que voc crie arquivos em branco, somente para poder realizar alguma atividades. O >, se no possuir nada do seu lado esquerdo e o nome de um arquivo de texto no existente ao lado direito, ele jogar nada ao arquivo inexistente, criando-o. Ou seja, ser criado um arquivo novo em branco. fcamargo@amontoado:/curso$ > Arquivo.txt fcamargo@amontoado:~/curso$ ls Arquivo.txt

D
CP

iferente do Windows, os sistema baseados no GNU/Linux no trabalham com extenso. Elas existem apenas para organizao por parte dos usurios. Alguns raros

aplicativos associam extenses ao programa que dever abri-lo, como o BrOffice.org, por exemplo. Mas ele no deixar de ser o que .

Assimilao>(CopyCopie!) Sintaxe: cp <arq ou dir a ser copiado> <diretrio de destino da cpia> [parmetros] Copia um arquivo, vrios arquivos, um diretrio, vrios diretrios, contedo de diretrios ou um combinao dessas opes para um destino. Na cpia o que copiado mantido e a cpia vai para um novo lugar. Se o usurio desejar, ele pode alterar o nome do arquivo ou diretrio durante a cpia.

((1)) fcamargo@amontoado:/curso$ ls Arquivo.txt Saci ((2)) fcamargo@amontoado:/curso$ cp Arquivo.txt Saci ((3)) fcamargo@amontoado:/curso$ Arquivo.txt Saci ((4)) fcamargo@amontoado:/curso$ Arquivo.txt ((5)) fcamargo@amontoado:/curso$ ((6)) fcamargo@amontoado:/curso$ ls
ls Saci

cp Arquivo.txt Backup-Arquivo.txt ls

Arquivo.txt Saci Backup-Arquivo.txt

1. Comando para visualizar o contedo do diretrio corrente. Saci estava dentro do diretrio /curso; 2. Copia o arquivo Arquivo.txt para dentro do diretrio Saci, que est dentro do diretrio corrente (perceba que no tem a / no comeo, por isso, um endereo relativo); 3. Ao visualizar o contedo do diretrio, podemos ver que tanto Saci, como Arquivo.txt ainda esto l; 4. Ao visualizar o contedo de Saci, podemos perceber que a cpia do Arquivo.txt foi feita com
50

Debian Bsico - Desktop Paran

sucesso; 5. Agora o comando ir fazer uma cpia do mesmo arquivo, s que o manter no mesmo diretrio, tendo apenas o nome diferente; 6. Ao visualizar o contedo do diretrio corrente, pode-se perceber que os dois itens que j estavam l permanecem, e alm deles apareceu a nova cpia criada. Para se copiar um diretrio, necessrio que seja usado o parmetro -R, caso contrrio a copia retornar erro.

fcamargo@amontoado:/curso$ cp -R Saci /tmp

possvel copiar o diretrio Saci com outro nome. Para isso colocar um nome de diretrio que ainda no exista no fim do campo Destino.

fcamargo@amontoado:/curso$ cp -R Saci /tmp/Perer

neste momento que voc poder a comear a utilizar os coringas. Voc pode copiar o contedo de um diretrio para dentro de outro. Por exemplo: cp -R /etc/apt /tmp/Backup

Neste exemplo, tudo que tiver dentro do diretrio celepar, exceto arquivos ocultos, representado pelo asterisco, ser copiado para dentro do diretrio /tmp/Backup. Neste caso necessrio que o diretrio de destino j exista. S possvel alterar o nome quando a cpia de arquivo-arquivo ou diretrio-diretrio.

MV
Assimilao > (Move Mova ou Renomeie!) Este comando igual ao cp, com duas diferenas: 1. Aps criar a cpia no diretrio de destino, apaga o original; 2. No preciso utilizar o -R para diretrios.

Movendo arquivos e diretrios


Sintaxe: mv <arq ou dir a ser movido> <diretrio de destino do arq ou dir> Move um arquivo ou diretrio para um outro diretrio de destino. fcamargo@amontoado:/curso$ mv Saci ~ O comando acima ir mover o diretrio Saci para dentro da sua pasta pessoal (lembrem-se que o coringa ~ representa a pasta pessoa do usurio logado). O resultado ser /home/fcamargo/Saci.

51

Debian Bsico - Desktop Paran

e voc quiser, assim como com o cp, possvel copiar apenas o contedo de um diretrio para outro. Exemplo: cp Saci/* /home/fcamargo

Renomeando arquivos e diretrios


Sintaxe: mv <arq ou dir a ser renomeado> <diretrio de destino do arq ou dir> Funciona da mesma forma que o cp. Diretrios: Ir renomear se o diretrio de destino no existir e a cpia for de um outro diretrio. fcamargo@amontoado:/curso$ mv ~/Saci ~/Perer Arquivos: Ir renomear se dentro do diretrio de destino no existir um arquivo com o mesmo nome do arquivo copiado. fcamargo@amontoado:/curso$ > 123 fcamargo@amontoado:/curso$ mv 123 321 fcamargo@amontoado:/curso$ mv 321 /tmp/123 fcamargo@amontoado:/curso$ mv /tmp/123 /tmp/.123 No caso acima, o arquivo .123 est ocultodentro do diretrio /tmp.

RM
Assimilao>(RemoveRemova!) Sintaxe: rm [parmetros] <arquivo ou diretrio> Pode ser usado para remover arquivos (rm arquivo) ou para remover diretrios (rm -R diretrio). Para remover os dois, use o comando com parmetro. Para remover um arquivo: fcamargo@amontoado:/curso$ touch Vai pro alm fcamargo@amontoado:/curso$ ls Vai pro alm fcamargo@amontoado:/curso$ rm -f Vai pro alm fcamargo@amontoado:/curso$ ls fcamargo@amontoado:/curso$ Para remover um diretrio: fcamargo@amontoado:/curso$ mkdir Nasceu morto fcamargo@amontoado:/curso$ ls Nasceu morto fcamargo@amontoado:/curso$ rm -Rf Nasceu morto fcamargo@amontoado:/curso$ ls fcamargo@amontoado:/curso$

52

Debian Bsico - Desktop Paran

Removendo um diretrio que no est no corrente: fcamargo@amontoado:/curso$ mkdir -p 1/2/3/4 fcamargo@amontoado:/curso$ rm -Rf 1/2/3 fcamargo@amontoado:/curso$ tree . `-- 1 `-- 2 Perceba que apesar dos diretrios 1 e 1/2 aparecerem no comando, o que importa o ltimo diretrio que o usurio colocou, que no caso o 3, que est dentro do 1/2. Tudo que estiver abaixo do 3 ser apagado.

A
DIFF

ltima vez que ser comentado. Quase sempre os coringas podem ser usados. No diferente com o comando rm.

Assimilao>(DifferenceMostremeadiferena!) Sintaxe: diff <arq(1)> <arq(2)> Permite a comparao linha a linha de arquivos de texto. Eles podem ser arquivos diferentes ou ento arquivos iguais de datas diferentes (verificao de alteraes). Abaixo temos dois arquivos: A e B. Os dois tm o contedo abaixo:
fcamargo@amontoado:~$ cat 1 A fcamargo@amontoado:~$ cat 2 A B fcamargo@amontoado:~$ cat 3 A X

Existem trs tipos de diferenas que so representadas pelas letras d, a e c: Remoo (d deleted), adio (a added), e alterao (c changed) de linhas. O diff agrupa esses tipos diferentes. Procura a primeira diferena. Se ela se repetir agrupa a diferena at chegar ao outro tipo, e assim por diante. Os agrupamentos sero feitos da seguinte forma:

1. Linhas adicionadas
<N de linhas adicionadas>a<N da primeira linha adicionada>,<N da ltima linha adiciona> Ex: 16a15,30 (foram adicionadas 16 linhas, so elas as linhas da 15 a 30 do novo arquivo)
fcamargo@amontoado:~$ diff 1 2 1a2 > B

L-se qual a diferena do arquivo 2 em funo do arquivo 1. O maior (>) diz que o B e o esto presentes no arquivo 2 e no no arquivo 1.

53

Debian Bsico - Desktop Paran

2. Linhas removidas
<N da primeira linha deletada>,<N da ltima linha deletada>d<N de linhas deletadas> Ex: 15,30a16 (foram apagadas 16 linhas, so elas as linhas da 15 a 30 do novo arquivo)
fcamargo@amontoado:~$ diff 2 1 2d1 < B

L-se qual a diferena do arquivo 1 em funo do arquivo 2. O menor (<) sinaliza que o B foi retirado do arquivo 1 ou ento adicionado ao arquivo 2.

3. Linhas alteradas
<N da primeira linha alterada do 1 arquivo>,<N da ltima linha alterada do 1 arquivo>c<N da primeira linha diferente ao 1 arquivo>,<N da ltima linha diferente ao 1 arquivo> Ex: 15,30a16 (foram apagadas 16 linhas, so elas as linhas da 15 a 30 do novo arquivo)
fcamargo@amontoado:~$ diff 3 2 2c2 < X --> B

Neste casso, temos que a linha dois do arquivo 3 e a linha dois do arquivo 2 esto diferentes. O menor indica o que temos a mais no arquivo 3 e o maior indica o que temos a mais no arquivo 2.

FILE
Assimilao>(FilefileArquivo!?Quetipodearquivoeste?) Sintaxe: file <nome do arquivo> Mostra qual a extenso real do arquivo. Este comando importante j que os sistemas GNU/LINUX no utilizam extenses, podendo o arquivo assumir um sobrenome sem alterar suas caractersticas. Vejam o seguinte exemplo:
fcamargo@amontoado:~$ file TEXTO_PURO.txt TEXTO_PURO.txt: ASCII text fcamargo@amontoado:~$ mv TEXTO_PURO.txt TEXTO_PURO fcamargo@amontoado:~$ file TEXTO_PURO TEXTO_PURO: ASCII text fcamargo@amontoado:~$ mv TEXTO_PURO TEXTO_PURO.pdf fcamargo@amontoado:~$ file TEXTO_PURO.pdf TEXTO_PURO.pdf: ASCII text

O arquivo TEXTO_PURO.txt um arquivo ASCII text que exprime texto puro (estilo bloco de notas). Perceba que ele sempre ser texto puro, independente a sua extenso.

TREE
Assimilao>(TreetambmtreeMostremecomoestruturadervore!) Sintaxe: tree [parmetros] <diretrio a partir do qual deve ser listado> Torna a visualizao da estrutura de diretrios mais amigvel. Veja abaixo:
fcamargo@amontoado:/curso$ tree .

54

Debian Bsico - Desktop Paran

. |-|-| |-| | `--

Mico Le\303\243o Dourado (Acentuaes no so entendidas) Robzila `-- oi Saci `-- 1 `-- 2 TEXTO_PURO.pdf

5 directories, 2 files

Desta forma possvel visualizar muito mais fcil os nveis e subnveis do diretrio especificado. Alguns parmetros esto disponveis e so interessantes de serem utilizados. Parmetro -d -a -L <n> Lista apenas diretrios. Lista tambm os arquivos ocultos. Lista somente <n> nveis adentro do diretrio definido como inicial. Este parmetro sempre deve ser o ltimo para que ele fique do lado do nmero de nveis. Ex: tree -daL 1 /home Mostra o nome do arquivo e/ou diretrio e seu endereo relativo. Adentra nos links como se fossem subdiretrios. Sem esta opo, os links so tratados como arquivos, tendo apenas uma indicao de para onde eles apontam. Descrio

-f -l

55

Debian Bsico - Desktop Paran

O COMPLETO APT
A instalao de aplicativos, bibliotecas, binrios, mdulos, ou seja, tudo que existe dentro do Debian, s seria mais fcil se ela se desse automaticamente ao simples pensar do administrador. O apt foi criado para o Debian, mas j vem sendo utilizado em vrias outras distribuies. Todas as distribuies derivadas do Debian no ousam tocar no apt, ele sempre est disponvel. Antes de qualquer coisa, o que so pacotes? Pacotes so unidades de programas ou bibliotecas. Quando fazemos download de um arquivo, driver ou plugin para windows, eles sempre vem em um arquivo. Este arquivo normalmente um conjunto de outros arquivos compactados que possuem uma srie de regras que dizem o que o sistema operacional dever fazer com cada um deles e onde aloc-los. Quando instalamos o Apache, todos os arquivos que so necessrios para a sua instalao, do binrio que ir iniciar o processo at o cone do menu, ir ser descarregado no seu computador e um script contendo as regras de instalao sero executados. Ou seja, um pacote do Apache um conjunto de arquivos que contm os arquivos que foram feitos pelo seu desenvolvedor para fazer com que ele rode no seu computador. Este pacote pode precisar de outros pacotes para ser instalado normalmente. Se voc est desenvolvendo um programa e j existem pacotes prontos que diminuem o seu trabalho, cria-se um pacote com aquilo que no existe e este que j existia passa a ser uma dependncia do que voc fez. Ser necessrio ter os dois para que o seu programa funcione. O apt (advanced package tool ferramenta avanada de pacotes) trabalha em conjunto com um repositrio. Este repositrio no passa de um servidor de pacotes. Todos os pacotes existentes para o Debian ficam dentro dele. Isso torna fcil a instalao, pois esses pacotes s fazem parte do repositrio se estiverem de acordo com o padro do sistema, com todos pacotes que servem de base instalados (conhecidos como dependncias) e sem problemas de incompatibilidade e instabilidade. O processo simples: o administrador executa o comando apt informando o nome do pacote que ser instalado. O apt vai at uma lista local recebida do repositrio e verifica se o pacote solicitado existe. Se existir, o apt requisita ao repositrio o(s) arquivo(s) .deb necessrio(s) para a instalao e descompactao(s). Feito isso, informaes, se necessrias, so solicitadas ao administrador (endereo de proxy, endereos de servidores, informaes especficas do aplicativo). Com tudo engatilhado, basta chamar o burro de carga que far o trabalho sujo de instalao: o dpkg. O dpkg no pensa no conjunto, apenas instala, e muito bem instalado, os pacotes com as configuraes feitas do jeito que so entregues a ele. Aps todo esse processo, o apt informa que o pacote foi instalado com sucesso. Passos: 1. Verificao de existncia do pacote na lista local (/var/cache/apt/pkgcache.bin); 2. Requisio do pacote ao repositrio (/etc/apt/source.list); 3. Download dos .deb e dos de suas dependncias (/var/cache/apt/archives); 4. Descompactao e, se existir, realizao de configuraes; 5. Instalao do pacote pelo dpkg. Todo esse processo feito pelo apt, tendo que o administrador apenas configurar a lista dos repositrios os quais fornecem os pacotes ao computador. Ento, vamos comear por eles.

56

Debian Bsico - Desktop Paran

REPOSITRIOS
Podem ser repositrios:

Locais dentro do seu disco rgido; Locais na rede ou internet; Locais em discos removveis (pendrives, cd/dvd roms, etc).

O Debian disponibiliza na internet mais de 400 repositrios redundantes. Repositrios redundantes so repositrios iguais, que ao se alterar um, todos so alterados. Eles existem para que sempre exista um espelho perto de qualquer pessoa em qualquer lugar do mundo, e tambm para, mesmo que alguma catstrofe acontea, sempre existam servidores no ar. A Celepar possui um espelho dentro de suas dependncias. Ento alm dos espelhos do repositrios oficiais do Debian, tambm existe uma rea com pacotes criados pelos desenvolvedores da Celepar. Estes pacotes fazem com que haja uma personalizao no sistema operacional, ajustando-o de acordo com as necessidades dos funcionrios do estado do Paran. O arquivo que devemos editar para especificar os caminho desses servidores o sources.list. Se voc quiser que seu apt trabalhe com os espelhos dos repositrios oficiais do Debian armazenados na Celepar, edite o arquivo acima com o vim (pgina 44) e o deixe da seguinte maneira:
amontoado:~# vim /etc/apt/sources.list

deb http://www.repositorios.eparana.parana/debian lenny main contrib non-free deb http://www.repositorios.eparana.parana/celepar lenny main contrib non-free deb http://www.repositorios.eparana.parana/marillat lenny main deb http://www.repositorios.eparana.parana/security lenny/updates main contrib non-free

e o computador for utilizado fora da rede do estado (no tiver um endereo 10.0.0.0 e conexo fsica a esta rede), voc dever alterar o

www.repositorios.eparana.parana para www.repositorios.pr.gov.br. E se voc quiser apenas um espelho do repositrio oficial do Debian, retire a segunda linha, que est escrito ...parana/celepar etch.... Os pacotes criados/alterados pela Celepar no sero instalados no seu computador.

UTILIZANDO O APT
apt-get update (atualizando a lista de pacotes)
Sempre que o administrador executa o comando, o apt verifica se ele existe na lista local. Essa lista local no atualizada automaticamente. Periodicamente, o administrador dever atualiz-la atravs do aptget update. Ao execut-lo, o apt verifica a data de ltima modificao da lista local e a compara da lista dos repositrios. Se as duas forem iguais, a lista est atualizada, se a data de modificao dos repositrios for mais recente, o apt solicita a nova lista com as alteraes.

57

Debian Bsico - Desktop Paran

apt-get upgrade (update + atualizao das verses dos pacotes)


Funciona da mesma forma que o apt-get update, com a diferena que alm de atualizar a lista, ele ir solicitar a instalao de todos os pacotes que foram includos ou alterados. Isso torna a sua lista de pacotes local atualizada, assim como todo o seu sistema. Esta opo perigosa quando voc tem distribuies personalizadas, pois a atualizao feita pelo Debian pode desfazer as alteraes criadas pela personalizao. Se voc tiver o Debian puro, recomenda-se a utilizao deste comando periodicamente para manter seu sistema atualizado, j que ele nunca trar problemas.

apt-get install (instalando um pacote)


Sintaxe: apt-get install [parmetros] <nome do pacote a ser instalado> Com o comando acima que ser feita a instalao de novos pacotes. Ele quem propele todo aquele processo que foi visto anteriormente. Sempre, antes da instalao, existem algumas informaes que so passadas ao administrador, conforme pode ser visto abaixo. Se o pacote precisar de outros no instalados para funcionar, ele avisar que eles so necessrios e que ser necessrio instal-los.
amontoado:~# apt-get install apache2 Lendo listas de pacotes... Pronto Construindo rvore de dependncias Lendo informao de estado... Pronto Os pacotes extra a seguir sero instalados: apache2-mpm-worker apache2-utils apache2.2-common libapr1 Pacotes sugeridos: apache2-doc apache2-suexec apache2-suexec-custom Os NOVOS pacotes a seguir sero instalados: apache2 apache2-mpm-worker apache2-utils apache2.2-common 0 pacotes atualizados, 7 pacotes novos instalados, 0 a atualizados. preciso baixar 1744kB de arquivos. Depois desta operao, 5804kB adicionais de espao em disco Voc quer continuar [S/n]?

libaprutil1 libpq5

libapr1 libaprutil1 libpq5 serem removidos e 88 no sero usados.

Basta digitar um S, s, Y, y, Sim, Yes, ou ento simplesmente teclar o <Enter> do teclado que a instalao ir iniciar. Utilizando o parmetro -y, qualquer perguntar ser respondida com um YES.

apt-get remove (removendo um pacote)


Sintaxe: apt-get remove [parmetros] <nome do pacote a ser removido> Remove o pacote desejado. Para isso basta saber o nome do pacote que ser removido. No exemplo abaixo, iremos remover o pacote tuxpaint.
amontoado:~# apt-get remove --purge tuxpaint Lendo listas de pacotes... Pronto Construindo rvore de dependncias Lendo informao de estado... Pronto Os seguintes pacotes foram automaticamente instalados e no so mais requeridos: tuxpaint-config libfltk1.1 tuxpaint-data netpbm tuxpaint-plugins-default libnetpbm10 tuxpaint-stamps-default Use 'apt-get autoremove' para remov-los. Os pacotes a seguir sero REMOVIDOS:

58

Debian Bsico - Desktop Paran

tuxpaint* 0 pacotes atualizados, 0 pacotes novos instalados, 1 a serem removidos e 13 no atualizados. Depois desta operao, 397kB de espao em disco sero liberados. Voc quer continuar [S/n]? s (Lendo banco de dados ... 124172 arquivos e diretrios atualmente instalados). Removendo tuxpaint ... Expurgando arquivos de configurao de tuxpaint ... Processando gatilhos para man-db ... Processando gatilhos para menu ...

O APT traz vrias informaes antes da remoo. Informa que existem pacotes que no so mais necessrios, j que trabalhavam em funo do pacote TUXPAINT. Mas no os remove automaticamente, pois eles podem ser utilizados posteriormente por outros pacotes. Se quiser remov-los, o administrador precisa executar o comando apt-get remove --purge $(deborphan). Na release Lenny, o comando apt-get autoremove. Outra informao importante o --purge. Ele permite que o administrador apague todos os arquivos de configurao. Sem esta opo, o pacote removido, mas mantido no computador os arquivos de configurao, para no caso de mais a frente haver a reinstalao do pacote, todas as configuraes j estaro prontas.

urge em ingls significa Purificao. Quando utilizada esta opo, h a limpeza total do sistema em relao ao pacote. Nenhum vestgio dele existir.

apt-get install --reinstall (reinstalando um pacote)


Sintaxe: apt-get install --reinstall [parmetros] <nome do pacote a ser reinstalado> Com o parmetro --reinstall, possvel reinstalar automaticamente um pacote. Caso no existisse esta opo, seria necessrio remover e instalar novamente o pacote. Este comando recomendado quando um pacote funcionava normalmente e aps alguma tarefa executada pelo administrador, ele tenha parado de funcionar. Alguma dependncia pode ter sido desinstalada ou algum arquivo apagado. Desta forma o pacote volta a ter seu estado original.

aso o pacote tenha muitos arquivos que foram configurados, recomendvel que se crie um backup de todos, para evitar surpresas desagradveis.

apt-cache search (descobrindo nomes de pacotes)


Como foi visto anteriormente, para se instalar um pacote, necessrio que o administrador saiba o nome exato dele. Mas como descobrir isso? Atravs do search. Sintaxe: apt-cache search <termo que remeta a um pacote que atenda a sua necessidade> No exemplo abaixo, a fim de relembrar meu primeiro videogame, procurei na minha lista local algum pacote que tivesse no nome ou em sua descrio o termo nintendo.

59

Debian Bsico - Desktop Paran

amontoado:~# apt-cache search nintendo blockattack - a puzzle game inspired by Tetris desmume - Nintendo DS emulator fceu - FCE Ultra - a nintendo (8-bit) emulator gbsplay - A Gameboy sound player gnome-nds-thumbnailer - Nintendo DS roms thumbnailer for GN kamefu - KDE All Machine Emulator Frontend for Unix kamefu-data - Data files for Kamefu libkamefu-dev - Development headers for Kamefu libkamefu0 - Libraries for Kamefu zsnes - Emulator of the Super Nintendo Entertainment System nestra - Nintendo Entertainment System emulator snes9x-x - X binaries for snes9x - Super NES Emulator

Sempre teremos primeiro o nome e depois uma descrio do pacote: nome-do-pacote Descrio a respeito do pacote Se eu quisesse instalar um emulador do Super Nintendo , bastaria eu instalar o pacote zsnes.

apt-cache show (informaes sobre pacotes)


Continuando no exemplo do Super Nintendo. Agora que j sabemos o nome do pacote, podemos instal-lo. Mas se antes disso, o administrador tiver interesse de saber mais a respeito do pacote, ele poder utilizar este comando. Sintaxe: apt-cache show <pacote que ter as informaes apresentadas na tela>
amontoado:~# apt-cache show nestra Package: nestra (nome do pacote) Priority: optional (em relao ao sistema operacional) Section: contrib/otherosfs (local dentro do repositrio que est alocado) Installed-Size: 3788 (tamanho em bytes que ocupar aps instalado) Maintainer: Debian QA Group <packages@qa.debian.org> (mantenedor responsvel e seu endereo eletrnico para contato) Architecture: i386 (arquitetura para qual o pacote foi feito) Version: 0.66-10 (verso do pacote) Depends: libc6 (>= 2.7-1), libx11-6 (pacotes necessrios, dependncias) Filename: pool/contrib/n/nestra/nestra_0.66-10_i386.deb (nome do arquivo .deb que ser instalado pelo DPKG) Size: 58562 (tamanho do arquivo de instalao em bytes) MD5sum: 8cc650bc1f77be4cd97d0474321cafd6 SHA1: cae8a01c36018d30ce4ebd13006afbbd05635d29 SHA256: e72aca89583a88d91c1edffb61e32dd5217434b9f8fc371be4e997308f8c2378 Description: Nintendo Entertainment System emulator (descrio do pacote) Nestra is a dynamic recompiler which translates 6502 code into native code to emulate a Nintendo Entertainment System. Execution of the translated code is quite fast, and the emulator can run at full speed with relatively modest CPU requirements. However, there is no sound support. . To use this program, you need NES ROMs which are not included. Tag: hardware::emulation, role::program

apt-get clean (apagando arquivos de instalao)


Aps a instalao de um pacote, o arquivo de instalao .deb que foi baixado mantido dentro do /var/cache/apt/archives para que, no caso de uma reinstalao, ele j esteja no computador, no sendo necessrio perder tempo com download novamente. Este recurso interessante quando existe espao de sobra no disco rgido. Quando isto no acontece, interessante apagar os arquivos .deb do cache. No ser necessrio usar o rm. O apt-get clean ir apagar todos os pacotes de instalao automaticamente.

60

Debian Bsico - Desktop Paran

apt-cache depends <pacote> (listando dependncias)


Caso o administrador queira saber quais so as dependncias, conflitos e sugestes de determinado pacote, ele poder utilizar este comando. Veja estas informaes referentes ao iceweasel, o navegador da internet do Debian.
amontoado:~# apt-cache depends iceweasel iceweasel Depende: fontconfig Depende: psmisc Depende: procps Depende: debianutils Depende: libc6 Depende: libgcc1 Depende: libglib2.0-0 Depende: libgtk2.0-0 Depende: libnspr4-0d Depende: libstdc++6 Depende: xulrunner-1.9 Sugere: xulrunner-1.9-gnome-support Sugere: latex-xft-fonts Sugere: xfonts-mathml Sugere: ttf-mathematica4.1 Sugere: xprint Sugere: mozplugger Sugere: libkrb53 Conflita: <firefox> Conflita: iceweasel-dom-inspector Conflita: <mozilla-firefox> Substitui: <firefox> Substitui: iceweasel-gnome-support Substitui: <mozilla-firefox>

DPKG
O DPKG uma ferramenta que perdeu espao no processo de instalao, reinstalao e removeo de pacotes, mas essencial para uma boa administrao do sistema. Apesar que o apt chama o dpkg para instalar os pacotes, mas este faz somente aquilo que o apt manda. Quando o apt no der conta atravs do dpkg que os problemas so sanados. Com ele o administrador conseguir instalar, remover, listar e manipular pacotes.

dpkg -i <arquivo.deb>
A instalao dos pacotes feita atravs deste comando. Sempre deve-se passar o endereo completo do arquivo a ser instalado. No exemplo abaixo, primeiro o comando apt utilizado com o parmetro -d (download), para que os arquivos de instalao sejam apenas descarregados para o computador sem ser feita nenhuma instalao.

O
instalado:

arquivo pode ser baixado do site do desenvolvedor, da forma como o administrador

achar melhor.

Depois, atravs do comando dpkg -i o pacote descarregado dentro do /var/cache/apt/archives

61

Debian Bsico - Desktop Paran

amontoado:~# apt-get install -d sl Lendo listas de pacotes... Pronto Construindo rvore de dependncias Lendo informao de estado... Pronto Os NOVOS pacotes a seguir sero instalados: sl 0 pacotes atualizados, 1 pacotes novos instalados, 0 a serem removidos e 0 no atualizados. preciso baixar 25,1kB de arquivos. Depois desta operao, 127kB adicionais de espao em disco sero usados. Obter:1 http://www.repositorios.eparana.parana lenny/main sl 3.03-15 [25,1kB] Baixados 25,1kB em 0s (729kB/s) Baixar completo e no modo somente baixar ("download only")

amontoado:~# dpkg -i /var/cache/apt/archives/sl_3.03-15_i386.deb


Selecionando pacote previamente no selecionado sl. (Lendo banco de dados ... 90486 arquivos e diretrios atualmente instalados). Desempacotando sl (de .../archives/sl_3.03-15_i386.deb) ... Configurando sl (3.03-15) ... Processando gatilhos para man-db ...
amontoado:~# sl <ENTER>

dpkg -l
Lista todos os pacotes com algum vestgios no sistema. As colunas de informaes mostram o status, nome, verso e descrio do pacote. Ao executar este comando, todos os pacotes sero listados. Se voc quiser restringir sua pesquisa, a melhor forma de se fazer isso ou colocando o nome do pacote que deseja saber mais informaes, ou, caso no o saiba exatamente, utilizar o pipe e o grep. Veja abaixo exemplos.
amontoado:~# dpkg -l cups Desejado=U=Desconhecido/Instalar/Remover/exPurgar/H=Reter | Estado=No/Inst/arqs-Cfg/U=Descomp/Falhou-cfg/H=semi-inst/W=trigadiado/Trig-pend |/ Erro?=(nenhum)/H=Ret/precisa-Reinst/X=ambos-problemas (Est,Err: maisculas=ruim) ||/ Nome Verso Descrio +++-========================================================= ii cups 1.3.8-1lenny4Common UNIX Printing System(tm) server

O grep ser visto na pginas 74.

amontoado:~# dpkg -l |grep ncurse ii libncurses5 5.7+20081213-1 shared libraries for terminal handling ii libncursesw5 5.7+20081213-1 shared libraries for terminal handling (wide character su ii ii ncurses-base ncurses-bin 5.7+20081213-1 5.7+20081213-1 basic terminal type definitions terminal-related programs and man pages

62

Debian Bsico - Desktop Paran

dpkg -r
Agora iremos remover o pacote instalado anteriomente.
amontoado:~# dpkg -r sl (Lendo banco de dados ... 90515 arquivos e diretrios instalados). Removendo sl ... Processando gatilhos para man-db ... amontoado:~# sl bash: /usr/bin/sl: Arquivo ou diretrio no encontrado

atualmente

dpkg --configure
Pode ser que, por algum motivo qualquer, a instalao de um pacote no tenha ocorrido de forma 100% correta, seja com o apt, seja com o dpkg. Isso pode ter ocorrido devido a um problema na configurao de algum pacote, na falha da instalao de alguma dependncia, falha na execuo de um script ps instalao, ou ento um programa pode simplesmente deixar de funcionar por causa de uma alterao no sistema. Com este comando, o sistema ir verificar todas as dependncias e realizar todo o processo de configurao do pacote novamente. Se algo estiver errado, tentar corrigir automaticamente. uma mo na roda, por isso, guarde-o na memria.
amontoado:~# amontoado:~#

dpkg --configure sl dpkg --configure -a

parmetro -a ir iniciar o processo de verificao de dependncias e de

configurao. Quanto s dependncias, o dpkg somente verificar se os pacotes

instalados esto em ordem. Se uma dependncia no estiver instalada, o comando retornar um erro.

dpkg-reconfigure
Este comando reconfigura um pacote que j foi desempacotado e instalado. Ou seja, deu pau na instalao ou num pacote j instalado, use o dpkg-reconfigure para tentar fazer com que o script, responsvel por gerenciar a instalao e configurao de todos os binrios, arquivos de configurao, bibliotecas e arquivos adicionais, seja executado. Passos executados pelo dpkg-reconfigure: 1. Desempacotar os arquivos de configurao e, ao mesmo tempo, fazer um backup das configuraes j existentes para que, no caso de algum problema, elas sejam restauradas. 2. Executa o script gerenciador da instalao, conhecido como postinst. Para se reconfigurar um pacote especfico deve-se ser informado o nome deste. Para que todos os pacotes com status de pendente sejam reconfigurados, usa-se o parmetro -a.

dpkg -L
O dpkg com este parmetro poder trazer informaes preciosas para um bom administrador. Caso voc tenha instalado um pacote e no tenha a menor ideia de onde os arquivos que fazem parte do pacote
63

Debian Bsico - Desktop Paran

foram parar, como arquivos de configurao, binrios ou bibliotecas, utilizando este recurso voc passar a saber. Primeiramente iremos instalar um pacote qualquer. No nosso exemplo iremos instalar o pacote tuxpaint:
# apt-get install tux-paint <Enter>

Depois de instalado, iremos visualizar seu status no sistema:


# dpkg -l tuxpaint ii tuxpaint 0.9.16-1 ii tuxpaint-data 0.9.16-1 ii tuxpaint-stamps-default paint program for A paint program for young children Data files for Tux Paint, a paint program for 2006.10.21-1 Stamp files for Tux Paint, a

Como voc pode ver, ele est instalado ( bvio, acabamos de instal-lo, mas caso no tivssemos sido ns quem tivssemos instalado, este passo seria importante). Agora iremos descobrir onde andam todos os arquivos referentes ao programa:
#

dpkg -L tuxpaint

Veja o resultado em sua tela e observe que muitos diretrios se repetem. Isso acontece, porque na verdade, o que o parmetro faz mostrar a parte do script de instalao responsvel por criar os diretrios e arquivos necessrios para o funcionamento do programa. Ento ele tem que criar primeiro o /usr/share/pixmaps para depois criar o /usr/share/pixmaps/tuxpaint.png. Todos arquivos e diretrios relacionados ao tuxpaint aparecero.

64

Debian Bsico - Desktop Paran

EXERCCIOS DE FIXAO (PARTE 2)


1.Qual a diferena entre terminal virtual e terminal emulado? Cite dois motivos que justifiquem a existncia dos dois. 2.Existe a possibilidade de se iniciar uma sesso sem inserir um usurio vlido? 3.O que cada uma das teclas de atalho abaixo fazem? a)<CTRL>+<C> b)<CTRL>+<L> c)<CTRL>+<D> d)<CTRL>+<SHIT>+<T> Obs.: Se voc no se lembrava delas, memorize-as. Elas so muito importantes. 4.Qual a forma mais indicada para termos certeza que um endereo ou nome de arquivo ser digitado corretamente? 5.Temos em um diretrio os seguintes arquivos e diretrios: Dir: Baralho Arq: Carvalho Arq: Banana Dir: Ana Arq: Caneco Informe como faramos para executar as seguintes tarefas utilizando expresses regulares: a)Remover tudo que comeam com A: $ rm -rf ________ <Enter> b)Mover tudo que termina em ana para o diretrio Baralho: $ mv ________ Baralho/ <Enter> c)Remover tudo que comear com qualquer coisa, ter ar no meio, ter obrigatoriamente um caractere qualquer aps ar e finalizar com lho: $ rm -rf ________ <Enter> d)Visualizar em linha tudo que tiver, somente na segunda casa do nome do arquivo ou diretrio, uma letra de a a l: $ ls ________ -l <Enter> 6.Se no permitido excluir um diretrio com contedo, qual seria o recurso utilizado, sem ser excluir manualmente o contedo, para excluir o diretrio em questo? Explique o porqu. 7.Faa o seguinte teste: 1 Logue-se em um terminal emulado; 2 Abra uma nova aba utilizando as respectivas teclas de atalho; 3 Verifique qual a identificao do novo terminal; 4 Volte para o primeiro terminal; 5 Execute o comando a seguir: $ echo Bom dia meus amiguinhos <Enter>; 6 Agora execute este: $ echo Bom dia meus amiguinhos > /dev/(identificao do segundo terminal); 7 Qual foi o resultado? 8.O pipe igual ao >? Justifique. 9.Crie um arquivo utilizando o vim. Nomeie-o com o seu ltimo nome e siga os passos: a)Insira a seguinte linha: Esta a primeira linha do meu arquivo de texto criado com o VIM. b)Copie esta linha e cole duas vezes, alterando a palavra primeira para segunda e terceira; c)Apague a segunda linha do arquivo; d)Salve e saia do VIM.

65

Debian Bsico - Desktop Paran

10. Comandos Change Directory e List : a)Entre no diretrio /etc/network/ e execute o comando $ ls . Qual foi o resultado? b)Visualize sem sair do diretrio corrente o contedo do diretrio /root, e depois execute $ pwd. Qual foi o resultado que apareceu na tela na execuo dos dois comandos? c)Entre no diretrio /boot/grub e depois v para o diretrio /etc/samba. Agora executa o seguinte comando duas vezes: $ cd -. Em qual diretrio voc est agora? d)V para sua pasta pessoal sem escrever nenhum endereo, somente utilizando o comando Change Directory. Como voc fez isso? e)Visualize do diretrio corrente o contedo do diretrio /dev ativando a opo em linhas. f)Quais so as permisses do Proprietrio, Grupo e Outros do seu diretrio pessoal? 11.Comando Make Directory (acumulativo): a)Crie um diretrio chamado Caneco dentro de /tmp. b)Crie usando apenas uma linha de comando os diretrios Jan, Fev, Mar e Abr dentro de /tmp/Caneco. Como voc fez isso? c)Agora execute o comando $ cd / e depois entre no diretrio /tmp/Caneco e execute o comando $ mkdir 01. Algum erro apareceu? Se sim, qual? d)Crie a seguinte estrutura de diretrios 1/2/3/4/5/6 dentro de /tmp/Caneco usando apenas uma linha de comando. Como voc fez isso? 12.Comando Copy (acumulativo): a)Copie, utilizando um coringa, todo o contedo do diretrio /tmp/Caneco para dentro do diretrio Novo-caneco a ser criado dentro do seu diretrio pessoal. Entre em seu diretrio pessoal utilizando apenas um comando, sem endereo, e ento execute o seguinte comando: ls? b)Crie um backup do arquivo /etc/samba/smb.conf com o nome smb.conf.backup alocando-o no mesmo diretrio do original. Como voc fez isso? 13.Comando Move e Remove: a)Crie o seguinte diretrio: /tmp/a/b/c/d/e/. Crie como VIM um arquivo chamado Saci dentro do diretrio anterior contendo o seguinte contedo: Sou praticamente um hacker invadindo a NASA com tanto conhecimento que adquiri aqui b)Mova apenas o diretrio e para sua pasta pessoal. c)Remova o diretrio c e todo seu contedo. Execute o comando $ ls -R /tmp/a. Qual foi o resultado que apareceu na tela? d)Restaure o arquivo smb.conf.backup com o nome smb.conf apagando o backup, fazendo os dois processos com apenas um comando. 14.O cp e o mv so quase iguais. So to iguais que um chama o outro durante a execuo. Voc consegue me dizer quem chama quem e o que acontece? 15.Descubra qual dos pacotes abaixo j esto instalados no seu sistema. Se estiver, qual a verso: a)broffice.org b)apache2 c)firefox (se no estiver instalado, descubra por que o firefox funciona mesmo assim e explique) $ ls Caneco. Qual foi o resultado do

66

Debian Bsico - Desktop Paran

16. Descubra algum programa que atenda as necessidades abaixo. Identifique o nome do pacote e a sua verso (sempre prefira a ltima): a)Servidor web. b)Programa para descompactar arquivos zip. c)Cliparts para o BrOffice.org. d)Internet Explorer 6. e)OCS. f)Programa para abrir arquivos rar. 17.Instale o seguinte aplicativo:

skype
a)NO INSTALE O PACOTE INDICADO COM O APT E NO EXECUTE NENHUMA VEZ O COMANDO # apt-get install skype; b)Descubra as dependncias (com o comando especfico para isso) e instale todas com o APT; c)Faa download do pacote indicado acima, entre no diretrio de cache e instale-o usando o DPKG. 18.Instale os seguintes aplicativos utilizando o apt:

internet explorer 6
19.Explique exatamente o que acontece quando utilizamos os comandos abaixo (passo-a-passo): a)apt-get install pacote b)apt-get install --resintall pacote c)apt-get remove pacote d)apt-get remove --purge pacote e)apt-get update f)apt-get clean 20.Como fazemos para executar os seguintes binrios sem utilizar os atalhos do path? a)wget: /usr/bin/wget e no somente wget b)audacious c)diff d)file e)ifconfig f)iceweasel 21.Execute os comandos abaixo como superusurio:
# apt-get clean # apt-get remove --purge apache2 # apt-get install apache2 <CTRL> + <C> ANTES DE TERMINAR A INSTALAO

Depois disso, tente instalar qualquer outro pacote, menos o apache. Conseguiu? Se no, como resolver este problema? Explique o que aconteceu.

67

Debian Bsico - Desktop Paran

COMANDOS PARA VISUALIZAO DE CONTEDO DE ARQUIVOS


Os comandos abaixo possuem a mesma finalidade: mostrar o contedo de um ou mais arquivos. Porm eles se comportam de formas diferentes trazendo, tambm, resultados na tela diferentes.

SORT
Existem alguns comandos que nos permitem manipular os dados de arquivos, alterando-os ou no. A maioria s manipula a forma como os dados so apresentados na tela. O sort um deles. Ele organiza alfabtica e numericamente as linhas de um arquivo de texto ou as linhas direcionadas para ele por outro comando.
fcamargo@amontoado:/home/fcamargo/CURSO/OI$ cat DESORDEM 1 3 9 Z A 8 11 10 A1

O arquivo acima est desordenado. Ao se utilizar o comando sort, tanto as letras quanto os nmeros so ordenados.
fcamargo@amontoado:/home/fcamargo/CURSO/OI$ sort DESORDEM 1 10 11 3 8 9 A A1 Z

Perceba que a ordenao no se d de uma forma absoluta. Os critrios de classificao so feitas primeiramente pela primeira coluna. Quando h a repetio de um caractere passa-se para a segunda coluna, e assim por diante. Quando ao empate e no h mais caracteres para serem comparados, a linha mais acima ficar antes. Parmetro -n Descrio Faz a ordenao numrica de acordo com o valor integral do nmero, no tomando como base somente o primeiro caractere. Sem o -n, a linha do nmero 80 ser ordenada antes da linha que tem o nmero 9. Com -n, o 9, por ser menor, ficar antes.

CAT
O cat (concatenater concatenador) emenda vrios arquivos e os mostra no dispositivo de sada padro. No Debian, este dispositivo o prprio Shell que roda o comando. Normalmente o cat utilizado para ver o contedo de um nico arquivo de texto de uma forma mais rpida do que utilizando um editor de texto. ideal para quando voc deseja apenas bater o olho em
68

Debian Bsico - Desktop Paran

alguma informao de algum arquivo de texto curto. Se voc quer saber se os endereos dos repositrios (servidores de pacotes) esto certos, voc executar o seguinte comando:
amontoado:~# cat /etc/apt/sources.list deb http://www.repositorios.eparana.parana/debian lenny main contrib nonfree deb http://www.repositorios.eparana.parana/celepar lenny main contrib nonfree deb http://www.repositorios.eparana.parana/marillat lenny main deb http://www.repositorios.eparana.parana/security lenny/updates main contrib non-free amontoado:~#

Como voc pode perceber, o arquivo de texto sources.list foi mostrado no shell. Voc poderia ver dois documentos ao mesmo tempo, como o /etc/hostname e o /etc/resolv.conf.
amontoado:~# cat /etc/hostname /etc/resolv.conf amontoado domain celepar.parana search celepar.parana nameserver 10.15.16.6 nameserver 10.15.16.8

S
TAC

e voc verificar cada arquivo, ver que o /etc/hostname tem apenas o contedo amontoado, enquanto o /etc/resolv.conf tem as outras cinco linhas.

Faz exatamente o inverso do cat. Ele inverte a ordem das linhas. A ltima linha passa ser a primeira, a penltima a segunda e assim por diante. E, assim como o cat, ele tambm concatena arquivos. Veja abaixo o mesmo exemplo utilizado para o cat s que com o tac:
amontoado:~# cat /etc/hostname /etc/resolv.conf ecelepar91893 nameserver 10.15.16.8 nameserver 10.15.16.6 search celepar.parana domain celepar.parana

HEAD
Quando for necessrio visualizar somente o incio de um arquivo de texto ou ento de uma lista vinda da sada de um outro comando, o HEAD cai como uma luva. O padro mostrar as 10 primeiras linhas, porm isso pode ser alterado com os parmetros. Digamos que o servidor SSH instalado na sua mquina no est na porta 22, que a padro. Voc, como um bom administrador, sabe que essa informao est no arquivo /etc/ssh/sshd_config. E no s isso, sabe que a informao est no comeo do arquivo. Ento, para que sua tela no seja tomada por todas as informaes distribudas em vrias linhas, voc utiliza o HEAD.
fcamargo@amontoado:~$

head /etc/ssh/sshd_config

# Package generated configuration file

69

Debian Bsico - Desktop Paran

# See the sshd(8) manpage for details

# What ports, IPs and protocols we listen for

Port 2012
# Use these options to restrict which interfaces/protocols sshd will bind to #ListenAddress :: #ListenAddress 0.0.0.0 Protocol 2 # HostKeys for protocol version 2

Parmetros -n [nmero] -v

Descrio Define um nmero diferente de linhas que sero apresentadas. Ex: head -n 1 /etc/passwd o modo verbose. Nele a primeira linha reservada para o print na tela do endereo do arquivo.

TAIL
a mesma coisa que o HEAD, s que o inverso. HEAD cabea, TAIL rabo. E o que o inverso faz? Inverte a sada. Em vez de termos as 10 primeiras linhas como resultado, temos as 10 ltimas linhas, sendo todas transpostas, ou seja, a ltima passa a ser a primeira, a segunda passa a ser a penltima, e assim por diante.
amontoado:~# tail /var/log/dmesg [ 10.182043] input: ImExPS/2 Generic Explorer Mouse as /class/input/input4 [ 10.248833] parport_pc 00:08: reported by Plug and Play ACPI [ 10.248833] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] [ 10.786889] Adding 1919756k swap on /dev/hda4. Priority:-1 extents:1 across:1919756k [ 11.078084] powernow: This module only works with AMD K7 CPUs [ 11.511270] kjournald starting. Commit interval 5 seconds [ 11.511270] EXT3 FS on hda1, internal journal [ 11.511270] EXT3-fs: mounted filesystem with ordered data mode. [ 11.598659] XFS mounting filesystem hda3 [ 11.708096] Ending clean XFS mount for filesystem: hda3

Parmetros Descrio -n [nmero] -v -f Define um nmero diferente de linhas que sero apresentadas. Ex: head -n 1 /etc/passwd o modo verbose. Nele a primeira linha reservada para o print na tela do endereo do arquivo. Mantm o comando tail aberto, sempre mostrando as ltimas informaes que foram inseridas ao arquivo. Ideal para logs que se deseja monitorar.

70

Debian Bsico - Desktop Paran

MORE
Permite que o administrador possa visualizar um arquivo ou a sada de um comando (este ltimo em conjunto do pipe) de forma paginada. Ou seja, a tela trava na primeira linha e depois vai percorrendo a tela atravs do pressionamento da tecla <Enter>. Cada pressionada equivale a uma linha percorrida. Isto permite uma leitura mais apurada do texto. No canto inferior direito, um controle diz quantos porcento do documento j foi mostrado na tela. S possvel percorrer o documento para baixo.
amontoado:/Curso# more /etc/ssh/sshd_config # Package generated configuration file # See the sshd(8) manpage for details # What ports, IPs and protocols we listen for Port 22 # Use these options to restrict which interfaces/protocols sshd will bind to #ListenAddress :: #ListenAddress 0.0.0.0 Protocol 2 --More--(34%)

O <Espao> faz com que a transio, em vez de linha em linha, seja de tela em tela.

LESS
Similar ao more, com a diferena que a navegao pelo documento feita com as setas direcionais. Isto permite que o documento posso seja navegado tanto para baixo quanto para cima. Na verdade, por este motivo, este comando uma verso do more melhorada. O <Espao> faz com que, em vez de linha em linha, a visualizao seja de pgina em pgina, e o <Esc> faz a mesma coisa, s que volta uma tela.

NL
Mostra o contedo de um arquivo com a numerao das linhas. Utilizando apenas o comando nl e definindo o arquivo, a numerao feita ignorando as linhas em branco. Usando o parmetro -ba, todas as linhas sero numeradas, inclusive as que estiverem em branco.
amontoado:~# nl /etc/network/interfaces -ba 1 # This file describes the network interfaces available on your system 2 # and how to activate them. For more information, see interfaces(5). 3 4 # The loopback network interface 5 auto lo 6 iface lo inet loopback 7 8 # The primary network interface 9 allow-hotplug eth0 10 iface eth0 inet dhcp

71

Debian Bsico - Desktop Paran

COMANDOS PARA PESQUISA


Estes comandos permitem que voc pesquise arquivos e diretrios dentro da estrutura de arquivos dos sistemas Debian. Os comandos, apesar de parecerem ser semelhantes, diferem ou na forma como procuram arquivos, ou na forma como trazem os resultados, ou pelos critrios de pesquisa diferentes.

FIND
Procura arquivos dentro da estrutura de diretrios ou ento mostra o contedo do diretrio especificado recursivamente. Sintaxe: find <a partir de que local> [parmetro] <dados para os parmetro> Voc pode usar quantos parmetros desejar, refinando sua pesquisa. S no esquea de colocar o diretrio a partir do qual a pesquisa ser iniciada. O find entrar nele e ir procurando at o ltimo arquivo do seu ltimo subdiretrio. como se tivssemos uma semireta que serveria de campo de pesquisa. Podemos tornar essa semireta um segmento de reta (com um ponto inicial e um ponto final) atravs do parmetro -maxdepth. Se voc desejar que a pesquisa seja feito em toda a estrutura de diretrios, voc poder definir o ponto de partida como / (barra).

Parmetros

Descrio

-name <info> Procura um arquivo ou diretrio que possua estritamente o mesmo nome com a mesma caixa dos caracteres (case sensitive). Exemplo: #find / -name Tio Macal <ENTER> Se existir algum arquivo ou diretrio com o nome tio macal, no ser mostrado no resultado. -iname Procura um arquivo ou diretrio que possua estritamente o mesmo nome, mas permite que a caixa dos caracteres seja diferente (no case sensitive). Exemplo: #find / -iname Tio Macal <ENTER> Se existir algum arquivo ou diretrio com o nome tio macal, ele ser mostrado no resultado. Procura arquivos que possuam um determinado tamanho. Voc pode definir o tamanho exato do arquivo (o problema que, devido aos arredondamentos dos nmeros reais, que so quebrados, muito difcil voc encontrar um arquivo pelo tamanho certo), ou definir se devero ser mostrados arquivos maiores ou menores que o valor dado ao parmetro. Exemplo: #find /boot -size +5M <ENTER> Voc poder procurar por KB (use o k minsculo), MB (use o M) e o GB (use o G). Define o nmero mximo de nveis que o comando find dever descer para fazer sua pesquisa. O diretrio que foi definido com ponto inicial assumir o valor de nvel 1. Cada nvel abaixo dever ser incrementado pelo nmero um. Exemplo: O arquivo oi.txt est dentro de /curso/1/2/3/4/. $find /curso/1 -maxdepth 4 -name oi.txt <ENTER> Ir encontrar /curso/1/2/3/4/oi.txt $find /curso/ -maxdepth 4 -name oi.txt <ENTER> No ir encontrar, porque ele parar no diretrio /curso/1/2/3. Define quantos nveis abaixo o comando find dever descer a partir do local definido como ponto inicial da pesquisa. O nmero que voc coloca ao lado do parmetro o nmero de nveis abaixo, contando um no diretrio especificado, que o find dever iniciar a pesquisa.

-size

-maxdepth

-mindepth

72

Debian Bsico - Desktop Paran

Parmetros

Descrio Exemplo: agora temos o arquivo eita.txt dentro do diretrios /curso/1/2/. $find /curso/1 -mindepth 3 -name eita.txt <ENTER> Nada ser encontrado. $find /curso/1 -mindepth 2 -name eita.txt <ENTER> Encontrar. /curso/1/2/eita.txt

-type

Permite que voc pesquise arquivos que sejam somente do tipo que voc venha a especificar, como diretrios, arquivos especiais de bloco, caracteres, links, socketes, etc. Voc s poder colocar uma letra por vez. b = arquivos especiais de bloco c = arquivos especiais de caractere d = diretrios l = link simblico s = arquivo especial de soquete p = arquivo especial de pipe f = arquivos regulares (arquivos normais) Exemplo: No exemplo abaixo, pedimos ao find que procure todos os arquivos pipe do computador: # find / -type p /var/lib/gdm/.gdmfifo /dev/xconsole /dev/initctl

Listagem Recursiva
Na verdade, o que o find faz listar recursivamente todos os arquivos e diretrios a partir de onde voc especificar. Conseguimos pesquisar com ele atravs dos filtros que utilizamos atravs dos parmetros, filtros esses que chamamos de critrios para a pesquisa. Ento se no colocarmos nenhum critrio, a listagem recursiva ser feita da mesma forma. Digite find seguido do diretrio a partir do qual a listagem recursiva ser feita. Digamos que estajamos no diretrio /curso e queiramos ver seu contedo e o contedo de todos os seus subdiretrios. Basta executar o comando abaixo:
fcamargo@amontoado:~$ find /curso/ /curso/ /curso/arquivo1.txt /curso/arquivo2.txt /curso/arquivo3.txt /curso/Diretrio /curso/Diretrio/dorivalcaymmi.mp3

Q
LOCATE

uando voc usa um critrio de string (iname ou name), s retornar exatamente os arquivos ou diretrios que casem exatamente com o que voc escreveu. Se voc

pesquisa OI e s existir AOI, o find no trar o resultado. Para resolver esses problemas voc pode usar os coringas (*, ?, [n]), como explicado no incio da apostila.

Pesquisa arquivos atravs de uma lista criada pelo comando updatedb. muito mais rpido que o find, pois este varre toda a estrutura de diretrios em busca dos arquivos, enquanto o locate deixa uma lista base pronta com todos os arquivos e diretrios indexados (como se fosse um cache) pronto para trazer um resultado a voc. Imagine duas casas. Voc precisa de um inventrio completo das
73

Debian Bsico - Desktop Paran

duas. Ao executar o updatedb, voc vai at as casas e faz o inventrio (demora um pouco), mas se voc precisar novamente desta informao, no precisar ir at as casas novamente, e sim simplesmente pegar o inventrio que j est pronto e verific-lo. J o find ir s casas todas as vezes que for solicitado. A vantagem do locate que as pesquisas ficam bem mais rpidas, j a desvantagem o fato de voc ter que rodar periodicamente o updatedb para que sua lista base no fique desatualizada.
petinhodavovoh@amontoado:/home$ locate feio /curso/muito-feio.jpg /curso/feio

O
GREP

locate no pesquisar estritamente o termo entregue a ele. Ele retornar tambm termos que tenham incrementos antes ou depois da string usada como critrio. Se

voc quiser que ele busque apenas arquivos ou diretrios que casem exatamente com a string colocada, use o parmetro -w antes do termo. Exemplo: locate -w feio

Sintaxe: grep [parmetros] <termo.a.ser.pesquisado> <arquivo.a.ser.pesquisado> O grep uma importante ferramenta que permite a pesquisa de strings (conjunto de caracteres, ou termos) que esto dentro de um arquivo. A sada mostrada na tela com o endereo absoluto dos arquivos que contenham o termo e a linha completa de qual ele faz parte, separados por dois pontos(:). Uma forma interessante de se usar o grep, descobrir o nome e localizao de arquivos que s se conhea o contedo. Ao contrrio dos outros comandos de pesquisa, ele no leva em considerao o nome dos arquivos, mas sim o contedo. Digamos que precisamos alterar um arquivo, mas esquecemos qual o seu nome e sua localizao. A nica coisa que lembramos alguma coisa do seu contedo. Por exemplo: quero saber qual o arquivo que contm o nome da mquina utilizado pelo sistema. Sei que o arquivo est dentro do /etc, mas no sei qual dos vrios o certo.
amontoado:~# grep amontoado /etc/* /etc/hostname:amontoado <PRIMEIRO ARQUIVO> /etc/hosts:127.0.1.1 amontoado.celeparsl amontoado <SEGUNDO ARQUIVO> /etc/motd:Linux amontoado 2.6.26-1-686 #1 SMP Fri Mar 13 18:08:45 UTC 2009 i686 <TERCEIRO ARQUIVO>

erceba que usamos o coringa, j que temos que passar arquivos para o comando. O asterisco substitui os nomes. Caso coloque-se s o diretrio, no ir funcionar.

Ele muito utilizado junto ao pipe. Lembra-se quando estudamos o pipe e tnhamos o comando garimpe (pgina 42)? Agora que voc j possui base suficiente em relao a teoria e comandos bsicos, substitua o garimpe pelo grep e voc conseguir entender bem a funo dos dois em conjunto. Uma boa utilidade para ele mostrada abaixo:
# dpkg -l |grep broffice.org ii broffice.org 1:3.0.1-7~bpo50+1 BrOffice.org office suite

74

Debian Bsico - Desktop Paran

COMANDOS DIVERSOS
Existem vrios comandos que so necessrios serem conhecidos por diversos motivos. O administrador pode, com eles, gerenciar contas, redes, arquivos, ou seja, tudo que inerente s suas atividades. Ento eles sero a caixa de ferramentas do administrador, um conjunto de ferramentas no especficas para gerenciamentos, que servem como mo na roda em muitos casos.

ALIAS
Sintaxe: alias apelido='comando [parmetros]' Permite que o usurio crie um apelido para comandos com, inclusive, parmetros. Em vez de dar o comando que desliga o computador shutdown -h now, pode ser criado um alias chamado win.exe. Assim, o apelido chamar quem ele apelida.
amontoado:~# alias win.exe='shutdown -h now' amontoado:~# alias alias win.exe='shutdown -h now' amontoado:~# win.exe

Com o ltimo comando do exemplo acima, o computador ser desligado. O apelido s ter validade dentro da sesso que o usurio estiver. Toda vez que um usurio inicia uma sesso, as informaes contidas no arquivo ~/.bashrc so carregadas. Com isso, qualquer configurao utilizando o comando alias sobrescrita. Se o usurio desejar inserir um alias permanente, deve inserir nesse arquivo uma linha com as informaes da mesma forma como mostrado acima, somente sem o nome do comando na frente.
if [ -f /etc/bash_completion ]; then . /etc/bash_completion fi win.exe='shutdown -h now'

e voc abrir um novo terminal virtual (tty) ou ento uma nova aba num terminal emulado (pts), mesmo que a sesso que voc tenha criado o alias atravs de linha de

comando estiver ativa, as variveis de sistema sero restauradas de acordo com o arquivo ~/bashrc.

BADBLOCKS
Sintaxe: badblocks [parmetros] /dev/disco Discos de mdia possuem unidades de armazenamento que chamamos de blocos. Esses blocos so compostos de vrios setores (espaos criados por linhas radiais que cortam as trilhas dos discos). Estes setores armazenam dados, se for uma mdia magntica, atravs da polarizao de sua superfcie (carga positiva igual a 1 e negativa igual a 0). Se algum ponto da mdia perder sua polarizao, ou seja, perder a sua carga eltrica, ele no reagir a cabea de leitura e no ser mais capaz de armazenar dados. Se dados j estiverem nele, sero perdidos; se dados forem destinados a eles, no sero armazenados e sero perdidos. O grande problema que, quando algum desses setores perde sua capacidade de

75

Debian Bsico - Desktop Paran

armazenamento, o sistema de arquivos no percebe e continua mandando dados. Somente ser possvel perceber o problema se o comando badblocks quando, na recuperao de dados, o sistema de arquivos perceber que faltam informaes, dando a mensagem de que o arquivo est corrompido. O comando badblocks permite que o administrador verifique se existe algum bloco com setores defeituosos. Ele no corrige nada, somente alerta que h um problema, podendo ento, o administrador fazer algo para tentar contornar o problema.
amontoado:~# badblocks -v /dev/hda2 Checking blocks 0 to 19535039 Checking for bad blocks (read-only test): done Pass completed, 0 bad blocks found.

Parmetro -o <nome> -i <nome>

Descrio Cria um arquivo com o nome definido pelo administrador com o registro de todos os blocos defeituosos do disco. Ignora os blocos defeituosos que estiverem registrados no arquivo especificado. Isso torna o processo mais rpido, j que aqueles espaos com problemas j conhecidos no sero verificados novamente. Mostra na tela o progresso da checagem dos blocos defeituosos. O padro fazer a checagem silenciosamente, ou seja, sem mostrar nada na tela.

-v

Voc pode executar o comando como usurio normal ou como superusurio. O comando acima foi executado como superusurio, mas se voc desejar execut-lo como usurio normal ter que passar o caminho completo, j que no est dentro do path do usurio.

ath o nome da varivel que contm todos os diretrios nos quais so alocados os comandos que o usurio consegue executar sem ter que informar o caminho completo

do seu binrio. como se fosse um DNS para comandos de cada usurio. Existem alguns comandos que os usurios normais no conseguem executar somente chamando-o pelo nome, como o ifconfig, mas se o caminho completo (/sbin/ifconfig) for fornecido o comando executado. Isso se deve ao fato desses comandos s estarem dentro do path do superusurio.

CLEAR
Sintaxe: clear Limpa a tela inteira. Voc precisar usar a linha de comando para a limpeza da tela. Se quiser limpar a tela mantendo a linha de comando que j contenha alguma informao mais interessante usar as teclas de atalho <CTRL>+<L>.

DATE
Sintaxe: date [+%parmetro(s)] Mostra a data do sistema.

76

Debian Bsico - Desktop Paran

fcamargo@amontoado:~$ date Fri Jan 30 17:29:53 BRST 2009

Se voc quiser criar um script e colocar nele uma opo para gravar a data do dia da execuo do comando em um log, voc poder colocar num formato diferente.
fcamargo@amontoado:~$ 30 fcamargo@amontoado:~$ 01 fcamargo@amontoado:~$ 2009 fcamargo@amontoado:~$ 30012009 date +%d date +%m date +%Y date +%d%m%Y

Outras opes: %d %m %Y %H %I %M %j %r %T %w Dia do ms (00-31) Ms do ano (00-12) Ano (2009-2010) Hora (00-24) Hora (00-12) Minuto (00-59) Dia do ano (1-366) Formato completo com o padro 12 horas Formato completo com o padro 24 horas Dia da semana

DF
Sintaxe: df [parmetros] Mostra a utilizao de todos os discos que o sistema tem acesso.
amontoado:~# df -h Sist. Arq. Tam Usad Disp Uso% /dev/hda2 19G 3,3G 16G 18% tmpfs 502M 0 502M 0% udev 10M 52K 10M 1% tmpfs 502M 4,0K 502M 1% /dev/hda1 92M 26M 62M 30% /dev/hda3 278G 29G 249G 11% //sceleparsmb03.celepar.parana/fcamargo 48G 22G 27G 45% Montado em / /lib/init/rw /dev /dev/shm /boot /home /media/fcamargo

Teremos as seguintes colunas:

Sist. Arq.: Todas as parties com sistemas de arquivos prprios os quais o sistema tem Tam: Tamanho total da partio. Usad: Total da partio que j est sendo utilizada. Disp: Total da partio que est disponvel. Uso%: Porcentagem de uso da partio. Montado em: Endereo do diretrio que permite que exista acesso ao contedo da partio.

acesso.

77

Debian Bsico - Desktop Paran

DMESG
Sintaxe: dmesg Durante a inicializao do computador, o kernel gosta de ficar falando tudo que faz. Esse falar exteriorizado em forma de registros num buffer (espao dinmico da memria) que o dmesg l sempre que executado. Ele muito interessante para procurar algum problema que aconteceu na inicializao, como uma placa de rede que no est funcionando, o servidor grfico que no consegue subir. Para filtrar sua pesquisa, interessante utilizar junto a ele o grep.
amontoado:~# dmesg |grep eth0

ECHO
Sintaxe: echo <mensagem ou varivel> Ele mostra o valor de uma varivel ou uma mensagem definida pelo usurio, na sada padro, ou ento em uma outra sada definida atravs dos redirecionadores (visto na pgina 40).
amontoado:~# echo "Meu baralho" Meu baralho amontoado:~# echo "Meu baralho num arquivo" > oi.txt amontoado:~# cat oi.txt Meu baralho num arquivo amontoado:~# echo $USERNAME root amontoado:~# echo $USERNAME >> oi.txt amontoado:~# cat oi.txt Meu baralho num arquivo root

Coisas interessantes para se fazer com o echo:

Visualizar valores de variveis. Se voc tiver com problemas na instalao de pacotes pode

ver se a varivel $http_proxy tem algo configurado. Se tiver, zere as configuraes para ver se consegue instalar o pacote;

Fazer alteraes em arquivos de texto. Se voc quiser adicionar suporte sudo a um

usurio, no necessrio nem entrar no arquivo. Como superusurio, use o echo fcamargo ALL=NOPASSWD:ALL >> /etc/sudoers, que esta informao ser inserida no fim do documento;

Insero de mensagens a usurios em scripts. As vezes, nos scripts, interessante que

os comandos no rodem somente no nvel de programa, mas que eles tragam alguma informao ao usurio, como um diretrio que foi criado pelo script, ou ento um comando de erro, dizendo exatamente o que houve de errado.

FREE
Sintaxe: free [parmetros] Visualizao da utilizao da memria pelo sistema. O computador t arriando? Ento v dar uma olhada ver se no problema de memria.
amontoado:~$ free -m total Mem: 1003 used 945 free 58 shared 0 buffers 0 cached 423

78

Debian Bsico - Desktop Paran

-/+ buffers/cache: Swap: 1874

521 0

482 1874

possvel visualizar na primeira linha a utilizao real da memria principal. Na segunda, o free informa a quantidade de memria disponvel para novos processos desconsiderando buffers cached. E a terceira mostra as informaes de Swap (memria virtual). Buffers e caches podem ser entendidos como uma coisa s (somente por hora). Eles representam espaos na memria que, apesar de terem dados armazenados, podem ser liberados a qualquer necessidade. Sempre que algum programa aberto, seus dados so carregados na memria principal; e aps seu encerramento, estes dados permanecem na memria para que o seu carregamento, numa possvel ressurreio do processo, seja feita rapidamente, j que ele j est carregado em segundo plano. Isso ocupa a memria e representado pela soma das colunas buffers e cached.

coluna shared obsoleta. Veja o que diz o manual criado pelo prprio desenvolvedor da ferramenta: The shared memory column should be ignored; it is obsolete.

Agora podemos comear a entender os dados apresentados pelo comando free. Na primeira linha temos, em ordem, o total de memria RAM disponvel (j descontado o espao reservado para o vdeo, configurvel na BIOS); em used apresentado a soma do que est sendo usado por processos ativos com os que j foram finalizados; depois o total que est completamente livre de dados; e, em buffers cached, possvel ver a quantidade da memria que est sendo usada que poder ser descarregada a qualquer momento. Na segunda linha temos as mesma informaes que na primeira linha, porm ele desconta o buffers cached da conta final. O total o mesmo que da primeira linha. O used representa apenas aquilo que est sendo usado por processos ativos, ou seja, que no podem ser descarregados da memria; e em livre temos a soma do que est totalmente livre de dados mais o que pode ser descarregado a qualquer momento. Por fim, temos o swap. Swap uma rea dentro do HD que serve como uma extenso da memria RAM, caso ela no consiga alocar todos os dados dos processos ativos, que no podem ser descarregados. Obviamente que esta rea, se utilizada, derruba o desempenho do sistema, por isso se ela comear a ser usada, considere a ideia de se aumentar a quantidade de memria RAM do seu computador.

Entendendo a coluna cached


O cached (escondido em ingls) quase igual ao cache dos processadores, porm ele virtual e tem seu tamanho varivel, sempre limitado pelo tamanho da memria RAM. A memria RAM muito mais rpida que discos rgidos e barramentos de acesso a outras formas de armazenamento de dados. Quando um processo executado, pressupe-se que ele um processo popular, por isso, os sistemas operacionais modernos, retm-no na memria mesmo aps o seu encerrado. Isso feito para que caso ele seja aberto novamente j esteja na memria e seu carregamento total seja muito mais rpido do que se fosse necessrio busc-lo nos dispositivos de armazenamento secundrio novamente. Ou seja, os processos frequentemente usados que so encerrados so mantidos na memria em segundo plano para que possam
79

Debian Bsico - Desktop Paran

ser abertos mais rapidamente posteriormente.

Entendendo a coluna buffers


Buffers tm outra funo. Eles servem como uma fila de dados que vm de algum disco sem serem solicitados explicitamente pelo sistema. Estes dados bices na verdade tm uma grande probabilidade de serem utilizados pelo seguinte motivo: um disco composto por cilindros, trilhas e setores.

Figura 11: Cilindros, trilhas e setores

Toda vez que um setor requisitado, a cabea de leitura do disco posiciona-se sobre a trilha e a l inteira. Muitos setores compe uma trilha, ou seja, muitos setores so lidos em apenas uma ao de leitura da cabea. Os sistemas operacionais tm um sistema de checagem de integridade de dados muito exigente. Toda vez que um dado requisitado, o sistema solicita controladora do disco que entregue apenas o primeiro setor correspondente quele dado. Somente aps a verificao deste setor, ele pede o segundo, e assim por diante. Isso quer dizer que toda vez a cabea l a trilha inteira, mas s aproveita um setor, depois tem que ler novamente a trilha inteira para aproveitar o segundo setor e assim por diante. Essa leitura de toda trilha com baixo aproveitamento faz com que o desempenho do sistema caia muito. Os buffers so dados armazenados numa rea virtual, dinmica e redimensionvel, limitada pelo tamanho da memria RAM, que recebe todos os setores de uma trilha mesmo que no solicitados. Como quase impossvel alguma informao ocupar apenas um setor, praticamente certo que o sistema usar estes outros setores da trilha. S que em vez de esperar o disco rgido, aps verificar a integridade de um setor, ele solicitar o prximo setor que j estar na memria RAM, agilizando o processo.

LN
Sintaxe: ln [parmetros] <ponto-alvo> <nome-do-link> Este comando ir criar links entre arquivos ou diretrios. Pode-se associar a ideia de link com atalhos do Windows, mas nos sitemas unix-like o link bem mais completo. Existem dois tipos de link: softlink e hardlink.

80

Debian Bsico - Desktop Paran

Softlink ou Link Simblico


um arquivo especial que contm apenas o endereo do arquivo para qual aponta. Quando voc abre um arquivo que link, na verdade ele solicita que o arquivo alvo seja aberto. Se o arquivo alvo for apagado, o link simblico passa a ser inutilizvel, j que ele tentar abrir o arquivo inexistente. Propriedades do softlink: 1. Podem ter como alvo tanto arquivos quanto diretrios; 2. O link simblico e o arquivo alvo no precisam estar na mesma partio do disco; 3. Qualquer usurio pode criar ou excluir um link simblico, respeitando as devidas permisses.

Hardlink
atribudo somente a arquivos, nunca a diretrios. O hardlink funciona mais ou menos como um espelho de um arquivo j existente, mas um pouco mais complicado que isso. Imagine dados gravados fisicamente no disco rgido que recebero o nome de Boeing. Boeing acessado atravs de uma abstrao criada pelo sistema de arquivos, que como se fosse uma lista de tudo que existe no disco. Quando o sistema operacional quer acessar os dados fsicos referentes a Boeing, ele no procura no disco diretamente, mas sim vai at essa lista e procura o nome Boeing que est associado ao seu endereo no disco. Aps encontr-lo, pede controladora do disco que envie os dados do endereo encontrado. Quando criamos um hardlink, criamos uma nova entrada nesta lista com outro nome, mas referenciando exatamente o mesmo local. Digamos ento que criamos um hardlink chamado Boneca. Ento temos os dados Boeing que podem, agora, ser encontrados pelo sistema operacional na lista tanto pelo nome Boeing, quanto pelo nome Boneca. Cada um desses nomes denotado na forma de um arquivo, ou seja, temos abstratamente dois arquivos, porm fisicamente apenas um. Se apagarmos o arquivo Boeing, ele sai da lista do sistema de arquivos, mas os dados armazenados fisicamente continuam acessveis atravs do arquivo Boneca. Somente aps a excluso do ltimo arquivo que referencia os dados no disco rgido que aquele espao ser dado como disponvel, podendo o sistema operacional utiliz-lo a qualquer momento. O arquivo deixou de existir. 1. S se pode criar um hardlink para um arquivo; 2. O link e o arquivo alvo devem estar na mesma partio; 3. Somente o superusurio pode criar e apagar um hardlink.

Exemplo de comparao
amontoado:/Curso# echo "Primeira Linha" > ALVO amontoado:/Curso# ln -s ALVO Link-Simblico amontoado:/Curso# ls ALVO Link-Simblico amontoado:/Curso# ls -l total 4 -rw-r--r-- 1 root root 15 Fev 19 16:59 ALVO lrwxrwxrwx 1 root root 4 Fev 19 16:59 Link-Simblico -> ALVO amontoado:/Curso# cat Link-Simblico Primeira Linha amontoado:/Curso# ln ALVO Hard-Link amontoado:/Curso# ls -l total 8 -rw-r--r-- 2 root root 15 Fev 19 16:59 ALVO

81

Debian Bsico - Desktop Paran

-rw-r--r-- 2 root root 15 Fev 19 16:59 Hard-Link lrwxrwxrwx 1 root root 4 Fev 19 16:59 Link-Simblico -> ALVO amontoado:/Curso# cat Hard-Link Primeira Linha amontoado:/Curso# echo "Segunda Linha" >> ALVO amontoado:/Curso# cat ALVO Primeira Linha Segunda Linha amontoado:/Curso# cat Link-Simblico Primeira Linha Segunda Linha amontoado:/Curso# cat Hard-Link Primeira Linha Segunda Linha amontoado:/Curso# rm -f ALVO amontoado:/Curso# cat Hard-Link Primeira Linha Segunda Linha amontoado:/Curso# cat Link-Simblico cat: Link-Simblico: Arquivo ou diretrio no encontrado amontoado:/Curso#

SU
Sintaxe: su - <usurio> Assimilao: Switch Usurio Troque de usurio! Este comando ir trocar o usurio que est em primeiro plano no bash aberto. Se voc est como joao e der um su macale, voc passar a ser macale, logicamente que s se souber a senha. Se, como macale, voc usar o comando para encerrar a sesso, o usurio que estava logado antes voltar ao primeiro plano, no caso o joao. O - no necessrio, mas importante, j que ele carrega todas as variveis de ambiente especficas do usurio.

TIME
Sintaxe: time [parmetros] E voc comea a ficar habilidosa, adquirir competncias, dentre elas desossar nos scripts. Cria um script que uma bblia. Agora voc quer saber em quanto tempo este novo script vai rodar. Dificilmente a execuo ser feita num mesmo tempo todas as vezes, j que esta tarefa depende de processamento, que envolve trfego de dados e hardware. Mas os valores normalmente sero prximos. A voc descobre uma forma de tirar metade da fonte do seu script, e voc acha que essa alterao vai tornar a execuo dele mais rpida. Como saber se essa sua proposio verdadeira? Teste.

amontoado# time ./Script-que-nao-faz-nada real 0m27.110s user 0m2.748s sys 0m5.684s

Existem trs linhas com valores diferentes. O real indicar o valor de espera do usurio, aquele que, se cronometrarmos com nosso relgio velho de pulso, dar o mesmo tempo. O user indicar quanto tempo o kernel dedicar somente ao seu processo (j que outros processos, chamadas de sistemas, entre

82

Debian Bsico - Desktop Paran

outras coisas tomaram tempo do sistema); e sys indicar quanto tempo o processador se dedicar ao processo (lembre-se que os sistemas baseados em Unix compartilham o processador).

TOUCH
Sintaxe: touch [parmetros] <Arquivo/Diretrio> O touch permite que a data de modificao ou criao de um arquivo ou diretrio seja alterado. Ele possui uma segunda funo, que a criao de um arquivo de texto sem contedo. Ele s criar este novo arquivo, se for especificado um nome de arquivo ou diretrio que no exista.
amontoado:/Curso# ls -l total 0 amontoado:/Curso# touch Eita amontoado:/Curso# ls -l total 0 -rw-r--r-- 1 root root 0 Fev 26 09:56 Eita amontoado:/Curso# date Qui Fev 26 11:00:13 BRT 2009 amontoado:/Curso# touch Eita total 0 -rw-r--r-- 1 root root 0 Fev 26 11:00 Eita amontoado:/Curso# touch -t 01261200 Eita amontoado:/Curso# ls -l total 0 -rw-r--r-- 1 root root 0 Jan 26 12:00 Eita

Temos trs formas diferentes de utilizao do comando touch. O primeiro foi usado com um nome de arquivo/diretrio no existente. Isso fez com que fosse criado um arquivo novo com o nome especificado. Depois, numa hora diferente, o touch foi usado com o arquivo que j existia. Isto fez com que a data de modificao tenha sido alterada. Por ltimo, a data e hora foi especificada com o parmetro -t. A sintaxe a seguinte: -t MS(Jan-Dez) | DIA(01-31) | HORA(01-23):MIN(01:59) Nome-do-arquivo/Diretrio.

P
UNAME

erceba que o resultado igual s informaes mostradas atravs do comando ls -l. Ento basta dar o ls -l e usar a cola. Copie, evite a fadiga de decorar.

Sintaxe: uname [parmetros] Assimilao: Qual uname do kernel? Mostra informaes do sistema, entre elas, informaes sobre o kernel. As vezes, como um bom administrador, voc precisar instalar um pacote na unha, baixando pacotes e bibliotecas da internet, ou ento ter que compilar aplicaes. Para fazer isso, ser necessrio que voc saiba qual o kernel (linux, hurd, etc) e a release dele (2.6.26-1-686 por exemplo). Utilizando o parmetro -a (all - tudo) possvel visualizar vrias informaes do sistema.
amontoado# uname -a Linux ecelepar10160 2.6.26-1-686 #1 SMP Sat Jan 10 18:29:31 UTC 2009 i686 GNU/Linux

83

Debian Bsico - Desktop Paran

Informaes em ordem:

Kernel Nome do computador Release do kernel . Da Arquitetura Nome do grupo desenvolvedor do kernel

UPTIME
Sintaxe: uptime [parmetros] A principal funo deste comando informar ao administrador h quanto tempo o computador est rodando. Alm disso, podemos obter mais informaes atravs dele.
felipe@amontoado:~$ uptime 11:49:03 up 2:25, 7 users, load average: 0.14, 0.09, 0.13

O primeiro campo informa qual foi a hora que o computador foi ligado. O segundo, aps o termo up, indica h quanto tempo o computador est ligado. Ele pode estar em horas ou ento em dias (aparecer o nmero de dias seguido de days). Depois ns temos o load average (mdia de carga). O primeiro valor d a mdia da porcentagem de utilizao do processador no ltimo minuto, o segundo nos ltimos cinco e o terceiro nos ltimos quinze minutos. A mdia de carga indica qual a mdia em porcentagem da utilizao do processador por apenas dois tipos de processos: (a) processos em execuo; (b) processos esperando um recurso do computador ou evento qualquer. Os processos em execuo so aqueles que esto ou sendo processados pelo processador ou esto na fila de processamento, somente aguardando a liberao do processador. Os processos que esperam um evento ou recurso esto ativos, mas ociosos, pois esto esperando um recurso do computador (dados de um disco, pendrive, rede, etc) ou um evento (confirmao do sistema, usurio, concluso de outro processamento, etc) para irem para a fila de processamento. Os valores esto no formato 0.00, sendo que 1 significa 100%. O uptime no assume um valor de 200% caso se tenha um processador de duplo ncleo. O que ele faz atribuir 50% da capacidade de processamento para cada ncleo. Se temos um processador com ncleo duplo que est com mdia de 100% de utilizao (1.00) e voc o troca por outro com mesmas especificaes, s que com 4 ncleos, a mdia ser de 50% (0.50), e no 100% como antigamente. Faa uma regra de trs tendo a soma dos ncleos igual a 1.00 para saber como anda a utilizao do seu processador. possvel se ter um valor maior que 100%, ou seja, maior que 1.00. Isso possvel porque alm dos processos que esto em processamento, que podem vir a ocupar o processador totalmente durante todo o tempo, fazendo com que mdia seja 1.00, contabiliza-se os outros processos, mencionados acima, que esto na fila de processamento. Essa fila caracteriza o excesso, representado pelo valor acima de 1.00, e o que ir indicar em quanto o seu processador precisaria ser aumentado para dar conta do recado.

WHATIS
Sintaxe: whatis <comando-que-voce-nao-lembra-o-que-faz> Ele fala mais do que concisamente o qu um comando faz. Conhece todos os comandos, mas esqueceu o que exatamente um em especfico faz? Use o whatis.

84

Debian Bsico - Desktop Paran

dercy@amontoado:~$ whatis whatis whatis (1) - display manual page descriptions

WATCH
Sintaxe: watch <comando-que-ser-observado-de-perto> Precisa que um comando seja executado de 2 em 2 segundos para que voc verifique o comportamento de algum recurso o processo? O watch a ferramenta certa. Ele sempre trabalha com um comando, por isso se voc precisar, por exemplo, assistir as alteraes em um arquivo de log em tempo real, ser necessrio utilizar um comando que mostre o contedo do arquivo, como cat, head, tail, antecedido do watch.
$ watch tail /~/Curso/Arquivo-de-Log Every 2,0s: tail /~/Curso/Arquivo-de-Log Wed Apr 15 09:19:26 2009

Agora ser aberta uma nova aba, utilizando as teclas de atalho <CTRL>+<SHIFT>+<T>, e o comando abaixo ser executado:
$ echo Serah que isto darah certo? >> /~/Curso/Arquivo-de-Log

Ao voltar para a aba anterior, verificaremos que o watch ter pegado a alterao:
Every 2,0s: tail /~/Curso/Arquivo-de-Log Serah que isto darah certo? Wed Apr 15 09:20:01 2009

Para sair do watch, utilizamos as teclas de atalho <CTRL>+<C>.

WHICH
Sintaxe: which <comando-que-voce-quer-descobrir-o-endereo-e-nome-do-binrio> E onde est o safado do binrio do comando que voc executa sem precisar passar o caminho, j que ele est no seu path? O which lhe dir, pode confiar.
tiao-galinha@amontoado:~$ which which /usr/bin/which

REBOOT
Sintaxe: reboot [parmetros] Reinicia o computador. Este comando na verdade ir fazer com que o computador mude de run level, passando do corrente para o run level 1. Existem vrios run level, e quando o sistema entra em um deles, ele executa vrios scripts inerentes a ele. Este assunto bastante interessante e ser abordado no curso Debian Intermedirio, ento se acalmem. Por hora, iremos saber s o que acontece quando entra-se neste run level. Os scripts sincronizam os dados da memria principal com a memria de massa. Isso nada mais do que criar referncias na memria principal dizendo onde exatamente no disco os dados sero gravados. Que dados? Configuraes pessoais, variveis de ambiente, arquivos de backup, etc. Depois ser feita a desmontagem dos dispositivos, momento em que os dados so gravados fisicamente nos discos e dissociados do sistema. Ento s resta descarregar todos os dados da memria e reiniciar o sistema. Em
85

Debian Bsico - Desktop Paran

alguns casos, devido a configuraes no padres que no iremos abordar agora, pode ser que o reboot no acione o init 1, sendo invocado no seu lugar o comando shutdown -h now, que faz a mesma coisa, s que com comandos prprios.

HALT
Sintaxe: halt [parmetros] O halt (parar em ingls) far a mesma coisa que o reboot, porm em vez de usar o init 1, ele usa o init 0. A diferena est apenas no fato deste run level, em vez de reiniciar o sistema, acionar a chave que interrompe a alimentao de energia do computador, desligando o computador.

SHUTDOWN
Sintaxe: shutdown [parmetros] <momento-da-ao> <mensagem-opcional-broadcast> Este comando independente. No trabalha com init nenhum. Com ele possvel tanto desligar o computador (utilizando o parmetro -h de halt), quanto reinici-lo (utilizando o parmetro -r de reboot). O legal do shutdown que o administrador pode definir uma hora certa para que o computador seja desligado ou reiniciado. Caso a ao deva ser executada ao pressionar do <Enter>, basta escrever now (agora em ingls) aps o comando e seu parmetro.
amontoado:~# shutdown -r now (Ir reiniciar o computador imediatamente); amontoado:~# shutdown -h amontoado:~# shutdown -r 16:02 "O computador ser reiniciado s 16:00" Broadcast message from root@ecelepar10160 (pts/0) 2009):O computador ser reiniciado s 16:00 The system is going DOWN for reboot in 60 minutes! (Thu Feb 19 15:02:58

No ltimo exemplo, o administrador define uma hora para o reiniciamento do computador (16:02) e uma mensagem que ser enviada, para todos os usurios logados, uma hora antes da ao. No exemplo, eu estava no pts/0. Veja o que aparece no pts/1 que estava logado como caiodarocha.
caiodarocha@amontoado:~$ Broadcast message from root@ecelepar10160 (pts/0) 2009):O computador ser reiniciado s 16:00 The system is going DOWN for reboot in 60 minutes! (Thu Feb 19 15:02:58

MONTAGEM DE DISPOSITIVOS (MOUNT E UMOUNT)


O seu computador composto por uma unidade central de processamento, dispositivos de entrada e sada. Tudo que temos acesso atravs do comando cd, ls, cat, ou ento aqueles diretrios e arquivos que visualizamos como cones no nosso gerenciador de arquivos so dados que esto dentro de dispositivos fsicos (hardware) que fazem parte de uma das unidades citadas acima. Estes dispositivos podem ser memria RAM, disco rgido, pendrive, locais da rede, drives de dvd, etc. Todos estes dispositivos so dispositivos de armazenamento de dados que podemos denomin-los como locais que temos acesso. A partir do momento que eles so conectados ao computador, atravs de soquetes, slots ou cabos, eles passam a ter acesso fsico unidade. Quando o sistema ligado, se os mdulos referentes a estes dispositivos (como se fossem os drivers dos dispositivos) estiverem corretamente configurados, ativos e
86

Debian Bsico - Desktop Paran

funcionando, os dispositivos sero reconhecidos e listados como ns de dispositivos. Mas estes ns de dispositivos, como j visto anteriormente, so arquivos especiais que definem dentro da memria RAM espaos destinados a troca de informaes entre o sistema e os dispositivos. Se um dispositivo tiver como informao um A, B e C gravadas fisicamente, dentro do espao reservado na memria ser criado um espelho destas informaes. Se o B for retirado de l, aps um comando de sincronia de dados, dentro do dispositivo s existir um A e um C. O grande problema dessa comunicao feita atravs dos ns de dispositivos que as informaes esto em linguagem de mquina. Para que possamos acessar esta rea de conversao entre sistema e dispositivos dentro da memria RAM, necessrio que se crie um diretrio lgico que aponte para este espao reservado. Os arquivos especiais so os dispositivos e os diretrios que o usurio consegue interagir so os pontos de montagem. Aps ter criado os diretrios, devem ser associados aos arquivos especiais, fazendo com que o sistema saiba que sempre que um arquivo ou diretrio seja criado/excludo/modificado dentro de um ponto de montagem, as informaes devem ser enviadas quele ponto reservado na memria e ento, haver a comunicao com o dispositivo. Resumindo: montagem associao de um espao reservado na memria RAM, que corresponde ao ponto de comunicao do sistema com um dispositivo, a um diretrio lgico, para que os usurios consigam receber e enviar dados para dispositivos que tenham acesso. A montagem de dispositivos deve ser feita sempre pelo superusurio.

mount
Sintaxe: mount [parmetros] <endereo-do-arquivo-especial> <ponto-de-montagem> Vamos montar um disquete, que um dispositivo simples:
amontoado:~# ls /media/floppy0 amontoado:~# mount /dev/fd0 /media/floppy0/ amontoado:~# ls /media/floppy0 filepath.lst mainmenu.txt netrts_a.___ ntrpl readme.txt win2000 win98 linux netrts5.___ nwclient oemsetup.inf rset8139.exe Win95a winnt4

nwserver netrts.inf

Perceba que o ponto de montagem o /media/floppy0. Quando visualizado pela primeira vez, no houve resultado, j que o disquete no tinha sido associado a ele. Aps a execuo do comando mount, o arquivo especial foi associado ao ponto de montagem e agora os seus dados estavam acessveis. Quando o comando mount executado sozinho, ele traz todos os locais que o sistema tem acesso, dizendo qual o ponto de montagem de cada um, seu sistema de arquivos e opes adicionais.

amontoado:~# mount /dev/sda2 on / type xfs (rw) tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755) proc on /proc type proc (rw,noexec,nosuid,nodev) sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) procbususb on /proc/bus/usb type usbfs (rw) udev on /dev type tmpfs (rw,mode=0755) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)

87

Debian Bsico - Desktop Paran

/dev/sda1 on /boot type ext3 (rw) /dev/sda6 on /dados type xfs (rw) /dev/sda5 on /home type xfs (rw) none on /proc/fs/vmblock/mountPoint type vmblock (rw) //sceleparsmb03.celepar.parana/fcamargo on /media/fcamargo type (rw,mand) //sceleparsmb03.celepar.parana/gga on /media/gga type cifs (rw,mand) //sceleparsmb03.celepar.parana/publico on /media/publico type (rw,mand) //10.15.17.19/mpx$ on /media/mpx$ type cifs (rw,mand) /dev/fd0 on /media/floppy0 type vfat (rw)

cifs cifs

C
umount

aso um erro dizendo que o sistema de arquivos deve ser especificado, voc ter que utilizar o parmetro -t de type, tipo em ingls, e o sistema de arquivo desejado. Ex:

mount -t vfat /dev/fd0 /media/floppy0.

Sintaxe: umount [parmetros] Ir desassociar o arquivo especial e o ponto de montagem. Antes de fazer isso, o comando umount ir fazer a sincronia de dados, ou seja, dar a ordem para que os dados gravados no espelho do dispositivo na memria sejam gravados fisicamente nele.
amontoado:~# umount /media/floppy0 amontoado:~# ls /media/floppy0

umount pode ser usado tanto informando o arquivo especial quanto o ponto de montagem.

88

Debian Bsico - Desktop Paran

EXERCCIOS DE FIXAO (PARTE 3)


1.Crie um arquivo com o VIM chamado Tudo Errado que contenha vrias linhas, cada uma com um desses valores: 9 - 66 - 01 - 1 - 003 - (espao)4 - 11 A informao (espao) no deve digitada literalmente. Pressione o <Espao> do teclado. 2.Use um comando para organizar em ordem numrica (levando em considerao a magnitude dos nmeros, e no uma classificao simples da primeira casa ex: 002 3 - <espao> 04) e, na mesma linha de comando, grave o resultado em um arquivo de texto. Algum problema aconteceu? 3.Crie um nico arquivo que contenha as informaes dos seguintes arquivos
hostname fstab issue timezone

Nomeie esse novo arquivo como Concatenacao.. 4.Execute um comando para assistir a atualizao do comando dmesg. Depois disso, insira um pendrive ou retire o cabo de rede do computador. Verifique o que aconteceu. 5.Encontre os seguintes arquivos e coloque os seus respectivos endereos absolutos: Aproveite para dar uma olhada nos arquivos a)debian_version (arquivo que mostra a verso do debian); b)menu_lst (arquivo que possui as configuraes do gerenciador de partida GRUB); c)fstab (arquivo que possui os pontos de montagem e seus sistemas de arquivos); d)cpuinfo (arquivo que possui informaes a respeito do processados); e)(algum nmero) persistent-net-rules (arquivo com a associao do endereo MAC ao nome); f)Encontre todos arquivos que possuam mais de 20MB no seu sistema. g)Encontre todos arquivos especiais de soquete que esto dentro do /dev. 6.Qual o diretrio que est usando mais espao em disco: /boot, /home ou /usr? Qual o espao que cada um est utilizando? 7.Utilizando o comando alias, crie um comando chamado Bom-Dia que resulte numa mensagem no terminal respondendo Pra quem?. 8.Qual a partio e dispositivo (hda2, sdb6, etc) em que est alocado o diretrio /usr/lib? Qual o tamanho total dessa partio e a porcentagem dela que est em uso pelo sistema? O diretrio /usr/lib utiliza quantos porcento da partio? 9.Execute o comando ifconfig como usurio normal. Como voc fez isso? 10. H quanto tempo o seu computador est ligado? 11. Agende para o computador desligar na hora que o instrutor informar. 12. Monte o disquete fornecido pelo instrutor primeiro no modo grfico, desmonte-o, depois no modo texto, desmonte-o. Se existir uma partio Windows no seu computador, monte-a no diretrio /home/<usurio que estiver usando>/Windows e faa com que essa partio seja montada no mesmo diretrio toda vez que o computador for iniciado. 13.Qual a mdia da porcentagem de utilizao do processador nos ltimos 5 minutos?

89

Debian Bsico - Desktop Paran

COMANDOS PARA GERENCIAMENTO DE REDE


Para ser um bom administrador de redes, voc precisar saber o que uma rede. Afirmao bvia, porm muitos administradores no tem total domnio de uma rede simplesmente por no conhecerem conceitos e elementos bsicos dela.

INFORMAES BSICAS
Iremos ento, antes de comear a ver os comandos, entender um pouco alguns conceitos necessrios para uma boa administrao de rede.

IP
o nmero de identificao de uma interface de rede. Numa rede regida pelo protocolo TCP/IP, todos os dispositivos que fazem algum tipo de interfaceamento com a rede recebem um nmero de identificao denominado IP. Esse IP composto por quatro sets de oito bits, sendo cada set denominado octeto. Bits possuem valores binrios. O menor valor de um octeto 00000000 e o maior 11111111. Para facilitar a vida de ns humanos, resolveu-se trabalhar com nmeros de decimais. Convertando 00000000 para decimal, temos o valor 0, ou seja, 0 o menor valor decimal de um dos quatro campos do IP; e 11111111 convertendo para decimal igual a 255, ou seja, 255 o maior valor para um dos quatro campos do IP. 10.15.17.100 = 0000 1010 . 0000 1111 . 0001 0001 . 0110 0100

ara quem tiver curiosidade em saber como se converte nmeros binrios em decimais e vice-versa, veja o anexo na pgina Erro: Origem da referncia no

encontrada.

Redes e faixas disponveis


Existem dois tipos de rede: a fsica e a lgica. A fsica a interconexo de todos os computadores por cabos ou rdio, com vrios elementos de rede, como hubs, roteadores, switches, etc, que fazem com que os dados cheguem nos lugares certos. A lgica a diviso virtual de uma rede fsica. Podemos ter vrios computadores com acesso fsico, mas em redes diferentes devido a configurao de redes lgicas. Uma rede sempre ser identificada com o primeiro IP existente na faixa que faz parte a ela. Digamos que temos uma rede que v da faixa 10.15.15.0 a 10.15.15.255. O primeiro IP, o 10.15.15.0, ser o IP da rede. O ltimo, o 10.15.15.255, ser o IP de broadcast. Ambos so endereos reservados que no podem ser atribudos a hosts (computadores clientes, os normais). Pode-se ter, ento, 254 hosts (256, contando com o zero, menos o IP de rede e de broadcast). E voc sabe o que broadcast? Sempre que alguma solicitao deve ser feita a todos os computadores da rede, como por exemplo escanear se existe alguma impressora na rede, envia-se a pergunta para o endereo de broadcast, que nada mais do que enviar a pergunta a todos os computadores que faam parte da rede.

90

Debian Bsico - Desktop Paran

Mscara de rede
responsvel por identificar, a partir do IP de uma mquina, qual a sua rede. Digamos que temos um computador cujo IP 10.15.17.100. Se a mscara for 255.255.255.0, ento a identificao da rede 10.15.17.0. Para fazer esse clculo, devemos contrapor os dois valores. 10.15.17.100 = 0000 1010 . 0000 1111 . 0001 0001 . 0110 0100 255.255.255.0 = 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000 Colocando a mscara de rede sob o IP, iremos riscar os valores que estiverem acima dos zeros: 10.15.17.100 = 0000 1010 . 0000 1111 . 0001 0001 . 0110 0100 255.255.255.0 = 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000 A rede ser: 10.15.17.0 = 0000 1010 . 0000 1111 . 0001 0001 . 0000 0000 Se a mscara de rede for um nmero quebrado, como 255.255.252.0, teremos uma rede diferente: 10.15.17.100 255.255.252.0 A rede ser: 10.15.16.0 = = = 0000 1010 . 0000 1111 . 0001 0001 . 0110 0100 1111 1111 . 1111 1111 . 1111 1100 . 0000 0000 0000 1010 . 0000 1111 . 0001 0000 . 0000 0000

Sempre a mscara ter que ter ou somente 0, ou ento ter que ser composta por nmeros uns sem zeros a sua esquerda. No existe mscara como 1110 1111 1111 ....., sempre ter que ser 1111 1111 1100 ...sequncia de zeros. E qual diferena entre as duas redes? Na primeira o nmero de redes disponveis maior que na segunda, porm o nmeros de hosts menor. Para se saber o valor exato, basta utilizar a frmula 2n, onde n o nmero de bits correspondentes rede e aos hosts. Ento teremos: Com a mscara 255.255.255.0 pode-se ter:

Rede: 224 = 16.777.216 redes possveis. Host: 28 = 256 hosts possveis.

Com a mscara 255.255.252.0 pode-se ter:


Rede: 222 = 4.194.304 redes possveis. Host: 210 = 1024 hosts possveis.

Roteador e Gateway
Redes distintas podem se comunicar, mas necessrio que alguns dispositivos faam o meio de campo entre elas. O roteador o responsvel por criar esse elo entre as redes. Ele normalmente possui uma interface para cada rede que faz parte. Se existem trs redes locais, normalmente o roteador possui quatro placas de rede, uma para cada rede local e uma para conectar-se a internet. Quando um computador precisa se conectar a um outro computador de uma mesma rede local, ele faz isso diretamente. Quando precisa se conectar a um computador que est em outra rede, vai at o roteador que envia a requisio para o computador servidor como se fosse dele, recebe a resposta e envia para o computador que fez a solicitao. O IP da interface de rede do roteador recebe o nome tcnico de gateway (porto, passagem). Normalmente a identificao do gateway o primeiro ou segundo IP disponvel. Se a rede 10.15.15.0, o IP do gateway 10.15.15.1 ou 10.15.15.2. Isso o recomendado, mas no a regra.

91

Debian Bsico - Desktop Paran

Servidor de nomes (DNS)


Sempre que qualquer pessoa escreve no seu navegador www.orkut.com.br, o computador diz a si mesmo meu saci, o que isso quer dizer?. Sabe por qu? Porque o computador s entende dois nmeros: zero e um. Ento para que ele possa se conectar a um computador que possua as pginas que voc deseja acessar ele precisa do IP de um servidor web. Mas imagine decorar o IP do hotmail, gmail, orkut, meubaralho, etc? Complicado. Para que ns possamos trabalhar com nomes em vez de nmeros, existem os servidores de nomes que resolvem nomes. Resolver um nome converter um nome em um IP. Faa um teste: abra o navegador web e escreva na caixa de endereo o seguinte IP: 67.15.114.118. Voc ser remetido a pgina www.uglypeople.com. O DNS associa a nomes IPs, para que possamos ter a comodidade de decorar nomes de servidores, e no esses nmeros loucos.

IFCONFIG
Ifconfig usado para configurar as interfaces de rede. Ele sempre rodado na inicializao do sistema para ativar as interfaces de rede definidas e configuradas nos arquivos de configurao de rede. Aps a inicializao, ele pode ser usado para que o administrador possa fazer alteraes momentneas em alguma caracterstica das interfaces. Sempre que o computador for reiniciado, as configuraes dos arquivos so restauradas.
macale@amontoado:~$ sudo ifconfig eth0 Link encap:Ethernet Endereo de HW 00:1d:7d:e1:77:2e inet end.: 10.15.17.26 Bcast:10.15.19.255 Masc:255.255.252.0 endereo inet6: fe80::21d:7dff:fee1:772e/64 Escopo:Link UP BROADCASTRUNNING MULTICAST MTU:1500 Mtrica:1 RX packets:1628218 errors:0 dropped:0 overruns:0 frame:0 TX packets:78780 errors:0 dropped:0 overruns:0 carrier:0 colises:0 txqueuelen:1000 RX bytes:210596466 (200.8 MiB) TX bytes:13171490 (12.5 MiB) IRQ:221 Endereo de E/S:0x2000 lo Link encap:Loopback Local inet end.: 127.0.0.1 Masc:255.0.0.0 endereo inet6: ::1/128 Escopo:Mquina UP LOOPBACKRUNNING MTU:16436 Mtrica:1 RX packets:99896 errors:0 dropped:0 overruns:0 frame:0 TX packets:99896 errors:0 dropped:0 overruns:0 carrier:0 colises:0 txqueuelen:0 RX bytes:19280980 (18.3 MiB) TX bytes:19280980 (18.3 MiB)

/ETC/NETWORK/INTERFACES
Este o arquivo de configurao da rede no Debian. Ele bem fcil de se configurar. Vejamos dois casos bastante utilizados. Rede com IP dinmico, ou seja, com servidor DHCP:
# The loopback network interface auto lo iface lo inet loopback

# The primary network interface

92

Debian Bsico - Desktop Paran

allow-hotplug eth0 iface eth0 inet dhcp

A primeira informao que temos o loopback. Loopback um canal que envia dados para si mesmo, afim de se testar algum dispositivo ou servio, ou ento acessar localmente algum recurso que espera-se ser acessado remotamente. Ento uma interface virtual. O IP dessa interface o 127.0.0.1 e, normalmente, seu nome localhost. Para saber se este nome foi atribudo a ele, voc pode visualizar o contedo do arquivo /etc/hosts.
amontoado:~# cat /etc/hosts 127.0.0.1

localhost

Depois temos uma placa de rede fsica chamada eth0 que est configurada para receber as informaes de um servidor DHCP. Veja cada parte do arquivo de configurao: auto eth0 Quer dizer que o mdulo referente placa eth0 ser carregada automaticamente na inicializao do sistema. Se voc quiser desabilitar a placa, tendo que levantar o mdulo referente a ela na mo (ou seja, por comando), basta tirar o auto e manter o nome da interface. Existe uma outra opo que pode ser usada no lugar de auto, o allow-hotplug. Tem o mesmo significado que o plugandplay do windows. Quando o sistema detecta o dispositivo fsico, ele automaticamente carrega o seu mdulo referente. Mas da voc me pergunta qual a diferena entre auto e allow-hotplug. Simples: o primeiro sempre ter seus mdulos carregados na inicializao, independente do sistema encontrar ou no o dispositivo; o segundo s ter seus mdulos carregados caso o sistema detecte o dispositivo fsico. iface <nome da interface> inet <forma de definio de IP> Em iface deve-se dizer qual a inteface que est sendo configurada (o nome dado pelo sistema e no pode ser alterado) e inet onde o administrador define se o IP ser fixo ou fornecido por um servidor DHCP. Existem outras opes, mas estas duas so as principais. Se for DHCP, s fazer como o exemplo anterior. Se for fixo, ser necessrio escrever static e definir manualmente todos os parmetros da rede.
# The primary network interface allow-hotplug eth0 iface

eth0 inet static address 10.10.10.10 netmask 255.255.255.0 gateway 10.10.10.1

Apesar de ter que se escrever num arquivo de texto, muito fcil. No lembra os nomes address, netmask? Use o man interfaces que voc encontrar no s eles, como outros parmetros, apesar que os trs citados acima j so suficientes.

93

Debian Bsico - Desktop Paran

PING
As vezes necessrio testar se algum computador da rede est respondendo. Com o ping, alguns pacotes so enviados para um destino especificado solicitando apenas umas resposta. Se esta resposta no chegar porque alguma coisa est errada com a interface de rede do computador servidor. No adianta tentar entrar no site do repositrio ou ento tentar entrar remotamente em um computador se eles no respondem a ping.
macale@amontoado:~$ ping www.repositorios.eparana.parana PING scelepar00031.eparana.parana (10.15.40.171) 56(84) bytes of data. 64 bytes from 10.15.40.171: icmp_seq=1 ttl=62 time=2.19 ms 64 bytes from 10.15.40.171: icmp_seq=2 ttl=62 time=1.97 ms ^C (cancelado atravs do <CTRL>+<C>) --- scelepar00031.eparana.parana ping statistics --2 packets transmitted, 2 received, 0% packet loss, time 1004ms rtt min/avg/max/mdev = 1.976/2.083/2.190/0.107 ms macale@amontoado:~$

O comando ping nunca pra, por isso, aps finalizar seus testes, ser necessrio cancelar atravs do comando <CTRL>+<C>.

ROUTE
Sintaxe: route [parmetros] Permite que o administrador visualize a tabela de roteamento configurada no sistema. Sempre ao se executar o comando, todas as regras de roteamento sero listadas em ordem de prioridade. A primeira linha ser atendida primeiramente e assim por diante. Se houver conflito de regras de roteamento, a linha mais acima prevalecer. Existem vrias colunas com informaes da tabela, vejamos o que cada uma significa.
amontoado:~# route -n Tabela de Roteamento IP do Kernel Destino Roteador MscaraGen. 10.15.16.0 0.0.0.0 255.255.252.0 0.0.0.0 10.15.16.1 0.0.0.0

Opes Mtrica Ref U 0 0 UG 0 0

Uso Iface 0 eth0 0 eth0

Primeiro vamos ver o que cada coluna significa e depois veremos um exemplo para ficar mais fcil o entendimento.

Destino
a coluna que contm o IP da rede ou computador remoto que o destino das requisies de servios de rede. Quando o endereo igual a 0.0.0.0, entenda isso como o coringa asterisco (*), ou seja, qualquer rede ou computador que no esteja especificado em linhas acima.

Roteador
o gateway. Todas as requisies destinadas rede ou computador remoto listando na coluna Destino, devero ser enviadas para o roteador especificado nesta coluna para que ele possa enviar para o seu destino. Caso o valor seja 0.0.0.0, ento a solicitao ser feita atravs de broadcast, ou seja, o computador vai enviar a solicitao para toda a rede e o computador que seja aquele requisitado quem vai se identificar.
94

Debian Bsico - Desktop Paran

MscaraGen
Permite que voc defina se a regra de roteamento ser aplicada a um computador ou a uma rede. Se for a um computador especfico, use o valor 0.0.0.0, porque desta forma qualquer endereo colocado na coluna Destino ser considerada integralmente. Exemplos Destino 10.15.16.5 e MscaraGen 0.0.0.0 A regra de roteamento ser aplicada a solicitaes feitas ao computador 10.15.16.5. Destino 10.15.16.5 e MscaraGen 255.0.0.0 A regra de roteamento ser aplicada a solicitaes feitas a todos os computadores que fizerem parte da rede 10.0.0.0.

Opes
Alguma das opes que mais aparecem nesta coluna so essas: U (Vem de UP, ou seja, a regra est no ar) H (Vem de HOST, e indica que o alvo um computador cliente) G (Vem de GATE, indica que se est usando um roteador) ! (rota rejeitada)

Iface
Toda vez que uma solicitao for feita ao computador da coluna Destino, deve ser enviada placa de rede especificada nesta coluna, para que ela ou envie para toda rede atravs de broadcast (caso o roteador esteja configurado como 0.0.0.0) ou ento ao roteador definido.

Exemplo
amontoado:~# route -n Tabela de Roteamento IP do Kernel Destino Roteador MscaraGen. 10.15.16.0 0.0.0.0 255.255.252.0 0.0.0.0 10.15.16.1 0.0.0.0

Opes Mtrica Ref U 0 0 UG 0 0

Uso Iface 0 eth0 0 eth1

Irei acessar o computador 10.15.18.5 que est configurado com mscara 255.255.252.0 por ssh. A primeira regra que vemos de roteamento diz que todos as solicitaes que forem enviadas para a rede 10.15.16.0 devem ser enviadas para toda rede por broadcast atravs da interface eth0. Como o IP 10.15.18.5 confrontada mscara 255.255.252.0 indica que ele est na rede 10.15.16.0, ento a conexo por ssh ser feita obedecendo esta regra. No haver roteamento. Ser feito broadcast para toda a rede e o computador 10.15.18.5 dever gritar dizendo sou eu esse louco a!. Depois eu resolvo acessar o www.uglypeople.com para ver que existem pessoais to prejudicadas como eu no mundo. O IP deste site 67.15.114.118. Mesmo sem saber qual a sua mscara, evidente que este computador no est na rede 10.15.16.0, ento passaremos para a prxima regra. Ela diz que as requisies feitas a qualquer computador no mundo devem ser enviadas para o roteador 10.15.16.1 atravs da interface de rede eth1. Ele ir, ento repassando a solicitao para vrios roteadores at chegar ao computador 67.15.114.118, que enviar aquelas coisas lindas para a sua tela.

NMAP
Sintaxe: nmap [parmetros] <hosts> uma ferramenta de escaneamento das portas de um computador. Com ele, o administrador poder
95

Debian Bsico - Desktop Paran

conhecer uma srie de informaes a respeito dos servios e verses de portas, tempo que o sistema est ativo e qual o sistema operacional que est rodando em determinado host.
$ nmap localhost Starting Nmap 4.62 ( http://nmap.org ) at 2009-02-26 14:35 BRT Interesting ports on localhost (127.0.0.1): Not shown: 1709 closed ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 139/tcp open netbios-ssn 445/tcp open microsoft-ds 631/tcp open ipp 5900/tcp open vnc Nmap done: 1 IP address (1 host up) scanned in 0.095 seconds

Parmetros -sV -p -O

Descrio Permite que descubra informaes a respeito dos servios e verses destes de um host. nmap -sV 10.15.15.15 Especifica qual porta dever ser escaneada. Todas as outras sero ignoradas. nmap -p 22 10.15.15.15 Tenta descobrir qual o sistema operacional de um host e h quanto tempo ele est ativo. No 100% confivel, mas uma mo na roda. O sistema operacional difcil de errar, mas a verso no muito confivel. nmap -O 10.15.15.15 A de agressivo. Esta opo ativar vrios outro parmetros, fazendo com que a busca seja mais completa. As vezes algumas portas, por estarem sendo usadas por servios no padres delas, acabam sendo ignorados. Com esta opo possvel fazer uma pesquisa mais profunda de tudo que est acontecendo em cada porta. Se ela estiver ativa, com este parmetro ter uma grande probabilidade de descobrir o que roda nela. nmap -A 10.15.15.15

-A

possvel definir uma faixa de ip para escaneamento.


$ nmap 10.15.15.0-50 Starting Nmap 4.62 ( http://nmap.org ) at 2009-02-26 14:36 BRT Interesting ports on 10.15.15.1: Not shown: 1712 closed ports PORT STATE SERVICE 23/tcp open telnet 80/tcp open http 280/tcp open http-mgmt Interesting ports on 10.15.15.37: Not shown: 1710 closed ports PORT STATE SERVICE 135/tcp open msrpc 139/tcp open netbios-ssn 445/tcp open microsoft-ds 5800/tcp open vnc-http 5900/tcp open vnc Interesting ports on 10.15.15.38: Not shown: 1709 closed ports PORT STATE SERVICE 135/tcp open msrpc

96

Debian Bsico - Desktop Paran

139/tcp 445/tcp 912/tcp 5800/tcp 5900/tcp

open open open open open

netbios-ssn microsoft-ds unknown vnc-http vnc

Nmap done: 51 IP addresses (3 hosts up) scanned in 2.325 seconds

Se quiser, possvel usar coringas, como por exemplo 10.15.*.10-15. A faixa de IP inicia na faixa 10 e vai at o 15. Interprete o - como a preposio a (do 10 a 15).

HOSTNAME
Sintaxe: hostname [parmetros] <se-desejar-alterar-o-nome,defini-lo> O hostname mostra o nome de um computador ou ento altera este nome. Para apenas mostrar, execute o comando sem nenhum complemento; para alterar o nome, defina um nome qualquer aps o comando hostname como superusurio.
# hostname robeta # hostname garotinho # hostname garotinho

ps alterar o nome do computador, necessrio reiniciar a sesso para que as configuraes tenham efeito. Caso isto no seja feito, os processos podem no

funcionar corretamente.

97

Debian Bsico - Desktop Paran

EXERCCIOS DE FIXAO (PARTE 4)


1.Faa a associao das colunas: A) IP B) Gateway C) Roteador D) DNS E) Mscara F) Endereo de rede G) Broadcast I) N de rede (pode ser um computador ou um componente prprio para roteamento) responsvel por realizar a conexo entre redes distintas. II) IP reservado para identificar redes de computadores. III) Servio de resoluo de nomes que faz associao entre estes e IPs. IV) IP que, ao ser confrontado ao IP de um host, identifica a rede que este host pertence. V) Nmero que identifica um computador em uma rede com o padro 0.0.0.0, podendo os nmeros variar de 0 a 255. VI) IP reservado que ao ser o destino de pacotes faz com que estes sejam enviados a todos os computadores da rede. VII) IP do roteador. Resposta: A = ___ , B = ___ , C = ___ , D = ___ , E = ___, F = ___ 2.Qual a rede do computador 10.15.17.100 configurado com a mscara 255.255.252.0? 3.Sabendo-se que dois IPs devem ser reservador para um servidor de arquivos e um roteador com as diretivas de segurana, quantos endereos esto disponveis para hosts na rede acima? 4.Qual o IP, endereo de broadcast e mscara da sua mquina? 5.Quais so os parmetros essenciais para se fixar um IP em um computador? Qual o arquivo em que devemos inserir os parmetros da rede? Dados os valores abaixo, simule a configurao do arquivo citado anteriormente: IP: 10.12.11.10 Rede: 10.12.11.0 IP do roteador: Segundo IP disponvel da rede, em ordem crescente.

N
o <>).

o esquea de colocar as informaes iniciais, como nome do dispositivo e forma de definio de parmetros de rede. Se tiver dificuldades, abra o arquivo no seu

computador ou ento execute o comando man <nome-do-arquivo-de-configurao> (sem

6.Qual o IP do site www.bandacalcinhapreta.com.br/? 7.Digamos que voc j hacker em scripts e est criando um agora. Durante um determinado momento na confeco, necessrio que voc insira um comando no cdigo para aparecer o nome do computador que rodar o script, para este seja usado por outros comandos do script. Alm disso, no fim do script, voc precisar inserir uma mensagem ao usurio dizendo Meus parabns, desta vez voc no estragou o computador. Preencha as lacunas para que se tenha esse resultado. comando $louco ** que <> no &()-- faz nada=yes...`_______________` //(comando para mostrar o nome do computador a ser usado no script) burns=informe if informe entra++ todos saem-- *&% @@ | eita meu saci `____________________________________________` (comando que ir mostrar a mensagem Meus para.....). 8.Existe a possibilidade de se conectar por ssh no seu gateway?
98

Debian Bsico - Desktop Paran

COMANDOS DE GERENCIAMENTO DE CONTAS


Todos os sistemas baseados em Unix possuem usurios que iniciam sesses, armazenando suas configuraes pessoais em diretrios prprios. Alm disso, todos o esquema de permisso, que garante a grande confiabilidade nestes sistemas, baseado em usurios e grupos. Iremos ver agora alguns comandos essenciais para gerenciamento das contas que possuem acesso aos sistemas.

ARQUIVOS DE CONTAS DE USURIOS E GRUPOS


Existem algumas tarefas que podem ser realizadas ou atravs de comandos ou atravs da alterao de arquivos. imprescindvel que um administrador saiba quais so os documentos envolvidos nesse processo.

/etc/passwd

Todos os usurios locais conhecidos pelo sistema ficam dentro desse arquivo. Cada linha representa um usurio, e cada linha dividida em campos separados por uma vrgula.
amontoado:~# cat

/etc/passwd

root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh ... parana:x:1000:1000:Desktop Parana,,,:/home/parana:/bin/bash ze:x:1001:1001:Ze Galinha,13,041 3456-78910,041 3456-78911,041 999999999:/home/doidao:/bin/bash macale:x:1002:1002:,,,:/home/macale:/bin/bash Todas as colunas (informaes) so separadas por :. Acima so perceptveis 7 campos. Coluna 1 coluna (nome) 2 coluna (senha) o login do usurio. Aparece um x. Antigamente a senha era apresentada. Por motivos de compatibilidade com verses antigas, este campo foi mantido, porm a senha no aparece mais. Apesar de somente o superusurio poder acessar este arquivo, usurios colocavam senhas iguais a de e-mail, por exemplo, permitindo que o administrador acessasse dados no pertinentes a sua tarefa. o nmero de identificao do usurio. No poder se repetir. Ele existe para que o sistema trabalhe com aquilo que ele est mais habituado, que so nmeros. Os usurios do sistema vo de 0 (que ser do root SEMPRE) a 999. A partir do 1000 comeam os usurios normais. igual ao UID, porm o grupo principal do usurio. Se voc alterar manualmente este campo, o grupo principal ser alterado. Da mesma forma que acontece com o comando USERMOD, o usurio ter um novo grupo principal, porm deixar de fazer parte do grupo antigo (veja mais na pgina 100). Lembram-se das perguntas feitas ao se adicionar um usurio com o comando adduser? Neste campo que elas so armazenadas. Em ordem: Nome Completo, sala, 1 telefone, 2 telefone e 3 telefone. Para visualizar estas informaes, execute finger <nome do usurio>. Indica qual a pasta pessoal do usurio. O administrador pode alterar esta informao normalmente ( igual ao usermod -d). Indica o shell que utilizado pelo usurio. Existem vrios shells. O mais utilizado por quem adota o debian o bash. Se o usurio quiser que outro shell seja o padro, basta alterar este campo.
99

Descrio

3 coluna (UID)

4 coluna (GID)

5 coluna (info)

6 coluna (home) 7 coluna (Info)

Debian Bsico - Desktop Paran

/etc/group
Dentro deste arquivo fica registrado a lista de todos os grupos existentes no sistema.
amontoado:~# cat /etc/group root:x:0: daemon:x:1: diplomata:x:1002: feio-como-o-cao:x:1003:macale,ze engenheiro:x:1004: ze:x:1005: doidao:x:1006: ze

Assim como o passwd, este arquivo dividido em colunas, s que com bem menos informaes. A primeira coluna o nome do grupo, o segudo a senha do grupo, a terceira o GID e por fim os usurios que fazem parte do grupo, exceto os que o tem como principal.

id ze uid=1005(ze) gid=1005(ze) grupos=1003(feio-como-ocao),1006(doidao),1005(ze)


amontoado:~#

O usurrio ze faz parte dos grupos:


ze (principal) feio-como-cao (secundrio) doidao (secundrio)

Veja no arquivo /etc/group que ele aparece no ltimo campo dos grupos secundrios, mas no no principal. Isso se deve ao fato de que o grupo principal j est especificado no arquivo /etc/passwd. Se o administrador desejar adicionar um usurio a um grupo, pode simplesmente escrever o login dele nesse ltimo campo. Os usurios devem ser separados por vgula sem espaos.

/etc/shadow
O arquivo shadow foi criado para resolver o problema de segurana relacionado s senhas que eram armazenadas no arquivo passwd. Elas ficam neste arquivo criptografadas. Alm disso, este arquivo permite que o administrador cancele a senha de um usurio ou ento simplesmente visualize h quanto tempo a senha foi alterada. Veja quais so os campos contidos no arquivo.
amontoado:~#

cat /etc/shadow

...

macale:$1$QOP.HCE9$A2l7Kc6BX8i.SdYiMTJI/0:14280:0:99999:7::: doidao:$1$2eG.qb4i$2VMZzTiLYmD4tNnbPLUYu1:14280:0:99999:7:::

Coluna 1 coluna (nome) 2 coluna (senha) 3 coluna (1970) Login do usurio. Senha criptografada.

Descrio

Nmero de dias, a partir do dia 1 de janeiro de 1970, que a senha no alterada.

4 coluna (tempo mnimo com Quantos dias, a partir do dia da criao de um conta, que o usurio ficar

100

Debian Bsico - Desktop Paran

Coluna senha padro)

Descrio impossibilitado de alterar a senha.

5 coluna (tempo mximo de Quantos dias o usurio ter para alterar a senha. Caso esse prazo seja alterao de senha) transposto, a conta expirada. 6 coluna (alerta) 7 coluna (remoo de conta) 8 coluna (h quanto tempo) Quantos dias antes de uma conta expirar, o usurio deve ser alertado. Quantos dias aps a conta ser expirada, ela deve ser removida do sistema. Nmero de dias, a partir do dia 1 de janeiro de 1970, que a conta foi removida do sistema.

ADDUSER
Sintaxe: adduser [parmetros] <usurio> Para adicionar um usurio no sistema, necessrio seguir um procedimento padro de adio de usurio, onde o administrador informa vrios dados ao sistema.
# adduser lolita Adding user `lolita' ... Adding new group `lolita' (1008) ... Adding new user `lolita' (1008) with group `lolita' ... Creating home directory `/home/lolita' ... Copying files from `/etc/skel' ... Digite a nova senha UNIX: Redigite a nova senha UNIX: passwd: senha atualizada com sucesso Modificando as informaes de usurio para lolita Informe o novo valor ou pressione ENTER para aceitar o padro Nome Completo []: Lolita de Castro Alcantara Nmero da Sala []: 171 Fone de Trabalho []: 2666-6666666 Fone Domstico []: 3666-666666 Outro []: x Is the information correct? [Y/n] Y # su - lolita lolita@amontoado:~$

USERDEL
Sintaxe: userdel [parmetros] <usurio> Qual o inverso de se adicionar um usurio? Remov-lo. Se o inverso, inverta o comando alterando o add por del.

Figura 12: Adduser x Userdel

101

Debian Bsico - Desktop Paran

Ao remover um usurio, todas as entradas que o referenciam so apagadas. Se o usurio faz parte de vrios grupos, deixar de fazer. Todos os vestgios do usurio sero apagadas do sistema. Apenas uma coisa no ser apagada, a pasta pessoal do usurio.

userdel -rf
Estes parmetros so muito teis para o administrador, pois ele resolve alguns problemas que o userdel tem quando usado sozinho. O r remove o diretrio e o spool de impresso de um usurio, independente dele ter contedo ou no, e o f fora a remoo, ignorando avisos do sistema que outros usurios esto dentro do diretrio do usurio ou usando a sua fila de impresso.

ADDGROUP
Sintaxe: addgroup <nome-do-grupo> Sempre que voc adiciona um usurio, um grupo com o mesmo nome tambm adicionado, desde que, atravs de parmetros, o administrador especifique que o usurio ser adicionado diretamente a um grupo existente. Mas e se o administrador quiser criar apenas um grupo? Usa o addgroup. Depois possvel adicionar usurios ao sistema de trs formas nesse novo grupo:

Usando o comando adduser (pgina 101); Usando o comando usermod (pgina 119); Alterando o arquivo /etc/group (pgina 100).

# addgroup petinho Adding group `petinho' (GID 1009) ... Concludo. # tail -n 1 /etc/group petinho:x:1009:

GROUPDEL
Sintaxe: groupdel <nome-do-grupo> Remove o grupo do sistema. Caso exista algum usurio dentro do grupo, automaticamente ele perder todas as referncias a esse grupo. Se o administrador tentar remover um grupo que seja o principal de um usurio, a operao ser cancelada.
amontoado:~#

uid=1007(eita)

amontoado:~# groupdel : no foi possvel remover grupo primrio do usurio.

id eita gid=1007(eita) groupdel eita

grupos=1007(eita)

Se um arquivo ou diretrio tiver o grupo a ser removido vinculado em suas permisses, em vez do nome do grupo, aparecer o GID dele:
amontoado:/home/eita# uid=1007(eita)

id eita
grupos=1005(ze)

gid=1005(ze)

amontoado:/home/eita# ls -l total 0

102

Debian Bsico - Desktop Paran

-rw-r--r-- 1 eita

eita

0 Fev 12 10:56 Arquivo-Intil

amontoado:/home/eita#

groupdel eita
0 Fev 12 10:56 Arquivo-Intil

amontoado:/home/eita# ls -l total 0 -rw-r--r-- 1 eita

1007

Isso quer dizer o qu? Quer dizer que o prximo grupo criado que se apossar do mesmo GID do grupo antigo ir assumir o papel de grupo dos arquivos e diretrios que ficaram rfos.

PASSWD
Sintaxe: passwd <nome-do-usurio> Altera a senha do usurio ou do prprio superusurio distrado que esqueceu sua senha. Se o comando for executado como um usurio normal, ser necessrio digitar a senha corrente e depois a nova. Se for executado pelo superusurio da a histria diferente, basta digitar a senha nova e acabou.

ID
Este comando ir mostrar o ID do usurio e dos grupos que o usurio especificado fizer parte. Caso nenhum grupo for definido, o sistema mostrar as informaes do usurio corrente.
ze@amontoado:~$ id macale uid=1002(macale) gid=1002(diplomata) grupos=6(disk),24(cdrom),25(floppy),29(audio),29(audio),44(video),46(plugde v),60(games),104(lpadmin),108(messagebus),110(gdm),111(netdev),116(powerdev ),1000(parana),1002(diplomata),1003(feio-como-o-cao)

GROUPS
Sintaxe: groups <usurio> Quase igual ao comando id. A diferena est no fato dele ignorar os ID dos usurios e grupos. O grupo principal sempre ser o primeiro.
macale@amontoado:~$ groups diplomata disk cdrom floppy audio video plugdev games lpadmin messagebus gdm netdev powerdev parana feio-como-o-cao

GETENT
Sintaxe: getent [banco de dados] um incursor que traz de uma forma fcil informaes de vrios bancos de dados administrativos. Estes bancos de dados fornecem informaes a respeito de contas de usurios; servios que esto rodando no sistema; e protocolos e informaes de rede. Os bancos de dados que podem ser consultados por ele so:

passwd; group; hosts; services; protocols;


103

Debian Bsico - Desktop Paran

e networks. amontoado:~# getent networks default 0.0.0.0 loopback 127.0.0.0 link-local 169.254.0.0 amontoado:~# cat /etc/networks default 0.0.0.0 loopback 127.0.0.0 link-local 169.254.0.0

Como pode ser visto acima, o getent buscou o arquivo que responsvel por informar ao sistema quais so os nomes de algumas redes. Como o arquivo o /etc/networks, a sua sada igual a ele. Se fosse outro arquivo, o getent buscaria automaticamente o certo, j que ele sempre pergunta ao sistema qual banco de dados ele est utilizando. Este recurso interessante quando se est trabalhando com o LDAP. Este servio um servidor de diretrios que permite centralizar todos os usurios com suas respectivas senhas, permitindo que um usurio possa logar em qualquer computador que esteja na mesma rede do servidor e possua o cliente LDAP instalado. Mas como vimos anteriormente, o padro do Debian ter as informaes de usurios no arquivo /etc/passwd. Se o administrador instalar o cliente LDAP, configur-lo e ao usar o getent passwd, este retornar o arquivo /etc/passwd, porque a configurao est errada. Estar tudo certo quando o getent perguntar ao sistema e este responder que as informaes de usurios esto vindo do servidor LDAP. perceptvel a diferena, ainda mais quando a quantidade de usurios cadastrados no servidor bastante grande, como acontece na maioria das secretarias do estado.

104

Debian Bsico - Desktop Paran

COMANDOS PARA GERENCIAMENTO DE PROCESSOS


Voc j deu o seu apt-get install pacote tal, configurou o que foi preciso, caso tenha sido preciso, e depois comeou a utilizar com a maior alegria o seu mais novo pacote. Se for um aplicativo para usurio, mais evidente o resultado e mais alegria o usurio tem. Maravilha! Mas da voc olha torto para mim e pergunta: quer dizer que quando eu abro o iceweasel para ver meu contra-choque, o que estou abrindo um pacote? Negativo. O pacote morreu. Mas no precisa chorar, porque existe vida ps-pacote. O pacote um emaranhado de arquivos necessrios para a instalao. Dentro deles temos scripts, binrios, bibliotecas, imagens, ou seja, tudo que necessrio para a instalao de um programa. Aps a instalao, o administrador criva o sistema com vrios arquivos, podendo, e isso o normal, jog-los em vrios lugares diferentes (todos estratgicos, como vimos na definio de natureza dos diretrios da raiz do sistema). Quando executamos um binrio de um programa, ele carregado na memria virtual, que a memria principal (normalmente a RAM), assim como todos os arquivos dos quais depende. Todos esses arquivos recebem um nmero de identificao e podem ser acessados atravs de um diretrio. Alm desse nmero, para facilitar o gerenciamento pelo administrador, esse agrupamento recebe um nome. O agrupamento em si chamado de processo; o nmero de identificao chamado de PID (Process Identification Identificao do Processo); e o nome deste processo ser, normalmente, igual ou parecido ao nome do pacote que instala o programa. Os diretrios que apontam para os espaos na memria que contm os arquivos de um processo ficam dentro do /proc. Cada processo possui um diretrio especfico.
amontoado:~# ls /proc

Visualize o diretrio e veja que existem subdiretrios com nmeros. Esses nmeros so os PIDs. Se voc visualizar estes diretrios encontrar todos os arquivos utilizados pelo processo. Resumindo. Processos so programas que esto carregadas na memria e esto utilizando os recursos do sistema. Todos possuem PID, nome e um diretrio que contm todos os arquivos necessrios para o seu funcionamento. Fcil de identific-los, ento. Estes processos possuem estados, que o status deles no sistema. Um processo pode estar:

Em execuo; Pronto para execuo; Esperando algum evento ou recuso.

Por se tratar de um sistema multitarefa, vrios processos podem rodar simultaneamente, mas a utilizao dos recursos da mquina so feitos um de cada vez. Por isso, se temos 3 processos ativos e exigindo processamento, 1 deles estar em execuo e 2 estaro prontos aguardando a sua vez. Existem processos que ficam esperando dados de algum dispositivo de armazenamento, rede, perifricos, ou ento uma simples ordem do sistema operacional para ficar pronto e ir para execuo. Esta comunicao feita atravs dos sinais. Os principais so:

105

Debian Bsico - Desktop Paran

Sinal STOP Este sinal pra o processo. CONT Continua o processo parado.

Descrio

TERM Solicita a finalizao do processo ao mesmo. KILL Fora a finalizao do processo. Ideal para momentos crticos.

PS
Sintaxe: ps [parmetros] O comando PS permite que o administrador visualize vrias informaes sobre os processos. Os principais parmetros so os seguintes: -a = ALL. Processos de todos os terminais abertos so listados. Sem este parmetro, a listagem ser somente dos processos iniciados a partir do terminal em que o ps rodou. -u = USER. Traz mais informaes na listagem. Uma delas o nome do usurio proprietrio do processo. -x = NO SEI. Ao usar o ps, apenas os processos que foram iniciados a partir de um terminal so listados. Se o administrador quiser listar os processos que no foram abertos a partir de um terminal, usa-se este parmetro. Estes so os processos abertos pelo kernel, como o gdm (interface grfica), por exemplo. So identificados por um ? Na coluna TTY. Vejamos como sada deste comando:
USER PID %CPU %MEM VSZ RSS root 1 0.0 0.0 1984 688 root 2 0.0 0.0 0 0 ... root 3091 0.0 0.1 14636 /usr/sbin/gdm fcamargo 3743 0.0 0.4 7444 4472 root 3763 0.0 0.2 10644 2192 root 3765 0.0 0.2 5664 2948 TTY ? ? 2004 ? pts/0 pts/0 pts/0 Ss S S STAT START Ss 09:10 S< 09:10 Ss 09:22 09:22 09:22 TIME COMMAND 0:01 init [2] 0:00 [kthreadd] 09:10 0:00 bash 0:00 su 0:00 bash 0:00

USER PID %CPU %MEM VSZ RSS TTY STAT

Nome do usurio proprietrio do processo. Nmero de identificao do processo. Utilizao do processador em porcentagem. Utilizao da memria em porcentagem. Tamanho do espao ocupado na memria virtual (normalmente RAM). Tamanho do espao ocupado na memria permanente (normalmente HD). Terminal a partir de onde o processo se originou. Estado do processo. Eles podem ser: D: Est esperando um evento ou um recurso para passar para o estado R. No pode ser interrompido. S: Est esperando um evento ou um recurso para passar para o estado R. Pode ser interrompido. R: Em processamento. T: Pausado. Z: Processo zumbi. Normalmente um processo que dependia de outro, e esse outro foi finalizado. Ele tambm finalizado, mas por no ter sido feito diretamente, no descarregado da memria.

106

Debian Bsico - Desktop Paran

START TIME COMMAND

Hora do incio do processo. Tempo total de execuo do processo pelo processador. Nome do binrio que abre o processo.

TOP
Sintaxe: top [parmetros] similar ao ps, porm ele mostra as informaes dos processos em tempo real. O tempo de atualizao de dois segundos.
top - 11:28:06 up 2:17, 2 users, load average: 0.90, 0.42, 0.22 Tasks: 117 total, 4 running, 112 sleeping, 0 stopped, 1 zombie Cpu(s): 44.9%us, 11.9%sy, 0.0%ni, 42.6%id, 0.0%wa, 0.3%hi, 0.3%si, 0.0%st Mem: 1035008k total, 1021224k used, 13784k free, 156k buffers Swap: 1919756k total, 144k used, 1919612k free, 431112k cached PID 3590 3108 3667 USER fcamargo root fcamargo PR 20 20 20 NI 0 0 0 VIRT RES 120m 30m 556m 192m 247m 100m SHR 18m 10m 28m S %CPU %MEM R 100 3.0 S 8 19.1 S 3 9.9 TIME+ 1:01.11 7:29.09 3:23.97 COMMAND pidgin Xorg firefox-bin

As informaes so as mesmas do ps. Podem mudar um pouco de nome, mas so intuitivas. Para sair do TOP, pressione a tecla <Q> do teclado (Q de Quit SAIR).

A
KILL

lguns parmetros podem ser usados, mas poucos so usuais, por isso, caso queira conhecer alguns, utilize o top --help ou veja o manual do top (man top).

Sintaxe: kill -[parmetros ou SINAIS] <processo> Alguns processos no possuem modo grfico para serem finalizados, ou ento esto travados, impossibilitando o encerramento na forma padro. O KILL o comando que envia sinais para os processos indicando o que devem fazer. Ele pode enviar todos os sinais existentes, como vistos na pgina 105, mas se no for explicitado, o KILL ir enviar o sinal TERM, que solicita a finalizao do processo ao mesmo. Para finalizar foradamente um processo, utilize o parmetro -9, que finaliza sem d o processo, descarregando-o completamente da memria. No exemplo abaixo iremos matar o processo GEDIT, que o editor de texto puro padro do GNOME.
macale@amontoado:~$ gedit (pressione <CTRL+Z> para pausar o processo) ^Z [1]+ Stopped gedit

Tente abrir a janela do gedit. Voc perceber que no haver como.


macale@amontoado:~$ ps aux |grep gedit macale 4296 2.5 1.5 60184 16120 pts/0 macale 4298 0.0 0.0 3260 752 pts/0 --color=auto gedit macale@amontoado:~$ kill -CONT 4296 T S+ 11:54 11:55 0:00 gedit 0:00 grep

107

Debian Bsico - Desktop Paran

O CONT continua o processo que estava parado. Agora vamos ver outro exemplo, num caso mais usual do KILL: matando processos.
macale@amontoado:~$

kill -9 4296

KILLALL
Sintaxe: killall <nome-do-binrio-do-processo> Caso um programa seja executado por vrios usurios diferentes, cada usurio ter uma instncia prpria, sendo que essas instncias sero tratadas como processos diferentes, com PIDs diferentes. Se o superusurio desejar matar todos os processos, independente do proprietrio, ele pode usar o killall e no precisar se preocupar com PIDs, pois bastar informar o nome do binrio do processo. Vejamos o exemplo a seguir. Existem vrias pessoas utilizando o iceweasel (navegador de internet) num mesmo computador. Cada um deles com seu prprio usurio, ou seja, sua prpria instncia. O administrador resolve derrubar todas as instncias de uma s vez.

amontoado:~# ps aux |grep firefox fcamargo 12772 1.4 14.0 325712 145608 ? /usr/lib/iceweasel/firefox-bin -a iceweasel macale 15474 1.1 3.4 140360 35648 pts/2 /usr/lib/iceweasel/firefox-bin -a iceweasel parana 15588 1.6 3.4 140096 35700 pts/4 /usr/lib/iceweasel/firefox-bin -a iceweasel ze 15664 2.5 3.4 140552 35656 pts/6 /usr/lib/iceweasel/firefox-bin -a iceweasel root 15745 0.0 0.0 3264 812 pts/0 --color=auto firefox Sl Sl+ Sl+ Sl+ D+ Feb10 10:49 10:50 10:50 10:52 20:48 0:01 0:01 0:02 0:00 grep

Como voc pode ver, os usurios fcamargo, macale, parana e ze esto usando o iceweasel, cujo binrio o firefox-bin. Para matar todos os processos de uma s vez, basta executar o seguinte comando:
amontoado:~# killall firefox-bin amontoado:~# ps aux |grep firefox root 15966 0.0 0.0 3260 752 pts/9 --color=auto firefox

S+

11:07

0:00 grep

O
JOBS

grep encontra ele mesmo procurando por firefox. como se ele tivesse um scanner na mo para fazer a busca e passasse sobre ele mesmo, j que durante a busca ele

um processo.

Sintaxe: jobs Sempre que um processo est parado (pausado atravs do sinal STOP enviado pelo kill ou killall, ou ento atravs do <CTRL>+<Z>), ou ento em segundo plano (quando usamos o & aps o comando ou ento o comando BG, que ser visto adiante), eles podem ser vistos atravs do ps como visto anteriormente. Mas se voc quiser ver apenas eles, voc pode usar o jobs.

108

Debian Bsico - Desktop Paran

macale@amontoado:~$ xcalc

[1] 16381

&

macale@amontoado:~$ Warning: Cannot convert string "calculator" to type Pixmap Warning: Cannot convert string "gray3?foreground=gray70&background=gray85" to type Pixmap macale@amontoado:~$

[1]+

jobs Running xcalc &


-laR / > /dev/null pasta /boot/lost+found: Permisso negada pasta /etc/cups/ssl: Permisso negada pasta /etc/ssl/private: Permisso negada ls --color=auto -laR / > /dev/null

macale@amontoado:~$ ls ls: impossvel abrir a ls: impossvel abrir a ls: impossvel abrir a ^Z [2]+ Stopped macale@amontoado:~$

[1][2]+

Running Stopped

jobs xcalc & ls --color=auto -laR / > /dev/null

Sempre que voc digita um comando e o coloca em segundo plano, um nmero de identificao do job associado ao seu PID. O nmero de identificao do job fica entre colchetes ([1] por exemplo). Ao executar o comando jobs sero listados os processos ou em segundo plano ou pausados. Depois foi executado o comando ls -laR / > /dev/null , que demora para ser finalizado. Durante o processamento, ele foi interrompido atravs do <CTRL>+<Z>. Aps ter feito isso, existiro dois processos na lista jobs: o que est em processamento, mas em segundo plano (Running) e o que foi pausado e no pode ser utilizado at que se envie um sinal para que ele continue.

FG
Sintaxe: fg [nmero de identificao do job] FG vem de Fore Ground (plano de frente. Estranho? Lembre-se que fore quer dizer testa e testa fica na frente, no?). Ou seja, com ele voc consegue passar um processo que est em segundo plano para o primeiro, ou ento sinalizar para que um processo pausado volte a rodar.

macale@amontoado:~$ xcalc ^Z (ao pressionar o <CTRL>+<Z>)

[3]+

Stopped fg xcalc

xcalc

macale@amontoado:~$ xcalc

BG
Sintaxe: bg [nmero de identificao do job] BG vem de Back Ground (plano de fundo). Ou seja, com ele voc consegue passar um processo que est em primeiro plano para o segundo. Vamos continuar usando o exemplo anterior do comando bg.
macale@amontoado:~$ fg xcalc

109

Debian Bsico - Desktop Paran

xcalc ^Z (processo pausado atravs do <CTRL>+<Z>) [3]+ Stopped xcalc macale@amontoado:~$

[3]+ xcalc &


macale@amontoado:~$

bg 3

Primeiro o processo que estava em primeiro plano estava em primeiro plano. Ele foi pausado e ento foi enviado para segundo plano, liberando a linha de comando.

110

Debian Bsico - Desktop Paran

COMANDOS PARA GERENCIAMENTO DE PERMISSES


Os sistemas baseados no GNU/Linux podem ser enquadrados entre os sistemas mais seguros existentes hoje em dia. E grande parte disso se deve ao fato desses sistemas terem um bem organizado esquema de permisses.

PROPRIETRIOS, GRUPOS E OUTROS USURIOS


J foi visto que no Debian existem usurios e grupos. Todo usurio do sistema deve, necessariamente, ter pelo menos um grupo ao qual faa parte. Isso se deve ao fato de que toda vez que um usurio cria um diretrio ou arquivo, estes devero ter um proprietrio e um grupo associados a eles. O proprietrio ser o usurio que criou o arquivo ou diretrio, e o grupo ser o grupo principal do mesmo usurio. Digamos que eu, logado com o usurio macale, fao parte dos grupos ostrapalhoesemreprise, engenheiro e diplomata. Ao digitar o comando id recebo o seguinte resultado:
macale@amontoado:~$ id uid=1001(macale) gid=1001(diplomata) grupos=1001(diplomata), grupos=1002(engenheiro), grupos=1003(ostrapalhoesemreprise)

Podemos observar que o usurio macale, cujo UID 1001, faz parte dos grupos diplomata, engenheiro e ostrapalhoesemreprise, sendo que seus respectivos GID so 1001, 1002 e 1003, e que o seu grupo principal o diplomata. Sempre as duas principais informaes sero UID do usurio e GID do grupo principal, seguido de todos os outros grupos aos quais o usurio faz parte. Toda vez que o usurio macale criar um diretrio ou arquivo, ele mesmo ser o proprietrio e o grupo ser o seu principal no momento da criao.
macale@amontoado:~$ > EMOBIL macale@amontoado:~$ ls -l total 0

-rw------- 1 macale diplomata 0 Fev


macale@amontoado:~$ mkdir CATS macale@amontoado:~$ ls -l total 0

2 10:48 EMOBIL

-rw------- 1 macale diplomata 0 Fev drwx------ 2 macale diplomata 6 Fev


macale@amontoado:~$ mv EMOBIL CATS/

2 10:48 EMOBIL 2 10:49 CATS

As informaes apresentadas pelo comando ls -l j foram vistas na pgina 47.

TIPOS DE PERMISSES
Existem trs tipos de permisses que, dependendo do seu arranjo, podem criar uma srie de regras de acessos e gravaes em diretrios e arquivos. Essas permisses ficam no INODE e podem ser vistas com o comando ls -l. Toda vez que um tipo de permisso for ativada, a sua letra correspondente aparecer. Quando ela estiver desativada, aparecer no seu lugar um hfen (-). Alm dos trs tipos, existem trs sets de permisses, cada um referente a uma espcie de usurio diferente. Cada set composto por trs casas: rwx. Existem nove casas no total.

111

Debian Bsico - Desktop Paran

O primeiro set destinado ao proprietrio do arquivo ou diretrio; o segundo ao grupo ao qual ele pertence; e, por ltimo, o terceiro set referente a qualquer usurio que no seja nem o proprietrio, nem faa parte do grupo.

-rwxr-xr-- 2 macale diplomata 6 Fev


No caso acima, temos r,w e

2 10:49 EMOBIL

para o proprietrio macale,

para quem faz parte do grupo

diplomata e r para qualquer outro usurio.

leitura (r)
O r vem de Read, que significa LER em ingls.

escrita (w)
O w vem de Write, que significa ESCREVER em ingls.

execuo (x)
O x vem de eXecute, que signifca EXECUTAR em ingls.

DIRETRIOS
As permisses no se comportam igual para arquivos e diretrios. Abaixo veremos como eles se comportam nos diretrios.

Entrar
Para entrar em diretrios no basta ter apenas permisso de leitura. necessrio ter tambm permisso de execuo.

dr-------- 2 macale diplomata 19 Fev


macale@amontoado:~$ cd CATS/ bash: cd: CATS/: Permisso negada

2 10:50 CATS

Com a permisso de execuo, o proprietrio conseguir entrar no diretrio CATS.

dr-x------ 2 macale diplomata 19 Fev


macale@amontoado:~$

2 10:50 CATS

cd CATS/

macale@amontoado:/home/macale/CATS$

Criar arquivos ou diretrios um nvel abaixo


Temos aqui o seguinte endereo: /home/macale/CATS O diretrio CATS est no quarto nvel:

112

1 nvel: / (raz) 2 nvel: home 3 nvel: macale 4 nvel: CATS

Debian Bsico - Desktop Paran

Se voc quiser criar um arquivo chamado Boeing dentro do diretrio CATS, este arquivo ficar no quinto nvel: /home/macale/CATS/Boeing Quando voc deseja criar algo no quinto nvel, a permisso que deve ser observada a do diretrio do quarto nvel. O arquivo Boeing tambm ter permisses, mas elas s tem validade para o seu contedo, no para o arquivo em si.

dr-x------ 2 macale diplomata 19 Fev


macale@amontoado:~$ > CATS/Boeing

2 10:50 CATS `CATS/Boeing':

touch: impossvel Permisso negada


macale@amontoado:~$ ls -l total 0

executar

sobre

macale@amontoado:~$ chmod u+w CATS/

drwx------ 2 macale diplomata 19 Fev


macale@amontoado:~$ > CATS/Boeing macale@amontoado:~$

2 10:50 CATS

ARQUIVOS
Os arquivos podem ser normais ou binrios. Todas as suas permisses so referentes apenas ao seu contedo. Se voc quiser remover, mover ou renomear um arquivo, ter que verificar as permisses do diretrio que o contm.

Ver contedo
Para que o contedo seja acessado, basta que o arquivo contenha a permisso de leitura.
macale@amontoado:~$ ls -l /etc/hostname -rw-r--r-- 1 root root 14 Dez 4 08:46 /etc/hostname macale@amontoado:~$ cat /etc/hostname

amontoado
O usurio macale no o proprietrio nem faz parte do grupo root, ou seja, obedece ao terceiro set de configurao (r--). Com essa permisso qualquer usurio poder acessar o contedo do arquivo hostname.

Alterar contedo
Para alterar um arquivo, necessrio que o usurio que deseja executar esta tarefa tenha permisso de escrita (w). Usando o mesmo exemplo acima, vamos tentar alterar o contedo do arquivo.
macale@amontoado:~$ amontoado macale@amontoado:~$ cat /etc/hostname

echo celepar > /etc/hostname bash: /etc/hostname: Permisso negada


macale@amontoado:~$ sudo su amontoado:~# echo celepar > /etc/hostname amontoado:~# cat /etc/hostname celepar

O nico usurio com permisso de alterar o arquivo o superusrio. Ento, somente aps logar como

113

Debian Bsico - Desktop Paran

tal possvel fazer alguma alterao.

Criar arquivos binrios


Os arquivos binrios nada mais so do que arquivos de texto que possuem vrios comandos que devem ser executados por um interpretador de comandos, como o bash, por exemplo. Aps ter criado o arquivo com os comandos, para que o bash execute todas as linhas, necessrio que a permisso de execuo seja ativada. No cabe a ns estudarmos scripts neste momento, mas iremos criar um bem simples s para que isso possa ficar bem entendido. Usando o VIM, crie o seguinte arquivo.
macale@amontoado:~$

vim Binrio

Com o VIM aberto, insira o texo abaixo:


#!/bin/bash ls /

Salve o arquivo.
macale@amontoado:~$ ls -l total 4 -rw-r--r-- 1 macale diplomata 16 Fev

2 14:41 Binrio

Para executar um arquivo binrio, basta voc passar seu nome com seu caminho completo (pode ser o endereo absoluto ou relativo).

./Binrio bash: ./Binrio: Permisso negada


macale@amontoado:~$

No basta criar um arquivo vlido, ainda necessrio adicionar permisso de execuo para todos os usurios que iro poder execut-lo.
-rwxr-x--x 1 macale diplomata 16 Fev 2 14:41 Binrio

Agora qualquer usurio conseguir execut-lo.


macale@amontoado:~$ ./Binrio bin boot cdrom dev etc home mnt nonexistent opt proc root vmlinuz.old initrd.img initrd.img.old lib media sbin srv sys tmp usr var vmlinuz

CHOWN
Sintaxe: chown <usurio> <arquivo/diretrio> OU Sintaxe: chown <usurio>.grupo <arquivo/diretrio> O comando chown permite que se altere o usurio proprietrio de um arquivo ou diretrio. Possui a possibilidade de alterar o grupo junto ao proprietrio, mas nunca somente o grupo.

CHGRP
Sintaxe: chgrp <grupo> <arquivo/diretrio> Muda o grupo do qual um arquivo ou diretrio faz parte.
114

Debian Bsico - Desktop Paran

CHMOD
Sintaxe: chmod <permisses> <arquivo/diretrio> Muda as permisses de um arquivo ou diretrio. Existem vrias formas de se alterar as permisses, escolha a que mais lhe agrada.

Modo octal
Neste modo, voc ter que passar um valor de 0 a 7 para cada set (proprietrio, grupo e outros). Cada nmero representa uma sequncia de permisses diferentes. Cada tipo de permisso possui um valor fixo, e a soma dos trs valores o que dever ser usado juntamente ao chmod para alterar as permisses de cada set. No total, teremos trs nmeros de 0 a 7.

r leitura 4

w escrita 2

x execuo 1

Permisses

Octal

----x -w-wx r-r-x rwrwx

0 1 2 3 4 5 6 7

Para alterar as permisses, basta usar a sintaxe chmod <nnn> <arquivo e dir>.
ecelepar10160:~# chmod 754 ARQUIVO-LOUCO ecelepar10160:~# ls -l total 0 -rwxr-xr-- 1 root root 0 Fev 3 16:31 ARQUIVO-LOUCO

embre-se que a primeira casa destinada a exprimir o tipo de arquivo. O hfen denota arquivo, o d diretrio, o l link simblico, e assim por diante.

Modo alfabtico
Alm do modo octal, o usurio poder alterar as permisses de um arquivo ou diretrio atravs das letras que representam os tipos de permisses. A sintaxe ser chmod <proprietrio-grupo-outros>[+, - ou =]<permisses> Vamos entender cada parte.
115

Debian Bsico - Desktop Paran

<proprietrio-grupo-outros>

Proprietrio = u (u de usurio) Grupo = g (g de grupo) Outros = o (o de outros)

As permisses podem ser definidas de uma vez para todos eles, ou ento somente para o set desejado. Se for somente para um set, use o nome deste; se for mais de um set, use os nomes juntos; e se todos os sets forem definidos com as mesmas permisses, use o a de ALL (todos em ingls). Exemplos: u definio de permisses somente do proprietrio; g definio de permisses somente do grupo; o definio de permisses somente de outras pessoas; ug definio de permisses do proprietrio e do grupo; a definio de permisses de todos os sets; [+, - ou =] Agora voc ter que utilizar uma dessas conjunes para definir se as permisses sero adicionadas, removidas ou se todo o set ser alterado. Sempre que o usurio utilizar o =, ele ter que definir todas as permisses. Quando utilizar o + ou -, poder alterar apenas um tipo de permisso. <permisses> Em vez de nmeros, o usurio ter que utilizar as letras das permisses. r para leitura, w para escrita e x para execuo. Se usado com + ou -, o usurio poder adicionar ou remover um, dois ou trs tipos de permisses, sem alterar aquele que no for expressamente definido. Se for usado o =, todos os tipo de permisses tm de ser definidos, caso contrrio, aquele que no foi definido, ser desabilitado.Exemplos:
macale@amontoado:~$ ls -l total 0 -rwxrwxrwx 1 macale diplomata 0 Fev

3 16:31 ARQUIVO-LOUCO

macale@amontoado:~$ chmod o-x ARQUIVO-LOUCO macale@amontoado:~$ ls -l total 0 -rwxrwxrw- 1 macale diplomata 0 Fev 3 16:31 ARQUIVO-LOUCO macale@amontoado:~$ chmod go-rw ARQUIVO-LOUCO macale@amontoado:~$ ls -l total 0 -rwx--x--- 1 macale diplomata 0 Fev 3 16:31 ARQUIVO-LOUCO macale@amontoado:~$ chmod g+r ARQUIVO-LOUCO macale@amontoado:~$ ls -l total 0 -rwxr-x--- 1 macale diplomata 0 Fev 3 16:31 ARQUIVO-LOUCO macale@amontoado:~$ chmod a=rx macale@amontoado:~$ ls -l total 0 -r-xr-xr-x 1 macale diplomata 0 Fev

ARQUIVO-LOUCO
3 16:31 ARQUIVO-LOUCO

UMASK
Faa um teste. Crie um arquivo e um diretrio qualquer e veja quais permisses foram definidas por padro. Aps execute o comando umask.
macale@amontoado:~$ > QUALQUER-COISA

116

Debian Bsico - Desktop Paran

macale@amontoado:~$ macale@amontoado:~$ total 0 drwx------ 2 macale -rw------- 1 macale macale@amontoado:~$

mkdir DIRETRIO ls -l diplomata 6 Fev diplomata 0 Fev 4 10:38 DIRETRIO 4 10:38 QUALQUER-COISA

0077

umask

Sempre que o usurio for criar um arquivo ou diretrio, uma mscara ser confrontada com um valor inicial fixo e, da, surge o padro de permisses. O valor fixo diferente para arquivos e diretrios. Os diretrios possuem o valor inicial 777 e os arquivos 666. O sistema simplesmente ir subtrair desses valores a mscara que o usurio definiu e trar o resultado. No caso anterior:

Diretrio Valor Inicial Fixo UMASK (valor a ser subtrado) Valor Padro

Arquivo

0777 0077 0700

0666 0077 0600

O valor nunca ser negativo. Caso o resultado d -1, o valor ser 0. Alm de visualizar a mscara definida para o usurio logado, o comando umask tambm permite que o usurio altere-a.
macale@amontoado:~$ umask 0077 macale@amontoado:~$ macale@amontoado:~$ 0066 macale@amontoado:~$ macale@amontoado:~$ total 0 -rw------- 1 macale

umask 0066
umask > oi ls -l diplomata 0 Fev 4 11:11 oi

666 066 = 600 (6=rw- ; 0=---; 0=---)

NEWGRP
Sintaxe: newgrp <usurio> <arquivo/diretrio> As vezes preciso que o grupo principal de um usurio seja alterado temporariamente. Imagine que o usurio macale faz parte do grupo diplomata, feio-como-o-cao e engenheiro, sendo o primeiro o principal. S que ele decide criar um diretrio que o grupo feio-como-o-cao tenha acesso. Isso poderia ser feito criando-se o diretrio e depois alterando o seu grupo. Porm com o newgrp, durante toda a sesso, o grupo principal ser feio-como-o-cao, otimizando o tempo do usurio.

117

Debian Bsico - Desktop Paran

Exemplos:
$ mkdir SOH-PARA-OS-FEIOS $ ls -l total 0

drwxrwx--- 2 macale diplomata 6 Fev 4 14:06 SOHPARA-OS-FEIOS ***(O grupo DIPLOMATA)


$ rm -Rf SOH-PARA-OS-FEIOS/ $ newgrp - feio-como-o-cao $ mkdir SOH-PARA-OS-FEIOS $ ls -l total 0

drwxrwx--- 2 macale feio-como-o-cao 6 Feb SOH-PARA-OS-FEIOS ***(O grupo mudou...)


$ > SOH-PARA-OS-FEIOS/1 $ > SOH-PARA-OS-FEIOS/2 $ > SOH-PARA-OS-FEIOS/3 $ ls -lR . .: total 0

4 14:07

***...durante toda a sesso) 4 14:08

drwxrwx--- 2 macale feio-como-o-cao 30 Feb SOH-PARA-OS-FEIOS


./SOH-PARA-OS-FEIOS: total 0

-rw-rw---- 1 macale feio-como-o-cao 0 Feb -rw-rw---- 1 macale feio-como-o-cao 0 Feb -rw-rw---- 1 macale feio-como-o-cao 0 Feb
$ exit logout fcamargo@amontoado:~$ su - macale Senha:

4 14:08 1 4 14:08 2 4 14:08 3

> OI ***(Aps reinciar o principal voltou a ser diplomata)


$ $ ls -l total 0

sistema,

grupo

-rw-r--r-- 1 macale diplomata 0 Fev OI drwxr-xr-x 2 macale feio-como-o-cao 30 Fev SOH-PARA-OS-FEIOS

4 14:09 4 14:08

- em frente ao grupo serve para carregar as variveis de sistema do grupo que o usurio est se conectando. Caso no seja colocado, as variveis do grupo anterior

sero mantidas.

118

Debian Bsico - Desktop Paran

USERMOD
Sintaxe: usermod [parmetros] <valores> <usurio> O comando newgrp altera o grupo principal do usurio temporariamente. Mas e se o usurio desejar alterar o grupo principal permanentemente? A usamos o usermod, que ir modificar dados do usurio. Esses dados so vrios, e so definidos atravs de parmetros e valores. Parmetro -g (grupo) -G (Grupo. Maior, ou seja, engloba MAIS grupos) -aG Descrio Altera o grupo principal do usurio. Ao executar este comando, o usurio deixar de fazer parte do grupo que era o principal. Define todos os grupos secundrios aos quais o usurio far parte. Todos os grupos devem ser separados por vrgula e sem espao. Este comando ir sobrescrever todas as informaes anteriores, tendo que o administrador especificar todos os grupos secundrios. Se a inteno for apenas adicionar um grupo, basta adicionar um a antes do G. Ex: usermod -aG miseraveis robsonpavan (o usurio robsonpavan foi adicionado ao grupo miserveis sem alterao do grupo principal e nem sair de nenhum outro grupo. Se a opo -a no tivesse sido usada, o grupo principal manteria-se, porm o nico grupo secundrio seria miseraveis). Altera o diretrio home do usurio. Utilizando a opo m junto a este parmetro, todo o contedo do home antigo movido para o novo. Sem ela, todo o contedo do antigo diretrio apagado. Ex: usermod -md /home/feio andresp (o usurio andresp deixar de ter seu home em /home/andresp e passar para /home/feio. Todo o contedo do diretrio antigo ser transferido para o novo). Altera o nome do usurio, aquele utilizado para se fazer o login. O L bloqueia a conta de um usurio sem apag-la. O U desbloqueia.

-d (diretrio home) -md (move o home e o altera) -l (login) -L (locke) -U (unlocke)

119

Debian Bsico - Desktop Paran

EXERCCIOS DE FIXAO (PARTE 5)


1.Adicione os usurios chamados clotilde, madruga, jaiminho e zero-a-esquerda no sistema (as senhas devem ser iguais aos nomes); 2.Crie um grupo chamado chegados-da-bruxa-do-71 e insira o usurio madruga a ele; 3.Crie outro usurio chamado presidente e, em vez de permitir que o sistema crie um grupo presidente, faa com que seja criado e atribudo como grupo principal do usurio o grupo funcionariosdos-correios; 4.Agora crie os trs diretrios abaixo: a)/Curso/Permissoes/Ap-da-Bruxa-do-71; b)/Curso/Permissoes/Pindamonhangaba; c)/Curso/Permissoes/Correios. 5.Altere as informaes de inode dos diretrios de acordo com a tabela abaixo: Diretrio Proprietrio (Owner) Grupo Principal (Group) Permisses

Ap-da-Bruxa-do-71 clotilde

chegados-da-bruxa-do-71 Owner ou Proprietrio: Total Group ou Grupo: Total Users ou Outros: Nada jaiminho Owner ou Proprietrio: Nada Group ou Grupo: Total Users ou Outros: Total

Pindamonhangaba

jaiminho

Correios

presidente

funcionarios-dos-correios Owner ou Proprietrio: Total Group ou Grupo: Total Users ou Outros: Entrada

6.Agora crie os arquivos .../Ap-da-Bruxa-do-71/Caldeirao com permisso total. .../Pindamonhangaba/Mercearia com permisso total. .../Correios/Sistema-dos-correios com permisso rwxrwx---. 7.Faa os testes abaixo e reporte um relatrio sobre o comportamento do sistema. a)Logue-se como jaiminho; b)remova o arquivo caldeirao; c)neste mesmo diretrio crie um arquivo chamado Boca-livre tendo como grupo principal chegadosda-bruxa-do-71 (use o newgrp); d)adicione a frase D um de tamarindo dentro do arquivo Mercearia e adicione o horrio de entrada Entrei s 11:30 da manh no arquivo Sistema-dos-correios. e)Logue-se como madruga; f)remova o arquivo caldeirao; g)adicione a frase Aulas de boxe com Madruga; h)aps isso renomeie o arquivo Mercearia para Mercadinho; i)veja a hora que o jaiminho iniciou sua dura jornada no sistema dos correios.

120

Debian Bsico - Desktop Paran

8.O usurio jaiminho, para evitar a fadiga, acabou esquecendo de memorizar a sua senha. Existe a possibilidade de recuper-la? Altere a senha para 123456. 9.Remova o usurio presidente do sistema removendo todos os seus vestgios. 10.Temos um diretrio /Oi com permisso 777 e um arquivo /Oi/Saci com permisso 000. possvel remover esse arquivo como um usurio normal? 11.Qual processo est utilizando mais memria no seu computador? 12.Logue-se no terminal como madruga e abra o gedit em segundo plano, logue-se como jaiminho e abra o gedit em segundo plano, logue-se como madruga e abra o gedit em segundo plano, agora visualize todos os processos do gedit seu sistema. Quais so os PIDs deles? Mate todos utilizando apenas um comando. 13.Abra o firefox pelo terminal. Pause o processo dele e verifique o que acontece com a janela do firefox. Faa com que ele fique utilizvel novamente. 14.Qual dos usurios abaixo no um usurio padro do sistema? a)root b)games c)proxy d)main e)sync 15.Qual comando que, com determinado(s) parmetros faz com que possamos visualizar os processos que no esto vinculados a algum terminal? 16.O getent permite que visualizemos quais so as informaes que o sistema est recebendo para determinados recursos do sistema, como redes disponveis, nomes definidos, usurios habilitados a utilizar o sistema. Digamos que um usurio no consegue se logar no sistema. Como voc verificaria se o usurio est cadastrado e apto a logar? 17.Como fazemos para tornar um arquivo executvel? Crie um arquivo utilizando o VIM com as seguintes linhas:

#!/bin/bash echo Meu rapaz, voc conseguiu! Seu arquivo de nada virou um executvel
Salve como Binrio e torne-o um executvel. 18.O chown permite alterar o usurio e grupo ao mesmo tempo? E o chgrp? Qual a principal diferena entre eles? Crie um diretrio dentro do /tmp chamado Louco e altere o proprietrio para clotilde e o grupo para jaiminho. 19.Altere o diretrio principal do usurio madruga para /home/saci. Depois de fazer isso, logue-se como madruga e digite cd. 20.Altere o nome do usurio clotilde para bruxa-do-71. 21.Um arquivo Oi possui permisses 665. Queremos tirar todas as permisses dos outros, permisso de leitura do grupo e de alterao do proprietrio, mas permiti-lo executar o arquivo. Qual destas permisses no a correta? a)chmod u-w+x Oi; chmod g-r Oi; chmod o-rx Oi b)chmod u=rx g=w o=x Oi
121

Debian Bsico - Desktop Paran

INSTALAO DE IMPRESSORAS
A verso Zandor trs a ferramenta Configurao da impressora para facilitar a instalao, remoo e gerenciamento de impressoras no sistema, assim como a gesto da fila de impresso. Vejamos como fcil a sua utilizao.

ABRINDO O GERENCIADOR
No menu Sistema, v at o submenu Administrao e selecione a opo Impresso. A seguinte caixa de dilogo ser aberta:

Figura 13: Caixa de dilogo "Configurao da impressora"

Nesta janela todas as impressoras instaladas aparecero em formato de cones com seus respectivos nomes em baixo.

DEFININDO UMA IMPRESSORA PADRO


A impressora padro, ou seja, aquela que utilizada preferencialmente por qualquer programa instalado no sistema, a que possui a marca . Para alterar a impressora padro, clique com o boto direito sobre a impressora que ser o novo padro e selecione Set As Default (Definir Como Padro).

Figura 14: Definindo impressora padro

uma

Q
122

uando voc abre o BrOffice.org e clica em imprimir, a impressora padro a que selecionada para ser utilizada automaticamente.

Debian Bsico - Desktop Paran

ADICIONAR UMA NOVA IMPRESSORA


Para iniciar seus trabalhos de impresso, ser necessrio instalar uma impressora no seu sistema. Esta tarefa bem simples. Basta clicar sobre o boto que fica logo abaixo do menu Arquivo. Tambm possvel clicar sobre Editar/Nova Impressora.

Figura 15: Procurando o dispositivo

No painel Selecionar Conexo, voc dever indicar qual a impressora a qual voc deseja se conectar, se, claro, ela for encontrada automaticamente. Caso isso no acontea, ento dever ser indicado a forma como o sistema se conectar a ela. As informaes sempre sero apresentadas da seguinte forma: Nome da impressora 0.0.0.0 (IP da impressora ou do servidor). Caso encontre-a, apenas selecione-a e clique em <Avanar>. Caso ela no aparea, selecione a forma de conexo e informe os parmetros necessrios na sesso que fica ao lado direito da caixa de dilogo.

unca instale uma impressora que esteja disponvel nos dispositivos de Selecionar Conexo e que estejam em computadores desconhecidos. Procure IPs que sejam ou

da impressora ou do servidor dedicado.

Tipo de impressora Impressora local Impressora com interface de rede

Device LPT #1

Parmetros Nenhum parmetro dever ser definido.

AppSocket / HP Ser necessrio informar o nome ou IP da impressora que JetDirect ir ser instalada em Nome da mquina e o nmero da porta que ser utilizada. A porta, por padro, 9100. Dificilmente ser diferente disto. Caso no seja, verifique
123

Debian Bsico - Desktop Paran

Tipo de impressora

Device

Parmetros o manual da impressora. Ser necessrio colocar o IP do servidor ou da impressora no campo Nome da mquina. Se usar o ip, voc dever deixar os parmetros da seguinte forma: IP:631 /printers/Nome-da-Impressora-no-Servidor

Impressora com Internet Printing interface de rede ou Protocol (ipp) conectada a um servidor Impressora instalada em uma mquina Windows

Windows Printer Ser necessrio passar os parmetros exatamente da via Samba forma como explicado abaixo da caixa de texto smb:// na sesso Impressora SMB. possvel ver um exemplo da configurao dos parmetros na figura 16. Deve-se marcar a caixa de seleo Set authentication details now e inserir um nome de usurio e senha vlidos do Windows. Clique em verificar antes de continuar para saber se a instalao ser concluda ou no.

Figura 16: Instalando uma impressora que esteja no Windows

Impressora Virtual

CUPS-PDF

Uma impressora virtual uma impressora que no existe fisicamente, somente logicamente. Toda vez que um trabalho de impresso for enviado a ela, a impressora virtual ir converter o trabalho em um arquivo PDF, e ir aloc-lo no diretrio ~/PDF. Clique sobre o boto <Avanar> sem alterar nada.

Agora voc dever selecionar o driver da impressora. Normalmente o driver estar disponvel no sistema, tendo que apenas ser especificado o fabricante e seu modelo. Se voc no tiver o arquivo ppd (correspondente ao driver da impressora), deixe marcado Selecionar impressora da base de dados, marque o fabricante e clique em <Prximo>. Se voc tiver o ppd, selecione Fornecer arquivo ppd, clique no boto ao lado direito da caixa de texto para navegar no seu sistema e indique onde e qual o nome do arquivo. Clique em <Avanar>.
124

Debian Bsico - Desktop Paran

Figura 17: Instalando o driver da impressora

Caso tenha selecionado procurar na base de dados, uma lista de modelos de impressoras do fabricante definido que possuem suporte no Zandor ser mostrada. Escolha a sua impressora e clique sobre o boto <Avanar>. Se ela no tiver suporte, clique sobre o boto <Avanar> entre no site www.linuxprinting.org e procure o driver apropriado. Faa download do arquivo ppd recomendado e prossiga a instalao usando a opo Fornecer arquivo ppd.

C
corretamente.

aso voc esteja tentando instalar uma impressora virtual, escolha o fabricante Genrico e o driver CUPS-PDF-Printer, Generic CUPS-PDF Printer [em]

(recomendado). Aps indicar qual driver ser instalado, voc precisar definir um nome para a impressora. O nome um campo obrigatrio e no pode conter espaos e caracteres especiais. Os campos Localizao e Descrio no so obrigatrios. Clique sobre o boto <Aplicar> e a impressora ser instalada

REMOVER UMA IMPRESSORA


Clique como boto direito sobre a impressora que deseja remover para que seja aberto o menu de contexto. Selecione a opo Excluir. Confirme clicando sobre o boto <OK> e pronto, sua impressora ter sido removida do sistema.

Figura 18: Menu de contexto para remover uma impressora

125

Debian Bsico - Desktop Paran

SSH
Acessos remotos so importantssimos para administradores de redes, pois no sempre que eles tm a possibilidade de estar diante do computador que precisam configurar ou consertar. Vrios servios permitem que haja conexo remota entre computadores, e o que iremos ver agora o SSH. SSH (Secure Shell Client Cliente seguro do shell) um servio que, se instalado corretamente em dois computadores, permite que eles acessem o sistema um do outro de uma forma muito segura. Segura porque ele troca informaes criptografadas e possui uma srie de recursos para impedir que pessoas no permitidas acessem os servidores ou mesmo interceptem os dados das transmisses. Para que ele funcione, precisaremos sempre que um, pelo menos, tenha o servidor SSH instalado e que o outro tenha o cliente.

INSTALANDO E INICIANDO O SERVIO


Os pacotes que so necessrios estar instalados para que a conexo exista so os seguintes:

Servidor openssh-server Cliente openssh-client

Para instalar os dois, basta instalar o metapacote ssh, que instalar os dois pacotes acima:
amontoado:~# apt-get install -y ssh

Aps ter o SSH instalado corretamente necessrio que o cliente tenha um usurio vlido no servidor.

o possvel se conectar ao servidor usando um usurio do cliente. Se voc no tiver nem souber login e senha de nenhum usurio, no poder se conectar.

Para iniciar a conexo, o daemon (gerenciador do servio SSH) do servidor dever estar rodando. ele que responsvel por escutar as solicitaes, fazer as conexes, gerenciar e operar as transmisses de dados. Aps instalar o ssh, automaticamente o servio j estar funcionando. Mas se isso no acontecer, voc poder saber se o daemon est rodando verificando se a porta do SSH est aberta atravs do seguinte comando:

amontoado:~# nmap localhost Starting Nmap 4.62 ( http://nmap.org ) at 2008-11-24 08:11 BRST Interesting ports on localhost (127.0.0.1): Not shown: 1711 closed ports PORT STATE SERVICE 22/tcp open ssh Nmap done: 1 IP address (1 host up) scanned in 0.074 seconds

Se a porta estiver aberta o ssh estar rodando na porta 22. Acontece que possvel que algum tenha alterado a porta manualmente e, caso isso tenha acontecido, a porta 22 no aparecer aberta. O nmap no conseguir dizer qual a porta em que o SSH est rodando caso ele no esteja na padro (somente com ajuda de alguns parmetros, como o -A, que ser visto mais frente). Resta-nos visualizar

126

Debian Bsico - Desktop Paran

atravs do comando ps se existe um processo do daemon. Para isso, execute o seguinte comando:
amontoado:~# ps aux |grep sshd root 2369 0.0 0.0 /usr/sbin/sshd 5236 984 ? Ss Nov21 0:00

Como voc pode perceber, o processo sshd (SSH Daemon) existe e est ativo. Agora voc poder acessar o servidor, desde que tenha permisso para isso. Se nada for encontrado, voc poder inici-lo manualmente. Para isso, execute os seguintes comando:
amontoado:~# /etc/init.d/ssh start * Starting OpenBSD Secure Shell server sshd

CONECTANDO-SE AO SERVIDOR
A conexo dever ser feita atravs de comando que respeite a seguinte sintaxe: ssh [parmetros] <usurio>@<nome.da.mquina> Veja abaixo um exemplo de como se conectar a um servidor. Este ser o 10.15.17.30.
fcamargo@amontoado:~$ ssh fcamargo@10.15.17.30 The authenticity of host '10.15.17.30 (10.15.17.30)' can't be established. RSA key fingerprint is 44:b7:01:cf:c3:14:14:76:4f:18:18:e2:8e:f9:dc:c5. Are you sure you want to continue connecting (yes/no)?

N
Caso

o caso acima, o usurio poderia ser suprimido. Se voc no especificar um usurio, o ssh ir completar esta informao com o usurio que voc est logado no momento. no use este campo, retire tambm o @.

Ex: ssh 10.15.17.30 A primeira vez que voc se conectar a um servidor ser informado que no foi possvel estabelecer uma associao entre o IP e MAC da interface de rede verificada com o que consta no arquivo ~/.ssh/know_hosts. Isso bvio, j que a primeira vez que voc se conecta ao computador e no h registros. Essa verificao feita para que voc tenha certeza que, a partir da segunda vez, o servidor o qual est se conectando o mesmo que o que voc quer. Como pode o computador no ser o mesmo se voc colocou o mesmo IP? Ele pode ter sido reinstalado ou ento um servidor DHCP pode ter enviado um novo endereo para ele. Caso isso acontea, um erro na conexo acontecer, mas fiquei tranquilo, pois a soluo ser fcil. Voc s ter que abrir o arquivo know_hosts do usurio logado no shell, no computador cliente, e ento apagar a linha referente ao computador que voc estiver com problemas. Se no souber qual a linha, apague todas. Ser perguntado se voc te certeza que quer se conectar caso o registro do computador no exista. Se isso acontecer digite yes e tecle <ENTER>. Ento voc poder entrar com a senha (o que acontecer direto caso o servidor esteja registrado). Aps voc ter digitado a senha corretamente, a seguinte tela ser mostrada:

127

Debian Bsico - Desktop Paran

amontoado:~# ssh fcamargo@10.15.17.30 fcamargo@10.15.17.30's password: Linux ecelepar91893 2.6.26-1-686 #1 SMP Thu Oct 9 15:18:09 UTC 2008 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Mon Nov 24 10:53:33 2008 from 10.15.15.8 fcamargo@pilintra:~$

Voc est conectado ao sistema do computador 10.15.17.30, que tem o nome pilintra.

Parmetros (opes)
Da forma como foi mostrado acima, a conexo ser feita da forma padro. Existem alguns parmetros que permitem que voc tenha suporte a outros recursos do ssh, como por exemplo conectar-se so servidor com suporte grfico. Vejamos os principais:

Parmetro

Descrio

-X Habilita o encaminhamento X11 (servidor grfico). Com este (maisculo) parmetro voc poder abrir aplicativos atravs do terminal e us-lo no modo grfico. Um exemplo de aplicativo que poder ser executado o Iceweasel (navegador da internet). O som no ser ativado, por isso abrir um player de mp3 no ser possvel. Exemplo: $ssh -X fcamargo@10.15.1.47 <ENTER> -p (porta) Permite que voc altere a porta que o ssh ir tentar se conectar. Se voc no especificar a porta, o comando sempre tentar se conectar porta 22. Se a porta tiver sido alterada, uma mensagem dizendo que a conexo foi refutada ser mostrada. Exemplo: $ssh -p 2222 fcamargo@10.15.1.47 <ENTER>

COPIANDO COM O SSH


As vezes necessrio copiar algum arquivo ou diretrio do cliente para o servidor ou vice-versa. Para fazer isso, utilizaremos o comando scp que instalado junto com o openssh-client. No existe como voc logar num sistema e tentar copiar para o seu computador sem ser pelo scp. Mesmo que se conecte ativando suporte ao modo grfico e abra o nautilus (gerenciador de arquivos, similar ao internet explorer do windows), perceber que a funo de colar e copiar ou arrastar e soltar no funcionar. Ento para realizar a cpia, voc ter que usar o scp com a seguinte sintaxe: scp [parmetros] <arquivo_a_ser_copiado> <diretrio_de_destino> Um desses dois campos:
<arquivo_a_ser_copiado> <diretrio_de_destino>

ser o caminho no cliente e o outro no servidor. O caminho que estiver no servidor dever ser precedido pelo nome de usurio com o qual ir se conectar, arroba, o IP do servidor e dois pontos. Vejamos no seguinte exemplo como fazer isso na prtica: um arquivo chamado marcius.jpg, que est
128

Debian Bsico - Desktop Paran

armazenado em /tmp de um computador remoto, deve ser copiado para o seu. Voc quer que o arquivo v pra o diretrio /zoaes. Considerando que o usurio logado no shell local tambm est instalado no sistema remoto e que este possui o IP 10.15.15.30, o comando ser o seguinte:

Computador remoto

Local

fcamargo@amontoado:~$ scp fcamargo@10.15.15.30:/tmp/marcius.jpg ~/zoaes

Podemos concluir que o scp permite que em uma parte definamos um arquivo ou diretrio no computador local ou remoto, e na outra parte definamos um destino em outro computador.

Parmetros (Opes)
Parmetro -r (recursivo) Para cpia de pastas. Descrio Ativa a opo recursiva na cpia. Isso quer dizer que ao copiar diretrios, sero copiados os arquivos e subdiretrios de nveis mais abaixo a partir dele, depois os de um nvel acima e assim por diante, at tudo ser copiado. No possvel copiar diretrios sem que este parmetro seja definido. Exemplo: $scp -r /tmp/Oi fcamargo@10.15.1.47:~ <Enter> Similar ao ssh. Exemplo: $scp -p 2222 /etc/* fcamargo@10.15.1.47:/tmp <Enter>

-p (porta)

129

Debian Bsico - Desktop Paran

ANEXO I (INSTALAO DO SISTEMA OPERACIONAL DESKTOP PARAN 2.0 - ZANDOR)


PRIMEIRA ETAPA DA INSTALAO
1.Verifique as configuraes de setup (BIOS) do equipamento, deixando o CD-ROM como primeiro dispositivo de boot. 2.D um boot com o CD do Desktop Paran 2.0, faa o download no seguinte endereo: http://www.repositorios.pr.gov.br/imagens/Desktop-Parana/2.0/desktop-parana_2.0r0_i386.iso 3.Selecione Instalar Desktop Paran, como na imagem abaixo e aguarde o incio da instalao. 4.Em seguida, escolha o layout do teclado adequado ao seu hardware. 5.O sistema de instalao ir dectar as unidades de disco, unidades pticas, dispositivos USB e placa de rede, aps isso, tentar configurar a rede automaticamente via DHCP, se isso no for possvel, voc dever informar as configuraes de rede manualmente. 6.Em seguida informe o nome da mquina: Algo como e[NOME DO RGO][n do patrimnio] (Em letras minsculas e com numerao de 5 dgitos). 7.Por exemplo: Se o nmero de patrimnio da mquina for 10136 e a mquina pertencente CELEPAR, ento, o hostname da mquina dever ser ecelepar10136 (sem as aspas). Se for uma mquina pertencente SEAE, e o nmero de patrimnio for 129, ento o hostname ser eseae00129 (sem as aspas). 8.Fornea o nome do domnio, algo como [nome do rgo].parana (por exemplo: celepar.parana) 9.Em Configurao do relgio selecione o fuso horrio para sua regio. 10.Se tudo ocorrer bem, ser iniciado o particionador de discos. 11.Aps a carga do particionador, ser exibido as informaes de todos os discos conectados no seu sistema, inclusive Pen Drives, Hds Externos ou algum outro dispositivo de armazenamento. De preferncia, voc dever criar 4 parties para o Desktop Paran, de acordo com a tabela abaixo: Ponto de montagem /boot / swap /home Tamanho aproximados 100MB 10GB 1GB Mtodo de uso Formatar a partio (ext3) Formatar a partio (xfs) rea de troca

Restante do espao ou quanto for Formatar a partio (xfs) necessrio para esta partio

/boot Partio onde ficaro os arquivos necessrios para a carga do sistema, essa partio deve

ser criada apenas quando o Sistema Raiz (/) for formatado com o Sistema de Arquivos XFS, pois o gerenciador de boot GRUB no consegue encontrar os arquivos necessrios para a carga do sistema em parties formatadas com XFS, a escolha do Ext3 se deve ao fato desse sistema se recuperar rapidamente de falhas, fazendo com que o sistema sempre possa ser inicializado.
/ - Partio onde ficar o Desktop Paran propriamente dito, esse partio dever ter pelo menos

6GB de espao livre para instalao, a escolha do XFS se deve ao fato desse sistema gerir um melhor
130

Debian Bsico - Desktop Paran

cache dos arquivos em memria, fazendo com que o sistema fique mais responsivo, e alm de ser um dos Sistemas de Arquivos mais robusto existentes hoje em dia.
Swap Partio onde ficar a rea de troca do sistema, o tamanho dessa partio no dever

ultrapassar 1GB, esse tamanho foi escolhido pelo fato que se um sistema estiver utilizando mais do que 1GB de rea de troca, acrescentar mais espao para essa rea, far com que o sistema fique cada vez mais lento, quando isso ocorrer, o sugerido acrescentar memria RAM e no aumentar a rea de troca.
/home Partio onde ficaro os arquivos dos usurios, o tamanho dessa partio no deve ser

menor que 5GB, e dever ser formatado com XFS. A escolha do sistema de arquivos se deve ao que j foi explicado na partio onde ficar o Sistema Raiz. Quando o sistema for instalado em um HD que seu tamanho total seja menor que 15GB, recomendado que essa partio no seja criada.

altamente recomendado que as informaes acima sejam seguidas a risca para que a Instalao fique padronizada, facilitando o suporte.

1.Um exemplo de como deve ficar o particionamento mostrado na imagem abaixo: 2.Finalize as configuraes de partio e grave as mudanas no disco. Ser solicitado uma confirmao. Selecione sim se voc tiver realmente certeza. 3.Em seguida, ser iniciada a cpia dos arquivos para o disco. 4.Apo o trmino da cpia, ser necessrio informar o endereo do servidor proxy de sua rede, a porta utilizada pelo proxy e suas excees. Se a rede no possuir um servidor proxy ou no souber essa informao, deixe em branco. Aps a instalao, voc poder configurar o proxy executando no terminal dpkg-reconfigure web-browser-parana. 5.Informe o nome do Domnio/Workgroup da sua rede.Informe os servidores NTP para sua rede, se a rede no possuir servidores NTP, deixe em branco. 6.O Grub ser instalado na MBR do seu disco, os scripts finais sero executados. 7.Finalizando a instalao, selecione continuar para reinicializar a mquina. 8.Retire o CD.

SEGUNDA ETAPA DA INSTALAO


A primeira etapa da instalao est finalizada, porm, agora iremos entrar em outro processo que a configurao do sistema: 1.Logue-se com o usurio parana e a senha parana, execute o comando sudo su e entre com a senha parana novamente. 2.Edite o /etc/apt/sources.list, com o editor de textos da sua preferncia (vi, vim, nano, pico etc) e descomente as linhas que apontam para o repositrio interno se voc estiver dentro da rede corporativa do Estado do Paran ou as linhas que apontam para o repositrio externo se voc estiver fora da rede corporativa do Estado do Paran. 3.Execute o seguinte comando:

131

Debian Bsico - Desktop Paran

# apt-get update

Isso far com que a lista de pacotes seja atualizada. 4.Para instalar o pacote Cliente-Ldap, execute o seguinte comando:
# apt-get install cliente-ldap

5.Informe o nome do servidor LDAP da sua rede, por exemplo: ldaps://ldap.eparana.parana/; 6.Informe a base de pesquisa do LDAP, por exemplo: ou=celepar,dc=pr,dc=gov,dc=br; 7.Selecione a verso do protocolo LDAP utilizada pelo seu servidor. Na maioria das vezes a verso utilizada a 3; 8.Em Tornar a conta root local o administrador da base de dados , selecione No. Esta opo s vlida quando o servidor LDAP est sendo executado na mquina local; 9.Em A base de dados LDAP requer autenticao?, selecione No se o seu servidor permite consultas annimas; 10..Em Conta LDAP para o root, deixe em branco, essa opo usada quando o Servidor LDAP pode ser administrado por usurios das estaes; 11.Informe o servidor WINS de sua rede; 12.Informe o nome do servidor onde se encontram os compartilhamentos dos usurios; 13.Informe o nome do compartilhamento para que ele seja montado no sistema. Deixe o padro; 14.Informe o nome do grupo dos usurios que podero logar via SSH; 15.Informe o nome do grupo dos usurios que tero poderes de SUDO; 16.Voc poder informar at 5 nomes de servidores e seus compartilhamentos; 17.Aps isso, ser mostrada uma mensagem com informaes importantes, voc deve l-la; 18.Quando for solicitado para substituir os arquivos de configurao, voc deve informar que todos os arquivos devem ser substitudos.

132

Debian Bsico - Desktop Paran

ANEXO II (ALSA)
Alsa quer dizer Advanced Linux Sound Arquitethure Arquitetura avanada de som do Linux. um sistema que prov suporte s mais variadas interfaces de som existentes. Com ele a instalao de uma placa de som muito fcil, j que ele tem vrios mdulos prontos para serem utilizados. Mdulos so como drivers do windows. Para us-lo basta execut-lo e inform-lo qual a sua placa de som de uma lista criada por ele.
amontoado:~# alsaconf <Enter>

Se tudo estiver certo, sua placa j ter o mdulo instalado e configurado. Agora s colocar o som no talo e aproveitar.
Now ALSA is ready to use. For adjustment of volumes, use your favorite mixer. Have a lot of fun! Agora o ALSA est configurado e pronto para ser usado. Para ajustar os volumes, use seu mixer favorito (use o que vem no prprio painel da rea de trabalho. Divirta-se!!!!!

EVENTUAIS PROBLEMAS
Se o sistema for local, o usurio precisa ter permisso para acessar a placa de som. Na verdade ele sempre ir precisar de permisso, mas se a autenticao no for local, voc ainda no est apto a resolver esse problema. Mas no desanime, voc est perto! Voc precisar verificar se o usurio est no grupo audio. No exemplo abaixo, iremos usar o comando groups para verificar se o usurio doideira est no grupo audio.
# groups doideira doideira

Ele no est. Ser necessrio adicion-lo ao grupo audio. Verifique o resultado do comando abaixo:
# ls -l /dev/audio crw-rw---- 1 root audio 14, 4 Abr 14 05:27 /dev/audio

Como podemos observar, somente o root e quem faz parte do grupo audio tem acesso ao arquivo /dev/audio que o n de dispositivo responsvel pela comunicao entre sistema e dispositivo. Precisamos apenas adicion-lo, ento, da seguinte forma (forma esta que j foi vista neste curso, lembra-se?):
# adduser doideira audio Adding user `doideira' to group `audio' ... Adicionando usurio doideira ao grupo audio Concludo. ecelepar11940:~# groups doideira audio

133

Debian Bsico - Desktop Paran

RESPOSTAS DAS LISTAS DE EXERCCIOS


PARTE 1
QUESTO 01
a) Unix

QUESTO 02
Criar uma alternativa livre para cada software proprietrio.

QUESTO 03
No. GNU o nome do projeto que a Free Software Foundation que pretende criar uma alternativa livre para cada software proprietrio. Linux o kernel do sistema operacional, que cuida da gesto de recursos, processos, memria e sistema de arquivos. Ambos formam um sistema operacional completo para o usurio final, recebendo o nome de GNU/LINUX.

QUESTO 04
As informaes que definem uma partio primria ficam dentro da MBR (Master Boot Record), que o primeiro setor de um disco rgido. As informaes que definem uma partio lgica ficam fora da MBR. Para que o sistema operacional saiba onde esto as informaes a respeito das parties lgicas, uma partio estendida, dentro da MBR, deve indicar onde est a primeira lgica dentro de um dispositivo de armazenamento, e todas as outras parties lgicas so referenciadas em cadeia.

QUESTO 05
a :IV ; b:I ; c:III ; d:II

QUESTO 06
F-F-F-V

QUESTO 07
Um bloco, que definido pelo sistema de arquivos.

QUESTO 08
a) arquivo de caracteres (serial) b) arquivo de blocos (paralelo) c) arquivo de blocos (paralelo)

QUESTO 09
a) hdb7 b) sda c) sdc d) fd0

QUESTO 10
/media

134

Debian Bsico - Desktop Paran

QUESTO 11
A utilizao de uma barra no incio do endereo.

QUESTO 12
usr (Unix Share) um local onde as aplicaes no necessrias ao sistema so armazenadas com suas respectivas bibliotecas e documentao. Todos os usurio tm permisso de leitura, mas qualquer configurao feita em um aplicativo gravada no diretrio pessoal do usurio.

PARTE 2
QUESTO 01
Terminal emulado um processo que roda sobre o servidor grfico e simula um terminal virtual. Terminal virtual o terminal em si, e completamente independente. Terminal emulado: permite o acesso rpido a um terminal; permite personalizao da janela; Terminal virtual: caso o servidor grfico trave, este terminal no travar, j que ele um processo independente; mais leve.

QUESTO 02
No. Sempre um usurio deve ser especificado para que o sistema possa saber quais so as permisses a serem aplicadas, e para que as variveis referentes ao usurio sejam carregadas.

QUESTO 03
a) Cancela a execuo de m processo; b) Limpa a tela mantendo a linha de comando intacta; c) Desconecta o usurio corrente do terminal; d) Abre uma nova aba num terminal emulado.

QUESTO 04
Utilizando o recurso de autocompletar atravs da tecla <TAB>.

QUESTO 05
a)

rm -rf A* //apaga s o que comea com A dentro do dir /root :/root# rm -rf [A,a]* //apaga o que comea com A ou a dentro do dir /root
:/root# b) :/root# mv

*ana Baralho :/root# mv *[a,A]na Baralho


c) :/root# rm

-rf *ar?lho //perceba que o dir Carvalho no foi excludo :/root# ls -l ?[a-l]*

135

Debian Bsico - Desktop Paran

QUESTO 06
Utiliza-se o parmetro que ativa a recursividade na excluso de um diretrio. A recursividade far com que o rm v at o ltimo subnvel do diretrio explicitado, apaga todo seu contedo e vai subindo de um em um nvel. Isto permite que, no fim, o diretrio explicitado esteja vazio e possa ser removido.

QUESTO 07 (BASH - TERMINAL EMULADO)


01 - <ALT>+<F2> (escrever: gnome-terminal); 02 - <CTRL><ALT><T>; 03 - <ALT><2> e who am i; 04 - <ALT><1> 07 - A sada do echo, que normalmente seria mostrada no terminal em que o comando foi executado, foi redirecionada para o outro terminal (aba).

QUESTO 08
No. O pipe redireciona a sada de um comando para a entrada de outro. Uma pessoa com uma bola de futebol, em vez de chutar para o gol, passa para outra pessoa que, a sim, arrisca o abrir o marcador. O > redireciona a sada. Normalmente um jogador chuta a bola para o gol do adversrio, mas com o redirecionador ele chuta no gol do seu time e marca contra.

QUESTO 09
$ vim sobrenome O editor vim ser aberto e editar o arquivo chamado seu sobrenome. a) <INSERT> escrever o solicitado; b) <ESC> <y><y><y><y>; c) Coloque o cursor do mouse sobre a segunda linha e pressione <d><d>; d) :wq! ou :x!

QUESTO 10
a) $ cd /etc/network $ ls

O contedo do diretrio network, que est dentro do diretrio etc, que est dentro do diretrio barra mostrado. b) :/etc/network$ ls /root :/etc/network$ pwd /etc/network

O diretrio corrente continua sendo /etc/network. c) $ cd /boot/grub :/boot/grub$ cd /etc/samba :/etc/samba$ cd :/boot/grub$ cd :/etc/samba$

No diretrio /etc/samba. Voc volta sempre para o diretrio anterior. Se voc foi do diretrio 1 para o 2, do 2 para o 3, do 3 para o 4, e usar cd - 4 vezes, voc se encontrar no diretrio 4. d) :/etc/samba$ cd :~$

Basta utilizar o comando cd que o interpretador ir lhe levar ao diretrio pessoal do usurio logado.
136

Debian Bsico - Desktop Paran

e) $ls -l /dev $ ls -l /home drwxr-xr-x Proprietrio: rwx (total)

boi

boi

54 Jul 30 11:32 Outros: r-x (entrar)

boi

Grupo: r-x (entrar)

QUESTO 11
a) $ mkdir /tmp/Caneco

b) Existem duas formas de se fazer isso: 12$ cd /tmp/Caneco $ mkdir Jan Fev Mar Abr $ mkdir /tmp/Caneco/{Jan,Fev,Mar,Abr}

c) Caso voc entre realmente no diretrio caneco, nenhum erro acontece. d) $ mkdir /tmp/caneco/1/2/3/4/5/6 -p

QUESTO 12
a) $ mkdir ~/Novo-Caneco $ cp /tmp/Caneco/* ~/Novo-Caneco

O asterisco indica que deve ser copiado o contedo de Caneco, e no o diretrio caneco. Sempre o comando ser executado sobre o arquivo, ltimo diretrio ou coringa, sendo o restante apenas o endereo de onde est o que vai receber a ao do comando. b) $ cp /etc/samba/smb.conf /etc/samba/smb.conf.back

QUESTO 13
a) $ mkdir /tmp/a/b/c/d/e -p $ vim Saci b) $ mv /tmp/a/b/c/d/e ~ c) $ rm -Rf /tmp/a/b/c d) $ ls -lR /tmp /tmp/a: total 0 drwxr-xr-x 2 saci grupo-louco 6 Ago 14 11:33 b /tmp/a/b: total 0 e) $ mv /etc/samba/smb.conf.back /etc/samba/smb.conf

QUESTO 14
O mv usa o cp. O processo o seguinte: o mv cria uma cpia do original (utilizando o cp) e remove o arquivo original (utilizando o rm).

QUESTO 15
a) dpkg -l |grep broffice.org b) dpkg -l |grep apache2
137

Debian Bsico - Desktop Paran

c)

dpkg -l |grep firefox dpkg -l |grep iceweasel // o firefox verso Debian

QUESTO 16
a) apt-cache search web |grep server ------- apache2 b) apt-cache search zip |grep compress ------- bzip2 c) apt-cache search clipart |grep openoffice ------- openclipart-openoffice.org d) apt-cache search internet explorer ------- ie6 e) apt-cache search ocs |grep parana f) **** apt-cache search rar |egrep ^rar (existem vrias formas de se encontrar uma aplicao que abra arquivos rar. Procure na internet, no site packages.debian.org, com o apt-cache show pacotes similares. O mtodo acima consiste em usar o grep com a opo de expresso regular ativada, e indicar que o rar deve comear com ^)

QUESTO 17
# wget http://www.skype.com/go/getskype-linux-deb # dpkg -i getskype-linux-deb # apt-get install <todos os pacotes que o comando acima mostra como dependncia> # apt-get install -f Verifique no seu menu se o aplicativo foi instalado.

QUESTO 18
# apt-get install internet explorer 6

QUESTO 19
a) O apt verifica dentro da lista local de pacotes se existe o pacote desejado nos repositrios. Se existir, cria a lista de dependncias necessria e faz a solicitao de todos os pacotes necessrios aos repositrios. feito o download de todas os pacotes. Estes so descompactados e o dpkg invocado para execuo do pr-inst e post-inst que fazem a instalao. b) O pacote indicado removido e o processo da letra (a) repetido. c) O aplicativo removido, mas os arquivos de configurao so da aplicao mantida. d) O aplicativo e os seus respectivos arquivos de configurao so removidos. e) Atualiza a lista de pacotes e dependncias local com a lista dos repositrios. f) Apaga todos os arquivos de instalao que foram recebidos em instalaes com o apt. Estes arquivos so removidos do diretrio /var/apt/cache/archives.

QUESTO 20
b) No est instalado. c) /usr/bin/diff d) /usr/bin/file e) /sbin/ifconfig f) /usr/bin/iceweasel

QUESTO 21
Durante a instalao do apache2 houve um problema (simulado pelas teclas de atalho <CTRL><C>), interrompendo a execuo do apt. Sempre que isto acontecer, um registro de que houve um problema na instalao criado, e o apt aguarda um comando do administrador para que a instalao seja finalizada. Se o administrador tentar instalar qualquer coisa no conseguir, pois o apt fica travado na instalao anterior. Para resolver o problema, basta executar o comando #dpkg --configure -a que ir reiniciar o processo de instalao de todos os pacotes que tiveram problemas na instalao.

138

Debian Bsico - Desktop Paran

PARTE 3
QUESTO 01
$ vim Tudo errado <Insert> digitar o texto.... <Esc> :x!

QUESTO 02
$ sort -n Tudo errado >Arquivo.txt

QUESTO 03
$ sudo su - (ou loga-se como superusrio da sua forma) # find /etc -iname hostname # find /etc -iname fstab # find /etc -iname issue # find /etc -iname timezone # logout $ cat hostname fstab issue timezone > Concatenacao

QUESTO 04
$ watch dmesg Mensagens indicando que um novo dispositivo USB foi encontrado foram mostradas na tela.

QUESTO 05
a) $ find / -iname debian_version /etc/debian_version b) $ find / -iname menu_lst /boot/grub/menu_lst c) $ find / -iname fstab /etc/fstab d) $ find / -iname cpuinfo /proc/cpuinfo e) $ find / -iname [0-9][0-9]-persistent-net.rules /etc/udev/rules.d/70-persistent-net.rules f) $ sudo su # find / -size +20M g) #find /dev -type s

QUESTO 06
# du -sh /boot /home /usr 67G /home/

139

Debian Bsico - Desktop Paran

20M 3,1G

/boot/ /usr/

QUESTO 07
$ alias Bom-dia = 'echo Pra quem?'

QUESTO 08
As informaes abaixo vo variar de sistema para sistema. No meu caso, o diretrio especificado est dentro da partio /dev/sda2 (partio barra), esta possui 14GB e e est com 32% de sua capacidade em uso. $ df -h /usr/lib Sist. Arq. Tam Usad Disp Uso% Montado em /dev/sda2 14G 4,4G 9,6G 32% / $ du -sh /usr/lib 1,2G /usr/lib Agora mostre suas habilidades com a aritmtica. Total 14G - Diretrio 1,2G - Porcentagem - 8,6% da partio

QUESTO 09
$ /sbin/ifconfig

QUESTO 10
$ uptime 15:44:32 up 2 days, 21:09, 4 users, load average: 0.32, 0.47, 0.35

QUESTO 11
$ shutdown -h 18:00 Chega de trabalho e vamos tomar uma ampola

QUESTO 12
Para mont-lo, clique duas vezes sobre o cone Disquete 1 dentro do local Computador. Para desmontar clique com o boto direito sobre o mesmo cone ou sobre o cone que foi criado na rea de trabalho e selecione Desmontar Volume. Por linha de comando faa o seguinte: # mount /dev/fd0 /media/floppy0 # umount /dev/fd0 /media/floppy0

QUESTO 13
$ uptime

140

Debian Bsico - Desktop Paran

15:44:32 up 2 days, 21:09, 4 users, load average: 0.32, 0.47, 0.35 47%

PARTE 4
QUESTO 01
A:V B:VII C:I D:III E:IV F:II G:VI

QUESTO 02
10.15.17.100 255.255.252.0 Rede: que resulta em: xxxxxxxx-xxxxxxxx-0001-0001-xxxxxxxx 11111111-11111111-1111-1100-00000000 10.15. 0001-0000 .0 10.15.16.0

QUESTO 03
Classe B = 0.0.22.28 que igual a 210 = 1024 hosts, sendo que dois esto reservados para indicao da rede e de broadcast, e outros dois sero usados para DNS e roteador, sobram 1020 endereos para hosts.

QUESTO 04
Executando o ifconfig como superusurio ou ento /sbin/ifconfig como usurio normal, voc poder visualizar as informaes IP, BROADCAST e MSCARA. # ifconfig eth0 Link encap:Ethernet Endereo de HW 00:22:15:9e:c1:10 inet end.: 10.15.19.100 Bcast: 10.15.19.255 Masc: 255.255.252.0 IP: 10.15.19.100 Broadcast: 10.15.19.255 Mscara: 255.255.252.0

QUESTO 05
IP (address), rede (net), roteador (gateway).

e o administrador no definir uma mscara, automaticamente o padro adotado ser 255.255.255.0. O endereo de broadcast tambm automtico. Sempre ser o ltimo endereo IP da rede, mas possvel definir manualmente. /etc/network/interfaces auto eth0 iface eth0 inet static address 10.15.19.100 network10.15.15.0 netmask 255.255.252.0 gateway 10.15.15.1

QUESTO 06
$ ping www.bandacalcinhapreta.com.br

141

Debian Bsico - Desktop Paran

PING bandacalcinhapreta.com.br (187.16.19.36) 56(84) bytes of data. 64 bytes from server3.softhost.org (187.16.19.36): icmp_seq=1 ttl=50 time=931 ms

QUESTO 07
hostname echo Meus parabns, desta vez voc no estragou o computador

QUESTO 08
$ nmap <ip do seu gateway> // exemplo $ nmap 10.15.15.1 Starting Nmap 4.68 ( http://nmap.org ) at 2009-08-18 17:02 BRT Interesting ports on 10.15.15.1: Not shown: 1712 closed ports PORT STATE SERVICE 23/tcp open telnet 80/tcp open http 280/tcp open http-mgmt A porta padro do ssh no est aberta, logo, no existe a possibilidade de se conectar, com uma anlise superficial e rpida, ao roteador por ssh.

PARTE 05
QUESTO 01
# adduser clotilde # adduser madruga # adduser jaiminho # adduser zero-a-esquerda

QUESTO 02
# addgroup chegados-da-bruxa-do-71 # adduser madrugada chegados-da-bruxa-do-71

QUESTO 03
# addgroup funcionarios-dos-correios # adduser presidente --ingroup funcionarios-dos-correios

QUESTO 04
# mkdir /Curso/Permissoes/{Ap-da-bruxa-do-71,Pindamonhangaba,Correios} -p

142

Debian Bsico - Desktop Paran

QUESTO 05
Primeira linha # chown clotilde /Curso/Permisses/Ap-da-bruxa-do-71 # chgrp chegados-da-bruxa-do-71 /Curso/Permisses/Ap-da-bruxa-do-71 ou ... # chown clotilde.chegados-da-bruxa-do-71 /Curso/Permisses/Ap-da-bruxa-do-71 e ... # chmod 770 /Curso/Permisses/Ap-da-bruxa-do-71 ou ... # chmod ug=rwx,o= /Curso/Permisses/Ap-da-bruxa-do-71

ara definir permisses diferentes a sets diferentes (proprietrio, grupo e outros) utilizando o mtodo de letras, pode-se fazer como no exemplo acima, separando os sets por vrgulas.

Segunda linha # chown jaiminho /Curso/Permisses/Pindamonhangaba # chgrp jaiminho /Curso/Permisses/Pindamonhangaba ou ... # chown jaiminho.jaiminho /Curso/Permisses/Pindamonhangaba e ... # chmod 077 /Curso/Permisses/Pindamonhangaba ou ... # chmod u=,go=rwx /Curso/Permisses/Pindamonhangaba Terceira linha # chown presidente /Curso/Permisses/Correios # chgrp funcionarios-dos-correios /Curso/Permisses/Correios ou ... # chown presidente.funcionarios-dos-correios /Curso/Permisses/Correios e ... # chmod 775 /Curso/Permisses/Correios ou ... # chmod ug=rwx,o=rx /Curso/Permisses/Correios

QUESTO 06
Primeira linha # cd /Curso/Permisses/ :/Curso/Permisses# > Ap-da-bruxa-do-71/Caldeirao # chmod 666 Ap-da-bruxa-do-71/Caldeirao ou # chmod a=rwx Ap-da-bruxa-do-71/Caldeirao Segunda linha # > Pindamonhangaba/Mercearia # chmod 666 Pindamonhangaba/Mercearia ou # chmod a=rwx Pindamonhangaba/Mercearia

143

Debian Bsico - Desktop Paran

Terceira linha # > Correios/Sistema-dos-correios # chmod 770 Correios/Sistema-dos-correios ou # chmod ug=rwx,o= Correios/Sistema-dos-correios

QUESTO 07
# su jaiminho jaiminho@entulho:/Curso/Permissoes$ rm -f Ap-da-bruxa-do-71/Caldeirao rm: imposvel remover `Ap-da-bruxa-do-71/Caldeirao': Permisso negada No possvel pois o diretrio Ap-da-bruxa-do-71 no permite que ningum alm do proprietrio e de quem faz parte do grupo chegados-da-bruxa-do-71 faam nada dentro dele. Soluo para isso seria inserir o usurio jaiminho no grupo chegados-da-bruxa-do-71 ou ento alterar as permisses do set outros do diretrio Ap-da-bruxa-do-71. jaiminho@entulho:/Curso/Permissoes$ newgrp chegados-da-bruxa-do-71 Senha : Invalid password. Para se usar o comando newgrp necessrio que o usurio saiba a senha do grupo ou ento que faa parte do grupo no o tendo como principal. Como o usurio jaiminho no est no grupo chegados-dabruxa-do-71, teremos que adicin-lo, jaiminho@entulho:/Curso/Permissoes$ su - root # adduser jaiminho chegados-da-bruxa-do-71 # <CTRL><D> ou logout jaiminho@entulho:/Curso/Permissoes$ newgrp - chegados-da-bruxa-do-71 jaiminho@entulho:~$ cd /Curso/Permissoes/ jaiminho@entulho:/Curso/Permissoes$ > Ap-da-bruxa-do-71/Boca-livre jaiminho@entulho:/Curso/Permissoes$ ls -l Ap-da-bruxa-do-71/ total 0 -rw-r--r-- 1 jaiminho chegados-da-bruxa-do-71 0 Aug 21 10:49 Boca-livre -rw-rw-rw- 1 root root 0 Aug 21 10:33 Caldeirao Iremos usar para jogar um contedo dentro de um arquivo em branco o echo para que uma mensagem seja gerada na tela, mas, utilizando um redirecionador, em vez da mensagem aparecer na tela, ela ser enviada a um arquivo. jaiminho@entulho:/Curso/Permissoes$ echo D um tamarindo > Pindamonhangaba/Mercearia -bash: Pindamonhangaba/Mercearia: Permission denied Mesmo sendo jaiminho o proprietrio do diretrio Pindamonhangaba, aquele no tem direito de fazer nada neste. Como o interpretador de comandos (terminal, no nosso caso o bash) verifica qual set de permisses deve aplicar a um usurio sempre da esquerda direita (proprietrio, grupo e outro), ele para no primeiro set que casa com o usurio e aplica as permisses. Ou seja, mesmo jaiminho fazendo tambm parte do grupo jaiminho, as permisses do set grupos (que total) no ser aplicada a ele, j que o interpretador parar no set proprietrio (que zerada). jaiminho@entulho:/Curso/Permissoes$ echo Entrei Correios/Sistema-dos-correios -bash: Correios/Sistema-dos-correios: Permission denied as 11:30 da manha >

Da mesma forma como no item anterior, no possvel alterar o arquivo, j que jaiminho no faz parte do grupo funcionarios-dos-correios. Uma forma simples de corrigir isso, seria adicionar o usurio jaiminho ao grupo, j que ele , realmente, funcionrio dos correios, e atribuir este grupo ao arquivo
144

Debian Bsico - Desktop Paran

Sistema-dos-correios: jaiminho@entulho:/Curso/Permissoes$ su root entulho:/Curso/Permissoes# chown funcionarios-dos-correios Correios/Sistema-doscorreios entulho:/Curso/Permissoes# adduser jaiminho funcionarios-dos-correios entulho:/Curso/Permissoes# exit jaiminho@entulho:/Curso/Permissoes$ exit necessrio reinciar qualquer sesso anteriormente aberta. Por isso, samos de todas as sesses. Isso se deve ao fato das variveis responsveis pelo armazenamento dos grupos os quais o usurio logado pertence j estarem carregadas. Para que elas sejam atualizadas necessrio reiniciar a sesso. jaiminho@entulho:/Curso/Permissoes$ echo Entrei as 11:30 da manha >> Correios/Sistema-dos-correios jaiminho@entulho:/Curso/Permissoes$ cat Correios/Sistema-dos-correios Entrei as 11:30 da manha Vamos ver como se sai o seu Madruga. <qualquer usurio>@entulho:~$ su - madruga madruga@entulho:~$ cd /Curso/Permissoes/ madruga@entulho:/Curso/Permissoes$ rm -f Ap-da-bruxa-do-71/Caldeirao madruga@entulho:/Curso/Permissoes$ echo Aulas de boxe com madruga >> Pindamonhangaba/Mercearia madruga@entulho:/Curso/Permissoes$ mv Pindamonhangaba/Mercearia Pindamonhangaba/Mercadinho madruga@entulho:/Curso/Permissoes$ cat Correios/Sistema-dos-correios cat: Correios/Sistema-dos-correios: Permisso negada

QUESTO 08
# passwd jaiminho entulho:~# passwd jaiminho Digite a nova senha UNIX: Redigite a nova senha UNIX: passwd: senha atualizada com sucesso

QUESTO 09
# userdel -rf presidente

QUESTO 10
Sim. O que importa em relao ao arquivo e seu inode so as permisses do diretrio que o contm, e no as permisses do arquivo em si. Desta forma, qualquer usrio poder apag-lo e ningum poder edit-lo.

QUESTO 11
$ top E verifique qual o processo que est utilizando mais memria na coluna %MEM.

145

Debian Bsico - Desktop Paran

QUESTO 12
No lenny isto no possvel. Antes de realizar tal atividade, necessrio se digitar o seguinte comando: usuario-logado-no-modo-grafico@entulho:~$ xhost + $ su jaiminho (sem o menos -) $ gedit & (no esquea do e comercial para abrir o programa em segundo plano) $ su presidente (novamente sem o menos) $ gedit & $ su - root # ps aux |grep gedit jaiminho 28542 0.5 0.7 60496 15536 pts/2 S 14:40 0:00 gedit madruga 28617 0.5 0.6 27220 13328 pts/2 S 14:40 0:00 gedit # killall gedit

QUESTO 13
$ firefox & $ ps aux |grep firefox parana 7755 0.9 6.9 332800 144256 ? Sl Aug20 14:16 /usr/lib/iceweasel/firefox-bin -a iceweasel $ kill -STOP 7755 A janela do firefox no fica acessvel. Mesmo que tente que nem um louco abri-la, ela no se tornar um processo ativo. Com o comando abaixo possvel fazer com que o processo volte a ficar disponvel ao usurio. $ kill -CONT 7755

QUESTO 14
$ cat /etc/passwd |grep main (nada retornado como resposta) Aps verificar todos os nomes, apenas o usurio da letra d no padro do sistema.

QUESTO 15
$ ps aux

QUESTO 16
$ getent passwd |grep nome do usurio

QUESTO 17
$ vim Binrio ...escreva o texto... $ chmod a+x Binrio $ ./Binrio

146

Debian Bsico - Desktop Paran

Meu rapaz, voc conseguiu! Seu arquivo de nada virou um executvel

QUESTO 18
O chown altera ou s o proprietrio ou este e o grupo enquanto o chgrp altera somente o grudo de um arquivo ou diretrio. # mkdir /tmp/Louco # chown clotilde.jaiminho /tmp/Louco ou # chown clotilde /tmp/Louco # chgrp jaiminho /tmp/Louco

QUESTO 19
# mkdir /home/saci # chown madruga.madruga /home/saci # usermod -md /home/saco madruga

QUESTO 20
# usermod -l clotilde bruxa-do-71

QUESTO 21
Letra A.

147

Debian Bsico - Desktop Paran

REFERNCIAS BIBLIOGRFICAS
Este trabalho foi realizado pelo tcnico Felipe Camargo de Pauli da Companhia de Informtica do Paran. Foram utilizadas como fonte os livros e pginas da internet listadas abaixo, e o vasto conhecimento tcnico do grupo de suporte da CPPC, que esteve sempre presente com informaes e sanamento de dvidas que apareceram inmeras vezes ao longo deste projeto. Os integrantes da equipe que tiveram participao neste projeto esto listados na pgina 3. ERIBERTO MOTA FILHO, Joo. Descobrindo o Linux 2 EDIO Revista e Ampliada. So Paulo: Novatec Editora Ltda, 2006. 537. NEMETH, Evi. Manual completo do Linux Segunda Edio. Traduzido por Carlos Schafranski e Edsib Furmankiewicz. So Paulo: Prentice Hall, 2007. 684. http://pt.wikipedia.org/wiki/N_de_dispositivo http://www.conectiva.com/doc/livros/online/10.0/servidor/pt_BR/ch05.html http://www.gentoo.org http://www.marvinlemos.net/site/noticia_completa/46 http://focalinux.cipsga.org.br

148

Você também pode gostar