Curso de Linux Básico







Curso de Linux Básico



Versão 3.0










Copyright (c) 2003 Artur de Paula Coutinho


É dada permissão para copiar, distribuir e/ou modificar este documento sob os termos da Licença de Documentação Livre GNU, Versão 1.1 ou qualquer versão posterior publicada pela Free Software Foundation; sem Seções Invariantes, sem Textos de Capa da Frente e sem Textos da Quarta-Capa. Uma cópia da licença está inclusa na seção intitulada ¨Licença de Documentação Livre GNU¨.


ÍNDICE

0 - HISTÓRICO 5

1 - INTRODUÇÃO 6

1.1 - O QUE É LINUX? 6

1.2 - CARACTERÍSTICAS 6

1.3 - DISTRIBUIÇÕES 8

1.4 - INFORMAÇÕES 8

2 - INSTALAÇÃO 11

2.1 - PRECAUÇÕES ANTES DA INSTALAÇÃO 11

2.2 - FORMAS DE INSTALAÇÃO 12

2.3 - MEIOS DE INSTALAÇÃO 13

2.4 - INSTALANDO 13

3 - PRIMEIRA UTILIZAÇÃO 15

3.1 - CONCEITOS BÁSICOS 15

4 - COMANDOS BÁSICOS I 18

4.1 - ls 18

4.2 - | (pipe) 18

4.3 - more 19

4.4 - less 19

4.5 - cd 19

4.6 - COMANDOS DE DATA E HORA 19

4.7 - man 20

4.8 - info 20

4.9 - apropos 21

5 - EDITANDO TEXTOS 22

5.1 – pico 22

5.2 – Emacs 24

5.3 – VI 25

6 - COMANDOS BÁSICOS II 27

6.1 - mkdir 27

6.2 - rm 27

6.3 - cp 28

6.4 - mv 28

6.5 - find 28

6.6 - whereis 29

6.7 - which 29

7 - TIPOS DE ARQUIVOS 30

7.1 - Links 30

7.2 - Metacaracteres 31

8 - COMANDOS BÁSICOS III 32

8.1 - ln 32

8.2 – file 32

9 - USUÁRIOS E GRUPOS 34

9.1 - Porque Criar Usuários? 34

9.2 - O Conceito de Grupo 34

10 - PERMISSÕES DE ACESSO 35

11 - COMANDOS BÁSICOS IV 36

11.1 - su 36

11.2 - useradd 36

11.3 - passwd 38

11.4 - userdel 38

11.5 - groupadd 39

11.6 - groupdel 39

11.7 - chown 39

11.8 - chgrp 40

11.9 - chmod 40

11.10 - umask 42

12 - SISTEMA DE ARQUIVOS 44

12.1 - CONCEITOS BÁSICOS 44

12.2 - DIRETÓRIO RAIZ ( / ) 46

12.3 - DIRETÓRIO /bin 47

12.4 - DIRETÓRIO /boot 47

12.5 - DIRETÓRIO /dev 47

12.6 - DIRETÓRIO /etc 47

12.7 - DIRETÓRIO /home 47

12.8 - DIRETÓRIO /lib 48

12.9 - DIRETÓRIO /lib<nome> 48

12.10 - DIRETÓRIO /mnt 48

12.11 - DIRETÓRIO /opt 48

12.12 - DIRETÓRIO /root 48

12.13 - DIRETÓRIO /sbin 48

12.14 - DIRETÓRIO /tmp 49

12.15 - DIRETÓRIO /usr 49

12.16 - DIRETÓRIO /var 51

12.17 - DIRETÓRIO /proc 54

13 - ACESSANDO HD, CDROM E DISQUETE 55

13.1 - Nomes dos Dispositivos 55

13.2 - Montagem de Dispositivo 55

13.3 - Ponto de Montagem 56

14 - COMANDOS BÁSICOS V 57

14.1 - mount 57

14.2 - umount 59

14.3 - fdformat 60

14.4 - mkfs 60

15 - FORMAS DE ACESSO A DISQUETES 62

15.1 - Usando Dois Pontos de Montagem 62

15.2 - Usando Apenas um Ponto de Montagem 62

16 - ACESSANDO WIN9x / WIN2000 / WIN XP 63

17 - MODO GRÁFICO (X) I 64

17.1 - Configurando o Servidor X 64

17.2 – Iniciando e Encerrando o Modo Gráfico 67

17.3 - Utilizando o Modo Gráfico (WindowMaker) 68

17.4 - Utilizando o Modo Gráfico (KDE) 73

17.5 - Utilizando o Modo Gráfico (Gnome) 76

18 - INSTALAÇÃO DE PROGRAMAS 79

19 – ARQUIVAMENTO (BACKUP) 80

20 - COMANDOS BÁSICOS VI 81

20.1 - rpm 81

20.2 - tar 83

21 - COMANDOS BÁSICOS VII 87

21.1 - ps 87

21.2 - kill 88

21.3 - killall 89

22 - MODO GRÁFICO (X) II 90

22.1 - O Configurador Linuxconf 90

22.2 - Acesso à Internet / E-Mail 92

