rubem e ferreira

Upload: mauricio-pacheco

Post on 10-Jul-2015

758 views

Category:

Documents


38 download

TRANSCRIPT

LinuxGuia do Administrador do Sistema

Rubem E. Ferreira

Novatec Editora Ltda.www.novateceditora.com.br

1O incio de tudoEntre os vrios sistemas operacionais existentes, o Unix um exemplo de maturidade e eficincia. Durante mais de trinta anos tem sido utilizado universalmente nas mais diversas aplicaes e plataformas de hardware, e continua ainda a ser um sistema operacional poderoso, moderno e atual, em meio a um cenrio de rpidas mudanas tecnolgicas, tanto em hardware como em software. Ao longo dos anos, vrias verses do Unix surgiram, tanto comerciais como Solaris, IRIX, HP-UX, AIX, e livres, como FreeBSD e Linux, sendo o Linux o objeto deste livro. O Linux bem mais acessvel que os Unix comerciais. Na essncia, utilizar o Linux praticamente o mesmo que utilizar os Unix comerciais, o que garante que, uma vez aprendendo a utilizar o Linux, e eventualmente precisando utilizar um Unix comercial, pode-se realizar essa tarefa facilmente.

O UnixO Unix um sistema operacional multitarefa e multiusurio, disponvel para diversas plataformas de hardware. O Unix foi criado no final da dcada de 1960 e incio da de 1970, em uma poca em que os computadores eram grandes, caros e de difcil acesso a pessoas comuns. Havia poucos computadores e vrios pesquisadores necessitando dos recursos destes para poderem dar andamento aos seus trabalhos, e os sistemas operacionais da poca no satisfaziam s necessidades desses profissionais. Era, ento, imprescindvel desenvolver um sistema operacional multiusurio, multitarefa, que pudesse ser convertido para diferentes plataformas de hardware. O Unix um sistema operacional multiusurio, pois permite que vrios usurios utilizem o mesmo computador ao mesmo tempo, por meio de terminais remotos, e tambm um sistema operacional multitarefa, pois permite que vrios programas sejam executados simultaneamente. Alm disso, o Unix apresenta uma vasta gama de possibilidades relacionadas rede, como sistema de cota de disco, FTP, e-mail, WWW, DNS, possibilidade de diferentes nveis de acesso, de executar programas em background etc.

21

Linux Guia do Administrador do SistemaInicialmente o Unix foi escrito em linguagem Assembly, que varia muito de um computador para outro. A necessidade de converter o Unix para diversas plataformas de hardware levou criao de uma linguagem de programao na qual qualquer programa pudesse ser convertido facilmente, com pouca ou nenhuma alterao, para qualquer uma das plataformas. Essa linguagem foi denominada C, que mesmo nos dias de hoje, continua moderna e poderosa. Logo o Unix foi reescrito em C e convertido para as mais diversas plataformas de hardware, sendo executado atualmente tanto em computadores de bolso como em supercomputadores. No incio, o Unix era distribudo gratuitamente pela AT&T (empresa que o desenvolveu) para as universidades. Mais tarde, porm, percebendo o sucesso do Unix no meio comercial, a AT&T logo passou a disponibiliz-lo por um preo muito alto. Logo em seguida, departamentos de cincia da computao de diversas universidades no mundo inteiro comearam a desenvolver programas comerciais para o Unix, criando um grande nmero de usurios e desenvolvedores de utilitrios e programas. Entre os vrios pesquisadores que desenvolveram o Unix, destaca-se o grupo da Universidade da Califrnia, em Berkeley, que em 1975 licenciou a verso 6 da AT&T, fez diversos aprimoramentos e relanou-o como Unix BSD. Conseqentemente, os dois maiores centros de desenvolvimento do Unix so a AT&T e Berkeley. Com o advento das workstations (estaes de trabalho) na dcada de 1980, surgiram muitas verses comerciais do Unix, como Sun OS e Solaris, da Sun Microsystems, AIX, da IBM, OSF/1 (hoje chamado Digital Unix), da Digital, IRIX, da Silicon Graphics, e HP-UX, da Hewlett Packard. Todas essas verses so baseadas nas verses da AT&T e de Berkeley, freqentemente com muitos cruzamentos e acrscimos, resultando em uma confuso de verses do Unix; porm, em 1990, o IEEE (Instituto de Engenheiros Eltricos e Eletrnicos) comeou a desenvolver o padro POSIX (Portable Operating System Interface Unix) para uniformizar as caractersticas dos sistemas Unix. At meados da dcada de 1980, o Unix ainda no possua uma interface grfica prpria. Porm, com o advento do X Window System (sistema de janelas X), desenvolvidor pelo MIT (Massachusets Institute of Technology), ele passou a dispor de um sistema grfico do tipo clienteservidor e independente da arquitetura do computador. Em 1988, o controle do X Window System foi passado para o X Consortium (Consrcio X), organizao sem fins lucrativos criada para garantir a evoluo do X.

