Sei sulla pagina 1di 32

Apostila Linux

1 - Histria do Linux
Origem no UNIX que foi desenvolvido nos anos 70. O UNIX muito utilizado hoje no ambiente corporativo, educacional e agora no ambiente desktop. Linux uma cpia do Unix feito por Linus Torvalds, junto com um grupo de hackers pela Internet. Pretende-se que ele siga conforme com o padro POSIX, padro usado pelas estaes UNIX. Linus Torvalds que na poca era um estudante de cincia da computao na Finlndia criou um clone do sistema Minix (sistema operacional desenvolvido por Andrew Tannenbaun que era semelhante ao UNIX) que o chamou de Linux. Hoje ele ainda detm o controle do Kernel do sistema. Em maro de 1992 surge a verso 1.0 do Linus. Estima-se que sua base de usurios se situe hoje em torno de 10 milhes. Ele ainda no se enquadra como sendo um sistema operacional UNIX. Ele inclui proteo entre processos (crash protection), carregamento por demanda, redes TCP/IP, alm de nomes de arquivos com at 255 caracteres, multitarefa real, suporte a UNICODE, shared libraries, memria virtual, etc. Processo - Resumidamente... Um programa em execuo. As informaes sobre vrios processos em execuo ficam armazenadas na tabela de processos. O Sistema Operacional controla o tempo de execuo de cada processo, e ele responsvel por iniciar, parar/suspender e terminar a execuo de processos. Os usurios tambm podem interferir na administrao de processos. Todo processo tem um processo pai que o chamou, portanto o processo tem nome, nmero de identificao, grupo ao qual pertence, etc. e est inserido na rvore hierrquica de processos. O processo pai chamado de init.

1.1 - Linux como sistema operacional


Linux se refere ao Kernel O conjunto de aplicativos que so executados no Kernel se chamam distribuio. A funo do Kernel ser a interface entre o Hardware e os sistemas de gerenciamento de tarefas e aplicativos. O Kernel do Linux mais leve que o de outros sistemas operacionais para servidores. So 12 milhes de linhas de cdigo, enquanto outras verses do Unix tm 30 milhes e o Windows NT, 50 milhes. Isso significa que o Linux trs vezes mais rpido que outros Unix e at cinco vezes mais rpido que o Windows NT. Conjunto de Aplicativos para Linux (Distribuio) Sistema de gerenciamento de tarefas e aplicativos Ncleo do sistema operacional (Kernel Linux) Hardware

1.2 - Principais caractersticas comentadas no Linux


Multiusurio: Permite que vrios usurios possam rodar o sistema operacional, e no possui restries quanto licena. Permite vrios usurios simultneos, utilizando integralmente os recursos de multitarefa. A vantagem disso que o Linux pode ser distribudo como um servidor de aplicativos. Usurios podem acessar um servidor Linux atravs da rede local e executar aplicativos no prprio servidor. Multiplataforma: O Linux roda em diversos tipos de computadores, sejam eles RISC ou CISC.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Multitarefa: Permite que diversos programas rodem ao mesmo tempo, ou seja, voc pode estar imprimindo uma carta para sua vov enquanto trabalha na planilha de vendas, por exemplo. Sem contar os inmeros servios disponibilizados pelo Sistema que esto rodando em background e voc provavelmente nem sabe. Multiprocessador: Permite o uso de mais de um processador. J discutida, h muitos anos, a capacidade do Linux de poder reconhecer mais de um processador e inclusive trabalhar com SMP, clusters de mquinas, na qual uma mquina central controla os processadores das outras para formar uma s mquina. Protocolos: Pode trabalhar com diversos protocolos de rede (incluindo o TCP/IP que nativo Unix). Sistemas de arquivos: Suporta diversos sistemas de arquivos, incluindo o HPFS, DOS, CD-ROM, Netware, Xenix, Minix, etc. Sistema de arquivos - uma forma de armazenamento de arquivos em estruturas (na maneira hierrquica) de diretrios. Assim, o usurio no precisa necessita conhecer detalhes tcnicos do meio de armazenamento. Ele apenas precisa necessita conhecer a estrutura (rvore) de diretrios para poder navegar dentro dela e acessar suas informaes. Consoles virtuais: Permite que o usurio tenha mais de um console para trabalhar, sendo que em cada console voc pode ter diversas tarefas sendo executadas em background e mais em foreground (segundo plano e primeiro plano). Fontes TrueType: Fontes TrueType so agora suportadas pelo Conectiva Linux. A carga dinmica de fontes suportada e pode ser usada como um servidor de fontes em uma mquina local. Nota: os usurios que estejam efetuando uma atualizao tero que atualizar os caminhos padres das fontes. Para tanto, edite o arquivo /etc/X11/XF86Config. Procure no arquivo at encontrar os caminhos configurados. Altere para o seguinte unix/:-1. Deve-se ainda estar seguro de que o xfs, o Servidor de Fontes X, esteja sendo executado. Atravs do comandos /sbin/chkconfig -add xfs pode-se garantir que ele seja inicializado a cada vez que o Linux seja carregado.

1.3 - Linux como software gratuito


Uma forma de combater as prticas monopolistas da Microsoft. Existem rumores que a Microsoft ir alterar os termos de licenciamento de seus produtos. Na nova verso, o software no ser mais adquirido, e, sim, licenciado em bases anuais, exigindo pagamento de uma nova licena para uso continuado. Isso poder provocar a marginalizao das populaes ou pases que no tenham os recursos necessrios para investimentos nesta rea. O criador do movimento pelo software aberto e livre foi Richard Stallman. Em determinada ocasio, ele precisou corrigir o driver de uma impressora que no estava funcionando. Solicitou ento, ao fabricante do driver o cdigo fonte do programa para que pudesse realizar as correes necessrias. Para sua surpresa, o pedido foi negado. Da ele iniciou ento um esforo gigantesco para conceder verses abertas para todas as categorias de software existentes, comercializadas sem acesso ao cdigo fonte. Richard Stallman fundou a FSF Free Software Foundation. A FSF criou os aplicativos utilizados por todos os sistemas semelhantes ao Unix, como Linux e FreeBSD, hoje to populares. Para evitar que algum obtivesse o programa com o seu cdigo fonte, fizesse alteraes e se declarasse como dono do produto, ele estabeleceu a forma sob a qual esses programas poderiam ser distribudos.

Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

O documento especifica que o programa pode ser usado e modificado por quem quer que seja, desde que as modificaes efetuadas sejam tambm disponibilizadas em cdigo fonte. Esse documento chama-se GNU (General Public License). O Kernel do Linux tambm distribudo sob a GNU (General Public License). O Kernel do Linux, associado a esses programas, tornou possvel a milhes de pessoas o acesso a um excelente ambiente computacional de trabalho e que melhora a cada dia. O Linux, na pessoa de seu criador e coordenador, soube melhor aglutinar o imenso potencial de colaboradores da Internet em torno de seu projeto. Contribuies so aceitas, testadas e incorporadas ao sistema operacional e uma velocidade nunca vista.

2 - O que uma distribuio


Ao "kernel" freqentemente acrescentado uma srie de aplicaes, formando um sistema ou distribuio Linux. Distribuio nada mais que um pacote do kernel do sistema operacional mais os programas que o acompanham. Este pacote, incluindo as ferramentas necessrias para sua instalao, chamado de distribuio. Uma distribuio atende a uma determinada necessidade. As distribuies podem ser produzidas em diferentes verses do Kernel, podem incluir diferentes conjuntos de aplicativos, utilitrios, ferramentas e mdulos de driver , e podem oferecer diferentes programas de instalao e atualizao para facilitar o gerenciamento do sistema.

2.1 - O mesmo, porm diferente


Na maioria das distribuies existe um conjunto comum de programas bsicos, utilitrios e bibliotecas, que os projetistas de aplicativos podem esperar encontrar em um sistema Linux. Padro seguido pelas distribuies = Linux file system standart.

2.2 - As principais distribuies


Red Hat Famoso por suas ferramentas de instalao e atualizao do sistema operacional e por seu sistema bem projetado de instalao, desinstalao e controle de pacotes de aplicativos de software. Slackware Era a distribuio mais popular. No vem com RPM. Ganha em performance, mas peca ma interatividade. Usado mais para servidores de rede. Caldera OpenLink O OpenLink 1.3 inclui o K Desktop Environment, uma licena nocomercial do StarOffice for Linux, Suporte Netware, uma licena do DR-DOS para compatibilidade DOS. S.u.S.E Linux uma conhecida distribuio de Linux, disponvel principalmente na Europa e oferecida nas verses em ingls e alemo. Debian / GNU No possui uma organizao comercial patrocinadora. produzida por uma equipe de voluntrios. Utiliza seu prprio sistema de gerenciamento de pacotes.