23 - COMANDOS BÁSICOS VIII 102

23.1 - > 102

23.2 - >> 102

23.3 - & 102

23.4 - cat 102

23.5 - lpr 103

23.6 - lpq 103

23.7 - lprm 103

23.8 - lpc 103

23.9 - pwd 104

23.10 - who 104

23.11 - df 104

23.12 - du 104

24 – OPENOFFICE.ORG 1.0 105

24.1 - O Que É o OpenOffice.org? 105

24.2 - Instalando o OpenOffice.org 1.0 105

24.3 - Configurando a Impressora Para o OpenOffice 1.0 106

24.4 - Utilizando o OpenOffice.org 1.0 107

25 - TÓPICOS SOBRE SEGURANÇA 108

25.1 - Política de Senhas 108

25.2 - Permissões de Acesso 108

25.3 - Protegendo as Senhas 108

25.4 - Configuração dos Serviços TCP 109

25.5 - Acesso aos Serviços do Linux 109

25.6 - Dicas de Segurança 110

25.7 - Programas Para Segurança 112

25.8 - Considerações Finais Sobre Segurança 114

26 - LICENÇA DE DOCUMENTAÇÃO LIVRE GNU 115

26.1 – Tradução da GFDL Versão 1.1 115

26.1 – GFDL Versão 1.2 (Original em Inglês) 120

27 - BIBLIOGRAFIA 126



0 - HISTÓRICO


Versão 1.0:



Versão 2.0:



Versão 3.0:



1 - INTRODUÇÃO


Este primeiro capítulo se propõe a responder perguntas básicas sobre o Linux, como sua origem, suas principais características e sua forma de distribuição aos usuários. Além disso, serão introduzidos alguns dos conceitos básicos do mundo Linux e listadas algumas das fontes de informação disponíveis sobre este sistema operacional.



1.1 - O QUE É LINUX?


O Linux é um sistema operacional originalmente desenvolvido em 1991 por Linus Torvalds, um finlandês do Departamento de Ciência da Computação da Universidade de Helsinki. A partir do seu lançamento, milhares de programadores espalhados por todo o mundo contribuíram e continuam contribuindo para o seu desenvolvimento, utilizando a Internet como a grande ferramenta que proporciona o intercâmbio de idéias e o gerenciamento de grupos de trabalho.


O Linux foi criado tendo por base o padrão POSIX, que é o mesmo que deu origem aos diversos "sabores" de UNIX. Sendo assim, podemos dizer que o Linux é um UNIX, mas não que ele é UNIX.


O Linux foi inicialmente desenvolvido para PCs baseados em CPUs x86 (como 386/486/Pentium, etc), porém atualmente existem versões para computadores Alpha da DEC, Sparcs da SUN, CPUs M68000 (semelhantes a Atari e Amiga), MIPS, PowerPCs (tais como iMac...), S/390 (IBM), I64 (Intel Itanium) e PDAs.


O sistema operacional em si é chamado kernel (núcleo) do Linux, e é o responsável por gerenciar todas as tarefas do sistema. Todos os demais serviços e programas fazem chamadas ao kernel durante sua execução.


Boa parte dos programas integrados ao kernel Linux para a formação de um sistema são provenientes do projeto GNU, de forma que este sistema seria melhor definido se o chamássemos GNU/Linux, como prega Richard Stallman, fundador da FSF (Free Software Foundation) e do projeto GNU. Neste material, estaremos empregando o termo “Linux” por ser mais conhecido, porém estaremos nos referindo ao sistema formado pelo kernel Linux e pelos demais programas e aplicativos, sejam eles provenientes do projeto GNU, de outros Unix, ou de qualquer outra fonte.


Inicialmente o Linux suportava apenas uma interface por linha de comando, com recursos até hoje considerados poderosíssimos. Atualmente, existem servidores gráficos para Linux, como o "Servidor X", que é de livre distribuição, além de outros, comerciais. Para rodar no servidor X, existe uma infinidade de gerenciadores de janelas (window managers), com as mais diversas opções de interfaces gráficas, que imitam as interfaces do Win95, iMac, OS2, NeXT, etc, além daquelas criadas originalmente para o Linux.


Os principais usos do Linux anteriormente eram como servidor de páginas da Web, servidor FTP, servidor de e-mail, servidor de nomes (DNS) ou roteador (gateway) entre LANs e a Internet. Além destes usos, hoje, mais e mais sistemas Linux estão sendo utilizados como servidores de bancos de dados, sendo que a maioria dos mais populares pacotes de bancos de dados estão disponíveis nas versões nativas do Linux, incluindo produtos de empresas como Oracle, Informix, Sybase e IBM. Finalmente, o Linux vem sendo usado cada vez mais para estações de trabalho pessoais ou sistema desktop, utilizados para desenvolvimento de software, computação gráfica, acesso à internet, etc.


Atualmente tem sido desenvolvidos os mais variados aplicativos para a plataforma Linux, desde editores de texto simples até simuladores de circuitos eletrônicos, passando por jogos e aplicativos para internet, tornando cada vez mais popular e amigável este sistema operacional.



1.2 - CARACTERÍSTICAS


