Curso LINUX: Material

Embed Size (px)

Citation preview

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Linux Bsico 1

    Material Didtico para o Curso de

    Linux Bsico Aplicado Intelbrs

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Sumrio 1 Sistema Operacional...........................................................................................5 2 Linux...................................................................................................................6

    2.1 Histrico.......................................................................................................6 2.2 Uma viso geral do LINUX...........................................................................9 2.3 A estrutura do LINUX.................................................................................10

    2.3.1 Kernel/Shell.........................................................................................10 2.3.2 Utilitrios.............................................................................................10

    3 Processos..........................................................................................................11 4 Comandos bsicos............................................................................................11

    4.1 Introduo..................................................................................................11 4.2 Ciclo de Execuo do Comando.................................................................12 4.3 Login..........................................................................................................12 4.4 Logout........................................................................................................14 4.5 Reboot.......................................................................................................14 4.6 Halt............................................................................................................14 4.7 Man............................................................................................................14

    5 Estrutura de Arquivos e Diretrios...................................................................14 5.1 Diretrios...................................................................................................16

    5.1.1 Diretrio de Entrada............................................................................16 5.1.2 Diretrios Corrente.............................................................................16

    5.2 Substituio do Nome do Arquivo..............................................................18 5.2.1 Asterisco.............................................................................................18 5.2.2 Ponto de interrogao.........................................................................18 5.2.3 Colchetes............................................................................................18

    5.3 Marcao do Caractere Especial................................................................19 5.3.1 Aspas..................................................................................................19 5.3.2 Apstrofe.............................................................................................19 5.3.3 Barra invertida....................................................................................19

    6 Manipulando Arquivos e Diretrios...................................................................19 6.1 Introduo..................................................................................................19 6.2 Identificando o Diretrio Corrente.............................................................20 6.3 Criando diretrios......................................................................................20 6.4 Listando diretrios.....................................................................................21 6.5 Mudando de diretrio.................................................................................21 6.6 Criando arquivos vazios.............................................................................21 6.7 Inserindo texto em arquivos......................................................................22 6.8 Contedo de um arquivo...........................................................................22 6.9 Copiando arquivos.....................................................................................22 6.10 Movendo/Renomeando arquivos.............................................................23 6.11 Como ligar arquivos.................................................................................23

    6.11.1 Notas:................................................................................................24

    Linux Bsico 2

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    6.12 Como remover arquivos..........................................................................24 6.13 Localizando arquivos...............................................................................25

    6.13.1 Notas:................................................................................................26 6.14 Procurando nos arquivos.........................................................................26 6.15 More/less..................................................................................................27 6.16 Head e Tail...............................................................................................27

    6.16.1 Opes..............................................................................................27 6.17 Gzip e Gunzip...........................................................................................27 6.18 Tar............................................................................................................27

    6.18.1 Usando o TAR....................................................................................28 7 Permisso de Acesso Diretrios e Arquivos...................................................29

    7.1 Permisses de acesso:...............................................................................29 7.2 Verificando as permisses de acesso........................................................31 7.3 Alterando a permisso de acesso..............................................................31

    7.3.1 Formato octal do modo de permisses...............................................31 7.3.2 Formato simblico do modo de permisses.......................................31

    7.4 Mudando as permisses padro................................................................32 7.5 "group-id" de um arquivo..........................................................................33 7.6 "owner" de um arquivo..............................................................................33

    8 Redirecionamentos...........................................................................................34 8.1 Entrada e Sada dos comandos..................................................................34 8.2 Entrada e Sada Padro.............................................................................34 8.3 Redirecionamento de E/S...........................................................................35

    8.3.1 Smbolos de redirecionamento...........................................................35 8.3.2 Redirecionamento de entrada............................................................36 8.3.3 Redirecionamento de sada................................................................36 8.3.4 Pipes....................................................................................................36 8.3.5 Redirecionamentos mltiplos..............................................................37 8.3.6 Redirecionamento de erro padro......................................................38

    9 Inittab...............................................................................................................38 10 Instalao de aplicativos com RPM.................................................................39

    10.1 Base de dados RPM..................................................................................40 10.2 Rtulo dos Pacotes..................................................................................40 10.3 Vantagens e desvantagens do formato...................................................40 10.4 Acessrios relacionados...........................................................................41 10.5 Instalao/desinstalo de aplicativos com URPMI..................................41

    10.5.1 Mdias do URPMI................................................................................42 11 Editor vi..........................................................................................................42

    11.1 Os trs modos de operao do VI............................................................43 11.2 O Buffer de edio...................................................................................43 11.3 Criao e edio de arquivos...................................................................44

    12 Sistema de arquivos.......................................................................................45 12.1 Particionando e formatando discos.........................................................47 12.2 Montando parties.................................................................................49

    Linux Bsico 3

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    13 KDE.................................................................................................................52 13.1 Alguns aplicativos do KDE.......................................................................53

    14 Referncias Bibliogrficas..............................................................................56

    Linux Bsico 4

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    1 Sistema OperacionalO Sistema Operacional um programa especial que gerencia todos os recursos da mquina, tais como memria, teclado, vdeo (monitor), mouse, entre outros. atravs do Sistema Operacional que executamos outros programas, gravamos ou lemos informaes em disquetes, visualizamos textos em vdeo ou impressora, etc. Sem o Sistema Operacional no conseguiramos realizar estas tarefas. Ou seja, simplesmente no poderamos utilizar o computador.Existem inmeros Sistemas Operacionais, tais como: MS-DOS, UNIX, OS/2, VM/CMS, QNN, etc. Cada um deles possuem caractersticas prprias e so executados em mquinas diferentes. Assim, no podemos executar um programa em Sistemas Operacionais distintos, a no ser que o fabricante do programa nos garanta esta portabilidade.O Windows s consegue executar programas MS-DOS porque foram feitos por um mesmo fabricante, a Microsoft. E porque, a princpio, o Windows no um Sistema Operacional por si, ele necessita do MS- DOS para funcionar. A verso 95, e posteriores, do Windows so planejadas para serem independentes do MS- DOS, mas que aceitam aplicativos do MS- DOS. de responsabilidade do Sistema Operacional:

    Carregar e executar programas. Controlar dispositivos de entrada e sada (teclado, monitor, mouse,

    etc). Gerenciar arquivos e diretrios. Gerenciar a memria RAM

    Todo e qualquer programa executado em um computador utiliza a memria RAM. Da mesma forma, o Sistema Operacional deve ser carregado, ou seja, copiado do disco rgido ou disco flexvel para a memria RAM. Denominamos este processo de BOOT. Toda vez que ligamos o computador, feita uma srie de testes para verificar o funcionamento dos perifricos e se tudo estiver perfeito, o Sistema Operacional pode ser carregado.Os Sistemas Operacionais ainda podem ser classificados quanto ao nmero de pessoas que podem utilizar os recursos ao mesmo tempo e quanto ao nmero de programas que podem ser executados em uma mesma mquina.

    1. Monousurio: permitem apenas um usurio.2. Multiusurio: permitem vrios usurios.

    Linux Bsico 5

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    3. Monotarefa: apenas um programa pode ser executado de cada vez.4. Multitarefa: vrios programas podem ser executados ao mesmo

    tempo.Em geral Sistemas Operacionais que so multiusurios so tambm multitarefa, como o UNIX, QNN e atuais verses do Windows, onde podemos ter vrios usurios em terminais distintos executando, cada um, uma srie de programas diferentes ao mesmo tempo.Alm disto, Sistemas Operacionais podem ser classificados quanto ao tipo de comunicao com o usurio, podendo ser:

    1. Interface por linha de comando: quando o usurio tem que digitar o comando por extenso na tela do computador. A comunicao, em geral feita em modo texto. Preferencialmente utilizada por especialistas.

    2. Interface grfica para usurios (GUI) : quando os comandos so executados em um ambiente grfico com o uso do mouse. Voltada principalmente para o usurio final.

    2 Linux

    2.1 HistricoO Sistema Operacional UNIX foi desenvolvido nos laboratrios da AT&T para uso prprio, baseado em um antigo projeto que deveria ser o primeiro Sistema Operacional multiusurio e multitarefa, o MULTICS.Porm, este projeto estava muito alm da capacidade dos equipamentos para a poca. Desta forma o projeto foi arquivado, mas alguns de seus idealizadores (Ken Thompson, Dennis Ritchie e Rudd Canadaday) resolveram escrever uma verso simplificada e monousurio para um computador com menores recursos. O resultado impressionou, mesmo sendo utilizada uma mquina limitada.Assim, o cdigo foi reescrito para outros computadores melhores, apresentando excelentes resultados. Por coincidncia ou no, estes computadores para os quais o Sistema Operacional foi reescrito eram utilizados por quase todas as Universidades que se interessaram por este Sistema Operacional muito superior aos que vinham sendo utilizados nos laboratrios de computao.A partir de ento, a AT&T licenciou seu mais novo projeto para as Universidades, mostrando uma enorme viso e capacidade inovadora, pois alm do Sistema Operacional, foi cedido o cdigo do mesmo para as Universidades, que no mediram esforos em depurar o programa e incluir

    Linux Bsico 6

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    novas caractersticas.Foi dentro das Universidades que o UNIX cresceu e adquiriu muitas das caractersticas que o tornam poderoso, dando origem a diversas verses alm da original proveniente dos laboratrios da AT&T. Esta caracterstica tornou o UNIX um sistema poderoso na medida em que foi concebido no apenas por uma equipe de projetistas, mas sim por toda uma comunidade de pessoas interessadas em extrair o melhor das mquinas. A princpio, o cdigo do UNIX foi escrito em linguagem assembler ou de mquina que altamente dependente do hardware ou parte fsica do computador. Para que o cdigo fosse reescrito, era necessrio muito esforo e tempo.Entretanto, um dos criadores do Sistema Operacional UNIX resolveu utilizar uma nova linguagem para escrever o UNIX, era a linguagem C que oferecia o poder da linguagem de mquina com a facilidade das linguagens estruturadas de alto nvel.A grande vantagem de se utilizar a linguagem C ao invs da linguagem de mquina prpria do computador a de que a primeira altamente portvel, isto , um programa escrito em C para um determinado computador poder ser executado quase sem nenhuma modificao em outro tipo de mquina completamente diferente. Enquanto que se fosse feito um programa em linguagem de mquina para um determinado computador o programa seria executado somente neste tipo de computador e no nos demais, para isto, seria preciso reescrever todo o programa.O UNIX foi projetado para ser executado em computadores de grande capacidade, ou seja, mini e supercomputadores, pois somente estas mquinas podiam oferecer suporte aos recursos necessrios para o ambiente gerado pelo Sistema Operacional.Crescendo longe do alcance dos usurios de microcomputadores, o UNIX atingiu uma estabilidade e estrutura jamais alcanada por um Sistema Operacional. Mas nestes quase quarenta anos de existncia do UNIX, os microcomputadores evoluram a ponto de fornecer o mnimo de condies para que este poderoso Sistema Operacional pudesse ser implementado para os micros IBM -PC e compatveis.Diversas verses do UNIX foram escritas e licenciadas para venda com nomes semelhantes (XENIX, UNISYS, AIX, etc) porm com as mesmas caractersticas essenciais, sendo que atualmente existem inmeras verses comerciais e outras tantas verses livres que foram desenvolvidas em Universidades ou por hackers atravs da rede Internet.Apesar de ter sido desenvolvido para lidar com dispositivos de caracteres, UNIX foi pioneiro na rea de grficos em estaes de trabalhos. As primeiras interfaces grficas para usurios (GUI) foram projetadas e

    Linux Bsico 7

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    utilizadas em Sistemas operacionais UNIX, desenvolvidas pelo MIT (Massachussets Institute of Technology). Trata-se do X Window System.Como se pode notar, UNIX um sistema de inmeras possibilidades. Praticamente todos os recursos que os sistemas operacionais mais atuais utilizam j haviam sido executados em UNIX h muito. Todas as reas da computao puderam ser desenvolvidas com o UNIX.As tendncias atuais levam a uma tentativa de padronizar o Sistema Operacional UNIX combinando as melhores caractersticas das diversas verses do mesmo. Prova disto a criao do POSIX, um padro de Sistema Operacional desenvolvido pela IEEE (Institute of Eletrical and Eletronic Engineers). Alm da OSF (Open System Fundation) que rene as principais lderes do mercado de equipamentos para definir o padro de GUI (interfaces grficas) para UNIX.A verso que ser abordada durante este curso o LINUX, um clone do Sistema Operacional UNIX para microcomputadores IBM -PC 386 e compatveis. O LINUX foi desenvolvido inicialmente por Linus Torvalds na Universidade de Helsinski na Finlndia.O LINUX possui a vantagem de ser um software livre e ser compatvel com o padro POSIX. Alm de unir em um nico Sistema Operacional as vantagens das diferentes verses de UNIX comerciais disponveis. Desta forma, LINUX torna -se a melhor opo para que usurios de microcomputadores possam usufruir da capacidade do UNIX.Apesar de no poder rodar aplicativos para MS- DOS, o LINUX pode rodar todos os softwares de desenvolvidos para UNIX, alm de estarem disponveis softwares que permitem a emulao do MS-DOS e do WINDOWS.O LINUX pode ser til em empresas que desejam possuir estaes de trabalho com poder razoavelmente comparvel s estaes existentes como SUNs e outras usando PCs, com fiel semelhana no seu uso.O LINUX pode conviver pacificamente com outros sistemas operacionais no PC. Existe uma infinidade de formas de instal-lo: em uma partio DOS j existente, pode ainda ser instalado em um HD exclusivamente dedicado a ele.Para conviver com outros sistemas operacionais, existem algumas maneiras de carregar o sistema operacional, o Lilo (Linux Loader) que pode funcionar como um BOOT manager no qual se escolhe qual partio ou drive ir dar a partida, o loadlin que um utilitrio DOS para carregar o LINUX a partir do DOS, ou por meio de um disco de boot.O LINUX pode ser obtido de diversas formas diferentes, existem diversos livros venda, os quais incluem CDs com distribuies do LINUX. Outra forma de obt-lo inteiramente grtis e via ftp pela INTERNET.

    Linux Bsico 8

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Existe hoje, um movimento no sentido de tornar o LINUX um sistema popular, dado que superioridade tcnica ele j possui.Existem algumas outras verses de UNIX para PCs, tais como Xenix, SCO Unix, FreeBSD e NetBSD, as ltimas duas tambm livres, no entanto alm de mais popular, o LINUX possui uma srie de caractersticas a mais, no encontradas em outras verses, mesmo comerciais, de UNIX.

    2.2 Uma viso geral do LINUXUm Sistema Operacional deve gerenciar os recursos da mquina da melhor maneira possvel de forma a poder oferecer aos usurios o mximo do computador. Dentre as principais funes do sistema Operacional, podemos destacar:

    Criar e manipular uma estrutura de arquivos e diretrios. Controlar o acesso memria e outros dispositivos controlados pelo

    microprocessador, como monitor, teclado, impressora, etc. Gerenciar a execuo de programas, trazendo-os da memria para o

    microprocessador.A primeira vista, parece que o LINUX nada possui de diferente de qualquer outro Sistema Operacional, mas nenhum to bom em unir e integrar o que h de melhor em um computador de forma harmoniosa e eficiente devido a sua prpria origem em meio a toda uma comunidade de pessoas interessadas em obter o mximo e o melhor em desempenho. Cabe ressaltar tambm que o Linux possui todas as caractersticas que fazem do UNIX um excelente sistema operacional, entre elas : Portabilidade, Multiusurio e Multitarefa, Estrutura hierrquica de arquivos, Ferramentas e Utilitrios, Comunicao com outros sistemas.Daremos uma rpida olhada em algumas das principais caractersticas e vantagens que fazem o LINUX nico :Multitarefa. Linux, como as outras verses do UNIX um sistema multitarefa, possibilitando a execuo de mltiplas aplicaes de diferentes usurios no mesmo sistema ao mesmo tempo.O X Window System , de fato, um padro na indstria de sistemas grficos para mquinas UNIX. Uma verso completa do X Window System, conhecida como Xfree86 est disponvel para Linux.TCP/IP (Transmission Control Protocol / Internet Protocol), este um conjunto de protocolos que liga milhes de universidades e empresas numa rede mundial conhecida como Internet. Com uma conexo Ethernet o Linux permite que seja feita uma conexo da Internet a uma rede local.

    Linux Bsico 9

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Memria Virtual. O Linux pode usar parte do seu HD como memria virtual, aumentando assim a capacidade da memria RAM.Compatibilidade com o IEEE POSIX. Linux foi desenvolvido com a portabilidade de software em mente.

    2.3 A estrutura do LINUX

    2.3.1 Kernel/ShellKernel o ncleo do Sistema Operacional LINUX, que permanece residente na memria. Atravs dele que o usurio possui o acesso aos recursos oferecidos pelo hardware (o computador em si). Todo o gerenciamento de memria, dispositivos, processos, entre outros coordenado pelo kernel. Basicamente est dividido em duas partes:

    Gerenciamento de dispositivos: supervisiona a transmisso de dados entre a memria principal e os dispositivos perifricos. Desta forma, o kernel abrange todos os drivers controladores de dispositivos que podem ser ligados a um computador

    Gerenciamento de processos: aloca recursos, escalona processos e atende a solicitao de servios dos processos

    Shell o interpretador de comandos do LINUX. ele quem fornece uma interface para que o usurio possa dizer ao Sistema Operacional o que deve ser feito. O shell traduz o comando digitado em chamadas de sistema que so executadas em linguagem de mquina pelo kernel. Alm disto, fornece um ambiente programvel atravs de scripts.Existem inmeros shells cada um com ligeiras diferenas entre si. Muitas vezes possvel utilizar vrios shells diferentes em um mesmo micro rodando LINUX, isto porque ele multitarefa e multiusurio, de modo que cada usurio poderia utilizar o shell que lhe agradar mais. Entre os mais utilizados esto o Bourne Shell, o C shell e o Korn Shell.

    2.3.2 UtilitriosExistem centenas de utilitrios (comandos) para a realizao de tarefas especializadas ou rotineiras, entre elas manipulao e formatao de textos, clculos matemticos, gerenciamento e manuteno de arquivos e diretrios, administrao de sistemas, manuteno de segurana, controle da sada para impressora, desenvolvimento de programas e filtragem de dados.Cada um destes utilitrios digitado na linha de comando do LINUX que ser interpretado pelo Shell do sistema. Este por sua vez se encarregar de

    Linux Bsico 10

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    realizar diversas chamadas ao Kernel para a execuo do comando.Como as interfaces grficas so muito recentes, o LINUX teve toda a sua potencialidade explorada em termos de ambiente de desenvolvimentos. Isto equivale a dizer que o que se pode fazer com um software de Formatao de Textos do tipo aponte e clique, pode ser realizada atravs do antigo modo de linha de comando no LINUX.Mas isto no impede que as facilidades do ambiente de janelas seja explorado, pelo contrrio. Os mais profissionais programas aplicativos rodam sobre o Sistema Operacional LINUX, entre eles o Gerenciador de Banco de Dados ORACLE, INGRES e FoxBASE+, formatadores de textos Postscript etc.

    3 ProcessosQuando um programa ou utilitrio executado, passa a se chamar processo. Cada processo iniciado possui um estado indicando sua condio (em execuo, parado, interrompido, etc) e a prioridade. Sendo que os processos do sistema possuem prioridades sobre os do usurio.Com base nas informaes sobre os processos em andamento, a CPU precisa escalonar os processos para dedicar a cada um, um determinado tempo dando a impresso de que vrios processos esto sendo executados ao mesmo tempo.Para vermos uma fotografia dos processos rodando na mquina podemos usar o comando ps aux, ax mostra todos os processos e u informa a mais os usurios donos dos processos.Podemos usar tambm o top. Neste caso haver atualizao peridica da tela, fazendo uma amostra on-line processos ativos. Mostra ainda outras informaes da mquina, como uso de memria, tempo de atividade, uso de cpu etc. Para navegar entre janelas usa-se as teclas .Para matarmos um processo em execuo usamos o comando kill seguido do nmero do processo (PID). A principal flag o -9, que mata o processo sem salvar dados da memria, se existirem. Podemos usar tambm o killall seguido do nome do processo (comando). Neste caso mata-se todos os processos com mesmo nome.

    4 Comandos bsicos

    4.1 IntroduoCertos comandos so interativos e outros n o - interativos . Comandos

    Linux Bsico 11

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    interativos so aqueles que aps serem executados, exigem que algumas perguntas sejam respondidas para que possam prosseguir. Comandos no interativos simplesmente executam os comandos sem nada perguntar e retornam linha de comando do LINUX.Exemplos de comandos no interativos:

    ls exibelistadocontedododiretriocorrentedate exibe a data e hora do sistemacal exibecalendriodoanoespecificadowho exibelistadetodososusuriosativosnosistemaclear limpa a tela

    Exemplos de comandos interativos:passwd modificaasenhaftp permitetransfernciadearquivos

    4.2 Ciclo de Execuo do ComandoO shell analisa a linha do comando separando seus vrios componentes com o uso de espaos em branco. Este procedimento conhecido como parsing (anlise), e composto dos seguintes passos:

    1. O shell examina se h algum caractere especial a ser interpretado na linha de comando;

    2. Supondo que os caracteres at o primeiro branco se referem a um comando, o shell procura um arquivo executvel (programa) com o mesmo nome;

    3. Se o shell localiza o programa, ele verifica se o usurio que fez o pedido tem permisso de acesso para usar o comando;

    4. O shell continua a examinar o resto da linha de comando para ver a formatao;

    5. Finalmente, ela informa ao kernel para executar o programa, passando todas as opes e argumentos vlidos para o programa;

    6. Enquanto o kernel copia o arquivo executvel do disco para a memria e executa-o, o shell permanece inativo at que o programa tenha encerrado. O programa em execuo na memria chamado de processo;

    7. Quando o processo termina de ser executado, o controle retorna ao shell que exibe novamente o prompt para avisar que est pronto para o prximo comando;

    4.3 LoginPor ser um Sistema Operacional que suporta vrios usurios

    Linux Bsico 12

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    (multiusurio), antes de tudo, preciso se identificar. O LINUX ento se encarregar de permitir ou no seu acesso verificando sua senha, se estiver correta libera o diretrio de entrada e executa arquivos de inicializao locais e o interpretador apropriado. Aps este processo, voc estar apto a executar os comandos do LINUX.Quando o terminal estiver ligado, provavelmente ser apresentado um sinal de prontido do sistema da seguinte forma:Login:Isto significa que o sistema est esperando para que o usurio se identifique com o nome de usurio que lhe foi concedido pelo Administrador de Sistema junto com uma senha de acesso. Aps digitar o nome de usurio, pressione ENTER. Ser apresentada um novo sinal de prontido:Password:Este sinal pede que seja digitada a sua senha. Note que a medida que forem digitados os caracteres, eles no aparecero no vdeo por medidas de segurana.Se algo deu errado (foi novamente apresentado o sinal de login), tente novamente, certificando-se de ter digitado o nome de usurio e a senha exatamente como recebeu do Administrador pois o LINUX diferencia as letras maisculas das minsculas. Isto quer dizer que para o LINUX A (letra a maiscula) diferente de a (letra a minscula). Esta uma dica que serve no apenas para iniciar a sesso, mas tambm para todos os comandos LINUX.Tendo o usurio se identificado com o nome da conta e a senha (se esta existir, pois existem contas criadas especialmente para uso sem senha), o LINUX checa em um arquivo de configurao pelo nome da conta e a senha correspondente devidamente encriptada. Estando ambas registradas e corretas, o Sistema Operacional permite o acesso ao usurio executando o shell indicado tambm neste arquivo.O shell providencia uma interface de comunicao entre o kernel e o usurio. Esta interface consiste de uma linha de comand o (ou prompt) na qual deve ser digitado o comando por extenso seguido por seus parmetros (se tiver). Em uma linha de comando podemos ter mais de um comando em seqncia para serem executados.Em geral esta linha de comando formada por um smbolo que pode ser de porcentagem (%) ou cifro ($) para usurios comuns e grade (#) para usurios com privilgio de raiz, dependendo do tipo de shell usado.Os parmetros que aparecem aps o nome do comando podem ser nomes de arquivos e/ou caminhos de diretrios. Eles devem sempre ser digitados com um espao entre si e depois do comando. Muitas vezes alguns

    Linux Bsico 13

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    smbolos que aparecem na linha de comando no so parmetros, mas sim comandos para o shell determinando a seqncia em que o(s) comando(s) devem ser executados.O LINUX aceita e executa um comando quando, ao terminarmos de digitarmos o comando, pressionarmos a tecla ENTER, RETURN ou (varia de computador para computador).Caso seja encontrado algum erro na digitao do comando antes que a tecla ENTER seja pressionada, podemos corrig-lo utilizando as teclas de direo e para posicionarmos o cursor na posio em que o erro foi cometido. Cursor o smbolo grfico que aparece logo aps a linha de comando e que se movimenta a medida em que caractere so digitados e aparecem na tela.

    4.4 LogoutEste comando permite sairmos de nossa seo shell, ou seja, desconectarmos nosso usurio do sistema.

    4.5 RebootEste comando equivalente init 6 e com ele podemos reiniciar nosso sistema, sem desligamento do hardware.

    4.6 HaltEste comando equivalente shutdown -r now e permite desligar o sistema, caso nossa mquina tenha fonte ATX.

    4.7 ManPginas de manual ou man pages so pequenos arquivos de ajuda que podem ser invocados pelo comando man a partir de linha de comando de sistemas baseados em Unix e Linux.A forma de invocar a ajuda :$ man []

    5 Estrutura de Arquivos e DiretriosExistem 4 tipos bsicos de arquivos em LINUX :

    Arquivo diretrio; Arquivo convencional;

    Linux Bsico 14

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Arquivo de dispositivo; Arquivo simblico ou de ligao;

    Um arquivo diretrio nada mais do que um tipo de arquivo contendo informaes sobre arquivos que conceitualmente (e no fisicamente) esto contidos nele. Isso significa que o contedo de seus arquivos no est armazenados dentro do diretrio. Assim sendo, no h limite para o tamanho de um diretrio. Teoricamente voc poderia colocar no seu diretrio tantos arquivos quanto quisesse, at o ponto de estourar a capacidade do seu disco.Os dados contidos no arquivo diretrio so apenas o nome de cada arquivo e seu ponteiro para uma tabela de informaes de controle de todos os arquivos do sistema. Esta tabela contm informaes administrativas do arquivo, como dados de segurana, tipo, tamanho, datas de acesso e dados que indicam onde ele est gravado no disco.Quando voc vai usar um arquivo, o sistema operacional consulta o diretrio para verificar se existe no disco um com o nome que voc especificou. Em caso afirmativo, o sistema obtm, da tabela as informaes necessrias para poder manipul- lo. Caso contrrio, o sistema envia uma mensagem informando que no foi possvel encontrar o arquivo.Um diretrio pode conter outros diretrios, aos quais chamamos subdiretrios. Um subdiretrio pode conter outros arquivos e subdiretrios, que tambm podem conter arquivos e subdiretrios e assim por diante. Este um relacionamento pai/filho entre um diretrio e seus arquivos e diretrios subordinados. Cada diretrio pai guarda informaes sobre os arquivos e diretrios que esto a um nvel abaixo dele-seus filhos.Um arquivo convenciona l um conjunto de caracteres presentes em algum meio de armazenamento, como por exemplo um disco. Ele pode conter texto para uma carta, cdigo de programa ou qualquer informao armazenada para um futuro uso.Um arquivo de dispositiv o , como um diretrio, no contm dados. Ele basicamente um ponteiro para um dispositivo perifrico, como por exemplo uma unidade de disco, um terminal ou uma impressora. Os arquivos especiais associados aos dispositivos perifricos esto localizados no diretrio /dev.Um arquivo simblic o um arquivo convencional que aponta para outro arquivo em qualquer lugar do sistema de arquivos LINUX.

    Linux Bsico 15

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    5.1 DiretriosTodos os arquivos fazem parte de algum diretrio. Assim, eles so mantidos organizadamente. Se todos os arquivos do sistema fossem armazenados em um mesmo lugar, o LINUX levaria muito tempo para verificar todos os arquivos at encontrar aquele que est procurando. Os diretrios so um meio de oferecer endereos dos arquivos, de maneira que o LINUX possa acess-los rpida e facilmente.Ao entrar pela primeira vez em sua conta, voc j est em um subdiretrio do sistema LINUX, chamado seu diretrio de entrada (home directory). A menos que voc crie alguns subdiretrios em sua conta, todos os seus arquivos sero armazenados em seu diretrio de entrada. Teoricamente, voc pode fazer isso, mas a manuteno de seus arquivos ser mais eficiente se voc criar seu prprio sistema se subdiretrios. Assim ficar mais fcil manter o controle de seus arquivos porque eles estaro agrupados em diretrios por assunto ou por tipo. O LINUX tambm realiza buscas de maneiras mais eficiente em diretrios pequenos que nos grandes.

    5.1.1 Diretrio de EntradaSeu diretrio de entrada aquele em que voc colocado quando abre uma sesso em um sistema LINUX. Esse diretrio tem o mesmo nome que seu nome de login. Voc pode pensar em sua conta como uma verso em miniatura do sistema de arquivos do LINUX. No alto de seu sistema pessoal de arquivos, em vez do diretrio raiz, est seu diretrio de entrada. Abaixo dele estaro os subdiretrios que voc criar, que podem, por sua vez, se ramificar em subdiretrios e/ou arquivos.Os diretrios de entrada dos usurios so iguais a qualquer outro diretrio de um diagrama de sistema de arquivos. Entretanto, sendo o diretrio principal de sua conta, seu diretrio de entrada tem um status especial. Sempre que voc entra no sistema, o LINUX define uma varivel chamada HOME que identifica o seu diretrio de entrada. O LINUX usa o valor da varivel HOME como ponto de referncia para determinar quais arquivos e diretrios do sistema de arquivos voc pode acessar e tambm para orientar-se para onde lev-lo quando voc deseja mudar de diretrio corrente.

    5.1.2 Diretrios CorrenteO diretrio corrente, ou de trabalho (working directory), o diretrio em que voc est em um determinado momento. Por exemplo, quando voc entra no sistema, o diretrio corrente sempre seu diretrio de entrada. Se voc passar para um de seus subdiretrios, este passar a ser o

    Linux Bsico 16

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    diretrio corrente.Durante toda a sesso, o LINUX mantm o controle de seu diretrio corrente. Todos os comandos so executados sobre o diretrio corrente, a menos que voc especifique outro. Por exemplo, qualquer arquivo ou subdiretrio que voc criar ser em princpio criado no diretrio corrente. Sempre que voc digitar ls, ver uma lista dos arquivos e diretrios do diretrio corrente.Todos os diretrios do LINUX contm um arquivo chamado . (ponto), que um arquivo especial que representa o diretrio corrente (um sinnimo). Sempre que voc quiser se referir ao diretrio corrente, pode faz-lo usando um ponto (.). Outro arquivo especial, chamado .. (dois pontos) representa o diretrio pai do diretrio corrente (o diretrio ao qual o diretrio corrente pertence). Quando precisar se referir ao diretrio pai do diretrio corrente, voc pode usar dois pontos (..) em vez do nome do diretrio.Quando voc digita um comando que opera sobre um arquivo ou diretrio, precisa especificar o nome do arquivo ou do diretrio desejado. O caminho, de um arquivo ou diretrio a lista de todos os diretrios que formam a ligao entre ele e o diretrio raiz.Voc s pode identificar individualmente cada arquivo e diretrio por seu nome e caminho, porque seu nome pode ser idntico ao de outro arquivo em outro local do sistema. Por exemplo, suponha que haja duas contas de usurio, chamadas luciene e alfredo, cada uma contendo um subdiretrio chamado vendas. O LINUX pode diferenciar esses dois subdiretrios por seus caminhos. Um deles seria /.../luciene/vendas e o outro seria /.../alfredo/vendas, onde as reticncias representam os diretrios intermedirios. Embora voc possa se referir a um arquivo ou diretrio dentro de seu diretrio de entrada usando apenas seu nome, o LINUX sempre interpretar o nome do arquivo ou diretrio como seu nome e caminho inteiro, porque ele mantm o controle de seu diretrio corrente e pode preencher a parte do nome de caminho que falta.Alm do caminho absoluto, voc tambm pode usar o caminho relativo, de um arquivo ou diretrio. O caminho relativo no comea com o diretrio raiz, mas com o diretrio mais prximo do diretrio cujo caminho est sendo definido. Para especificar um caminho relativo para seu diretrio de entrada, voc pode comear o caminho com$HOME ou com um ~ (til), que um sinnimo para $HOME. Por exemplo, se seu diretrio de entrada marco, a varivel HOME ter o valor /.../marco, onde as reticncias representam os diretrios entre o diretrio raiz (/) e o diretrio marco. Sempre que voc digitar $HOME ou ~ como parte de um nome de caminho, o LINUX o interpretar como o nome de caminho

    Linux Bsico 17

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    completo de seu diretrio de entrada.Para especificar um caminho a partir do diretrio corrente, voc pode iniciar o caminho com um . (que representa o diretrio corrente), ou com o nome do primeiro subdiretrio naquele caminho. O ponto opcional neste caso porque se o nome de caminho no comear com uma /, o LINUX considera que voc quer que ele comece com o diretrio corrente.Se voc j tiver mudado de diretrio algumas vezes, talvez no esteja seguro de qual o diretrio corrente no momento. Para descobrir, use o comando ls e poder se lembrar do nome do diretrio pela lista dos arquivos que ele contm. Entretanto, uma maneira mais simples de saber qual o diretrio corrente digitar pwd, que ser apresentado mais adiante. O comando pwd imprime o caminho completo do diretrio corrente.

    5.2 Substituio do Nome do ArquivoTrs caracteres especiais permitem a referncia a grupos de arquivos ou diretrios em uma linha de comando. Estes caracteres so chamados Meta caracteres ou Coringas.

    5.2.1 Asterisco O * substitui qualquer conjunto de caracteres.

    5.2.2 Ponto de interrogao O caractere ? substitui qualquer caractere.

    5.2.3 ColchetesO smbolo [] contm uma lista de caracteres. Um dos caracteres dentro do colchetes ser substitudo. Um hfen separando os caracteres que esto entre colchetes indica um intervalo. Um ! dentro do colchetes indica o sentido da procura invertido.Esses caracteres especiais poupam tempo de digitao. O mais importante que eles podem ser usados para fazer referncia a arquivos cujo nome no se conhece exatamente.Exemplos : 1- Liste todos os arquivos com extenso .new :$ ls *.newFile.new arquivo.new2- Liste todos os arquivos cujo nome termine com um numero entre 1 e 5 :$ ls *[1-5]

    Linux Bsico 18

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    file1arquivo3dir53- Liste todos os arquivos cujo nome tem trs caracteres e comeam com f :$ ls f??fig fin

    5.3 Marcao do Caractere EspecialPara usar literalmente um caractere especial sem que o Shell interprete seu significado ele deve ser marcado. O shell trata um caractere especial marcado como um caractere normal.

    5.3.1 AspasQuando se coloca um caractere especial entre aspas , o Shell ignora todos os caracteres especiais exceto o cifro ($), o acento grave () e a barra invertida (\);

    5.3.2 ApstrofeO apstrofe mais restritivo. Todos os caracteres especiais entre apstrofes so ignorados ;

    5.3.3 Barra invertidaGeralmente, a barra invertida faz o mesmo que colocar um caractere entre apstrofes. Quando uma barra invertida usada, ela deve preceder cada caractere a ser marcado;

    6 ManipulandoArquivoseDiretrios

    6.1 IntroduoA funo essencial de um computador armazenar informaes (arquivos) e catalog-los de forma adequada em diretrios, fornecendo, se possvel, algum esquema de segurana de modo que pessoas no autorizadas no tenham acesso a arquivos importantes.Neste captulo voc aprender como manipular arquivos e diretrios no LINUX. Saber copiar, mover, exibir o contedo de um arquivo, e localizar um arquivo so algumas das atividades que veremos neste captulo.Os comandos aqui apresentados no so a totalidade dos comandos disponveis, mas certamente so suficientes para que voc consiga

    Linux Bsico 19

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    executar funes tpicas e usuais de um programador ou de um usurio de aplicativos em ambiente LINUX.

    6.2 Identificando o Diretrio CorrentepwdO comando pwd (print working directory) no possui nenhuma opo ou argumento. Este comando mostra o nome do diretrio corrente ou de diretrio de trabalho (working directory). Voc pode utiliz-lo para se situar no sistema de arquivos. Por exemplo, sempre til verificar o diretrio corrente antes de criar ou remover arquivos e diretrios. Do mesmo modo, o pwd til para confirmar o diretrio corrente aps vrias trocas de diretrios.

    6.3 Criando diretriosmkdirNos diretrios podemos agrupar informaes afins, isto , arquivos que possuem alguma inter-relao. O nome do diretrio deve ser significativo e permitir um acesso e uma localizao rpida dos arquivos armazenados no seu sistema de arquivos.O comando mkdir (make directory) utilizado para criar diretrios. Os nomes dos diretrios a serem criados so passados como argumentos para o comando. Estes nomes podem ter at 255 caracteres, e devem ser nicos, isto , no pode haver dois diretrios com mesmo nome dentro de um mesmo subdiretrio, nem mesmo um arquivo e um diretrio iguais em um mesmo subdiretrio.Opes:-m modo Especifica o modo de permisso de acesso para o diretrio que est sendo criado;-p Cria os diretrios pai citados no nome do diretrio que est sendo criado;Exemplos : 1-Crie um diretrio chamado teste com o seguinte modo de permisso 711$mkdir -m 711 teste$ls-ltotal 1drwx--x-- x 2 guest users 1024 May 15 21:27 teste/2-Crie um diretrio chamado curso com um diretrio filho chamado aula1$mkdir-p curso/aula1

    Linux Bsico 20

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    $ls-ltotal 2drwx--x-- x 2 guest users 1024 May 15 21:27 teste/drwxr- xr- x 3 guest users 1024 May 15 21:33 curso/$ls-l curso total 1drwxr- xr- x 2 guest users 1024 May 15 21:33 aula1/

    6.4 Listando diretriosls [AaCFpdlmRrstucx] [nomes]Normalmente o contedo de um diretrio listado em ordem alfabtica, um item por linha. As diversas opes do comando ls permitem adaptar o formato da listagem.Se nada for especificado em nomes todos os itens do diretrio corrente so listados. Entretanto em nomes possvel determinar mscaras (filtros) para selecionar padres de nomes de itens a serem listados.Principais opes:

    -a All. Lista todos os itens , inclusive os que comeam com pontos; -l Long. Lista o contedo de um item que diretrio; -R Recursive. Lista todos os diretrios encontrados e seus

    subdiretrios; -t Time. Ordena os itens por hora/data de modificao;

    Exemplo: $ ls -la

    6.5 Mudando de diretriocd O comando cd (change directory) utilizado para mudar o diretrio de trabalho corrente. No h opes para este comando. O nome do novo diretrio de trabalho indicado em nome-do-diretrio. Se voc no especificar um diretrio, cd far com que o seu diretrio de entrada (home directory) se torne o seu diretrio corrente. Se nome-do-diretrio for um subdiretrio do seu diretrio corrente, basta informar o nome dele. Caso contrrio voc pode informar o nome relativo ou absoluto do diretrio para o qual voc quer mudar.

    6.6 Criando arquivos vaziostouch Cria um arquivo vazio de nome arquivo.

    Linux Bsico 21

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Exemplo:1- Crie um arquivo vazio de nome teste.file$ touch teste.file

    6.7 Inserindo texto em arquivosecho texto a ser inserido >> Insere o texto a ser inserido ao final do arquivo.Exemplo:$ echo teste texto >> teste.file

    6.8 Contedo de um arquivocat [svte] O comando cat mostra o contedo de arquivos (ou da entrada padro), apresentado-o na tela (de fato, na sada padro). possvel utilizar o cat para criar, exibir e juntar arquivos. Quando utiliza-se o cat para concatenar arquivos, os arquivos da origem permanecem intactos.Opes:Exemplo: 1- Mostre o contedo do arquivo teste.file :$cat teste.file cursoteste texto

    6.9 Copiando arquivoscp O comando cp (copy) copia, isto , cria uma cpia de um arquivo com outro nome ou em outro diretrio sem afetar o arquivo original. Voc pode usar esse comando para criar cpias de segurana de arquivos importantes ou para copiar arquivos que queira modificar. Se h algum arquivo que voc quer ter em mais de um diretrio, pode usar o comando cp para copi-lo para outros diretrios.Na linha de comando, arquivo-origem o nome do arquivo que voc quer copiar e arquivo-destino o nome que voc quer dar cpia. Lembre-se: se voc fizer uma cpia de um arquivo no mesmo diretrio, ela no poder ter o mesmo nome de arquivo-origem. Com este comando voc pode acidentalmente perder arquivos se j existir um arquivo com o nome arquivo-destino, neste caso o comando cp escreve o novo arquivo por cima do antigo.

    Linux Bsico 22

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Exemplo:1- Copie o arquivo file.teste para teste:$ cp file.teste file.teste.2

    6.10 Movendo/Renomeando arquivosmv O comando mv (move) funciona com arquivos da mesma maneira como funciona com diretrios. Pode-se usar mv para renomear um arquivo ou para mov-lo para outro diretrio, dependendo dos argumentos que voc utilizar.Na linha de comando, arquivo-origem o nome do arquivo cujo nome voc deseja mudar, e arquivo-destino o novo nome para este arquivo. Se arquivo-destino j existir, mv primeiro remove o arquivo j existente e depois renomeia arquivo-origem com o novo nome. Para evitar este problema, voc tem duas opes:

    Examinar o contedo do diretrio antes de renomear um arquivo, para verificar se o novo nome que voc deseja atribuir j existe;

    Usar a opo -i (interactive) que permite uma confirmao da remoo de um arquivo entes de o comando mv remov-lo.

    Se arquivo-destino for o nome de um diretrio presente no diretrio corrente, ento o comando mv entende que arquivo-origem deve ser movido para o diretrio arquivo-destino, e no que este deve ser eliminado e substitudo por arquivo-origem.Se voc mover um arquivo para um novo diretrio, o arquivo ter o mesmo nome de arquivo-origem, a menos que voc especifique o novo nome tambm, dando o nome do caminho (relativo ou absoluto) antes do nome do arquivo.Exemplo: 1- Mova o arquivo file.teste para o diretrio teste interativamente :$ mv-i file.teste.2 teste

    6.11 Como ligar arquivosln [-opes] fonte destinoUma ligao uma entrada em um diretrio que aponta para um arquivo. O Sistema operacional cria a primeira ligao a um arquivo quando este criado. O comando ln geralmente usado para criar mltiplas referncias ao arquivo em outros diretrios. Uma ligao no cria uma cpia de um arquivo, ela simplesmente outra indicao para os mesmos dados.

    Linux Bsico 23

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Quaisquer alteraes em um arquivo so independentes do nome usado para se referir ao arquivo, ou seja, alterando o arquivo ou a ligao o efeito o mesmo.As ligaes no podem ser feitas entre sistemas de arquivos, a menos que a opo -s seja usada. Esta opo cria uma ligao simblica que um arquivo que contm o nome do caminho do arquivo ao qual ele est ligado.Opes:-s Permite a construo de um arquivo de ligao simblica para ligar um arquivo em um outro sistema de arquivos. Um arquivo de ligao simblica contm o nome absoluto do arquivo no outro sistema de arquivos;Exemplo: 1- Crie uma ligao simblica para o arquivo teste chamado slink :$ ln -s file.teste slink$ ls -l

    6.11.1 Notas: Quando voc liga um arquivo a outro, no est criando outro arquivo,

    mas simplesmente dando ao arquivo antigo outro endereo. As mudanas feitas no arquivo ou em uma de suas ligaes afetam tanto o arquivo como todas as suas ligaes.

    As permisses so as mesmas para todas as ligaes de um arquivo. Alterar as permisses de uma das ligaes implica em alterar as permisses de todas as ligaes automaticamente.

    As ligaes criadas com ln podem ser removidas com rm. Isto no significa que o arquivo original ser removido.

    6.12 Como remover arquivos rm [ -opes ] arquivo(s)O comando rm remove o arquivo e/ou as ligaes. Quando a ltima ligao removida, o arquivo no pode mais ser acessado e o sistema libera o espao ocupado pelo arquivo para outro uso. Se o arquivo for de ligao simblica, a ligao do arquivo removida.Para remover um arquivo exigida a permisso de gravao do diretrio pai do arquivo. Entretanto no exigido o acesso de leitura ou gravao ao arquivo. Os caracteres especiais podem ser usados para se referir a vrios arquivos sem indicar cada nome separadamente.Opes :

    Linux Bsico 24

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    -f Fora a remoo de arquivos com proteo de gravao.-r Remove recursivamente o diretrio citado e seus subdiretrios.

    6.13 Localizando arquivosfind diretrios [expresso]O comando find procura recursivamente por arquivos em diretrios do sistema de arquivos.O argumento diretrios especifica em quais diretrios a busca deve ocorrer. A busca recursiva faz com que a busca ocorra no apenas nos diretrios especificados, mas em todos os subdiretrios dos diretrios especificados, nos subdiretrios dos subdiretrios deles, etc. O argumento expresso consiste em um ou mais argumentos, que podem ser um critrio de busca ou uma ao que o find deve tomar, ou ainda ambos os casos. Se vrios argumentos forem especificados, eles devem ser separados por espao em branco.O comando find tambm possui um grande nmero de opes que podem ser utilizados na busca por arquivos em um sistema de arquivos. Neste curso vamos abordar apenas os mais usuais, suficientes para compreender o funcionamento do comando.Expresso:-iname arquivo Seleciona os arquivos com nomes que correspondam a arquivo, ignorando (i) maisculas e minsculas, sendo que arquivo pode ser um nome de arquivo, ou um padro de nomes de arquivos (especificado com o uso de *), mas deve ser precedido de uma barra invertida;-user nome Seleciona arquivos que pertencem ao usurio nome;-exec cmd {} \; Executa o comando cmd nos arquivos selecionados pelo comando find; Um par de chaves representa cada nome de arquivo que est sendo avaliado; Um ponto e vrgula marcado encerra a ao;! Inverte o sentido do argumento que o sucede. Por exemplo, "!-iname arquivo" seleciona um arquivo cujo nome no corresponde a arquivo;-o Permite uma seleo disjuntiva de arquivos, especificada por dois argumentos distintos. Isto , quando usamos dois argumentos para especificar a busca, o arquivo selecionado se satisfizer ambos os critrios de busca. Com -o podemos selecionar arquivos que satisfazem um ou outro dos argumentos especificado para a busca. Por exemplo, "-iname arquivo-o-user nome" selecionar arquivos que possuem nomes correspondentes a arquivo ou cujo usurio seja correspondente a nome;Exemplos :

    Linux Bsico 25

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    1-Encontre o arquivo teste.file a partir do seu diretrio base, imprima os caminhos$ find ~ -iname teste.file./curso/aula1/teste.file./teste.file2-Encontre todos os seus arquivos a partir do diretrio curso :$ find ~/curso -user aluno/home/guest/curso/aula1...3-Encontre e apague todos os seus arquivos teste.file :

    $ find ~ -iname teste.file -exec rm {} \;

    6.13.1 Notas:Como o comando find verifica todos os arquivos em um diretrio especificado em todos os subdiretrios contidos nele, o comando pode tornar-se demorado. Veja mais adiante como execut- lo em background.

    6.14 Procurando nos arquivosgrep [-opes] sequncia de caracteres arquivo(s)O comando grep procura uma seqncia de caracteres em um ou mais arquivos, linha por linha. A ao especificada pelas opes executada em cada linha que contm a seqncia de caracteres procurada.Se mais de um arquivo for indicado como argumento do comando, o grep antecede cada linha de sada que contm a seqncia de caracteres com o nome do arquivo e dois pontos. O nome do arquivo mostrado para cada ocorrncia da seqncia de caracteres em um determinado arquivo.Opes :-i Ignora maisculas ou minsculas;-n Mostra o nmero de linhas com o output das linhas que contm a sequncia de caracteres;-v Anlise contrria. Mostra todas as linhas que no contm a seqncia de caracteres;Exemplos: 1- Procure a seqncia 'root' no arquivo /etc/passwd :$ grep root /etc/passwd2-Procure a seqncia 'root' em todos os arquivos do diretrio /etc, independente de maisculas ou minsculas :

    Linux Bsico 26

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    $ grep -i root /etc/*

    6.15 More/lessPaginadores para visualizao em tela. Quando usamos o cat para ver o contedo de um arquivo, e se o mesmo for muito extenso, teremos dificuldade em ver o incio do mesmo. Com o more/less possvel navegar pelo contedo dos arquivos ou da da sada padro.Exemplo:$ more /etc/passwd

    6.16 Head e TailMostram na tela as 10 primeiras ou 10 ltimas linhas de um arquivos, respectivamente. Muito teis para anlise de log's.

    6.16.1 Opes-n num muda a quantidade de linhas a serem apresentadas. Por

    exemplo -n 30 mostra 30 linhas do arquivo.-f atualiza continuamente o contedo do arquivo, ou seja, se

    o arquivo estiver sendo modificado as alteraes aparecero na tela.

    Exemplos:$ tail -n 20 /etc/passwd$ head -n 10 /etc/passwd

    6.17 Gzip e GunzipCompacta e descompacta arquivos, respectivamente. Um nico por vez, mudando a extenso do mesmo.Exemplos:$ gzip teste.file.2$ ls -l$ gunzip teste.file.2.gz$ ls -l

    6.18 Tar1TAR ou tar (abreviatura de Tape ARchive), um formato de arquivamento de arquivos. Apesar do nome "tar" ser derivado de "tape archive", o seu uso no se restringe a fitas magnticas. Ele se tornou largamente usado para armazenar vrios arquivos em um nico, preservando informaes como datas e permisses. Normalmente

    1 http://pt.wikipedia.org/wiki/TAR

    Linux Bsico 27

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    produzido pelo comando "tar". suportado pelo programa Winrar.tar tambm o nome de um programa de arquivamento desenvolvido para armazenar (backup) e extrair arquivos de um arquivo tar (que contm os demais) conhecido como tarfile ou tarball. O primeiro argumento para tar deve ser uma das seguintes opes: Acdrtux, seguido por uma das seguintes funes adicionais. Os argumento finais do tar so os nomes dos arquivos ou diretrios nos quais eles podem ser arquivados. O uso de um nome de diretrio, implica sempre que os subdiretrios sob ele, sero includos no arquivo.

    6.18.1 Usando o TARO que o GZIP no consegue fazer, o TAR (Tape ARchives) faz. Ele um aplicativo capaz de armazenar vrios arquivos em um s. Porm, no capaz de compactar os arquivos armazenados. Como possvel notar, o TAR serve de complemento para o GZIP e vice-versa. Por isso, foi criado um parmetro no TAR para que ambos os programas possam trabalhar juntos. Assim, o TAR "junta" os arquivos em um s. Este arquivo, por sua vez, ento compactado pela GZIP.O TAR tambm consegue gravar a propriedade e as permisses dos arquivos. Ainda, consegue manter a estrutura de diretrios original (se houve compactao com diretrios), assim como as ligaes diretas e simblicas.A sintaxe do TAR :

    tar [parmetros] [-f arquivo] [arquivos...].Abaixo, segue a lista de parmetros.Parmetros principais:-c cria um novo arquivo tar;-p mantm as permisses originais do(s) arquivo(s);-r acrescenta arquivos a um arquivo tar;-t exibe o contedo de um arquivo tar;-v exibe detalhes da operao;-x extrai arquivos de um arquivo tar;-z comprime o arquivo tar resultante com o gzip;-f especifica o arquivo tar a ser usado;A seguir mostramos exemplos de utilizao do TAR. Em alguns parmetros o uso de '-' (hfen) no necessrio. Desta vez, os comandos no sero explicados. Execute-os e descubra o que cada um faz. Repare na combinao de parmetros e tente entend-la. Assim, voc saber exatamente o que est fazendo. Bom aprendizado!

    Linux Bsico 28

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    tar -cvf arq.tar arq1 arq2tar -czvf arq.tgz *tar -rf arq.tar arq*tar -tzf arq.tartar -xv -f arq.tar

    7 PermissodeAcessoDiretrioseArquivosH uma maneira de restringir o acesso aos arquivos e diretrios para que somente determinados usurios possam acess-los. A cada arquivo e diretrio associado um conjunto de permisses. Essas permisses determinam quais usurios podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executvel, quais usurios podem execut-lo. Se um usurio tem permisso de execuo para um diretrio, significa que ele pode realizar buscas dentro daquele diretrio, e no execut-lo como se fosse um programa.Quando um usurio cria um arquivo ou um diretrio, o LINUX determina que ele o proprietrio (owner) daquele arquivo ou diretrio. O esquema de permisses do LINUX permite que o proprietrio determine quem tem acesso e em que modalidade eles podero acessar os arquivos e diretrios que ele criou. O super-usurio (root), entretanto, tem acesso a qualquer arquivo ou diretrio do sistema de arquivos.

    7.1 Permisses de acesso:O conjunto de permisses dividido em trs classes: proprietrio, grupo e usurios. Um grupo pode conter pessoas do mesmo departamento ou quem est trabalhando junto em um projeto. Os usurios que pertencem ao mesmo grupo recebem o mesmo nmero do grupo (tambm chamado de Group Id ou GID). Este nmero armazenado no arquivo /etc/passwd junto com outras informaes de identificao sobre cada usurio. O arquivo /etc/group contm informaes de controle sobre todos os grupos do sistema. Assim, pode -se dar permisses de acesso diferentes para cada uma destas trs classes.Quando voc executa ls -l em um diretrio qualquer, os arquivos so exibidos de maneira semelhante a seguinte:total 403196drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe

    Linux Bsico 29

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    As colunas que aparecem na listagem so:1. Esquema de permisses;2. Nmero de ligaes do arquivo ou diretrio;3. Nome do usurio dono do arquivo ou diretrio;4. Nome do grupo dono do arquivo ou diretrio;5. Tamanho do arquivo, em bytes;6. Ms da criao do arquivo;7. Dia da criao do arquivo;8. Hora da criao do arquivo;9. Nome do arquivo;

    O esquema de permisses est dividido em 10 colunas, que indicam se o arquivo um diretrio ou no (coluna 1), e o modo de acesso permitido para o proprietrio (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usurios (colunas 8, 9 e 10).Existem trs modos distintos de permisso de acesso: leitura (read), escrita (write) e execuo (execute). A cada classe de usurios voc pode atribuir um conjunto diferente de permisses de acesso. Por exemplo, atribuir permisso de acesso irrestrito (de leitura, escrita e execuo) para voc mesmo, apenas de leitura para seus colegas, que esto no mesmo grupo que voc, e nenhum acesso aos demais usurios. A permisso de execuo somente se aplica a arquivos que podem ser executados, obviamente, como programas j compilados ou script shell. Os valores vlidos para cada uma das colunas so os seguintes:

    1 d se o arquivo for um diretrio; -se for um arquivo comum; 2,5,8 r se existe permisso de leitura; -caso contrrio; 3,6,9 w se existe permisso de alterao; -caso contrrio; 4,7,10 x se existe permisso de execuo; -caso contrrio;

    A permisso de acesso a um diretrio tem outras consideraes. As permisses de um diretrio podem afetar a disposio final das permisses de um arquivo. Por exemplo, se o diretrio d permisso de gravao a todos os usurios, os arquivos dentro do diretrio podem ser removidos, mesmo que esses arquivos no tenham permisso de leitura, gravao ou execuo para o usurio. Quando a permisso de execuo definida para um diretrio, ela permite que se pesquise ou liste o contedo do diretrio.

    Linux Bsico 30

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    7.2 Verificando as permisses de acessoO comando ls -l mostra os atributos dos arquivos e dos diretrios. Normalmente as permisses padro para os diretrios (rwxrwxrwx) permitem o acesso de leitura, gravao e execuo para todos os usurios (proprietrio, membros do grupo e outros). Para os arquivos as permisses padro (rw-rw-rw-) permitem acesso de leitura e gravao para o proprietrio, membros do grupo e todos os demais usurios. As permisses padro podem ser modificadas com o uso do comando umask que ser apresentado mais adiante.

    7.3 Alterando a permisso de acessochmod modo-de-permisso arquivoO modo-de-permisso na linha de comando representado em um dos dois formatos: octal (absoluto) ou simblico. O formato octal usa valores numricos para representar as permisses.

    7.3.1 Formato octal do modo de permissesH oito valores numricos possveis (0 -7) que representam o modo de permisso para cada tipo de usurio. Estes valores so obtidos pela soma do tipo de permisso desejada, segundo a tabela abaixo:

    permisso r w xvalor 4 2 1

    Exemplo : Usando o formato octal, mude o modo de permisso do arquivo teste.file para que o proprietrio tenha acesso total e todos os outros usurios (grupo e outros) tenham apenas permisso de leitura e execuo :$ chmod 755 teste.file ==> 7=rwx (4+2+1); 5=r-x (4+1)$ ls-l teste.file-rwxr-xr-x 1 aluno aluno 1475 May 20 11:02 teste.file

    7.3.2 Formato simblico do modo de permissesO formato simblico usa letras e smbolos para indicar o modo de permisso. Ele composto de trs elementos :Tipo de usurio

    u Usurio ( Proprietrio ) g Grupo o Outros a Todos

    Linux Bsico 31

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    AoA ao significa como sero alteradas as permisses.

    + Acrescenta permisso(es) - Remove permisso(es) = Atribui a permisso explicitamente

    Os operadores + e -acrescentam e removem as permisses relativas ao modo de permisso corrente. O operador = reinicializa todas as permisses explicitamente (exatamente como indicado)Tipo de permisso

    r Leitura w Gravao x Execuo

    A combinao desses trs elementos formam o modo de permisso no formato simblico.Exemplo s :1- Tire a permisso de execuo, sobre o arquivo teste, do grupo e dos outros usurios :$ chmod go-x teste$ ls-l teste-rwxrw-rw- 2 guest user s 512 May 20 14:04 teste2- Mude as permisses do arquivo prog2 para que todos os usurios possam ler e execut- lo:$ chmod a=rx prog2$ ls-l-r-xr-xr- x 1 guest users 1986 May 20 08:26 prog2

    7.4 Mudando as permisses padroumask [ permisso ]Modifica os modos padro de permisso para os novos arquivos que voc criar. No comando, nmero um nmero octal de trs dgitos, como visto no comando chmod. Entretanto aqui voc especifica de maneira inversa, isto , em chmod se voc utilizar nmero igual a 777, voc estar concedendo autorizao de leitura+escrita+execuo para voc mesmo, para o grupo e para todos os demais usurios. Com o comando umask se voc especificar nmero igual a 777, voc estar negando acesso a todas as classes em qualquer modo. De fato, a permisso que ser concedida dada pela diferena entre a permisso padro original, que 777 para diretrios e 666 para arquivos, e a permisso especificada em umask. Por

    Linux Bsico 32

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Exemplo :Diretrios:

    Permisso padro 777(rwxrwxrwx) Valor de umask 023 Novas permisses 754 (rwxr -xr-- )

    Arquivos: Permisso padro 666(rw-rw- rw-) Valor de umask 022 Novas permisses 644 (rw-r --r --)

    Sem especificar um nmero umask mostrar o valor corrente da mscara de permisses. Os arquivos e diretrios criados antes do uso do comando permanecem com as permisses inalteradas.Exemplo :1- Mostrar o valor atual da mscara de permisses :$ umask0022 2- Mudar o valor da mscara para que os novos aquivos tenham a seguinte permisso : proprietrio com acesso a leitura e escrita, grupo com acesso a leitura e execuo e outro somente para leitura :$ umask 012

    7.5 "group-id" de um arquivochgrp grupo arquivoO comando chgrp muda a identificao do grupo de um arquivo. Pode ser utilizado para conceder permisso de leitura e escrita para outro grupo que no o seu, sem ter que conceder as mesmas permisses para todos os demais usurios. Voc s poder mudar o grupo do arquivo que voc mesmo criou. Alm de voc somente o super-usurio poder fazer isso.Exemplo : Mude o grupo do arquivo memo1 para users2 :$ ls -l memo1 -rw- r --r-- 1 guest users 984 May 12 11:02 memo1$ chgrp users2 memo1$ ls -l memo1 -rw-r--r-- 1 guest users2 984 May 12 11:02 memo1

    7.6 "owner" de um arquivochown usurio arquivo

    Linux Bsico 33

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Usado para mudar a identificao de proprietrio associada a um arquivo. Voc s poder aplicar este comando aos arquivos que voc mesmo criou. Alm de voc somente o super-usurio poder faz-lo. Observe que uma vez que voc tenha alterado a identificao de proprietrio que est associada a um arquivo, voc no mais o proprietrio, e no poder mais fazer a alterao inversa.Exemplo : Mude a propriedade do arquivo prog1 para guest2 :$ ls -l prog1-rw-r-xr-- 1 guest users 1765 May 17 13:34 prog1$ chown guest2 prog1$ ls-l prog1-rw-r-xr-- 1 guest2 users 1765 May 17 13:34 prog1

    8 Redirecionamentos

    8.1 Entrada e Sada dos comandosQuase todos os comandos do LINUX usam uma entrada e produzem uma sada. A entrada para um comando so os dados sobre os quais o comando ir operar. Esses dados podem vir de um arquivo especificado pelo usurio, de um arquivo de sistema do LINUX, do terminal (do teclado) ou da sada de outro comando. A sada de um comando o resultado da operao que ele realiza sobre a entrada. A sada do comando pode ser impressa na tela do terminal, enviada a um arquivo, ou servir de entrada para outro comando.Neste captulo voc vai aprender a manipular estas entradas e sadas, para poder criar e ler arquivos durante o uso de alguns comandos, e tambm aprender a encadear comandos, fazendo com que um comando utilize como entrada a sada de outro.

    8.2 Entrada e Sada PadroAlguns comandos tm apenas uma fonte possvel para a entrada, por exemplo o comando date sempre utiliza o sistema interno de relgio para indicar a data e hora. Outros comandos exigem que voc especifique uma entrada. Se no especificar uma fonte de entrada juntamente com esses comandos, o LINUX considera que ela vir do teclado, isto , ele esperar que voc digite a entrada. Por isso o teclado chamado de entrada padro.As informaes do teclado so utilizadas no processamento, e para sua facilidade o LINUX tambm ecoa (apresenta na tela) o que voc digitar. Desta forma, voc pode certificar-se de ter digitado os comando corretamente.

    Linux Bsico 34

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Normalmente, quase todos os comandos enviam suas sadas para a tela do terminal, que chamada de sada padro. Como com as entradas, voc tambm pode redirecionar as sadas dos comandos para outro destino que no a sada padro, por exemplo para arquivos ou para a entrada de outros comandos.Alguns comandos, como rm, mv e mkdir no produzem nenhuma sada. Entretanto esses comandos e muitos outros podem apresentar mensagens de erro na tela se no obtiverem sucesso no seu processamento. Isto ocorre porque a tela do terminal tambm a sada de erros padro, isto , o local para onde so enviadas as mensagens de erro. As mensagens de erro dos comandos no devem ser confundidas com as sadas dos comandos.O shell do LINUX redireciona a fonte e o destino da entrada, de modo que o comando no percebe se a entrada padro est direcionada para o teclado do terminal ou para um arquivo. Da mesma forma, o comando no percebe se a sada padro est direcionada para a tela do terminal, para um arquivo ou para a entrada de outro comando.

    8.3 Redirecionamento de E/SH trs mtodos bsicos para redirecionar a entrada ou sada de um comando. Uma delas simplesmente fornecer como argumento para o comando o nome do arquivo que deve ser usado como entrada ou sada para o comando. Este mtodo funciona com alguns comandos, como por exemplo cat, pg e outros. J comandos como o pwd no podem receber um arquivo como argumento. Mesmo com os filtros (classe de comandos a qual pertencem o cat e o pg) nem sempre possvel especificar a sada.Outro mtodo para redirecionar a entrada ou sada utilizar os smbolos de redirecionamento. Como muitos comandos podem receber arquivos de entrada sob a forma de argumentos, os smbolos de redirecionamento so mais utilizados para direcionar a sada dos comandos.Um terceiro mtodo de redirecionar entradas e sadas usando pipes, que enviam a sada de um comando para outro, ou seja, a sada de um comando serve como entrada para outro comando.

    8.3.1 Smbolos de redirecionamentoOs caracteres especiais utilizados na linha do comando para fazer O shell redirecionar a entrada, sada ou erro do programa esto listados e descritos a seguir. O shell interpreta esses caracteres antes do comando ser executado.

    Linux Bsico 35

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    8.3.2 Redirecionamento de entradacomando < arquivoO smbolo < (menor que) faz com que a entrada padro seja direcionada a um arquivo. Em muitos casos, especificar < funciona exatamente como especificar o nome do arquivo como argumento do comando. Por exemplo:$ cat Arquivo.teste$ cat < Arquivo.testeproduziro exatamente o mesmo efeito.

    8.3.3 Redirecionamento de sadacomando > arquivo ou comando >> arquivoOs smbolos > e >> redirecionam a sada de um comando para um arquivo. O smbolo > escreve a sada do comando dentro do arquivo que voc indicar, quer esse arquivo exista ou no, sendo que o contedo do arquivo j existente ser substitudo. O smbolo >>, ao contrrio, anexa ao arquivo a sada do comando indicado em vez de substituir os dados que ele j continha. No C Shell necessrio que o arquivo j exista, para que o smbolo possa ser utilizado, caso contrrio ocorrer um erro.Exemplo s :1- Guarde no arquivo data.de.hoje a sada do comando date :$ date > data.de.hoje$ cat data.de.hoje2- Acrescente ao arquivo data.de.hoje a sada do comando who :$ who >> data.de.hoje$ cat data.de.hoje

    8.3.4 PipesOs smbolos de redirecionamento permitem realizar mais de uma operao em um mesmo arquivo. Somente com esses smbolos voc j tem condies de realizar tudo oque quiser sobre um arquivo. Suponha, entretanto, que voc queira fazer um conjunto de operaes diferentes em um mesmo arquivo. Cada operao implicaria a criao de um novo arquivo, sendo que o nico propsito desses arquivos seria servir como entrada para outro comando. Entretanto, tudo o que importa o resultado final. Para situaes como essas o LINUX possui outra maneira de redirecionar entradas e sadas: os pipes.comando 1 | comando 2Este smbolo, |, pode ser usado para enviar a sada de um comando para a entrada de outro. Voc pode usar vrios pipes em uma linha de

    Linux Bsico 36

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    comando, de maneira que possvel combinar tantos comandos quantos necessrios, bastando intercal-los por smbolos de pipe. Uma seqncia de comandos encadeados desta maneira chamada de pipeline.Existem algumas regras bsicas para compor um pipeline em uma linha de comandos LINUX. Essencialmente essas regras so o endosso da intuio de um usurio um pouco mais experiente, que facilmente percebe que em um pipeline no pode haver "vazamentos" nem "entupimentos" do pipe, isto , no pode haver no meio do pipeline um comando que no produza sadas (como o caso do mkdir ou rm), ou um comando que no aceite entradas (como o caso do date e pwd). O primeiro comando do pipeline deve ser um produtor de sada, obviamente.Exemplo s :1- Conte o nmero de arquivos que comeam com a sub-string arq no diretrio corrente :$ ls | grep arq | wc -l32- Conte o nmero de usurios que esto presentes no sistema neste momento :$ who | wc -l2

    8.3.5 Redirecionamentos mltiplostee [iau] arquivoO comando tee "divide" a sada de um comando e redireciona-a para dois destinos: para um arquivo especificado e para a sada padro. O comando tee em geral utilizado como um pedao de um pipeline. Se no estiver em um pipeline, o comando tee se comporta de maneira semelhante ao comando cat: recebendo linhas na entrada e ecoando-as na sada.Opes:-a Faz a sada ser anexada aos arquivos especificados, em vez de substituir seus contedos;-i Ignora o sinal de interrupo;Exemplo s :1- Conte o nmero de arquivos que comeam com a sub-string arq no diretrio corrente e guarde os arquivos encontrados no arquivo nomes :$ ls | grep arq | tee nomes | wc -l3$ cat nomes arqarq2

    Linux Bsico 37

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    arquivo2- Conte o nmero de ocorrncias da cadeia Linux no arquivo arq2, guarde as ocorrncias no arquivo resp :$ cat < arq2 | grep Linux | tee resp | wc -l2$ cat resp

    8.3.6 Redirecionamento de erro padroA mensagem de erro gerada por um comando normalmente direcionada pelo shell para a sada de erro padro, que a mesma da sada padro. A sada de erro padro tambm pode ser redirecionada para um arquivo, utilizando o smbolo >. Uma vez que este smbolo tambm utilizado para redirecionar a sada padro, necessrio fazer uma distino mais detalhada para evitar ambigidade.Os descritores de arquivos a seguir especificam a entrada padro, sada padro e sada de erro padro:

    0 Entrada padro; 1 Sada padro; 2 Sada de erro padro;

    O descritor do arquivo deve ser colocado imediatamente antes dos caracteres de redirecionamento. Por exemplo, 1> indica a sada padro, enquanto 2> indica a sada de erro padro. Assim, o comando mkdir temp 2> errfile faz o shell direcionar qualquer mensagem de erro para o arquivo errfile. As indicaes da entrada padro (0>) e sada padro (1>) so necessrias apenas para evitar ambigidade.Exemplo :$ find / -name xinetd.conf > find.res 2> find.erro$ cat find.resp$ cat find.erro

    9 Inittab2Antes que qualquer script de inicializao tenha sido executado, o arquivo /etc/inittab lido. Cada linha neste arquivo possui o seguinte formato:

    ID:runstate:ao:processo

    Cada um destes campos indicam: ID: identificador da entradarunstate: nvel de operao na qual esta entrada usadaao: indica como o processo executado. Por exemplo, o valor wait

    2 http://www.dicas-l.com.br/dicas-l/19980517.php

    Linux Bsico 38

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    indica que o processo deve ser executado e aguardar pelo seu encerramento.

    processo: indica o comando ou processo a ser executado.

    A linha s3:3:wait:/sbin/rc3

    indica que o script /sbin/rc3 executado quando o sistema se encontra no nvel de operao de nmero 3 e que o processamento deve ser encerrado antes que qualquer ao adicional seja tomada. Uma das principais atribuies deste arquivo a definio do nvel de inicializao do sistema (run level), que podem ser:

    0 - halt (no o deixe como padro)1 modo monousurio2 Modo multiusurio, sem NFS (basicamente sem rede)3 Modo multiusurio completo (com rede)4 No usado (pode ser usado para definir um modo prprio)5 X11 (ambiente grfico)6 - reboot (no o deixe como padro)

    Por exemplo:id:5:initdefault:

    indica que est mquina inicializa no modo grfico.Outra atribuio deste arquivo habilitar ou no o reboot pela associao das teclas ++, com uma linha do tipo:

    ca::ctrlaltdel:/sbin/shutdown -t3 -r nowSe comentarmos esta linha o reboot pelo teclado ser desabilitado.

    10 Instalao de aplicativos com RPM3RPM, a simplificao de Red Hat Package Manager um sistema de gerenciamento de pacotes para Linux. RPM instala, atualiza, desinstala e verifica softwares. RPM o formato base da Linux Standard Base. Originalmente desenvolvido pela Red Hat Linux. RPM agora usado por muitas distribuies Linux e tambm portado para outros sistemas operacionais como NetWare da Novell e AIX da IBM.

    3 http://pt.wikipedia.org/wiki/RPM

    Linux Bsico 39

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    10.1 Base de dados RPMNa base do gerenciador de pacotes est o banco de dados rpm. Ele consiste de uma lista duplamente ligada que contm todas as informaes de todos os rpm instalados. O banco da dados lista todos os arquivos que so criados ou modificados quando um usurio instala um programa e facilita a remoo destes mesmos arquivos. Se o banco de dados corrompido, as ligaes duplas garantem que eles possa ser reconstrudo sem nenhum problema. Nos computadores com o sistema operacional RedHat e derivados instalado, este banco da dados se encontra em /var/lib/rpm.

    10.2 Rtulo dos PacotesTodo pacote RPM tem um rtulo de pacote (package label), que contm as seguintes informaes:

    o nome do software a verso do software (a verso tirada da fonte original do pacote) a edio do pacote (o nmero de vezes que o pacote foi refeito utilizando

    a mesma verso do software) a arquitetura sob a qual o pacote foi feito (i386, i686, athlon, ppc, noarch4

    etc.)os arquivos RPM tm normalmente o seguinte formato:

    --..rpmUm exemplo:

    nano-0.98-2.i386.rpmNote que o rtulo do pacote est contido no arquivo e no precisa necessariamente ser o mesmo que o nome do arquivo.O cdigo-fonte tambm pode ser distribudo em pacotes RPM. O rtulo de tais pacotes no contm a parte destinada para a arquitetura e em seu local inserem "src". Exemplo:

    libgnomeuimm2.0-2.0.0-3mdk.src.rpm

    10.3 Vantagens e desvantagens do formatoAs vantagens de utilizar os pacotes RPM em com relao a outro mtodos de adquirir e instalar software so:

    Um mtodo uniforme para o usurio instalar programas.

    4 Independente de arquitetura

    Linux Bsico 40

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    Maior simplicidade para desinstalar os programas. Popularidade: muitos pacotes disponveis. Instalao no-interativa: facilita uma instalao automtica. Cdigo-fonte original includo (.tar.gz, .tar.bz2): fcil de verificar. Verificao criptogrfica com o GPG e o md5.

    As desvantagens incluem: Comumente tem mudanas no formato de pacote incompatveis com

    verses anteriores. Documentao incompleta e desatualizada. Pouca aprendizagem sobre os pacotes.

    Um acessrio exclusivo do Mandriva o urpmi, e pode ajudar com os problemas de dependncias.

    10.4 Acessrios relacionadosO RPM comumente usado por outros acessrios para manipular dependncias, como o Yellow dog Updater Modified yum ou o (verso compatvel com RPM) Advanced Packaging Tool (apt).Alguns gerenciadores de pacotes so

    dpkg usado com o Advanced Packaging Tool (apt) no Debian Linux. portage usado no Gentoo Linux. urpmi usado no Mandriva.

    10.5 Instalao/desinstalo de aplicativos com URPMINo caso do Mandriva sempre a opo mais fcil usar o urpmi, j que o mesmo tenta adivinhar o que estamos querendo instalar e instala todas as dependncias, se for o caso. Por exemplo, se desejarmos instalar o digikam (software para manipulao e gerenciamento de fotos), mas no lembramos exatamente o nome e digitamosurpmi digiO sistema retornar algo assim:

    nenhum nome de pacote digiOs seguintes pacotes contm digi:acroread-plugins-digitalsignaturedigicamerge

    Linux Bsico 41

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    digikamdigikamimagepluginsdigitemplibdigidoc2libdigidoc2-devellibdigikam0libdigikam0-develrmedigicontrolvdr-plugin-digicamx11-driver-input-digitaledge

    ento digitamos:urpmi digikamPara desinstalar (extrair) basta digitarmos:urpme pacote

    10.5.1 Mdias do URPMIMdia o local onde temos pacotes rpm para o Mandriva. O cd-rom, o dvd, diretrio nfs, ftp, http todos so mdias. Geralmente a maioria chama de repositrio devido ao costume de se trabalhar com o Debian e Conectiva com a ferramenta APT. Estas so facilmente gerenciadas com alguns comandos:

    urpmi.addmedia Adiciona mdias base de dadosurpmi.removemedia Remove mdias da base de dados

    As mdias podem ser sites da internet, permitindo assim o administrador manter o sistema sempre atualizado. Existe um excelente site para cadastro de mdias que o Easy URPMI http://easyurpmi.zarb.org/. Neste site configuramos as nossas mdias de acordo com nossa verso e necessidades, basta seguir o roteiro do site.

    11 Editor viO editor vi bastante simples e muito utilizado por ser encontrado em todas as distribuies Linux. Poderamos optar por um editor um pouco mais avanado, mas com o inconveniente de encontrarmos uma distribuio/instalao onde no dispusssemos deste editor. Isto vlido principalmente para o chamado Linux embarcado onde no dispomos de memria para outros editores.

    Linux Bsico 42

    http://easyurpmi.zarb.org/

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    O editor vi no objetiva formatar textos: negritos, indentaes, justificao, etc.Na prtica o vi muito usado para editar textos que no necessitam de formatao em nenhum momento, como por exemplo cdigos fonte de programas em alguma linguagem de programao, e que no carreguem o texto com caracteres especiais.Neste captulo vamos aprender alguns comandos do vi, suficientes para que voc entenda o funcionamento do editor e consiga editar arquivos simples.

    11.1 Os trs modos de operao do VIO editor vi tem trs modos de operao distintos, que so: modo insert ,modo escape (tambm chamado de modo comando), modo last line;O modo insert usado para a digitao do texto. Neste modo o vi funciona como uma mquina de escrever, com a diferena de que voc pode retroceder sobre o texto j digitado para corrigir eventuais erros. Cada caracter que for digitado aparecer na tela exatamente como foi digitado. No modo escape os caracteres comuns (letras, nmeros e sinais de pontuao) tm um significado especial e quase todos os caracteres funcionam como comandos; portanto, existem muitos comandos. Alguns comandos servem para passar para o modo insert, outros para movimentar o cursor sobre as linhas do texto, alterar trechos do texto, buscar palavras, etc. No modo last line voc digita os comandos em uma linha especial que aparece no final da tela quando se digita : (dois pontos) no modo escape. Parte dos comandos do modo escape possuem similares no modo last line, como por exemplo os comandos de edio, que veremos mais adiante. Os comandos no modo last line devem ser seguidos por ENTER, contrariamente ao que acontece no modo escape.

    11.2 O Buffer de edioQuando voc edita um arquivo com o vi, na verdade voc no est alterando o arquivo em si. As alteraes feitas so aplicadas em um buffer (uma rea na memria, que passa a conter o arquivo sendo editado). Quando voc quiser que as alteraes fiquem permanentemente aplicadas ao arquivo, necessrio copiar o contedo do buffer para o disco, usando o comando write (w) no modo last line. Portanto, se o comando write no for executado antes de deixar o vi, as alteraes contidas no buffer no

    Linux Bsico 43

  • Centro Federal de Educao TecnolgicaUnidade So Josrea de TelecomunicaesOdilson Tadeu Valle

    sero aplicadas ao arquivo que est no disco.

    11.3 Criao e edio de arquivosNesta etapa vamos dar enfoque somente aos comandos e usos principais, objetivando atender as demandas de um administrador de rede.Para criarmos um arquivo simplesmente digitamos vi seguido do nome do arquivo. Por exemplo:vi primeiro.arquivoAps isto ser aberto o editor com contedo vazio, no modo comando. Para podermos editar qualquer coisa devemos entrar no modo insero, para isto basta teclarmos (aparecer -- INSERT -- na base da janela). Em seguida digitamos o texto propriamente dito, usando o teclado normalmente.Para salvarmos o texto devemos teclar (modo comando), (modo last line> e (write). Assim teremos o nosso texto salvo.Agora vamos a alguns comandos teis:

    Para copiarmos algumas linhas do texto colocamos o cursor no incio do texto a ser copiado e, no modo de comando, teclamos ++, onde n nmero de linhas que desejamos copiar. Por exemplo se digitarmos ++ copiaremos 5 linhas para o buffer.

    Para excluirmos algumas linhas do texto colocamos o cursor no incio do texto a ser excudo e, no modo de comando, teclamos ++, onde n nmero de linhas que desejamos copiar. Por exemplo se digitarmos ++ apagaremos 3 linhas do texto mas que sero armazenadas no buffer.

    Para colarmos o contedo do buffer para alguma parte do texto colocamos o cursor no ponto onde pretendemos inserir o texto e, no modo de comando, teclamos (paste) para inserirmos o texto abaixo da linha do cursor e para inserir o texto acima da linha do cursor.

    Para encontrarmos alguma palavra, no modo de comando, teclamos . O vi mostrar a primeira ocorrncia da mesma. Para ir para a prxima ocorrncia teclamos (next).

    Para substituirmos uma palavra por outra, no modo de comando, teclamos . Por exemplo se quisermos substituir velha por nova: , assim teremos a troca da primeira ocorrncia de velha por nova.

    Para substituirmos todas as ocorrncias acrescentamos entre e do