2.3 - Red Hat Linux


O que popularizou o Red Hat foi seu sistema de gerenciamento de pacotes. Esse sistema permite que os aplicativos de software sejam testados, configurados e fornecidos em um estado pronto para funcionar no Red Hat Linux. Usando-se ferramentas de gerenciamento de pacotes simples, novos
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

pacotes podem ser obtidos por download, instalados e executados sem a configurao tortuosa, s vezes exigida por outros pacotes. Outra vantagem do gerenciamento de pacotes a capacidade de atualizao: impossvel atualizar verses do Red Hat sem a necessidade de reinstalar o Linux desde o incio. Voc pode usar o Red Hat em PC Intel, Alpha digital e Sun SPARC.

3 - Iniciando a instalao
Modo expert Nesse modo, a deteco de hardware no realizada e voc precisar fornecer parmetros de configurao para todo o seu hardware, durante a instalao. Voc deve reverter para essa opo apenas se seu hardware no estiver sendo detectado corretamente e tiver muita certeza dos parmetros e serem introduzidos.

3.1 - Escolhendo uma classe de instalao


Workstation - Executa uma instalao padro para uma workstation Linux. Esta opo automaticamente apaga todas as parties Linux existentes no seu sistema. Server - Executa uma instalao padro para uma servidor Linux. Esta opo automaticamente apaga todas as parties Linux existentes no seu sistema. Custom - Proporciona um controle completo sobre todos os aspectos do processo de instalao.

4 - O que um comando Linux?


No MS-DOS os comandos no poderiam ser criados pelos usurios, ou sejam, eram limitados e geralmente estticos. No mundo Unix e por extenso, no Linux, o conceito diferente. Um comando qualquer arquivo executvel.

4.1 - Su
usado geralmente para alternar entre diferentes usurios dentro de um terminal virtual. Exemplo de comando: $ su user2 (ser solicitada a senha do user2). Quando acabarmos de trabalhar basta usar o comando exit para voltar ao usurio anterior. Se voc estiver logado como usurio e der o comando su sem nome de usurio, ser solicitada a senha do Root e, quando ela for fornecida, ser trocada para trabalhar como usurio-root. Se voc estiver logado como Root e der o comando su <o nome de algum usurio>, no ser solicitado nenhum pedido de senha. Isso interessante para o administrador, pois ele pode precisar se tornar diferentes usurios para depurar problemas, mas no necessariamente conhecer as senhas de outros usurios.

4.2 - pwd, Cd
Esses comandos fornecem as ferramentas bsicas de que voc precisa para trabalhar com diretrios e arquivos. O comando Pwd informa em qual diretrio est atualmente. O comando Cd muda seu diretrio atual para qualquer diretrio acessvel no sistema.

4.3 - ls
O comando ls usado para ver o contedo do diretrio corrente.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Entre as opes mais teis temos: a Inclui, na listagem, todos os arquivos contidos no diretrio, mesmo as referncias do diretrio onde estamos posicionados e do diretrio pai, ou seja, o superior quele onde estamos posicionados que so representados por . (diretrio atual) e .. (diretrio pai). F Anexa aos nomes dos arquivos um caractere, indicando seu tipo: diretrio (/), programas executveis (*), links simblicos (@), para FIFOs (|), para sockets (=) e nada para arquivos comuns. l Uso de formato longo, detalhando os dados referentes a (siga os nmeros no exemplo abaixo): (1) permisses, (2) quantidade de sub-diretrios ou se for 1 se trata de um arquivo, (3) nome do usurio que criou o arquivo e (4) do grupo a que este usurio pertence, (5) tamanho, (6) data da ltima alterao e (7) nome completo do arquivo. Veja o exemplo com os nmeros indicando estas informaes: drwxr-xr-x 2 drwxr-xr-x 2 drwxr-xr-x 2 drwxr-xr-x 3 drwxrwxr-x 2 |-----(1)----| (2) root root root root root root root root root root (3) (4) 1024 Dec 23 15:22 1024 Dec 31 05:48 1024 Dec 6 15:51 8192 Mar 11 10:17 1024 Feb 27 13:52 (5)|-------(6)------| bin boot cdrom dev dosa (7)

R Listagem recursiva. Ir tambm acessar os arquivos que esto colocados internamente nos subdiretrios, a partir do ponto em que estamos. u Usa a data do ltimo acesso ao arquivo para a classificao da sada. X Usa a extenso do nome de arquivo para a ordenao. L Mostra entradas apontadas pelos links simblicos. n Mostra UIDs e GIDs numricos em vez dos nomes. S Ordenar pelo tamanho do arquivo

4.4 - mkdir
Cria usado para a criao de novos diretrios. Sintaxe: mkdir (diretrio 1) (diretrio 2) ...(diretrio n) Onde (diretrio 1) at (diretrio n) so os diretrios a serem criados. As entradas padro em um diretrio (por exemplo, os arquivos ".", para o prprio diretrio, e ".." para o diretrio pai) so criadas automaticamente. A criao de um diretrio requer permisso de escrita no diretrio pai. O identificador de proprietrio (owner id), e o identificador de grupo (group id) dos novos diretrios so configurados para os identificadores de proprietrio e de grupo do usurio efetivo, respectivamente. Opes: m (mode) - Esta opo permite aos usurios especificar o modo a ser usado para os novos diretrios. p - Com esta opo, mkdir cria o nome do diretrio atravs da criao de todos os diretriospai no existentes primeiro.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Exemplo: mkdir -p diretrio 1/diretrio 2/diretrio 3 (cria a estrutura de subdiretrios "diretrio 1/diretrio 2/diretrio 3").

4.5 - More e Less


O comando More permite que o usurio se mova uma linha ou uma tela para frente por vez, em um longo corpo de texto, assim como pesquisar esse texto. Pressionar a barra de espao faz pular para frente uma pgina, enquanto pressionar Enter mover para frente uma linha por vez. Para pesquisar para frente o arquivo inteiro, pressione a tecla de barra (/), seguida da palavra ou frase que voc deseja pesquisar e, em seguida, pressione Enter. Voc pode repetir o processo pressionando a tecla n, aps a primeira busca, evitando a necessidade de digitar a mesma palavra ou frase repetidamente. O comando Less uma verso amplamente aprimorada do comando more. Alm das funes bsicas descritas anteriormente, a seguir esto algumas das outras aes que podem ser realizadas em um corpo de texto: Pular diretamente para uma linha Coloque o nmero da linha seguido da letra g. Pular diretamente para o incio ou final do arquivo - Se digitar g voc pula para a primeira linha do texto. Com o G sozinho voc pula para a ltima linha do texto. Retroceder em um arquivo A seta para cima faz mover para cima uma linha de texto por vez e a seta para baixo faz mover uma linha de texto para baixo. Pesquisar retroativamente em um arquivo Uma barra normal (/) seguida de uma palavra ou frase, pesquisar para frente do texto, e um ponto de interrogao

4.6 - Find
O comando Find pode ser usado para pesquisar arquivos pelo nome, data de criao ou modificao, proprietrio, tamanho do arquivo e at o tipo do arquivo. A sua estrutura bsica : $ find [diretrio inicial] [parmetros] [aes]

Diretrio inicial especifica onde a pesquisa vai iniciar. Os parmetros representam o lugar em que voc especifica os critrios de busca. A seo referente s aes indica a ao que ser executada nos arquivos encontrados. Geralmente, voc desejar usar a ao print, o que indica que o nome e o caminho completos do arquivo devem ser apresentados. Tambm possvel pesquisar nomes de arquivo parciais. Por exemplo, se voc sabe que o arquivo que est procurando comea com fo, ento pode usar a expresso fo* para indicar todos os arquivos que comeam com fo e terminam com qualquer combinao. Quando voc usa o caractere *, importante colocar apstrofos em torno da expresso inteira. Ex.: $ find / -name fo* print