A seguir descreveremos algumas das características mais importantes do Linux, que o tornam um sistema estável, versátil e confiável.


      1. - Multiusuário:


Isto significa que o Linux instalado em uma máquina pode ser utilizado por mais de um usuário, seja na mesma máquina ou através de terminais remotos ligados a esta máquina. Tudo isso com privacidade, já que o acesso a cada arquivo ou diretório pode ser configurado (individualmente ou em grupos, como veremos mais a frente).


Cada usuário tem acesso ao sistema através do login (entrada no sistema), mediante o uso de senha. Por questões de segurança no Linux não é permitido (por vias normais) que alguém tenha acesso à máquina sem possuir autorização, ou seja, é necessário estar cadastrado no sistema para poder acessá-lo, ao contrário de outros sistemas.


      1. - Multitarefa:


O Linux trabalha com multitarefa real, ou seja, ele pode gerenciar diversas tarefas sendo executadas "ao mesmo tempo" pela máquina. Para gerenciar estas tarefas, o Linux trabalha com o conceito de processos, nome dado a cada programa (ou parte dele) que está "rodando" na máquina. Cada vez que executamos um programa, serão criados um ou mais novos processos no kernel, separados dos demais, os quais serão gerenciados pelo Linux.


Uma descrição simplista do que ocorre na inicialização do Linux: Quando inicializamos a máquina e o kernel do Linux está carregado, o próprio kernel já cria o primeiro processo, que é chamado init, que, entre outras coisas inicia o programa de controle do terminal e mostra a tela de login. Ao logarmos na máquina, o programa de login cria um processo para o usuário, que é a interface de linha de comando. A partir daí, o usuário pode criar novos processos, isto é, "rodar" programas.


É importante notar que um processo só pode ser criado a partir de outro (com exceção do primeiro). Ao processo de origem dá-se o nome de "processo-pai" e ao processo originado, chamamos "processo-filho".


Outro conceito importante é a "morte" de um processo. Um processo pode ser "morto" por outro processo, e existe um mecanismo que mantém o processo pai informado sobre seus processos-filhos que existam ou deixem de existir.


O principal aspecto que deve ser considerado, portanto, é que cada processo roda em um ambiente independente, de modo que, se por algum motivo qualquer, seja necessário "matar" um processo, isto não irá afetar os demais processos (exceto os processos-filhos). Desta forma, os serviços disponibilizados pela máquina em questão continuariam sendo utilizados normalmente, sem maiores problemas.


      1. - Código Aberto (GPL):


O Linux (kernel) não é um software de domínio público, mas é distribuído sob a GNU General Public License, que preserva a disponibilidade do seu código fonte. Ou seja, o código fonte do Linux deve estar sempre disponível para qualquer um. Alguém pode cobrar pela cópia do Linux, se desejar, desde que, com isso, não limite a distribuição do mesmo.


Por ser um software aberto, alertas para qualquer possível problema de segurança ou falha nos programas são distribuídos imediatamente pela Internet em busca de soluções, não sendo necessário esperar meses para que um fabricante ou desenvolvedor crie uma solução.


O Linux segue o modelo de desenvolvimento aberto e, por isso, cada nova versão disponibilizada ao público é considerada como um "produto de qualidade", pois qualquer um pode examinar e melhorar o código fonte. Para informar às pessoas se elas estão obtendo uma versão estável ou não, o seguinte esquema foi criado:


Versões r.x.y do kernel, onde x é um número par, são versões estáveis, e, enquanto o y é incrementado, apenas reparos de bugs são efetuados.


Versões r.x.y do kernel, onde x é um número ímpar, são versões beta destinadas apenas a desenvolvedores, podem ser instáveis e falhar, e estarão recebendo novas características o tempo todo.


De tempos em tempos, com o atual desenvolvimento do kernel sendo considerado "estável", x é mudado para um número par, e o desenvolvimento continua com uma nova versão (x ímpar).


      1. - Custo:


O custo do Linux varia de acordo com o que você espera obter. É possível obter o Linux pela Internet, pagando apenas o acesso (para fazer o download). Se você tiver acesso pela internet gratuita, o custo será zero!!! (se você considerar que tempo não é dinheiro...).


Se você optar por adquirir uma distribuição completa do Linux, receberá os CDs (ou DVD) com os programas, manuais impressos e normalmente terá direito a um determinado tempo de suporte técnico gratuito.


Um ponto importante é que nestas distribuições completas incluem não só o sistema operacional, mas também uma infinidade de programas e aplicativos, inclusive pacotes "office", ferramentas gráficas, compiladores, servidores de aplicações, servidores de Internet, servidores de banco de dados, navegadores Web, leitores de e-mail etc, tornando seu custo irrisório se comparado à quantidade de programas adquiridos.


Existem algumas "versões econômicas" de distribuições, bem mais baratas que as completas, nas quais você recebe apenas alguns CDs, não recebe os manuais impressos (ou nem todos eles) e normalmente não tem direito a suporte técnico.


Vale ressaltar que geralmente os CDs das distribuições Linux trazem os manuais em formato texto, html ou postscript, portanto, nesta situação pode ser uma boa idéia adquirir uma "versão econômica", principalmente se for para uso doméstico.