Cronologia do UnixAno1969 1970 1971 1973 1974

EventoKen Thompson cria o Unix, executado em um PDP-7 da DEC. Thompson e Dennis Ritchie instalam o Unix em um PDP-11/20 da DEC. Ritchie cria a linguagem C para ser portvel em arquiteturas de hardware diferentes. lanada a verso 1 do Unix, escrita em linguagem Assembly. Ritchie e Thompson escrevem o primeiro compilador C para o Unix. A verso 4 do Unix escrita em linguagem C. A AT&T autoriza a distribuio do cdigo-fonte do Unix para as universidades.

22

Captulo 1 O incio de tudoAno1975 1978 1979 1983 1984 1986 1987 1988 1990 1992 1994 1996

Evento (continuao) lanada a verso 6 do Unix. Sua distribuio ampla nas universidades. A Universidade da Califrnia, em Berkeley, comea a trabalhar no BSD Unix. lanada a verso 7 do Unix. So necessrias taxas de licena. A AT&T lana o Unix System III. A AT&T lana o Unix System V. A Universidade da Califrnia, em Berkeley, lana o BSD Unix 4.2 (a Sun o utiliza como base para a criao do SunOS). O servidor de janelas X Window comea a ser desenvolvido no MIT. Primeira implementao comercial do X Window, executado no VAXstation-II/GPX, o X10R3. A AT&T lana o Unix System V release 3. lanado o BSD 4.3. A Sun e a AT&T concordam em fundir o BSD Unix e o Unix System V. Criao do X Consortium (Consrcio X), organizao aberta para garantir a evoluo do X. lanado o X11R3. A AT&T lana o Unix System V release 4, que promove relativa unificao do BSD Unix e do Unix System V. O Minix colocado disposio na Internet. A Sun lana o Solaris, baseado no Unix System V release 4. lanado o Linux 0.99pl5. lanada a verso livre do X Window, o XFree86, pelo grupo XFree Project. A Microsoft lana o Windows NT 3.5. A Microsoft lana o Windows NT 4.0.

1992/ 1993 lanada a primeira distribuio do Linux em um CD-ROM (Yggdrasil).

O LinuxO Linux um clone de Unix criado como uma alternativa barata e funcional para quem no est disposto a pagar o alto preo de um sistema Unix comercial ou no tem um computador suficientemente rpido. Em 1983, Richard Stallman fundou a Free Software Foundation (Fundao de Software Livre), cujo projeto, GNU, tinha por finalidade criar um clone melhorado e livre do sistema operacional Unix, mas que no utilizasse seu cdigo-fonte. O desafio do GNU era enorme. Havia a necessidade de desenvolver o kernel (ncleo do sistema operacional que controla o hardware), utilitrios de programao, de administrao do sistema, de rede, comandos-padro etc. Porm, no final da dcade de 1980, o projeto tinha fracassado: apenas os utilitrios de programao e os comandos-padro estavam prontos, e o kernel, no. Nessa mesma poca, vrios esforos independentes para desenvolver clones do Unix estavam em andamento. O Dr. Andrew Tanenbaum desenvolveu o Minix como instrumento de ensino, baseando-se no microprocessador Intel 8086, por estar amplamente disponvel e barato. O Minix era til no ensino dos princpios estruturais dos sistemas operacionais. Entretanto, o 8086 no dispunha de memria virtual ou de memria protegida e s endereava 1MB de cada vez. Isso era uma enorme barreira para um sistema operacional moderno, multitarefa. Por isso, desde seu incio, o Minix estava limitado a ser um instrumento de ensino. Linus Benedict Torvalds era aluno da Universidade de Helsinque, na Finlndia, no final da dcada de1980. Ele percebeu que o Intel 80386 era o nico microprocessador disponvel na poca capaz de executar um clone do Unix. Alm disso, ainda que o 80386 no fosse barato, ele era o nico disponvel. A sua opo por esse microprocessador foi uma escolha correta, pois garantiu a ele, posteriormente, o grande nmero de voluntrios que tornou o desenvolvimento do Linux vivel at hoje.