4.7 - Grep
Comando Grep usado para verificar o contedo de um ou mais arquivos na tentativa de encontrar a ocorrncia de um padro de texto especfico dentro dos arquivos. Em geral, o padro para o comando : $ grep <opes> [texto para pesquisa] [arquivos]
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Se voc quiser procurar uma frase, como rio de janeiro, precisar colocar o texto padro entre aspas: $ grep rio de janeiro * Opes: l Mostra os nomes dos arquivos que contm o texto de busca. c Informa o nmero de linhas num arquivo que atende pesquisa feita. i No diferencia letras maisculas de minsculas para o termo que est sendo pesquisado. Considere a situao em que voc deseja uma listagem de todos os arquivos do diretrio corrente, com a data da modificao de 12 de maio. Voc poderia encontrar essa informao usando pipe com ls l, atravs de um comando grep: $ ls l | grep may 12

4.8 - Tar
O programa tar era usado originalmente para criar backups de sistema em fitas. A criao de um arquivo tar fcil: $ tar cvf tar-nome-arquivo lista-arquivo Esse comando criar um novo arquivo, especificado pelo nome de arquivo tar-nome-arquivo (geralmente tem extenso .tar), e depois armazenar todos os arquivos da lista nesse arquivo. Cada uma dessas opes usada para controlar diferentes aspectos do comportamento do comando tar. O c indica que estamos criando um arquivo, v indica que o comando deve ser executado no modo verbose (o que significa que cada nome de arquivo ser apresentado, medida que copiado no arquivamento) e f significa que estamos gerando um arquivo (em oposio a uma unidade de fita). comando tar copia todos os arquivos e subdiretrios de um diretrio e um arquivo, caso o diretrio faa parte da lista de arquivos. Assim, se temos um diretrio chamado vnc e queremos que todo o contedo desse diretrio seja copiado em um novo arquivo, chamado vnc.tar, podemos usar $ tar cvf vnc.tar vnc e obter o seguinte resultado: $ tar cvf vnc.tar vnc vnc/ vnc/license.txt vnc/readme vnc/classes/ vnc/classes/rfprrre.class Voc notar que a primeira linha indica a criao do diretrio vnc no arquivo e depois a cpia dos arquivos deste diretrio do arquivo .tar. Para ver o contedo de um arquivo .tar existente, substitumos a opo c por t.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

$ tar tvf vnc.tar Para extrair o contedo de um arquivo .tar no diretrio corrente, substitumos o c ou t por x: $ tar xvf vnc.tar

4.9 - Gzip
Embora o comando tar seja til para o armazenamento de arquivos, ele no realiza qualquer compactao nos exemplos anteriores. No Linux, a compactao obtida com o comando gzip. Ao contrrio dos arquivos ZIP do Windows, que compacta muitos arquivos em um nico arquivo compactado, o comando gzip compacta apenas arquivos individuais, sem compact-lo em um arquivo. Por exemplo, se temos um arquivo particularmente grande, chamado test.pdf , que no usaremos por algum tempo e queremos compact-lo para economizar espao em disco, usamos o comando gzip: $ gzip test.pdf Isso compactar o arquivo e incluir a extenso . gz no final do nome de arquivo, mudando o nome para test.pdf.gz. Para fazer a compresso mxima usamos a extenso 9. $ gzip 9 test.pdf Voc pode listar o contedo do arquivo compactado usando a extenso l. $ gzip l test.pdf Para descompactar um arquivo .gz, retornando o arquivo ao seu estado descompactado original, com o nome teste.pdf. $ gzip -d teste.pdf.gz Um comando alternativo, gunzip, elimina a necessidade de usar a opo d: $ gunzip test.pdf.gz 4.10 - Combinando gzip e tar As verses recentes de tar fornecem um mtodo para acessar diretamente e criar arquivos tar compactados com gzip. Apenas incluindo uma opo z em qualquer um dos comandos tar discutidos anteriormente, podemos criar um arquivo compactado sem a necessidade de um segundo comando. $ tar czvf vnc.tar.gz vnc (inclui todos os arquivos do diretrio e subdiretrios de vnc compactando-os automaticamente)
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

$ tar tzvf vnc.tar.gz vnc (apresenta o contedo de nosso arquivo text.tar.gz compactado) $ tar xzvf vnc.tar.gz vnc (extrai o contedo do arquivo).