1.3 - DISTRIBUIÇÕES


Distribuição é o nome dado a um conjunto de programas constituído por um kernel do Linux e uma variedade de outros softwares para esta plataforma, chamados "pacotes", normalmente distribuídos de uma forma personalizada pela empresa ou grupo distribuidor. Existem diversas distribuições, dentre elas podemos citar:


DISTRIBUIÇÃO

PAÍS DE ORIGEM

VERSÃO ATUAL

Slackware

Alemanha

9.0

Red Hat

USA

9.0

Debian

USA

3.0r1

S.U.S.E

Alemanha

8.2

Mandrake

França

9.1

Conectiva Linux

Brasil

9.0


Cada distribuição tem suas particularidades, umas são mais amigáveis, outras menos, outras são mais fáceis de instalar ou atualizar, outras mais complicadas. Estas distribuições geralmente desenvolvem programas instaladores e configuradores personalizados, de forma a tornar mais fáceis e amigáveis as tarefas no Linux, porém o núcleo do sistema (kernel) é o mesmo para todas elas. Mais adiante veremos as principais diferenças entre algumas das distribuições mais conhecidas.



1.4 - INFORMAÇÕES


      1. - Manuais:


Em geral todas as distribuições de Linux vêm com um ou mais manuais impressos, que trazem as informações necessárias para a instalação, configuração e operação do sistema.


Estes manuais costumam também estar presentes nos CDs, em formato texto, html, pdf ou ps (postscript), sendo quase sempre uma literatura obrigatória para o usuário do Linux.


Ao adquirir uma distribuição de Linux, é aconselhável verificar se os manuais estão em uma língua que você domina, para evitar problemas futuros.


      1. - HOWTO:


A cultura do Linux se utiliza bastante dos HOWTO, que são documentos que descrevem na prática "COMO FAZER" as principais atividades que um usuário, um administrador de sistemas ou redes possam vir a realizar.


Apesar da maioria dos HOWTOs originais estar em inglês, já existe atualmente um número razoável destes documentos em português.


Além dos HOWTOs, existem também os mini-HOWTOs, sendo que estes últimos são mais resumidos e mais superficiais, geralmente utilizam exemplos ou casos individuais, gerando assim verdadeiras "receitas de bolo" para quem delas precisar.


Os HOWTOs e os mini-HOWTOs ficam disponíveis na Internet, sendo que de maneira geral são também incluídos nos CDs das diversas distribuições.


      1. - Livros:


Existem diversos livros sobre o Linux sendo editados hoje em dia, devido a sua popularização, o que facilita o acesso das pessoas às informações básicas sobre este sistema.



Bons livros que foram inclusive traduzidos para o português e também estão disponíveis na Internet, são os guias: "Guia do Usuário Linux", "Guia do Administrador de Sistemas" e "Guia do Administrador de Redes".


Para maiores informações sobre literatura Linux, consulte boas livrarias, especialmente aquelas on-line na Internet.


      1. - Listas de Discussão:


Nas listas de discussão sobre Linux, você tem acesso a uma fonte de informações muitíssimo importante, pois neste ambiente há uma intensa troca de idéias e experiências sobre o dia a dia de quem trabalha ou se diverte usando Linux.


No Brasil temos boas listas de discussão sobre Linux, dentre elas, a da Conectiva (linux-br) e da Unicamp. Existem ainda as lista de discussão da Usernet (newsgroups), tipo comp.os.linux, porém a maioria é em inglês. O volume de mensagens nestas lista é em torno de 100 a 200 ou mais mensagens por dia!!!


Ao assinar uma lista de discussão, procure ler as regras que a regem e entendê-las bem para que não cause transtornos à lista e para que possa usufruir melhor de seus benefícios.


      1. - Sites na Internet:


Existem inúmeros sites na Internet sobre o Linux, onde podem ser encontradas informações sobre este sistema operacional. Vamos relacionar alguns deles:


Em Português:


http://www.conectiva.com.br

http://pontobr.org

http://www.revistadolinux.com.br

http://www.linux.trix.net

http://www.planetarium.com.br

http://www.cipsga.org.br

http://br.tldp.org

http://www.google.com.br/linux

http://www.linuxmall.com.br

http://www.linuxsecurity.com.br

http://olinux.uol.com.br

http://www.buscalinux.com

http://www.linuxplace.com.br

http://linux-br.conectiva.com.br

http://www.gazetadolinux.com

http://www.tchelinux.com.br

http://focalinux.cipsga.org.br

http://www.noticiaslinux.com.br

http://www.rau-tu.unicamp.br/linux

http://linux.matrix.com.br/dicas_ntlinux.htm



Em Inglês:


http://www.slackware.com

http://www.suse.com

http://www.redhat.com

http://www.debian.org

http://www.linux-mandrake.com

http://www.linux.org

http://linuxberg.com

http://www.tldp.org

http://freshmeat.net

http://www.linuxjournal.com

http://sourceforge.net

http://linuxtoday.com

http://www.linuxhq.com

http://www.linuxgazette.com