23

Linux Guia do Administrador do SistemaLinus B. T. estava disposto a construir um kernel clone do Unix que possusse memria virtual, multitarefa preemptiva e capacidade de multiusurios. Era um trabalho gigantesco e, na prtica, impossvel para apenas uma pessoa conclu-lo, ainda que estivesse familiarizada com as complexidades dos sistemas operacionais. Na primavera de 1991, Linus B. T. iniciou seu projeto particular, inspirado no seu interesse pelo Minix. Ele limitou-se a criar, em suas prprias palavras, um Minix melhor que o Minix. E depois de algum tempo de trabalho em seu projeto solitrio, conseguiu criar um kernel capaz de executar os utilitrios de programao e os comandos-padro do Unix clonados pelo projeto GNU. Reconhecendo que no conseguiria continuar a desenvolver sozinho o Linux, ele enviou a seguinte mensagem (desafio) para a lista de discusso comp.os.minix: "Voc suspira por melhores dias do Minix-1.1, quando homens sero homens e escrevero seus prprios device drivers? Voc est sem um bom projeto e est morrendo por colocar as mos em um S.O. no qual voc possa modificar de acordo com suas necessidades? Voc est achando frustrante quando tudo trabalha em Minix? Chega de atravessar noites para obter programas que trabalhem correto? Ento esta mensagem pode ser exatamente para voc. Como eu mencionei h um ms, estou trabalhando em uma verso independente de um S.O. similar ao Minix para computadores AT-386. Ele est, finalmente, prximo do estgio em que poder ser utilizado (embora possa no ser o que voc esteja esperando), e eu estou disposto a colocar as fontes para ampla distribuio. Ele est na verso 0.02... contudo, eu tive xito rodando bash, gcc, gnu-make, gnu-sed, compresso etc. nele". Em 5 de outubro de 1991, Linus Torvalds lanou a primeira verso oficial do Linux: o Linux 0.02. A partir dessa data, muitos programadores no mundo inteiro tm colaborado e ajudado a fazer do Linux o sistema operacional que atualmente.

Cronologia do LinuxAno1969 1974 1983 1984 1988 1990 1991 1992 1993 1994

EventoCriao do Unix na AT&T. O Unix distribudo para as universidades. montado o cenrio para o surgimento em todo o mundo de programadores de sistemas altamente capacitados. Richard Stallman cria a Free Software Foundation. O X Window criado no MIT. Criao do Minix. Linus Torvalds assiste sua primeira aula de linguagem C. Linus Torvalds inicia o desenvolvimento do Linux. A verso 0.01 discutida na Internet. lanada a verso 0.95 do Linux. A Yggdrasil lana a primeira distribuio do Linux em dezembro. A Yggdrasil libera a produo da distribuio do Linux. lanada a verso 0.99pl15 do Linux. lanado o Xfree86. A Yggdrasil lana o primeiro CD-ROM contendo uma distribuio do Linux. A Red Hat, a Slackware e outras distribuies surgem em CD-ROM. Surge a primeira verso modularizada do Linux. A Caldera lana a verso 1.0 com o Netscape incluso (e com o WordPerfect for X). A Conectiva lana a primeira distribuio brasileira do Linux, baseada no Red Hat.

1995 1996 1998

24

Captulo 1 O incio de tudo