4.11 - cp
Para copiar um arquivo (ThisFile) do diretrio corrente em um segundo arquivo (a ser chamado ThisFile-Acopy) $ cp ThisFile ThisFile-Acopy Se quisermos copiar ThisFile em /tmp, mas fornecer um nome diferente para o novo arquivo, podemos usar $ cp ThisFile /tmp/NewFileName Se voc desse o comando cp ThisFile NewFile o contedo de NewFile seria sobrescrito por uma cpia de ThisFile e seria perdido para sempre. Para evitar essa dificuldade, voc pode usar o flag i do comando cp, que obriga o sistema a confirmar quando qualquer arquivo for sobrescrito por uma cpia. Voc pode criar um alias para o comando cp executando o comando $ alias cp=cp i Se quisermos copiar um diretrio inteiro e todos os seus subdiretrios, podemos usar o flag R do comando cp. $ cp -R SomeDir /tmp Esse comando copia a totalidade do subdiretrio SomeDir para o diretrio /tmp criando o diretrio /tmp/Somedir. 4.12 - Cpia avanada Quando voc copia um arquivo, o arquivo resultante normalmente pertence a quem copiou, e no a quem criou o arquivo. Analogamente, quando um arquivo criado em um diretrio, ele possui um conjunto de permisses padro atribudas a ele. Ao copiar um arquivo, a cpia ter as permisses definidas de acordo com o padro do diretrio de destino, em vez de manter as permisses do arquivo original. Para mantermos os atributos originais usamos o flag p $ cp -p /tmp/TheFile . Normalmente, quando voc copia um vnculo simblico, o arquivo resultante uma cpia do arquivo apontado pelo vnculo para o mesmo arquivo. Lrwxrwxrwx 1 user2 users 2 Aps 5 13:10 TheFile - > OtherFile

Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Ento a execuo do comando cp $cp /tmp/TheFile home do usurio atual) ~/NewFile ( o ~ significa que voc ir fazer a cpia debaixo do diretrio

resultaria em um arquivo que seria uma cpia de OtherFile. Mas, e se quisssemos copiar o vnculo, em vez do prprio arquivo? Para isso o comando cp tem um flag para tratar dessa situao: o flag d, que indica a no-eliminao da referncia ao vnculo simblico. Poderamos simplesmente usar o comando $ cp d /tmp/TheFile ~/NewFile Dito isso, hora de reunir tudo. E se quisermos usar o comando cp para criar uma cpia de backup til de um diretrio existente e todos os seus subdiretrios? $ cp -pdR TheDirectory /backups/TheDirectory) /backups (cria uma cpia exata de TheDirectory no diretrio

Porm o comando cp fornece um modo simplificado para obter isso: o flag a. $ cp -a TheDirectory /backups

4.13 - rm
Este comando utilizado para apagar arquivos. importante lembrar que quando os arquivos so apagados, no sistema Unix, impossvel recuper-los. Sintaxe: rm (arquivo 1) (arquivo 2) ... (arquivo n) Onde (arquivo 1) at (arquivo n) so os arquivos a serem apagados. Se um arquivo no possuir permisso de escrita e a sada-padro for um terminal, todo o conjunto de permisses do arquivo ser exibido, seguido por um ponto de interrogao. um pedido de confirmao. Se a resposta comear com "y" ("yes" = sim), o arquivo ser apagado, caso contrrio ele ser mantido no sistema. Quando voc apaga um arquivo com o comando "rm", voc est apagando somente um link (ligao ou entrada) para um arquivo. Um arquivo somente ser apagado verdadeiramente do sistema quando ele no possuir mais nenhuma ligao para ele, isto , nenhum link referenciando-o. Geralmente, arquivos possuem somente um link, portanto o uso do comando "rm" ir apagar o(s) arquivo(s). No entanto, se um arquivo possuir muitos links, o uso de "rm" ir apagar somente uma ligao; neste caso, para apagar o arquivo, necessrio que voc apague todos os links para este arquivo. Voc pode verificar o nmero de links que um arquivo possui utilizando o comando ls, com a opo "-l". Opes:

Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

f - Remove todos os arquivos (mesmo se estiverem com proteo de escrita) em um diretrio sem pedir confirmao do usurio. i - Esta opo pedir uma confirmao do usurio antes de apagar o(s) arquivo(s) especificado(s). r - Opo recursiva para remover um diretrio e todo o seu contedo, incluindo quaisquer subdiretrios e seus arquivos. CUIDADO: diretrios e seus contedos removidos com o comando "rm -r" no podem ser recuperados. 4.14 - Excluindo diretrios inteiros Voc pode remover o diretrio inteiro usando o flag r $ rm -r tempInstall Quando voc est certo de que deseja excluir um diretrio inteiro, vai querer usar o flag f do comando rm. $ rm -rf tempInstall

4.15 - rmdir
utilizado para apaga diretrios vazios. Sintaxe: rmdir (diretrio 1) (diretrio 2) ... (diretrio n) Onde (diretrio 1) at (diretrio n) so os diretrios a serem apagados. O comando "rmdir" se recusa a apagar um diretrio inexistente, exibindo a mensagem: rmdir : (nome-do-diretrio) : No such file or directory Quando usar "rmdir", lembre-se que o seu diretrio de trabalho corrente no pode estar contido no(s) diretrio(s) a ser(em) apagado(s). Se voc tentar remover seu prprio diretrio corrente, ser exibida a seguinte mensagem: rmdir : . : Operation not permited Se o diretrio o qual voc deseja remover no estiver vazio, utilize o comando "cd" para acessar os arquivos dentro do diretrio, e ento remova estes arquivos utilizando o comando "rm". Opes: -p Permite aos usurios remover o diretrio e seu diretrio pai, o qual se torna vazio. Uma mensagem ser exibida na sada padro informando se o caminho ("path") inteiro foi removido ou se parte do caminho persiste por algum motivo. CUIDADO : diretrios removidos com o comando "rmdir" no podem ser recuperados!

4.16 - mv
Vamos comear considerando a operao bsica de movimentao:
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

$ mv FileOne /tmp possvel mover o arquivo para o diretrio /tmp e mudar o seu nome usando o seguinte comando: $ mv FileOne /tmp/NewFileName Usando esse conceito, voc pode renomear um arquivo. Basta mover um arquivo de seu nome existente para um novo nome no mesmo diretrio: $ mv FileOne NewFileName

Ao copiar arquivos, possvel mover vrios deles de uma vez, pois o comando mv pode aceitar mais de dois argumentos e o ltimo argumento servir como diretrio de destino da movimentao. $ mv *.bak *.tmp *.old /tmp

possvel mover diretrios inteiros com o comando mv, sem usar nenhum flag especial. Se houvesse um subdiretrio chamado TheDir no diretrio atual e quisssemos mov-lo de modo que ele se tornasse um subdiretrio sob /tmp, usaramos o comando mv exatamente como fizemos para arquivos: $ mv /Thedir /tmp Opes: b - Far uma cpia de segurana de arquivos que sero sobrepostos pela movimentao, caso j existam arquivos com aqueles nomes no volume de destino. u - Atualiza apenas os arquivos que tiverem data de atualizao anterior ao que est sendo movido sobre outro, j existente. Assim sendo, apenas os mais novos iro substituir as verses mais antigas.

4.17 - cat
Oficialmente usado para concatenar arquivos. Tambm usado para exibir todo o contedo de um arquivo de uma s vez, sem pausa. Sintaxe: cat < arquivo1 > < arquivo2 >... < arquivo n >, Onde (arquivo1) at (arquivo n) so os arquivos a serem mostrados. "cat" l cada arquivo em seqncia e exibe-o na sada padro. Deste modo , a linha de comando: cat < arquivo > Exibir o arquivo em seu terminal; e a linha de comando : cat < arquivo1 > < arquivo2 > > < arquivo3 >
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Concatenar "arquivo1" e "arquivo2", e escrever o resultado no arquivo 3 . O smbolo ">", usado para redirecionar a sada para um arquivo, tem carter destrutivo; em outras palavras, o comando acima escrever por cima do contedo de < arquivo3 >. Se, ao invs disto, voc redirecionar com o smbolo ">>", a sada ser adicionada a <arquivo3 >, ao invs de escrever por cima de seu contedo.

4.18 - chgrp
Modifica o grupo de um arquivo ou diretrio. Sintaxe: chgrp [-f] [-h] [-R] gid nome-do-arquivo "chgrp" modifica o identificador de grupo ("group ID", gid) dos arquivos passados como argumentos. "gid" pode ser um nmero decimal especificando o group id, ou um nome de grupo encontrado no arquivo "/etc/group". Voc deve ser o proprietrio do arquivo, ou o superusurio, para que possa utilizar este comando. Opes: -f Esta opo no reporta erros -h Se o arquivo for um link simblico, esta opo modifica o grupo do link simblico. Sem esta opo, o grupo do arquivo referenciado pelo link simblico modificado. - R Esta opo recursiva. "chgrp" percorre o diretrio e os subdiretrios, modificando o GID medida em que prossegue.

4.19 - chmod
Modifica as permisses de um arquivo ou diretrio. Voc deve ser o proprietrio de um arquivo ou diretrio, ou ter acesso ao root, para modificar as suas permisses. Sintaxe: chmod permisses nome_do_arquivo onde: permisses - indica as permisses a serem modificadas; nome - indica o nome do arquivo ou diretrio cujas permisses sero afetadas. As permisses podem ser especificadas de vrias maneiras. Aqui est uma das formas mais simples de realizarmos esta operao : 1 - Use uma ou mais letras indicando os usurios envolvidos: . u (para o usurio) . g (para o grupo) . o (para "outros") . a (para todas as categorias acima) 2 - Indique se as permisses sero adicionadas (+) ou removidas (-). 3 - Use uma ou mais letras indicando as permisses envolvidas : . r (para "read") (ler) . w (para "write") (escrever) . x (para "execute") (executar)

Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Exemplo : No exemplo a seguir, a permisso de escrita ("write") adicionada ao diretrio "dir1" para usurios pertencentes ao mesmo grupo. (Portanto, o argumento "permisses" g+w e o argumento "nome" dir1). $ ls -l dir1 drwxr-xr-x 3 dir1 1024 Feb 10 11:15 dir1 $ chmod g+w dir1 $ ls -l dir1 drwxrwxr-x 3 dir1 1024 Feb 10 11:17 dir1 Como voc pde verificar, o hfen (-) no conjunto de caracteres para grupo foi modificado para "w" como resultado deste comando. Quando voc cria um novo arquivo ou diretrio, o sistema associa permisses automaticamente. Geralmente, a configurao "default" (assumida) para os novos arquivos : -rw-r--r-e para novos diretrios : drwxr-xr-x

4.20 - chown
Modifica o proprietrio de um arquivo ou diretrio. Sintaxe: chown [-fhR] (proprietrio) (nome-do-arquivo) O argumento "proprietrio" especifica o novo proprietrio do arquivo. Este argumento deve ser ou um nmero decimal especificando o userid do usurio ou um "login name" encontrado no arquivo "/etc/passwd". Somente o proprietrio do arquivo (ou o superusurio) pode modificar o proprietrio deste arquivo. Opes: - f Esta opo no reporta erros. - h Se o arquivo for um link simblico, esta opo modifica o proprietrio do link simblico. Sem esta opo, o proprietrio do arquivo referenciado pelo link simblico modificado. - r Esta opo recursiva. "chown" percorre o diretrio e os subdiretrios, modificando as propriedades medida em que prossegue.

4.21 - du
Exibe o espao ocupado de um diretrio e de todos os seus subdiretrios, em blocos de 512 bytes; isto , unidades de 512 bytes ou caracteres. "du" mostra a utilizao do disco em cada subdiretrio.

4.22 - date
Exibe a data configurada no sistema.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

O comando "date", a nvel de usurio, exibe na tela a data configurada no sistema. Ele pode ser usado com opes que mostram a data local ou data universal GMT - Greenwich Mean Time. A configurao dos dados deste comando s podem se realizadas pelo super-usurio. Para exibir a data local, basta executar "date". Caso queira a data GMT utilize a opo "-u". $date Wed Jan 8 12:05:57 EDT 1997 Aqui a data exibida em 6 campos que representam o dia da semana abreviado, o ms do ano abreviado, o dia do ms, a hora disposta em horas/minutos/segundos, a zona horria e o ano. Podemos acertar a hora, usando o comando na seguinte forma: $date s 09:30 (formato hora:minuto) ou $date s 09/18 (formato mm/dd)

4.23 - file
Exibe o tipo de um arquivo. Alguns arquivos, tais como arquivos binrios e executveis, no podem ser visualizados na tela. O comando "file" pode ser til se voc no tem certeza sobre o tipo do arquivo. O uso do comando permitir a visualizao do tipo do arquivo. Exemplo : $file copyfile copyfile: ascii text

4.24 - init / telinit


o pai dos processos. O seu papel principal criar os processos a partir de programas armazenados no arquivo /etc/inittab. Este arquivo tem entradas que fazem com que o init inicie gettys em cada linha que os usurios podem usar para acessar o sistema. Ele controla ainda processos autnomos requeridos por qualquer sistema em particular. 4.24.1 - Nveis de execuo uma configurao de software do sistema que permite que um grupo selecionado de processos sejam inicializados. Os processos acionados por init para cada um dos nveis de execuo so definidos no arquivo /etc/inittab. Init pode estar em um dos oito nveis de execuo: 0-6 e S ou s. 4.24.2 - Iniciando Aps o init ser iniciado com o ltimo passo da sequencia de inicializao, ele procura pelo arquivo /etc/inittab e verifica se h alguma entrada para o tipo initdefault. A entrada initdefault define o nvel de execuo inicial do sistema. Caso no haja tal entrada, um nvel de execuo deve ser informado na console do sistema. 4.24.3 - Telinit /sbin/telinit um link simblico de /sbin/init. Ele recebe um argumento de um caracter e sinaliza ao init para executar a ao apropriada. Os seguintes argumentos servem como diretivas para telinit:
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

0,1,2,3,4,5 ou 6 - Dizem ao init para mudar o nvel de execuo. a,b,c - Dizem ao init para processar somente aquelas entradas no arquivo /etc/inittab que tenham os nveis de execuo a,b ou c. Q ou q - Dizem ao init para reexaminar o arquivo /etc/inittab. S ou s - Dizem ao init para entrar em modo monousurio.

4.25 - runlevel
Encontra o nvel de execuo anterior e o atual do sistema. # runlevel [utmp] O comando runlevel l o arquivo utmp do sistema (normalmente /var/run/utmp) para localizar o registro do nvel de execuo, mostrando o nvel de execuo anterior e o atual na sada padro, separado por um espao simples. Se no existir um nvel de execuo anterior, a letra N ser impressa em seu lugar.

4.26 - apropos
Procura em uma base de dados pela expresso informada. Este comando procura em uma base de dados de comandos do sistema por uma descrio curta mostrando o resultado na sada padro. Sua atualizao feita pelo comando makewhatis (/usr/bin). Exemplo: [root@guarani /tmp]# apropos gif giftopnm (1) - convert a GIF file into a portable anymap pppmtogif (1) - convert a portable pixmap into a GIF file Colour (3) - Colour manipulation routines for use with GIFgraph GIFgraph (3) - Graph Plotting Module for Perl 5

4.27 - type
Mostra a localizao de um arquivo. type Este comando mostra a localizao de um arquivo, atravs do caminho do sistema. [marisa@guarani log]$ type bash bash is /bin/bash

4.28 - diff
Compara dois arquivos em formato texto linha a linha. O comando diff procura encontrar o menor conjunto de diferenas entre as linhas dos arquivos, listando as que devem ser mudadas no primeiro arquivo para torn-lo idntico ao segundo. Exemplo: [marisa@guarani log]$ diff linguagens linguagens.old 2c2
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

< java - ainda vai ser boa um dia --> java - ainda vai ser uma boa linguagem um dia

4.29 - zip
Programa de compactao de arquivos. O zip um comando de compresso e empacotamento de arquivos. Ele anlogo combinao dos comandos tar e compress e compatvel com o pkzip e winzip das plataformas DOS/Windows. Exemplo: [marisa@guarani log]$ l previsao -rw-rw-r-- 1 marisa marisa 3274 jul 27 11:37 previsao [marisa@guarani log]$ zip previsao previsao adding: previsao (deflated 59%) [marisa@guarani log]$ l previsao* -rw-rw-r-- 1 marisa marisa 3274 jul 27 11:37 previsao -rw-rw-r-- 1 marisa marisa 1497 jul 27 11:44 previsao.zip

4.30 - sort
Ordena as linhas de arquivos texto. O comando sort ordena as linhas de um arquivo texto. Existem diversas opes de ordenamento: ascendente, descendente, por campo do arquivo, etc. Exemplo: [marisa@guarani log]$ ls l alunos -rw-rw-r-- 1 marisa marisa 3274 jul 27 11:37 alunos [marisa@guarani log]$ cat alunos linus alan bill eric [marisa@guarani log]$ sort alunos alan bill eric linus [marisa@guarani log]$ sort r alunos linus eric bill alan

4.31 - cut
Seleciona campos de uma tabela. cut
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

A entrada padro tratada como uma tabela. O comando seleciona colunas da tabela para serem removidas ou copiadas na sada padro. Exemplo: [marisa@guarani log]$ cat linguagens C - o assembler do passado Java ainda vai ser boa um dia Perl - existe mais de um jeito de fazer isso Php - pr processador html [marisa@guarani log]$ cut -c1-5 linguagens C - o Java Perl Php [marisa@guarani log]$ cut -d - -f 1 linguagens C Java Perl Php [marisa@guarani log]$ cut -d - -f 2 linguagens o assembler do passado ainda vai ser boa um dia existe mais de um jeito de fazer isso pr processador html

4.32 - tr
Converte ou remove caracteres. tr Este comando copia da entrada padro para a sada padro substituindo ou removendo os caracteres selecionados. Qualquer caractere de entrada encontrado em expr1 convertido para o caractere da posio correspondente em expr2. Exemplo: [marisa@guarani log]$ tr a-z A-Z < linguagens C - O ASSEMBLER DO PASSADO JAVA AINDA VAI SER BOA UM DIA PERL - EXISTE MAIS DE UM JEITO DE FAZER ISSO PHP - PR PROCESSADOR HTML

4.33 - Outros comandos


comm: Compara dois arquivos para determinar quais linhas so comuns entre eles. du: Relatrio no uso do sistema de arquivos. ed: Editor de texto. ex: Editor de texto. mail: Usado para receber ou enviar e-mail. nroff: Usado para formatar textos. tset: Escolher o tipo de terminal.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

umask: Permite que o usurio especifique uma nova criao de camuflagem. uniq: Compara dois arquivos. Procura e exibe em linhas o que e incomparvel em um arquivo. uucp: Execuo UNIX-para-UNIX wc: Exibe detalhes no tamanho do arquivo. write: Usado para mandar mensagens para outro usurio.

5 - Criando vnculos simblicos


Os vnculos simblicos (que so apenas ponteiros para um arquivo real em outra posio) so usados normalmente por administradores de sistema e projetistas de aplicativos. Usa-se o comando ln com o flag s para indicar um vnculo simblico. $ ln -s /bin/cp diretrio /bin/cp). MyCopy (cria um vnculo chamado MyCopy para acessar virtualmente o

who
Mostra quem est atualmente conectado no computador. Este comando lista os nomes de usurios que esto conectados em seu computador, o terminal e data da conexo. who [opes] onde: opes -H, --heading Mostra o cabealho das colunas. -i, -u, --idle Mostra o tempo que o usurio est parado em Horas:Minutos. -m, i am Mostra o nome do computador e usurio associado ao nome. equivalente a digitar who i am ou who am i. -q, --count Mostra o total de usurios conectados aos terminais. -T, -w, --mesg Mostra se o usurio pode receber mensagens via talk (conversao). + O usurio recebe mensagens via talk - O usurio no recebe mensagens via talk. ? No foi possvel determinar o dispositivo de terminal onde o usurio est conectado.

6 - Telnet
Permite acesso a um computador remoto. mostrada uma tela de acesso correspondente ao computador local onde deve ser feita a autenticao do usurio para entrar no sistema. Muito til, mas deve ser tomado cuidados ao disponibilizar este servio para evitar riscos de segurana. telnet [opes] [ip/dns] [porta] onde: ip/dns Endereo IP do computador de destino ou nome DNS. porta Porta onde ser feita a conexo. Por padro, a conexo feita na porta 23. opes
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

-8 Requisita uma operao binria de 8 bits. Isto fora a operao em modo binrio para envio e recebimento. Por padro, telnet no usa 8 bits. -a Tenta um login automtico, enviando o nome do usurio lido da varivel de ambiente USER. -d Ativa o modo de debug. -r Ativa a emulao de rlogin, -l [usurio] Faz a conexo usando [usurio] como nome de usurio. Exemplo: telnet 192.168.1.1, telnet 192.168.1.1 23.

7 - finger
Mostra detalhes sobre os usurios de um sistema. Algumas verses do finger possuem bugs e podem significar um risco para a segurana do sistema. recomendado desativar este servio na mquina local. finger [usurio] [usurio@host] Onde: usurio Nome do usurio que deseja obter detalhes do sistema. Se no for digitado o nome de usurio, o sistema mostra detalhes de todos os usurios conectados no momento. usurio@host Nome do usurio e endereo host do sistema que deseja obter detalhes. -l Mostra os detalhes de todos os usurios conectados no momento. Entre os detalhes, esto incluidos o nome do interpretador de comandos (shell) do usurio, diretrio home, nome do usurio, endereo, etc. -p No exibe o contedo dos arquivos .plan e .project Se for usado sem parmetros, mostra os dados de todos os usurios conectados atualmente ao seu sistema. Exemplo: finger, finger root.

8 - ftp
Permite a transferncia de arquivos do computador remoto/local e vice versa. O file transfer protocol o sistema de transmisso de arquivos mais usado na Internet. requerida a autenticao do usurio para que seja permitida a conexo. Muitos servidores ftp disponibilizam acesso annimo aos usurios, com acesso restrito. Uma vez conectado a um servidor ftp, voc pode usar a maioria dos comandos do Linux para operalo. ftp [ip/dns] Abaixo alguns dos comandos mais usados no FTP: ls Lista arquivos do diretrio atual. cd [diretrio] Entra em um diretrio get [arquivo] Copia um arquivo do servidor ftp para o computador local. O arquivo gravado, por padro, no diretrio onde o program ftp foi executado. mget [arquivos] Semelhante ao get, mas pode copiar diversos arquivos e permite o uso de curingas. send [arquivo] Envia um arquivo para o diretrio atual do servidor FTP (voc precisa de uma conta com acesso a gravao para fazer isto). prompt [on/off] Ativa ou desativa a pergunta para a cpia de arquivo. Se estiver como off assume sim para qualquer pergunta.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Exemplo: ftp ftp.br.debian.org.

9 - whoami
Mostra o nome que usou para se conectar ao sistema. til quando voc usa vrias contas e no sabe com qual nome entrou no sistema ;-) whoiam