http://www.linuxworld.com

http://www.linuxgames.com

http://slashdot.org

http://www.linux-mag.com

http://www.linuxsecurity.com

http://www.linuxnewbie.org

http://www.linuxall.org

http://www.linuxzone.org

http://counter.li.org


- Revistas:


Atualmente diversas revistas têm publicado matérias sobre o Linux, inclusive distribuindo CDs com versões deste sistema. A mais direcionada delas é a Revista do Linux, que é editada pela Conectiva, distribuidora de Linux brasileira. Esta revista traz bastante informação e dicas para o usuário de Linux. Além dela podemos citar também a PCMaster, com boas matérias sobre Linux e diversas revistas editadas pela Digerati.



2 - INSTALAÇÃO


Neste capítulo serão tratados os pontos básicos do processo de instalação do Linux em máquinas baseadas em CPUs x86 (plataforma PC).


Serão discutidas as ações pré-instalação e os conceitos envolvidos na instalação de um sistema Linux.



      2.1 - PRECAUÇÕES ANTES DA INSTALAÇÃO


O Linux pode ser instalado em um HD separado ou pode compartilhar um HD com outros sistemas operacionais (SO). A quantidade de espaço (no HD) para o Linux depende do modo de instalação escolhido, sendo que este assunto será abordado mais adiante, quando serão discutidas as formas de instalação.


É importante salientar que o Linux tem uma convivência amigável com outros sistemas operacionais, apesar do contrário nem sempre ser verdadeiro. Portanto, é comum termos o Linux instalado em uma máquina ou sistema, juntamente com DOS, Windows, OS/2, Novell Netware, etc.


Assim sendo, antes de instalar o Linux, a primeira coisa com que devemos nos ocupar é com relação à preservação dos dados de outros sistemas operacionais que porventura estejam instalados na mesma máquina. Ou seja, devemos definir onde o Linux será instalado na máquina e a necessidade de realizar backup de alguma informação, na hipótese de reparticionamento de HDs.


No caso em que se dispõe de um HD exclusivo para o Linux, o backup dos dados que possam estar em outros HDs na mesma máquina não é obrigatório, porém o bom senso nos diz que esta é uma boa medida preventiva para evitar dores de cabeça...


Caso o Linux vá compartilhar o HD com outro SO, é preciso criar o espaço necessário (partição) para ele, se ainda não existir, criando pelo menos duas partições, sendo uma do tipo Linux Nativa e outra de Swap (arquivos de troca). Para criarmos estas partições temos três alternativas:


a) No HD existe espaço não particionado


Neste caso, o espaço não atribuído a nenhuma partição será utilizado para criar as partições do Linux. Por exemplo, num HD de 8.4GB em que se tem apenas uma partição de 4.2GB com Windows instalado, os 4.2GB restantes (não particionados) poderão ser usados pelo Linux.


b) No HD existe uma ou mais partições sem uso


Se pelo menos uma das partições do HD estiver sem uso ou puder ter seus dados transferidos para outras partições (de modo a torná-la não usada), esta partição sem uso poderá ser excluída para dar lugar às partições do Linux.


c) Existe espaço livre numa partição já utilizada


Para conseguirmos as partições necessárias ao Linux nestas condições, temos duas opções:


- Reparticionamento não-destrutivo: Isto é feito utilizando softwares específicos que conseguem alterar a tabela de alocação de arquivos (FAT) do HD, diminuindo o tamanho da partição e criando uma nova partição apenas com espaço livre.


Antes de usar este método é recomendado fazer BACKUP de todos os dados importantes que houverem no HD, em seguida desfragmentar o HD, de modo que todos os dados fiquem contidos em uma área restrita do HD e utilizar o software específico para "encolher" a partição existente e criar a nova partição. Se a nova partição criada não for do tipo apropriada para Linux, deve-se excluí-la e em seguida recriá-la de modo que possa ser utilizada pelo Linux.


Um software para reparticionamento não-destrutivo normalmente encontrado nas distribuições de Linux é o fips.


OBS.: Pode-se encontrar problemas se, mesmo após a desfragmentação do HD, alguns dados não tiverem sido movidos, permanecendo em áreas que reduzam o tamanho da nova partição ou até mesmo impeçam o reparticionamento não-destrutivo.


- Reparticionamento destrutivo: Este é o processo mais radical, pois é preciso excluir as partições existentes e criar as novas partições.


Portanto, antes de excluir as partições existentes, é necessário fazer BACKUP de todos os dados contidos no HD e verificar se todos os originais dos programas instalados estão disponíveis, já que deverão ser reinstalados posteriormente, incluindo o sistema operacional.


Deve-se então excluir as partições existentes e criar as novas partições, usando utilitários como o fdisk do DOS ou o fdisk do Linux para este fim. Observe que apesar dos nomes iguais, estes dois utilitários são bastante diferentes, sendo que o primeiro roda em DOS e o segundo em Linux. Todo o cuidado é pouco ao usar estes programas, pois o efeito de uma ação impensada pode ser uma enorme dor de cabeça!!!