Copyrights e numerao das verses do LinuxO Linux no um software de domnio pblico, mas licenciado sob a licena GPL (GNU Public License), e o cdigo-fonte do Linux pode permanecer livremente disponvel. As pessoas podem cobrar pela cpia do Linux, se desejarem, desde que, com isso, no limitem a sua distribuio. Muitas pessoas pelo mundo inteiro tm trabalhado conjuntamente para continuar o desenvolvimento do Linux, sob a direo de Linus Torvalds, o autor original, e cada uma delas mantm os direitos de copyright sobre o cdigo que escreveram. A verso 1.0 do Linux foi liberada no dia 14 de maro de 1994 e, depois disso, foram feitas numerosas verses novas. Ainda existem bugs no sistema (como em qualquer sistema operacional) e novos bugs vm sendo descobertos e corrigidos no decorrer do tempo. O Linux segue o modelo de desenvolvimento aberto e, por isso mesmo, a cada nova verso liberada ao pblico, considerado um produto de qualidade. Entretanto, para informar aos usurios se eles esto obtendo uma verso estvel ou no, o esquema abaixo foi implementado: r.x.y Verses r.x.y onde x um nmero par So verses estveis, e, enquanto o y incrementado, apenas correes de bugs so efetuadas. Assim, da verso 2.0.2 para a 2.0.3 houve apenas correo de bugs, sem nenhuma caracterstica nova. Verses r.x.y onde x um nmero mpar r.x.y So verses beta, destinadas apenas a desenvolvedores, podem ser instveis e falhar, e esto sujeitas a alteraes por tempo indeterminado. Periodicamente, quando o desenvolvimento do kernel for considerado estvel, x trocado por um nmero par, e o desenvolvimento continua com uma nova verso (x mpar).

As distribuies do LinuxDiversas empresas e organizaes de voluntrios decidiram juntar os programas do Linux em pacotes prprios aos quais elas fornecem suporte. Esses pacotes so chamados de distribuies e, entre as mais famosas e utilizadas, destacam-se: Red Hat, Mandrake, Conectiva (brasileira), Debian, Slackware, SuSE e Caldera.

LSB (Linux Standard Base)O Linux Standard Base um conjunto de padres cujo objetivo compatibilizar e padronizar as diversas distribuies Linux, permitindo que qualquer software escrito para o Linux seja executado em qualquer distribuio desenvolvida de acordo com o LSB. Este ajudar a coordenar esforos para recrutar desenvolvedores de software a converter e a escrever produtos para o Linux. Para mais informaes sobre esses padres, visite o site www.linuxbase.org.

25

Linux Guia do Administrador do Sistema

Fontes de software do LinuxNa realidade, o Linux apenas o kernel do sistema operacional que hoje conhecido como Linux. Desenvolvido inicialmente pelo programador finlands Linus Torvalds, hoje milhares de contribuidores ativos, espalhados pelo mundo inteiro auxiliam, com Linus Torvalds, no seu desenvolvimento. Em uma distribuio qualquer, seja Slackware, Red Hat, Debian etc., temos vrios outros pacotes (programas) alm do kernel, que vm de diferentes fontes, sendo as principais: Free Software Foundation (www.fsf.org) e seus contribuidores. Desenvolvem utilitrios de programao e comandos-padro, como: GCC (compilador C), gmake, bison, flex, grep e outros programas, normalmente liberados com a licena GPL (General Public License Licena Pblica Geral). Universidade da Califrnia, em Berkeley (BSD Unix), e seus contribuidores. Fornece a maioria das ferramentas de administrao do sistema e de rede, liberadas com licenas menos restritivas que o GNU, conhecidas como BSD. X Consortium (Consrcio X). Criou o sistema grfico de janelas X (tambm conhecido como X Window). A verso utilizada com o Linux normalmente provm de uma outra organizao com o nome Xfree86 (www.xfree86.org) que o portou para os microcomputadores baseados nos microprocessadores da famlia 80X86 da Intel, mas igualmente existem servidores comerciais.

O que o Linux ofereceO Linux oferece diversas vantagens para quem o utiliza. Entre elas, destacam-se: Sistema multitarefa e multiusurio de 32 ou 64 bits (dependente da plataforma de hardware onde ele executado). Sistema grfico X-Window. Suporte a diversas linguagens, como Java, C, C++, Pascal, Lisp, Prolog, entre outras. Suporte aos protocolos de rede: TCP/IP, IPX, AppleTalk e NetBios. Memria virtual. Cdigo-fonte do kernel. Centenas de programas em GPL, incluindo compiladores, editores, multimdia, entre outros. Sistema em constante aperfeioamento. Estabilidade. Permisso de arquivos. Eterno aprendizado.

26