10 - dnsdomainname
Mostra o nome do domnio de seu sistema.

11 - hostname
Mostra ou muda o nome de seu computador na rede.

12 - talk
Inicia conversa com outro usurio. Talk um programa de conversao em tempo real onde uma pessoa v o que a outra escreve. talk [usurio] [tty] ou talk [usurio@host] Onde: usurio Nome de login do usurio que deseja iniciar a conversao. Este nome pode ser obtido com o comando who visto acima. tty O nome de terminal onde o usurio est conectado, para iniciar uma conexo local. usurio@host Se o usurio que deseja conversar estiver conectado em um computador remoto, voc deve usar o nome do usurio@hosname do computador. Aps o talk ser iniciado, ele verificar se o usurio pode receber mensagens, em caso positivo, ele enviar uma mensagem ao usurio dizendo como responder ao seu pedido de conversa. Voc deve autorizar o recebimento de talks de outros usurios para que eles possam se comunicar com voc.

13 - Administrao Geral do Sistema


O gerenciamento de usurios de qualquer sistema Linux fundamental, desde um servidor de rede at um computador pessoal compartilhado. Isso vai desde a criao de novas contas de usurio at a mudana de senhas de usurio. O acesso dos usurios aos recursos do sistema ser governado de acordo com cada usurio e com cada grupo, onde um grupo consiste em vrios usurios associados em uma entidade organizacional comum, com um nome nico. Outro item administrativo fundamental a automao de tarefas, tanto na inicializao como nas tarefas programadas. O Linux oferece sofisticados recursos de log, que tornam possvel saber exatamente o que est ocorrendo em seu sistema.