Além destes dois programas, atualmente as distribuições têm trazido diversas outras opções, inclusive com interfaces gráficas, para o gerenciamento das partições de HDs. Por exemplo: Disk Druid (Conectiva Linux), DiskDrake (Mandrake), Parted, entre outros.


Notas:

  1. Atualmente, além das opções de instalar o Linux em partições próprias (nativas), algumas distribuições possuem o recurso de se instalar o Linux em uma partição DOS (FAT). Neste caso é criada uma pasta (diretório) dentro do Windows e esta pasta conterá todo o sistema de arquivos do Linux. Desta forma, portanto, não é necessário reparticionar o HD, porém, é esperada uma queda na performance devido à emulação do sistema de arquivos. Esta opção é aconselhada para quem está começando a conhecer o Linux e não pretende alterar o particionamento de seu HD.

  2. Existem algumas distribuições, como a DemoLinux, que podem ser executadas diretamente a partir do CDROM, sendo também uma boa opção para quem quer conhecer o Linux sem instalá-lo no HD.


Além das precauções discutidas acima, é igualmente importante dispormos das informações sobre o Hardware da máquina em que o Linux será instalado (placas de vídeo, rede, impressora, teclado, mouse, monitor, etc), caso sejam solicitadas durante a instalação / configuração do sistema. Se a máquina tiver Windows instalado, estas informações podem ser obtidas no Painel de Controle, acessando o ícone Sistema.



2.2 - FORMAS DE INSTALAÇÃO


Geralmente as distribuições de Linux costumam disponibilizar formas de instalação pré-definidas, com algumas particularidades e recursos a mais ou a menos em relação às demais.


Além destas, normalmente é disponibilizada uma instalação personalizada, que enfatiza as necessidades específicas do usuário, proporcionando muita flexibilidade. Pode-se ter completo controle sobre os pacotes que serão instalados no sistema, assim como determinar se será ou não usada dupla inicialização.


Esta última forma de instalação é recomendada para quem já tem familiaridade com o Linux e com a manipulação de partições. Dependendo de como será feita a seleção dos pacotes a serem instalados, esta forma de instalação pode ser bem mais demorada que as demais.






2.3 - MEIOS DE INSTALAÇÃO


Resumidamente os seguintes meios podem ser utilizados na instalação do Linux:


- CDROM Local: Se você tem um drive de CDROM e o CD de uma distribuição do Linux.


- Disco Rígido Local: Somente se os arquivos do Linux tenham sido copiados para o disco rígido.


- NFS (via Rede): Se a instalação for efetuada pela rede, será necessário montar o CD do Linux em uma máquina que suporte o padrão ISO-9660 para sistemas de arquivos com extensões Rock Ridge. Esse equipamento deverá suportar ainda NFS. O CDROM deverá ser exportado através do NFS, assim como será necessário conhecer o endereço IP e o caminho do CDROM ou ter o servidor de nomes configurado. Este método requer um disquete extra para suporte à inicialização via rede.


- FTP: Este método requer um disquete extra para suporte à inicialização via rede, o nome ou o endereço IP do servidor FTP a ser utilizado e o diretório onde residem os arquivos da distribuição do Linux.


- HTTP: Este método requer um disquete extra para suporte à inicialização via rede, o nome ou o endereço IP do servidor HTTP a ser utilizado e o diretório onde residem os arquivos da distribuição do Linux.


A maioria dos CDs de Linux já são inicializáveis, porém pode ser que a máquina não aceite o boot pelo CDROM por limitação da BIOS e então será necessário criar um disquete de boot, cuja imagem é normalmente distribuída com o Linux.


Para a criação deste disquete, tradicionalmente é usado o utilitário rawrite, que deve ser executado no DOS ou sua versão para Windows, o rawritewin. Descrevemos abaixo a utilização do rawrite em modo DOS, sendo que sua versão Windows é semelhante, apenas tendo interface gráfica.


Inicialmente etiquete um disco formatado de 3 ½ polegadas com o nome de disco de inicialização local ou algo similar e insira na unidade de disco flexível. Após, execute os seguintes comandos (presumindo que o seu CD seja o drive d:):


C:> d:

D:> cd dosutils

D:dosutils>rawrite.exe

Enter disk image source file name: ..imagens\boot.img

Enter target diskette drive: a:

Please insert a formatted diskette into drive A: and press <ENTER>

D:dosutils>


O utilitário inicialmente solicitará o nome do arquivo do disco imagem, (informar por exemplo boot.img). Após solicitará o dispositivo de gravação, onde deverá ser informado a:. Para gerar um disco adicional, etiquete um segundo disco e execute o rawrite novamente, informando o nome do arquivo imagem desejado.



2.4 - INSTALANDO


Para iniciar a instalação do Linux, insira o CD-ROM de inicialização (ou o disquete, caso a BIOS não aceite inicialização do sistema via CD-ROM), no drive, reinicialize o computador e siga os passos do programa de instalação.


A seguir serão listadas resumidamente as partes da instalação do Linux:




Notas:


  1. O disquete de inicialização é de grande utilidade caso ocorra alguma falha no sistema de dupla inicialização e não seja possível o boot normal pelo HD. Isto é muito comum quando se tem um HD compartilhado entre Windows e Linux e é feita a reinstalação do Windows, pois o mesmo remove a dupla inicialização do MBR (Master Boot Record, ou Registro Mestre de Inicialização). Após inicializar o Linux pelo disquete, deve-se reinstalar o gerenciador de boot (Grub ou Lilo, conforme o caso).


  1. As etapas de instalação descritas acima podem ocorrer em ordem diferente da listada, além de poderem ser realizadas outras configurações, como configuração de impressoras, modems, criação de usuários, etc, dependendo da distribuição que se está instalando.



3 - PRIMEIRA UTILIZAÇÃO


Neste capítulo trataremos alguns conceitos básicos antes de iniciarmos o uso do Linux, como o gerenciamento de boot, a entrada e saída do sistema e a utilização de consoles.



3.1 - CONCEITOS BÁSICOS


      1. - Carregamento do Sistema (Lilo / Grub):


Como já foi citado anteriormente, o Linux pode conviver amigavelmente com outros sistemas operacionais instalados numa mesma máquina. Para permitir ao usuário escolher qual sistema operacional será usado a cada vez que a máquina é ligada, o Linux possui gerenciadores de boot.


O gerenciador de boot mais tradicionalmente utilizado no Linux é o LILO (Linux Loader), cujas características veremos brevemente nesta seção. Diversas distribuições recentemente têm utilizado o Grub como gerenciador de boot, devido este último ser mais poderoso e flexível.


Uma das principais características que diferenciam o Grub do Lilo é que este último não tem suporte a sistemas de arquivos (FAT, EXT2, etc), enquanto o Grub possui este suporte. No caso do Lilo, durante sua instalação é preciso que se faça uma tradução do endereço onde estão os arquivos que serão utilizados para inicializar o sistema, transformando-os em informações de setores do HD para que o Lilo possa acessá-los durante sua execução. Isto é feito quando rodamos o comando lilo. Já com o Grub podemos nos referenciar aos arquivos de inicialização diretamente dentro da árvore de diretórios onde estão armazenados, utilizando o suporte a sistemas de arquivos.


Normalmente é recomendado que o gerenciador de boot seja carregado no MBR (Master Boot Record ou Registro Mestre de Inicialização) do HD, pois este é o primeiro dado a ser lido pelo BIOS (Basic I/O System) da máquina. Ele portanto informará ao BIOS qual o próximo endereço a ser lido no HD, que será aquele correspondente ao sistema operacional selecionado pelo usuário. Esta opção é recomendada quando não há outros gerenciadores de boot, como o Boot Manager do OS/2 ou System Commander, já instalados no MBR.


Se no MBR já houver um gerenciador de boot instalado, existe a opção de instalação do mesmo no setor de boot de uma partição marcada como "ativa" (ou seja, capaz de dar boot), pois se no MBR não houver nenhum redirecionamento para algum sistema operacional, o próximo setor a ser lido pelo BIOS é o setor de boot de uma partição "ativa". Da mesma forma, o gerenciador de boot redirecionará a leitura para o sistema operacional escolhido pelo usuário.


O LILO está sujeito a algumas limitações impostas pelo BIOS. Geralmente, a maioria dos BIOS não pode acessar mais de dois discos rígidos e eles não podem acessar qualquer dado armazenado além do cilindro 1023 de qualquer dispositivo. Note que os BIOS novos não têm estas limitações, mas isto não é universal.


O Grub por sua vez não possui esta limitação.


Após instalarmos o Linux, o gerenciador de boot assumirá este sistema operacional como o default, sendo que esta opção pode ser alterada posteriormente.


Portanto, após ligada a máquina e o BIOS ser carregado, se o LILO estiver instalado será apresentada a seguinte mensagem:


lilo boot:


Se pressionarmos a tecla Tab, serão mostradas no vídeo as opções de inicialização (boot) do sistema. Podemos digitar qual a opção desejada ou aguardarmos o tempo definido para que o LILO carregue o sistema operacional definido como padrão.


Caso o gerenciador de boot instalado seja o Grub (ou o Lilo utilizando menus), aparecerá sua tela gráfica, com as opções disponíveis. Também possui um default que é executado após um tempo predefinido.


Após isto, o sistema operacional escolhido será carregado na máquina.


      1. - Entrada no Sistema (login):


Após o sistema operacional Linux ter sido carregado, o primeiro processo (para o usuário, pois diversos outros serviços já estarão inicializados, como impressão, e-mail, etc) estará rodando na máquina, que é o getty. Ele fornece a tela de login e passa a informação digitada ao sistema para autenticação do usuário, que é feita pelo programa login.


Como já mencionamos anteriormente, o Linux só permite acesso do usuário mediante sua identificação ao sistema e a informação de sua respectiva senha.


Após a inicialização aparecerá no vídeo algo como:


Conectiva Linux 8

Kernel 2.4.18-3U8_4cl


localhost login: _


A primeira vez que se acessa o Linux, o acesso deverá ser realizado com o superusuário root. Este é o nome da conta que tem acesso completo a todos os componentes do sistema.