13.1 - Gerenciamento de usurios


Criao de usurios
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

feita atravs do useradd ou adduser. # adduser usurio1 Esse comando cria o usurio executando as seguintes aes: Criao de uma entrada para o usurio no arquivo /etc/passwd sem uma senha. Atribuio de uma ID para o usurio. Geralmente, essa a prxima ID de usurio disponvel, em ordem numrica. No rede Hat, o padro usar o menor nmero maior do que 500, que seja maior do que as IDs de todos os usurios. Incluso do usurio no grupo apropriado. No Red Hat, isso significa criar um grupo para o usurio, ao qual apenas esse usurio pertence. Em outras distribuies Linux, todos os usurios podem pertencer ao mesmo grupo por padro. Criao de um diretrio de base para o usurio (em /home/usurio1, na maioria dos sistemas Linux) e cpia do contedo de /etc/skel no diretrio de base. Para adicionar um usurio modificando seu ID usa-se o flag u: # adduser -u 10001 usurio1 E voc quer impor a atribuio de um grupo em particular para o usurio use o flag g: # adduser -g users usurio1 Considere agora que o usurio1 pertena aos grupos group1 e group2, alm do grupo padro users. O comando adduser oferece o flag G, que permite a especificao de grupos adicionais para que se inclua o novo usurio, quando a conta for criada: # adduser g users -G group1,group2 usurio1 Para especificar um diretrio de base alternativo para um usurio, utilize o flag d: # adduser -d /other/home/directory usurio1 Mudando os padres de Useradd Existem alguns padres usados por useradd que talvez voc queira anular sempre que criar um usurio. Por exemplo, talvez queira que todos os diretrios de base sejam criados em /users, em vez de /home. Esses padres podem ser redefinidos usando-se o flag D do comando useradd e vrios flags suplementares. O flag D indica que o comando no deve criar um novo usurio, mas sim atribuir novos padres. # useradd -D -b /users (Defini o path do diretrio de base padro como /users) # useradd -D -g /users (Defini o grupo padro de todos os novos usurios como /users) Removendo usurios
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

A excluso de usurios um processo paralelo incluso de usurios: voc usa o comando userdel. # userdel usurio1 O problema que os arquivos do usurio no so excludos. Para excluir o diretrio de base do usurio simultaneamente, fornea o flag r : # userdel -r usurio1 E se o usurio possusse arquivos em outra parte do sistema que precisam ser excludos? Isso pode ser feito usando-se o comando find, depois da excluso do usurio. Para fazer isso, tome nota da ID do usurio a partir do arquivo de senha, antes de exclu-lo, e depois use o comando find: # find / -type f -uid 503 -print -exec rm {} \ ou

O type f indica que o comando deve procurar apenas arquivos; -uid 503 indica que apenas os arquivos pertencentes ao usurio com ID 503 devem ser retornados (esse nmero deve ser substitudo pela ID do usurio que voc est excluindo); -exec rm {} \; indica que o comando rm deve ser executado em cada arquivo encontrado, removendo os arquivos efetivamente. Mudando senhas A mudana de senhas feita com o comando passwd. Qualquer usurio pode mudar sua senha simplesmente digitando o comando no prompt. Em muitas verses de Linux, o comando passwd verifica se uma senha curta demais, simples demais, semelhante demais ao nome de usurio ou semelhante demais senha anterior. O usurio-root tem o poder de mudar a senha de qualquer usurio fornecendo o nome de usurio como argumento para o programa passwd.

13.2 - Configurando diretrio de base padro


Quando a conta do usurio criada, seu diretrio de base criado e populado com um conjunto de arquivos padro. Esse conjunto de arquivos padro copiado do diretrio /etc/skel, que contm o diretrio de esqueleto para novos diretrios de base. Para incluir um arquivo em cada novo diretrio de base, basta criar o arquivo e coloc-lo em /etc/skel, com o mesmo nome que voc deseja que ele tenha nos diretrios de base dos usurios. Todos os usurios includos depois que voc colocar o arquivo l encontraro esse arquivo em seus diretrios de base quando suas contas forem criadas.

13.3 - Gerenciando grupos


Criando grupos Voc pode incluir novos grupos em seu sistema usando o comando groupadd (esse comando se chama addgroup em algumas distribuies) # groupadd groupname

Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

O grupo ser criado e receber um novo nmero de usurio de acordo com a seguinte regra: o padro usar o menor valor de ID que seja maior do que 500 e maior do que qualquer outro grupo. Se voc quiser especificar o nmero do grupo, basta usar o flag g para indicar o nmero: # groupadd -g 503 groupname Incluindo usurios em grupos No existe um programa padro disponvel para se incluir facilmente usurios em um grupo. O modo mais fcil editar diretamente o arquivo /etc/group. Cada linha desse arquivo representa a definio de um grupo e assume a forma groupname:password:groupid:userlist Ex.: group1::505:user1,user2,user3 Normalmente as senhas no so aplicadas aos grupos, de modo que normalmente isso fica em branco. O groupid o ID numrica do grupo e deve ser nica para ela. Se quiser incluir usurios em um grupo existente, basta editar o arquivo /etc/group com seu editor de textos predileto e incluir os nomes dos usurios no final da lista, separando cada usurio com uma vrgula. Excluindo grupos A excluso de grupos feita com o comando groupdel. # groupdel groupname Contudo, toda essa simplicidade traz alguns inconvenientes: Os arquivos pertencentes ao grupo no sero excludos ou mudaro de grupo. Se o grupo serve como grupo principal de um usurio (em outras palavras, indicado como grupo do usurio no arquivo de senha), ento ele no ser excludo. Para resolver essa questo, devemos primeiramente anotar a ID do grupo que estamos excluindo (isso pode ser encontrado no arquivo /etc/group). Quando o grupo for excludo com groupdel, podemos usar o comando find para mudar a posse de grupo de todos os arquivos pertencentes ao grupo excludo: # find / -type f -gid 503 -print -exec chgrp newgroupname { } \;

13.4 - Checando a consistncia de sistema de arquivos


O que acontece quando o Sistema de arquivos est com problemas? Toda vez que o Linux iniciado, um programa chamado fsck iniciado tambm. Esse programa analisa e conserta qualquer problema no seu sistema de arquivos. Por esse motivo, os usurios Linux no tm com que se preocupar (aqui no ocorre fragmentao de arquivos como no DOS). Somente em casos mais srios, como falhas de hardware ou interrupes bruscas, pode haver danos. Nesses casos, o fsck
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

pra na inicializao e pede interveno do administrador. Esse programa pode verificar mltiplos sistemas de arquivos usando paralelismo. Durante a inicializao, esse programa verifica todos os sistemas de arquivos, Caso ocorra um erro, o usurio administrador recebe um prompt, entra no sistema e digita fsck com algumas opes, geralmente a, que realiza reparos automaticamente. Lembre-se que realizar reparos em sistemas de arquivos montados pode causar problemas.

13.5 - Inicializao do sistema


As mensagens de inicializao so salvas no arquivo de log de sistema /var/log/messages. O que acontece durante a inicializao Existem dois estgios no processo de inicializao: 1 - Inicializao do kernel. Durante essa fase, o Kernel carregado na memria e imprime mensagens medida que inicializa cada driver de dispositivo. 2 - Execuo do programa init. Esse programa manipula a ativao de todos os programas, incluindo daemons de sistema essenciais e outro software especificado para ser carregado no momento da inicializao. O programa Init Aqui voc pode personalizar facilmente quais programas so carregados durante o ciclo de inicializao. O Linux tem um sistema de nveis de execuo. Um nvel de execuo um nmero que identifica o estado atual do sistema e quais processos o init deve executar e manter em execuo nesse estado do sistema. No arquivo /etc/inittab, a primeira entrada especifica o nvel de execuo padro que carregado durante a inicializao. id:3:initdefault: (nvel de execuo 3) Assim, para o nvel de execuo 3, as seguintes linhas so relevantes: 13:3:wait:/etc/rc.d/rc 3 1:12345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 As ltimas seis linhas configuram os seis consoles virtuais fornecidos no Linux. A primeira linha executa o script de inicializao /etc/rc.d/rc 3. Isso executar todos os scripts contidos no diretrio /etc/rc.d/rc3.d. Esses scripts representam programas que precisam ser iniciados na inicializao do sistema, como sendmail, servios PCMCIA, o daemon de impressora e crond. Daemons - So processos servidores, inicialmente inicializados durante o boot, que rodam continuamente enquanto o sistema estiver ativo, esperando, em background, at que um processo
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

requisite seus servios. Por exemplo, network daemons em estado idle at que um processo requisite servios de rede. O ltimo script a ser executado ser o AS99local. Esse script , na verdade, um vnculo para o arquivo /etc/rc.d/rc.local; aqui que voc pode colocar todos os programas de inicializao personalizada que quiser ativar no momento da inicializao.

13.6 - Programando tarefas com crond


O crond um daemon que geralmente instalado para iniciar sempre que o sistema for inicializado. Quando ele inicia ativado a cada minuto e verifica se alguma tarefa foi programada para executar durante esse minuto. Todas as tarefas programadas so armazenadas em um arquivo de configurao individual (conhecido como arquivo crontab) do usurio, com cada linha representando uma tarefa programada. Cada entrada tem a forma time-date command A entrada time-date consiste em cinco campos numricos, cada um separado por espaos, que indicam quando uma tarefa deve ser executada. Os cinco campos em ordem, so: Minute: De 0 a 59. Hour: De 0 a 23. Day of month: De 0 a 31. Month: De 0 a 12. Day os week: De 0 a 7, onde 0 e 7 representam domingo.