Normalmente, a conta de superusuário é somente utilizada na execução de tarefas de administração do sistema, como a criação de novas contas, desligar o sistema, etc. Isso se deve ao fato de que o acesso irrestrito do superusuário quando mal utilizado poderá provocar grandes estragos ao sistema.


Então seja cuidadoso ao acessar o sistema como root e use a conta de superusuário somente quando realmente for necessário.


Para o acesso inicial, informe root na linha de comando login: e pressione "Enter". Aparecerá uma linha de comando Password: , como abaixo:


Conectiva Linux 8

Kernel 2.4.18-3U8_4cl


localhost login: root

Password: _


Digite a mesma senha criada durante a instalação, pressionando "Enter" ao terminar. Deverá então surgir algo como:


[root@localhost /root]#


Chegamos portanto ao bash (Bourne Again Shell), o shell (interpretador de comandos) padrão do Linux. Já podemos então utilizar a máquina digitando comandos que serão interpretados pelo bash e passados ao kernel para execução.


      1. - Saída do Sistema (logout ou exit):


A saída do sistema pode ser realizada de duas formas, usando o comando exit ou o comando logout. A diferença entre os dois é que exit encerra o shell de comandos corrente e logout encerra a sessão.


Vale lembrar que em várias distribuições Linux existe já definido um atalho para o comando logout, bastando pressionar Ctrl + d.


3.1.4 - Encerramento do Sistema (shutdown):


Se o sistema deve ser desligado ou reinicializado, devemos utilizar o comando shutdown para fazer isto. Este comando se encarrega dos detalhes do desligamento, de modo que tudo ocorra em ordem, sem danos ao sistema. Ele pode inclusive avisar aos demais usuários com antecedência de que o sistema será paralisado e toma automaticamente providências para a finalização.

Sintaxe do comando shutdown:


shutdown [-t segundos] [-rkhncfF] tempo [mensagem de alerta]


Opções:


-k Não desliga realmente o sistema, somente envia mensagens de aviso a todos os usuários.


-r Reinicializa após o desligamento do sistema.


-h Desliga o sistema após a execução do comando.


-c Cancela a execução de um programa shutdown. Não necessita do argumento tempo.


tempo Quanto o sistema deverá ser executado, antes da ação do comando shutdown.


msg-de-aviso

Mensagem a ser enviada a todos os usuários.


OBS.: O argumento tempo pode ter diferentes formatos. Primeiro, ele pode ser informado em um formato absoluto no formato hh:mm, na qual hh é a hora (com 1 ou 2 dígitos) e mm são os minutos da hora (com dois dígitos). O segundo formato tem o formato +m, no qual m é o número de minutos a serem aguardados. A palavra now é um nome alternativo para +0.


Exemplo:


shutdown -f -h +2 ”Falha na energia elétrica; Sistema sendo desligado”

shutdown -c “Energia elétrica restaurada; Desligamento Cancelado”


Vale lembrar que na maioria das distribuições Linux já trazem ativado um atalho para reinicializar o sistema, bastando pressionar Ctrl + Alt + Del e será executado o comando shutdown -t3 -r now.


3.1.5 - Alternando Entre Consoles:


Os sistemas Linux permitem que se trabalhe com mais de um console na mesma máquina. Normalmente, por default temos acesso a seis consoles texto, além de mais seis sessões do X Window, sendo que estes parâmetros podem ser alterados no sistema.


Ao inicializar a máquina e logar, normalmente utilizamos (por default) o primeiro console texto. Se quisermos alternar para o segundo console, basta pressionar Alt juntamente com uma das seis primeiras teclas de função (F1 a F6).


Portanto, Alt + F1 corresponde ao primeiro console, Alt + F2 ao segundo, até Alt + F6 que corresponde ao sexto console. As combinações de Alt + F7 a Alt + F12 são reservadas para alternar entre sessões do X Window (interface gráfica), como veremos mais adiante.



4 - COMANDOS BÁSICOS I


Neste capítulo, iniciaremos o contato com os comandos mais comuns e úteis do Linux. Nem todas as opções sobre cada comando serão descritas aqui, apenas as de uso mais prático para a maioria dos usuários.


Para conhecer o conjunto completo das opções de um determinado comando, o usuário é encorajado a buscar estas informações nas páginas de manual (man pages), conforme será descrito a seguir.


Os comandos serão tratados em diversos capítulos, para conciliar a introdução de novos conceitos e a sua aplicação na prática pelo usuário.



4.1 - ls


O comando ls lista o conteúdo de um diretório. Quando usado sem opções, lista todos os arquivos não ocultos do diretório, em ordem alfabética, preenchendo tantas colunas quantas couber na tela.


Opções:


-a Lista todos os arquivos presentes nos diretórios, inclusive os ocultos.


-k Caso o tamanho do arquivo seja listado, mostra-o em Kbytes.


-l Além do nome de cada arquivo, lista o tipo, permissões, número de ligações diretas, nome do dono, nome do grupo, tamanho em bytes e data (da modificação, a menos que outra data seja selecionada). Para arquivos com uma data anterior a 6 meses ou com mais de 1 hora no futuro, a data conterá o ano ao invés da hora e dia.