Para todos esses campos, vrias regras proporcionam flexibilidade: Intervalos de nmeros podem ser usados (Ex.: 1 3 no campo horas diz para programar o comando para 1:00, 2:00 e 3:00 da manh. 2 4 no campo de dia da semana programa a tarefa para tera, quarta e quinta-feira. O campo command s vezes, os comandos (como o mail) exigem que informaes sejam introduzidas atravs da entrada padro. Isso feito usando-se sinais de porcentagem (%). O primeiro sinal de porcentagem marca o incio da entrada padro e cada sinal subsequente serve como um caractere de nova linha nessa entrada. 30 14 * * fri /bin/mail -s TGIF arna@lala.edu %Bom dia!!!!%% Tudo Bem??? Isso enviar a seguinte mensagem de correio eletrnico: Bom bia!!! Tudo bem???
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Carregando entradas de um arquivo Par carregar entradas de um arquivo, primeiro necessrio criar um arquivo que contenha todas as entradas que voc queira que apaream em seu arquivo crontab. Um exemplo de arquivo poderia conter duas entradas: 0 1 * * * /usr/local/bin/backup 30 14 * * fri /bin/mail -s TGIF arna@lala.edu %Bom dia!!!! %% Tudo Bem??? Esses arquivo precisa ser salvo com um nome conveniente, como cronjobs. Uma vez criado e salvo o arquivo, ele pode ser carregado no arquivo crontab de um usurio, executando-se o comando: $ crontab cronjobs O contedo de cronjobs sobrescrever todas as entradas correntes do arquivo crontab do usurio. Usando o flag u, o usurio-root pode especificar que o arquivo crontab de outro usurio, em vez do seu prprio, deve ser alterado. $ crontab -u username cronjobs Carregando arquivos crontab diretamente Em vez de criar um arquivo separado e carreg-lo no arquivo crontab, o comando crontab fornece o flag e, que permite ao usurio editar o arquivo crontab diretamente. $ crontab e Assim como aconteceu quando carregamos um arquivo no arquivo crontab, usando o flag u, o usurio-root pode editar diretamente o arquivo crontab de outro usurio: $ crontab -u username -e

Vendo o contedo do arquivo crontab Para ver o contedo do arquivo crontab, basta usar o flag -l $ crontab -l Assim como na edio do arquivo crontab, o usurio-root pode ver o contedo do arquivo crontab de qualquer usurio com o flag -u: # crontab -u username -l Removendo o arquivo crontab Para apagar o contedo do arquivo crontab de um usurio, ele pode usar o flag r:
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

# crontab -r Analogamente, o usurio-root pode apagar o arquivo crontab de qualquer usurio com o flag u: # crontab -u username -r

14 - O sistema de janelas X
Desenvolvido no MIT (Massachussets Institute of Technology) nos anos 80, e atualmente na verso 11, release 6, abreviado como X11R6, o sistema de janelas X (X Window System), foi a base para a apario de todos os outros sistemas de janelas da atualidade. Os seus conceitos de janelas, cones, botes, decoraes (bordas das janelas), como forma de controlar aplicaes executadas num determinado sistema, transformou-se na metfora mais empregada em toda a indstria, com o uso do mouse substituindo o teclado na manipulao de propriedades e adicionando uma idia de terceira dimenso na visualizao dos processos. O X11 funciona com um modelo cliente-servidor, de forma inteiramente independente do sistema operativo.
So os clientes.

Aplicaes

As Interfaces grficas fornece menus, bordas de janela ou mecanismos para mover, alternar, minimizar ou maximizar janelas. Ambiente Desktop: KDE e GNOME.
Gerenciadores de janelas : enlightenment, AfterStep, AnotherLevel, fvwm, fvwm2, WindowMaker, ICEwm.

Interfaces Grficas Windows managers / Desktop Environment

X11 (X Windows System)

uma coleo de protocolos para permitir a comunicao entre o servidor e clientes.

Servidor X

Define a exibio grfica (isto , resoluo, taxa de atualizao e intensidade de cor), apresenta janelas e controla movimentos de mouse, pressionamento de tecla e vrias janelas. uma espcie de driver. Ele pode ser executado localmente (onde roda os programas) ou remotamente.

Hardware
O Servidor depende do hardware.

O X11 apenas uma coleo de protocolos para determinar como sero essa comunicao entre os servidores e os clientes. Um servidor pode ser executado localmente, na mesma mquina aonde esto o programa (cliente), ou de forma remota, via vrios protocolos de transporte, que na realidade no fazem parte do sistema X.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Somente o servidor precisa ser dependente do hardware, os clientes (programas) no precisam ter qualquer conhecimento implcito ou explcito da arquitetura que esto a ser utilizada, mas somente dos protocolos, que so apresentados na forma duma API (Aplicativo Programming Interface) conhecida como Xlib.

Aplicativo e Servidor

O servidor pode estar na mesma mquina que executado o aplicativo.

Aplicativo

Os aplicativos podem estar em diferentes servidores e mquinas em uma rede.

Os aplicativos podem ser visualizados em terminais ou estaes de trabalho X Windows.


a camada de Interface do usurio. Fornece menus, bordas de janela ou mecanismos para mover, alternar, minimizar ou maximizar janelas. Desktop Environment: KDE e GNOME. Gerenciadores de janelas : enli-

Em um sistema X Windows, dois aplicativos devem ser executados para fornecer uma interface grfica de usurio completa. Windows managers / Desktop Environment

Servidor X

a camada de janelas bsica. Define a exibio grfica (isto , resoluo, taxa de atualizao e intensidade de cor), apresenta janelas e controla movimentos de mouse, pressionamento de tecla e

Para manipular melhor o ambiente grfico, temos os Windows managers (gerenciadores de janelas) e ambientes desktops, que so simplesmente clientes, como qualquer programa. Existem inmeras opes de gerenciadores de janelas (Windows managers) em Linux, como por exemplo, para citar alguns mais populares enlightenment, AfterStep, AnotherLevel, fvwm, fvwm2, WindowMaker, ICEwm. Os dois ambientes de desktop que se destacam so: KDE e GNOME. Cada um destes apresenta uma distinta forma de apresentar e tratar todos os outros programas, para iconizar, esconder as janelas indesejveis formando "desktops virtuais", apresentar decoraes como barras com botes de controle, ou diversas metforas de controle como drag-and-drop.
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Para a compatibilidade ser mantida entre as aplicaes nestes diversos ambientes, existe uma padronizao descrita no documento ICCCM (Inter-Client Communications Conventios Manual). Sem os gerenciadores de janelas, as aplicaes ficariam sem as decoraes, quando muito com um background, que colocado independentemente por programas como xsetroot, xv, ou xli, para citar alguns.

14.1 - Servidores X
O servidor X o ncleo do sistema X Windows. O servidor X manipula vrias tarefas: Suporte a uma variedade de placas de vdeo e tipos de monitor Resoluo, taxa de atualizao e intensidade de cor da tela do X Windows. Gerenciamento de janela bsico: apresentao e fechamento de janelas, controle de movimentos do mouse e pressionamento de tecla. No mundo Linux, existem trs opes: XFree86 - o servidor padro de quase toda distribuio no-comercial de Linux. O cdigofonte completo est disponvel. Metro-X Accelerated-X

14.2 - Gerenciadores de janela


Preenchem os refinamentos da interface grfica do usurio, GUI, no fornecidos pelos servidores X. Entre outros recursos, os gerenciadores de janelas incluem decoraes de janela (que fornecem os meios para redimensionar, mover, fechar e minimizar janelas) e mecanismos para iniciar aplicativos (como menus de rea de trabalho, painis de controle e barras de boto).

14.3 - Ambientes Desktop


So mais do que simples gerenciadores de janelas. Os ambientes desktop pretendem fornecer uma GUI completa e coesa. H diferentes ambientes desktop para o Linux que proporcionam GUIs robustas e integradas e proporcionam uma plataforma para desenvolvedores de aplicativos criarem software com uma aparncia comum e inclurem caractersticas de integrao como arrastar-e-soltar. Dois desses ambientes esto emergindo como concorrentes para o verdadeiro padro de ambiente desktop Linux: K Desktop Environment ou KDE mais do que um gerenciador de janelas, embora haja um gerenciador de janelas em seu ncleo. O KDE uma tentativa de fornecer uma alternativa gratuita ao Common Desktop Environment. Nesse esforo, o KDE combina um conjunto de aplicativos, como um gerenciador de arquivos, emulador de terminal e sistema de configurao de vdeo, junto com um gerenciador de janelas, para criar uma aparncia e comportamento coerente para os aplicativos X.

Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

Desktop Environment Windows managers

KDE

Servidor X (Ex. XFree86) GNOME Diferentemente do KDE, que inclui um gerenciador interno de janelas, o GNOME um gerenciador de janelas independente. Ele proporciona uma interface de programao que permite aos desenvolvedores de gerenciadores de janelas integrar suporte total para o GNOME em seu gerenciador de janelas. Por exemplo, o Red Hat Linux 6.0 vem o GNOME como ambiente desktop padro usando o gerenciador de janelas Enlightenment. Desktop Environment = GNOME

Windows managers = Enlightenment

Servidor X (Ex. XFree86)

Concluso: Como observamos, nos sistemas operacionais Unix fazendo uso do modo texto, o usurio tem pleno controle sobre o mesmo podendo criar, alterar, incrementar de livre e espontnea vontade sem ter a necessidade de pagar pelo uso ou personalizao. Foram essas caractersticas que fizeram e tm feito do Linux o sistema Operacional cada vez mais usado em reparties pblicas. J em modo grfico, ele se assemelha muito com o Microsoft Windows. Essa semelhana no foi por acaso, a ideia foi criar uma interface grfica o mais parecido com o Windows possvel para amenizar assim, a resistncia na migrao do usurio do Windows para uma distribuio Linux qualquer que um software gratuito e livre, ao contrrio do Windows que deve ser comprada uma licena para uso. Esperamos ter atingido o objetivo desse material que o esclarecimento acerca dos Sistemas Operacionais Unix. Criao e Adaptao: Cristiano Alencar contato@cristianoalencar.com.br. Referncia: Este material foi baseado em artigos encontrados na internet nos sites http://www.guiafoca.org/, http://www.vivaolinux.com.br/artigo/Guia-Introdutorio-do-Linux/ e http://www.uniriotec.br/~morganna/guia/introd_guia.html#inicio entre outros, elaborado pela Cristiano Alencar Informtica Profissional & Treinamento Pessoal e segue os termos e condies da
Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Apostila Linux

licena GNU Free Documentation License verso 1.1 ou superior publicada pela Free Software Foundation. Todos esto autorizados a copiar, modificar e reproduzir em todo ou em parte seu contedo, desde que os trabalhos dele derivados garantam a todos os seus leitores esse mesmo direito e que as referncias aos seus autores sejam mantidas. A licena sob a qual este material distribudo pode ser lida na ntegra em: http://www.fsf.org/copyleft/fdl.html Para maiores informaes a respeito de softwares livres, visite o site Internet da Free Software Foundation: http://www.fsf.org/philosophy/philosophy.pt.html.

Cristiano Alencar www.cristianoalencar.com.br contato@cristianoalencar.com.br

Potrebbero piacerti anche