SlideShare una empresa de Scribd logo
1 de 138
Descargar para leer sin conexión
GNU/Linux - módulo 1 - Introdução
Licenciamento de Uso
Este documento é propriedade intelectual © 2002 do Centro de Computação da Unicamp e
distribuído sob os seguintes termos:
1. As apostilas publicadas pelo Centro de Computação da Unicamp podem ser reproduzidas e
distribuídas no todo ou em parte, em qualquer meio físico ou eletrônico, desde que os
termos desta licença sejam obedecidos, e que esta licença ou referência a ela seja exibida
na reprodução.
2. Qualquer publicação na forma impressa deve obrigatoriamente citar, nas páginas externas,
sua origem e atribuições de direito autoral (o Centro de Computação da Unicamp e seu(s)
autor(es)).
3. Todas as traduções e trabalhos derivados ou agregados incorporando qualquer informação
contida neste documento devem ser regidas por estas mesmas normas de distribuição e
direitos autorais. Ou seja, não é permitido produzir um trabalho derivado desta obra e
impor restrições à sua distribuição. O Centro de Computação da Unicamp deve
obrigatoriamente ser notificado (treinamentos@ccuec.unicamp.br) de tais trabalhos com
vista ao aperfeiçoamento e incorporação de melhorias aos originais.
Adicionalmente, devem ser observadas as seguintes restrições:
• A versão modificada deve ser identificada como tal
• O responsável pelas modificações deve ser identificado e as modificações datadas
• Reconhecimento da fonte original do documento
• A localização do documento original deve ser citada
• Versões modificadas não contam com o endosso dos autores originais a menos que
autorização para tal seja fornecida por escrito.
A licença de uso e redistribuição deste material é oferecida sem nenhuma garantia de qualquer
tipo, expressa ou implícita, quanto a sua adequação a qualquer finalidade. O Centro de
Computação da Unicamp não assume qualquer responsabilidade sobre o uso das informações
contidas neste material.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 2
GNU/Linux - módulo 1 - Introdução
Nota do Autor
Este documento é uma “sistematização” de capítulos criados por mim, em
conjunto com outros documentos de outras pessoas que desenvolveram ótimos
materiais, dicas e artigos relacionados ao GNU/Linux, e que os disponibilizaram
livremente. A lista destes documentos que tive como base para a criação deste
treinamento, encontra-se no capítulo “Bibliografia”. Gostaria que esse documento fosse
encarado como uma sistematização de documentos disponibilizados livremente e que
serão utilizados com o propósito de realizar treinamentos de GNU/Linux para quem ainda
não o conhece muito bem, mas que tem a curiosidade ou necessidade de aprender. Este
documento é livre, e os fontes estão disponibilizados para download no site do Centro de
Computação da Unicamp http://www.ccuec.unicamp.br.
Obrigado e bom proveito.
Fabio da Silva Santos
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 3
GNU/Linux - módulo 1 - Introdução
Índice
1. Introdução ao GNU/Linux.................................................................................................7
1.1 O que é GNU/Linux?........................................................................................8
1.2 História...........................................................................................................8
1.3 Algumas características.................................................................................9
1.4 O GNU/Linux e as distribuições....................................................................11
1.5 Sou novo usuário GNU/Linux, qual distribuição devo usar?..........................13
1.6 Entendendo o Software Livre?......................................................................16
1.7 Patentes de Software...................................................................................18
2. Instalação......................................................................................................................19
2.1 Antes da Instalação......................................................................................20
2.2 Instalação do Sistema Básico.......................................................................20
2.3 Configuração do Sistema..............................................................................45
3. Utilizando o sistema GNU/Linux.....................................................................................57
3.1 Os gerenciadores de janelas........................................................................58
3.2 Terminal Virtual (console)............................................................................61
3.3 Comandos básicos – nível 1...........................................................................62
3.3.1 – ls......................................................................................................62
3.3.2 – mkdir................................................................................................63
3.3.3 – rmdir................................................................................................63
3.3.4 – rm....................................................................................................63
3.3.5 – cd.....................................................................................................64
3.3.6 – pwd..................................................................................................64
3.3.7 – clear.................................................................................................65
3.3.8 – man..................................................................................................65
3.3.9 – apropos............................................................................................65
4. Sistemas de Arquivos....................................................................................................67
4.1 Partições..........................................................................................................68
4.2 Sistemas de Arquivos......................................................................................68
4.2.1 – EXT2................................................................................................69
4.2.2 – Journaling........................................................................................69
4.2.3 – EXT3................................................................................................69
4.2.4 – ReiserFS..........................................................................................70
4.2.5 – JFS...................................................................................................70
4.2.6 – XFS..................................................................................................70
4.2.7 – SWAP..............................................................................................70
4.2.8 – Qual Sistema de Arquivos devo Utilizar?.......................................71
4.3 - Identificação de Discos e Partições..............................................................71
4.4 - Pontos de Montagem....................................................................................72
5. Arquivos e Diretórios.....................................................................................................73
5.1 – Arquivos......................................................................................................74
5.2 – Tipo de Arquivos.........................................................................................74
5.3 – Nomes de Arquivos.....................................................................................76
5.4 – Diretórios....................................................................................................76
5.5 – Estrutura de Diretórios................................................................................76
5.6 – Caminhos....................................................................................................84
5.7 – Notações de Diretórios do Sistema.............................................................84
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 4
GNU/Linux - módulo 1 - Introdução
6. Utilizando o interpretador de comandos (shell).............................................................85
6.1 – O interpretador de comandos.....................................................................86
6.2 – Aviso de comando (prompt)........................................................................87
6.3 – Curingas (Wildcards)...................................................................................87
6.4 – Direcionadores............................................................................................90
6.5 – Alias............................................................................................................94
6.6 – Histórico dos comandos..............................................................................94
6.7 – Editor de textos “vi”...................................................................................95
6.8 – Comandos Básicos – nível 2........................................................................97
6.8.1 – history............................................................................................97
6.8.2 – tee.................................................................................................97
6.8.3 – grep...............................................................................................98
6.8.4 – cat..................................................................................................98
6.8.5 – tac................................................................................................100
6.8.6 – wc................................................................................................100
6.8.7 – find (utilização básica).................................................................101
6.8.8 – more............................................................................................102
6.8.9 – less..............................................................................................103
6.8.10 – touch..........................................................................................104
6.8.11 – ln................................................................................................105
7. Gerenciamento de Pacotes..........................................................................................107
7.1 – O que são pacotes?...................................................................................108
7.2 – Os pacotes Debian....................................................................................109
7.3 – Ferramentas de Gerenciamento de Pacotes.............................................110
8. Aplicativos para GNU/linux..........................................................................................125
8.1 – Suítes de Escritórios.................................................................................126
8.2 – Internet.....................................................................................................126
8.3 – Multimídia.................................................................................................129
8.4 – Gráficos.....................................................................................................131
8.5 – Desktop Publishing (DTP)..........................................................................131
8.6 – Visualizadores de Imagem........................................................................132
8.7 – Emuladores...............................................................................................132
8.8 – Editores de Texto......................................................................................133
8.9 – Desenvolvimento......................................................................................133
8.10 – Terminais Gráficos..................................................................................134
8.11 – Onde procurar softwares para GNU/Linux..............................................135
9. Bibliografia...................................................................................................................137
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 5
GNU/Linux - módulo 1 - Introdução
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 6
GNU/Linux - módulo 1 - Introdução
Capítulo 1
Introdução ao GNU/LinuxIntrodução ao GNU/Linux
Neste capítulo o usuário compreenderá o que é o GNU/Linux, sua
história, características, noções sobre distribuições, e uma
introdução do que é software livre.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 7
GNU/Linux - módulo 1 - Introdução
1.1- O que é GNU/Linux?
Em uma definição mais abrangente do que é GNU/Linux, podemos dizer que é um
sistema operacional de código-fonte aberto, e que é distribuído gratuitamente pela
internet. Tecnicamente falando, o GNU/Linux é um kernel. O Termo Kernel (ou núcleo)
propriamente refere-se ao sistema de software que representa a camada mais baixa de
interface com o hardware, sendo o responsável por gerenciar os recursos do sistema
computacional como um todo. É no kernel que estão definidas funções para operações
com periféricos (mouse, impressora, disco, interface serial/interface paralela),
gerenciamento de memória, entre outros. Resumidamente, o kernel é um conjunto de
programas que fornece aos programas de usuários (aplicativos), uma interface para
utilizar os recursos do sistema.
Sistemas completos construídos em torno do kernel do GNU/Linux (mais
conhecidos como “Distribuições GNU/Linux”) usam o sistema GNU que oferece uma shell
(interpretador de comandos, como o bash), utilitários (por exemplo, o whoami, que
mostra quem é o usuário autenticado no momento, o find, comando para pesquisar
arquivos em uma hierarquia de diretórios), bibliotecas (glibc), compiladores (compilador
C GCC), editores de texto (Emacs), e outros tipo de ferramentas. Por essa razão, Richard
M. Stallman, criador do Projeto GNU, pede aos usuários que se refiram ao sistema como
GNU/Linux. Além do sistema GNU, um Sistema GNU/Linux completo pode conter outros
softwares como o XOrg ou XFree86 (servidores gráficos), Apache (servidor web) ,
PostgreSQL e MySQL (banco de dados), KDE e GNOME (gerenciadores de janelas),
Mozilla FireFox (navegador web), Mozilla Thunderbird e Evolution (leitores de e-mails),
entre outros softwares livres (e as vezes não-livres) desenvolvidos por indivíduos e
grupos ao redor do mundo.
1.2 - História
O kernel do GNU/Linux foi originalmente desenvolvido como passatempo por Linus
Torvalds, um estudante de computação da Universidade de Helsinki, na Finlândia. Sua
inspiração foi uma pequena versão do Unix desenvolvida por Andrew Tannenbaun
chamado Minix. Ele queria um sistema operacional que fosse semelhante ao Unix, com
todas as suas funcionalidades e , ainda, que pudesse utilizá-lo num PC. A partir dessa
idéia, Linus começou a trabalhar nesse que seria o futuro kernel do sistema operacional
que hoje é chamado de GNU/Linux. Isso tudo aconteceu em meados de 1991, e em 5 de
outubro deste mesmo ano, a seguinte mensagem circulou na UseNet:
“...Como eu mencionei há um mês, estou trabalhando em uma versão free de
um sistema semelhante ao Minix para computadores AT-386. Ele já alcançou o
estágio de ser usável (embora possa não ser dependendo do que você fazer), e
pretendo distribuir o código-fonte. É apenas a versão 0.02, mas já consegui
rodar nele o BASH, GCC, GNU-make, GNU-sed, compress, etc.”
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 8
GNU/Linux - módulo 1 - Introdução
Esta mensagem era assinada por Linus Torvalds, e ninguém adivinharia que ela
estaria marcando o início de um movimento que, em menos de 10 anos, já superava
trinta milhões de seguidores, e que hoje se tornou um dos sistemas operacionais mais
utilizados no mundo em servidores (e agora a caminho do mundos dos desktops!),
graças ao seu sistema colaborativo de desenvolvimento, de ajuda aos usuários, e de
divulgação por parte dos adeptos de um sistema operacional livre, que aos poucos põe
fim ao monópolio tecnológico imposto por grandes empresas de software, principalmente
pela Microsoft (líder no mercado de sistemas operacionais para desktops), que oprime o
desenvolvimento do conhecimento tecnológico de países “emergentes” como Brasil, que
dá um grande exemplo adontando preferencialmente as soluções em software livre com
apoio do governo federal, como mostra o projeto de lei do Senado Número 330, DE 2003,
Altera a redação do art. 45 da Lei número 8.666:
“5o. Somente será realizada licitação ou contratação direta, com base no
inciso II do art. 24, para aquisição de programas de informática quando a
autoridade competente acolher, em despacho motivado, parecer técnico que
conclua pela ausência de programas abertos gratuitos, capazes de suprir
adequadamente as necessidade da Administração.”
Portanto, adotar preferencialmente soluções livres é dar um voto de confiança
para que todas as pessoas possam ter a oportunidade e a opção de participarem da
inclusão digital, a qual corre em grande velocidade mundo a fora, e no caso do Brasil,
com software livre, sendo através de empresas, escolas, telecentros, e qualquer
instituição que necessite de recursos de informática para auxiliar em seus serviços
rotineiros.
1.3- Algumas Características
Neste item estão descritas algumas das muitas características do GNU/Linux, as
quais são muito vantajosas em relação à outros sistemas operacionais:
✔ É livre e desenvolvido voluntariamente por programadores experientes, hackers e
contribuidores espalhados ao redor do mundo, que tem como objetivo, a contribuição
para a melhoria e crescimento deste sistema operacional;
✔ Não é requerida uma licença para uso. O GNU/Linux é licenciado de acordo com os
termos da GPL (GNU Public Licence);
✔ Não precisa de um processador potente para funcionar. O sistema roda bem em
computadores 386SX 25MHz com 4MB de RAM (sem rodar o sistema X, que é
recomendado 8MB de RAM), sendo um 386SX com 2MB de RAM e 40MB de disco
rígido para uma instalação básica e funcional;
✔ Por ser um sistema operacional de código aberto, você pode ver o que código-fonte
faz e adaptá-lo as suas necessidades ou de sua empresa. Esta característica é uma
segurança a mais para empresas e outros que não querem ter seus dados roubados
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 9
GNU/Linux - módulo 1 - Introdução
(você não sabe o que um sistema operacional sem código-fonte aberto faz na
realidade enquanto está processando um programa);
✔ Multitarefa e multiusuário;
✔ Convive sem nenhum conflito com outros sistemas operacionais (DOS, Microsoft
Windows, OS/2, etc), no mesmo computador;
✔ Acessa corretamente discos formatados pelo DOS, Microsoft Windows, Novell, OS/2,
NTFS, MAC, SunOS, Amiga, etc;
✔ Os sistemas de arquivos que podem ser usados com o GNU/Linux como EXT2, EXT3,
ReiserFS, etc, organizam os arquivos de forma inteligente evitando fragmentação e
fazendo um poderoso sistema para aplicações exigentes e gravações intensivas;
✔ Roda aplicações Microsoft Windows através do WINE;
✔ Não há a necessidade de reiniciar o sistema após modificar a configuração de
qualquer periférico ou parâmetro de rede. Somente é necessário reiniciar o sistema no
caso de uma instalação interna de um novo periférico ou falha em algum hardware
(queima do processador, placa-mãe, etc.);
✔ Modularização – O GNU/Linux somente carrega para a memória o que é usado durante
o processamento, liberando totalmente a memória assim que o programa ou
dispositivo é finalizado;
✔ Devido a modularização, os drivers dos periféricos e recursos do sistema podem ser
carregados e removidos completamente da memória RAM a qualquer momento;
✔ Os drivers (módulos) ocupam pouco espaço quando carregados na memória RAM
(cerca de 6KB para a placa de rede NE2000, por exemplo);
✔ Consultores técnicos especializados no suporte ao sistema espalhados por todo o
mundo;
✔ Na parte dos desktops, possui gerenciadores de janelas amigáveis e que já podem se
considerar alternativa ao Microsoft Windows, como por exemplo o KDE, GNOME e
XPDE;
✔ Possui uma porção significativa de aplicativos para os mais diversos fins para usuários
mais leigos, como por exemplo, aplicativos de escritórios, navegadores web e leitores
de e-mail;
Analisando algumas das características do sistema GNU/Linux, podemos concluir
que ele já está maduro e estável para ser utilizado no mercado e em instituições de
pesquisas de diversos seguimentos, como já acontece nos dias de hoje, tendo como
parceiros e incentivadores, grandes empresas como IBM e Novell, além de instituições
de ensino superior como por exemplo a Unicamp e UNIVATES, e órgãos
governamentais como a Prefeitura de Monique na Alemanha, Metrô de São Paulo,
os Governos do Estado do Paraná e do Rio Grande do Sul (os quais são os maiores
incentivadores), Prefeitura de Rio das Ostras-RJ e o Governo Federal.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 10
GNU/Linux - módulo 1 - Introdução
1.4- O GNU/Linux e as Distribuições
Logo que Linus Torvalds passou a disponibilizar o GNU/Linux, ele apenas
disponibilizava o kernel com alguns comandos básicos. O próprio usuário devia arrumar
os outros programas, compilá-los e configurá-los. Até para um hacker isto não é nada
fácil.
Para nos poupar deste trabalho de montar um sistema do zero, como faziam os
pioneiros, temos hoje as distribuições, que nada mais são do que grandes pacotes de
software que trazem instaladores, documentações e outras facilidades, que poupam o
usuário de tarefas mais espinhosas de instalação e configuração do sistema.
Embora seja possível desenvolver sua própria distribuição GNU/Linux do zero,
compilando o Kernel e adicionando um a um os programas desejados, é muito mais
simples colocar um CD na bandeja, responder a algumas perguntas e se deparar com um
sistema configurado, pronto para usar.
Entre as distribuições mais conhecidas, estão: SuSe, Conectiva/Mandriva, Fedora,
Gentoo, Debian, Slackware, Kurumin e Knoppix. As diferenças básicas entre elas estão
em como são organizados e pré-configurados os aplicativos, instaladores e ferramentas
de configuração disponibilizadas para auxiliar na administração do sistema GNU/Linux.
Outras diferenças entre as distribuições estão nos seus sistemas de empacotamento,
que podem ser o RPM, DEB ou TGZ, em alguns casos a estrutura de diretórios, que
normalmente seguem o padrão LSB (Linux Standard Base) que usa o FHS (Filesystem
Hierarchy Standard), e a versão da biblioteca básica, glibc (biblioteca que contém as
funcões básicas para o funcionamento do sistema operacional GNU/Linux). Uma
ilustração de como são compostas as distrubuições encontra-se na figura 1.1.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 11
GNU/Linux - módulo 1 - Introdução
Figura 1.1 – Ilustração de como são compostas as distribuições.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 12
GNU/Linux - módulo 1 - Introdução
1.5- Sou novo usuário GNU/Linux, qual
distribuição devo usar?
Este é o grande problema em existir várias distribuições, qual usar? O primeiro
passo é pesquisar discussões em fóruns e sites sobre GNU/Linux e pedir auxílio. Depois
analisar a pesquisa. Porém, tome cuidado, pois normalmente o usuário fica desapontado
com a primeira distribuição escolhida. Por isso, é bom escolher a distribuição que mais
tenha afinidade com você, e para que isso ocorra, deve-se experimentar várias
distribuições e escolher aquela que mais lhe agradou. O problema é que o usuário não
vai querer instalar várias distribuições para achar aquela que fará sentir-se confortável,
pois é muito trabalho, e o usuário novo teria dificuldade. Para estas pessoas a indicação é
procurar por distribuições de mais fácil manipulação (considerando que varia pelo gosto
da pessoa). Abaixo encontram-se descrições mais detalhada das distribuições mais
conhecidas:
✔ SuSe : Distribuição alemã, adquirida pela americana Novell, que vem se
destacando pelo seu grande crescimento no mercado corporativo, sendo a
distribuição que mais cresce atualmente nesse setor. O SuSE Linux sempre se
destacou por ter o melhor suporte a hardware dentre as distribuições
existentes, isso graças à inclusão de drivers não-livres (gratuitos ou pagos) com
seu sistema operacional. O SuSE possui uma ferramenta muito versátil, o YAST,
através da qual é possível configurar todo o sistema, além de gerenciar os
programas instalados, tudo ao alcance do mouse. A união dessa facilidade como
ótimo suporte comercial vem fazendo do SuSE uma das melhores alternativas
para grandes empresas, que não podem abrir mão de suporte técnico
especializado e sempre à mão.
✔ Red Hat :Lançada oficialmente em novembro de 1994, a Red Hat foi a empresa
pioneira no ramo de GNU/Linux, tornando-se rapidamente a maior empresa do
mundo a trabalhar exclusivamente com o sistema operacional livre. Ainda hoje,
a Red Hat é a distribuição mais utilizada no mundo, e muitas outras
distribuições famosas como SuSe e Mandriva são derivadas dela. Pioneira no
uso de ferramentas para configuração e manutenção do sistema, o Red Hat foi e
ainda é usado principalmente em servidores, a contragosto de muitos que
dizem que seu desempenho não é lá dos melhores, apesar da extrema
facilidade do gerenciamento do sistema, fornecida pelas ferramentas incluídas
na distribuição. No atual modelo de negócios, a Red Hat está desenvolvendo
somente soluções para empresas, através de distribuições fechadas, não
disponíveis para download.
✔ Fedora : Quando a Red Hat decidiu mudar seu modelo de negócios e trabalhar
apenas com soluções para o mercado corporativo, deixou de disponibilizar a sua
distribuição para download sob uma licença de Software Livre. Isso causou uma
certa revolta na comunidade, que alegava que a Red Hat a estava traindo.
Temendo retaliação e boicote, a Red Hat decidiu criar uma versão livre de seu
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 13
GNU/Linux - módulo 1 - Introdução
sistema operacional, voltado para o desktop, e disponibilizá-la abertamente para
download. Chamado Fedora, o projeto alcançou um grande sucesso, e
atualmente é utilizado por um número expressivo de usuários ao redor do
mundo. Por possuir as mesmas ferramentas do Red Hat, a migração dos
usuários aconteceu de forma tranquila e nem um pouco traumática. O Fedora é
mantido pela comunidade, e gerenciado pela Red Hat. Atualmente ele está na
versão Core 4.
✔ Conectiva (Mandriva) : A primeira distribuição GNU/Linux nacional criada em
1995. Baseada no Red Hat, o Conectiva Linux destacou-se graças ao ótimo
suporte ao hardware omumente usado no Brasil e aos seus programadores que
desenvolveram diversas ferramentas utilizadas posteriormente por muitas
distribuições, como o gerenciador de pacotes Synaptic e o APT for RPM, uma
adaptação do APT do Debian para sistemas baseados no Red Hat. A Conectiva
tornou-se rapidamente a maior empresa de Linux da América Latina, tendo sido
recentemente adquirida pela francesa MandrakeLinux, tornando-se a
distribuição Mandriva. A Conectiva sempre disponibilizou os seus produtos sob a
licença GPL, exceto as versões para empresas do seu sistema operacional.
✔ Mandrake (Mandriva) : Distribuição francesa baseada no Red Hat, que com o
tempo tomou características próprias e assumiu um sucesso que tornou a
Mandrakelinux a maior empresa do ramo de Linux na Europa. O principal trunfo
do Mandrake é a facilidade de uso. Tudo é simples de fazer, desde a instalação
do sistema até a sua configuração, instalação de novos itens de hardware e
gerenciamento dos programas instalados. Suporta vários idiomas, incluindo o
português brasileiro, e possui muitos serviços para usuários, como o Mandrake
Club, onde o membro recebe as últimas atualizações sobre segurança,
softwares, e outros, de forma rápida e automatizada. Recentemente, a
Mandrakelinux comprou a brasileira Conectiva, tornando-se também a maior
empresa do ramo de Linux da América Latina, e lançando a nova distribuição, o
Mandriva.
✔ Slackware : Mais antiga das distribuições, criada em abril de 1993 pelo
irlandês, Patrick Volkerding, o Slackware é uma distribuição tradicionalista,
voltada para usuários que conhecem o sistema e sabem o que estão fazendo. O
objetivo de Patrick é fornecer um ambiente mais parecido possível com um
sistema UNIX padrão, mantendo a simplicidade e oferecendo total controle para
o administrador. Além disso, o Slackware é a única distribuição que não aplica
patches (pacotes de correção e modificações) nos seus pacotes, ficando essa
tarefa a cargo do usuário, se assim achar necessário. O melhor uso do
Slackware é em servidores dedicados, geralmente estáticos no sentido de não
requererem atualizações constantes de software, e onde o sistema seja
administrado por uma pessoa apenas, que sabe muito bem o que está fazendo.
O Slackware tem a fama de ser uma distribuição difícil e sem muitos recursos. É
comum os iniciantes enfrentaram problemas com a configuração do servidor
gráfico.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 14
GNU/Linux - módulo 1 - Introdução
✔ Debian : O Debian foi criado por Ian Murdock em 1993, inicialmente
patrocinado pelo projeto GNU da Free Software Fundation. Hoje, os projetistas
do Debian entendem-no como um descendente direto do Projeto GNU. O
Debian atualmente inclui mais de 8250 pacotes de software, facilmente
instaláveis através de uma ferramenta chamada APT. Esses pacotes são em sua
maioria softwares livres disponibilizados sob a licença GPL. Alguns deles não são
livres, mas ainda assim gratuitos. Você pode encontrar uma lista e descrições
dos pacotes atualmente disponíveis no Debian em qualquer um dos seus sites
mirrors (espelhos). Um diferencial do Debian sobre as demais distribuições é
que ele é o único sistema que não é mantido, supervisionado ou patrocinado por
alguém ou alguma organização. Todo o sistema, incluindo suas ferramentas e os
pacotes que utiliza são mantidos por diversos desenvolvedores ao redor do
mundo. Mas nem por isso o processo de desenvolvimento do Debian é
desorganizado, muito pelo contrário, é um dos processos mais organizados que
se conhece. As pessoas que se candidatam a serem mantenedores do sistema
passam por testes dificílimos, ficam um longo período em experiência e, se
aprovados, têm de assinar um termo de responsabilidade onde se
comprometem a garantir a continuidade do sistema operacional, zelando pela
qualidade e segurança de tudo o que passar por suas mãos. Prega-se que o
Debian é a distribuição mais testada do mundo, e isso é de fato verdade. O
processo de inclusão de um recurso no sistema ou um pacote no repositório é
muito rígido, o que garante uma confiabilidade total na integridade e segurança
do sistema.
✔ Gentoo : Criado por Daniel Robins, o Gentoo é uma distribuição que pode ser
definida como um “Linux From Scratch automatizado”. A instalação é feita
segundo os mesmo princípios de uma instalação de GNU/Linux a partir do zero,
com todos os pacotes sendo compilados um a um, incluindo o kernel. A
diferença é que o Gentoo permite automatizar essas tarefas, através de um
sistema de gerenciamento de pacotes, o Portage, que busca e baixa o pacote da
Internet, compila-o e instala-o automaticamente, de acordo com as
configurações feitas pelo usuário. O Gentoo possui arquivos de configuração
próprios que definem as opções que devem ser utilizadas pelo compilador, de
forma a otimizar os pacotes para uso na máquina local. Quando bem
configurado, o Portage acaba produzindo um sistema onde o desempenho é o
ponto mais marcante. Outro ponto de destaque o Gentoo é a rica documentação
disponível em seu site oficial. Mesmo usuário de outras distribuições podem se
beneficiar de documentos que tratam de assuntos fundamentais como
particionamento, formatação e sistema de arquivos, muitos desses documentos
já traduzidos pela comunidade brasileira do Gentoo.
✔ Knoppix : Distribuição criada por Laus Knooper que oferece a possibilidade de
rodar o sistema a partir do CD-ROM. O Knoppix é muito popular, sendo muito
utilizado para demonstrações do GNU/Linux, uma vez que pode-se rodar um
sistema completo, repleto de aplicativos, a partir de um CD, sem necessidade
de instalação.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 15
GNU/Linux - módulo 1 - Introdução
✔ Kurumin : Distribuição nacional criada por Carlos Eduardo Morimoto. O Kurumin
é baseado no Knoppix, tendo sobre esse a vantagem de ser adaptado à
realidade do usuário brasileiro, com ferramentas de instalação de hardwares
muito comuns no Brasil, como modems e outros dispositivos. Por ser baseado no
Knoppix, o Kurumin também roda a partir do CD, e pode ser rapidamente
instalado no computador.
✔ Debian-BR-CDD : Este projeto é uma iniciativa da comunidade brasileira
Debian-BR para adaptar a distribuição Debian à realidade do usuário brasileiro.
Seu grande apelo está na facilidade de instalação e no belo aspecto visual. O
Debian-BR-CDD 1.0 pre5 utiliza o GNOME como gerenciador de janelas padrão,
inclui uma excelente documentação para o usuário iniciante e um link para abrir
o canal de IRC #debian-br-cdd, onde é possível tirar dúvidas e relatar bugs
diretamente para os desenvolvedores do sistema.
✔ Muriqui Linux : Esse projeto é mantido e desenvolvido pelo Instituto Doctum
de Educação e Tecnologia. Trata-se de uma distribuição baseada no Debian (um
tipo de CDD, Custom Debian Distribution), com o diferencial de estar
completamente traduzido para o português brasileiro, e pelo fato de ele vir com
o instalador Anaconda, o mesmo usado em distribuições como o Red Hat e o
Fedora. Isso o torna um sistema Debian muito fácil de instalar. O nome da
distribuição foi baseada no nome de um macaco, considerado o maior da
américa latina, que só existe em alguns poucos lugares do Brasil. É uma
distribuição nova, mas que pode se tornar sucesso em um futuro próximo.
✔ Ubuntu : Desenvolvido na África do Sul, o Ubuntu tem feito muito sucesso
desde o seu lançamento, graças às suas ferramentas que tornam muito prático
o uso do sistema, e também pelo seu visual caprichado, utilizando X.org como
servidor gráfico padrão.
1.6- Entendendo o Software Livre
“Software Livre” é uma questão de liberdade, não de preço. Para entender o
conceito, deve-se pensar em “liberdade de expressão”, e não em “almoço grátis”.
“Software Livre” refere-se a liberdade dos usuários executarem, copiarem, distribuírem,
estudarem, modificarem e aperfeiçoarem o software. Mais precisamente, ele se refere a
quatro tipos de liberdade, para os usuários de software:
✔ A liberdade de executar o programa, para qualquer propósito (Liberdade número 0 –
zero);
✔ A liberdade de estudar como o programa funciona, e adaptá-lo para as suas
necessidades (Liberdade número 1). Acesso ao código-fonte é um pré-requisito para
esta liberdade;
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 16
GNU/Linux - módulo 1 - Introdução
✔ A liberdade de redistribuir cópias de modo que você possa ajudar ao próximo
(Liberdade número 2);
✔ A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo
que toda a comunidade se beneficie (Liberdade número 3). Acesso ao código-fonte é
um pré-requisito para esta liberdade;
Um programa é software livre se os usuários tem todas estas liberdades. Portanto,
você deve ser livre para redistribuir cópias, seja com ou sem modificações, seja de graça
ou cobrando uma taxa pela distribuição, para qualquer um em qualquer lugar. Ser
livre para fazer essas coisas significa (entre outras coisas) que você não tem que pedir
ou pagar pela permissão. Você deve também ter a liberdade de fazer modificações e
usá-las privativamente no seu trabalho ou lazer, sem nem mesmo mencionar que elas
existem. Se você publicar as modificações, você não deve ser obrigado a avisar a
ninguém em particular, ou de nenhum modo em especial.
“Software Livre” não significa “não-comercial”. Um programa livre deve estar
disponível para uso comercial, desenvolvimento comercial, e distribuição comercial. O
desenvolvimento comercial de software livre não é incomum; tais softwares livres
comerciais são muito importantes. Portanto, você pode ter pago para receber cópias de
software livres, ou você pode ter obtidos cópias sem nenhum custo. Mas
independentemente de como você obteve a sua cópias, você sempre tem a liberdade de
copiar e modificar o software, ou mesmo vender cópias, VOCÊ É LIVRE PARA ISSO.
“Softwares livres“ distribuídos pelo licença GPL (GNU Public Licence) seguem um
conceito conhecido como Copyleft, um trocadilho com o termo Copyright, que
traduzindo literalmente significa “deixamos copiar”, que é o que garante a liberdade dos
usuários de modificarem e distribuírem sua modificações. Ou seja, um software livre sem
Copyleft pode ser tornado proprietário por um usuário. Já um software protegido por uma
licença que ofereça Copyleft deverá, se distribuído, ser distribuído sob a mesma licença,
ou seja, repassando seus direitos. Em todo caso, não é necessário redistribuir um
software livre modificado.
O movimento do “Software Livre” foi criado em 1984 por Richard Stallman, um
pesquisador do MIT (Massachusetts Insitute Technology), que não era a favor de grandes
empresas de software imporem restrições aos usuários com o uso do contrato de
licenças de software. Desde então, criou o projeto GNU (GNU is not UNIX), fundando a
Free Software Foundation (FSF).
A licença mais conhecida no mundo do software livre é a GPL (GNU Public
Licence), que é uma das licenças que garantem todas essas liberdades listadas e
comentadas acima, porém, existem outros tipos de licenças de software que são
semelhantes, mas não iguais à GPL, como por exemplo a BSD, Creative Commons, entre
outras.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 17
GNU/Linux - módulo 1 - Introdução
1.7- Patentes de Software
Outro motivo importante que justifica a adoção do Software Livre são as chamadas
patentes de software. Imagine que uma empresa patenteasse o duplo-clique, por
exemplo, e passasse a exigir que qualquer um que utilizasse esse recurso em seus
softwares tivessem que pagar por isso. E se tudo o que for criado na área de software for
patenteado, e tivemos que pagar para utilizar esses recursos, como poderá haver
desenvolvimento, no futuro? Somente as grandes companhias poderão desenvolver
software, e eles terão de ser pagos.
Imagine que terrível seria se todos os programas que você utiliza em seu
computador lhe custassem alguns dólares. Isso tornaria os programas mais caros que o
próprio computador, o que inibiria a aquisição de computadores pelos menos
favorecidos. O que acontece então é a estagnação total, e o domínio do conhecimento
pelas grandes companhias.
Existe uma grande movimentação por parte dos Estados Unidos para que o seu
sistema de patentes seja implementado nos outros países. Recentemente, isso
aconteceu na União Européia, a contragosto de muitos. No Brasil e outros países da
América Latina tal sistema de patentes não existe, o que nos assegura uma certa
liberdade no uso de tecnologias de software patenteadas pelas empresas americanas.
Entretanto, é preciso ter consciência da importância de não impôr qualquer sistema de
proteção ao direito intelectual que venha a inibir a disseminação do conhecimento e o
desenvolvimento tecnológico, o que nos deixaria à mercê da vontade das grandes
companhias americanas, que não estão nem um pouco interessadas no desenvolvimento
tecnológico e na disseminação do conhecimento, mas tão somente em encher os bolsos
às custas de usuários sem acesso à informação, escravos de seus programas fechados e
seus Service Packs.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 18
GNU/Linux - módulo 1 - Introdução
Capítulo 2
Instalação do GNU/LinuxInstalação do GNU/Linux
Neste capítulo o usuário compreenderá como é organizada uma
instalação do GNU/Linux independente da sua distribuição, e o
que é necessário saber antes e durante a instalação para se ter
uma sistema enxuto e funcional.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 19
GNU/Linux - módulo 1 - Introdução
2.1– Antes da Instalação
A instalação de um sistema GNU/Linux não é uma tarefa difícil como muitos
usuários pensam, ela é apenas um processo mais detalhado e customizável do que, por
exemplo, a instalação de um sistema Microsoft Windows. Para que este procedimento
seja bem sucedido, é indicado seguir algumas dicas básicas:
1. Antes da instalação, verifique se existe outro sistema operacional
instalado na máquina;
2. Caso exista outro sistema operacional (normalmente o Microsoft
Windows) que esteja ocupando o espaço disponível em disco, é
necessário fazer um redimensionamento para que o GNU/Linux possa ser
instalado;
3. Faça um backup de todos os seus arquivos mais importantes e execute a
ferramenta de desfragmentação de discos antes de realizar o
redimensionamento (Apenas no caso de existir outro sistema operacional
na máquina);
4. Mesmo que os instaladores possuam o recurso de detecção automática
de hardware, sempre tenha em mãos a listagem de hardware da sua
máquina (monitor, placa de vídeo, placa de rede, placa de fax modem,
disco rígido SCSI, etc.), pois nem todos os instaladores possuem um
abrangente banco de dados de drivers;
5. Dê preferência à instalação via boot no CD-ROM, que é a mais comum e a
mais simples disponível até o momento;
6. Em muitos casos, a máquina está localizada dentro de uma rede interna,
então peça ao administrador da rede as seguintes informações:
✔ Endereço IP da máquina;
✔ Nome da máquina;
✔ Gateway;
✔ Servidores de Nomes (DNS);
✔ domínio;
7. Tenha em mãos os cd's da sua distribuição GNU/Linux (Pode-se instalar
um sistema através da rede, NFS, FTP ou HTTP, com um boot pelo
disquete ou mesmo pelo CD);
2.2 – Instalação do Sistema Básico
Independente de existirem diversas distribuições, que possuem seus próprios
sistemas de instalação, cada qual com suas características individuais, o processo de
instalação do GNU/Linux, no geral, segue um padrão, o qual pode-se resumir da seguinte
forma:
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 20
GNU/Linux - módulo 1 - Introdução
Normalmente uma instalação de GNU/Linux possui estas características, porém,
como existem diversas distribuições com seus próprios instaladores, algumas destas
etapas podem não existir, podem fazer parte de outro item do instalador, ou mesmo
podem ser executadas sem aparecerem visualmente para o usuário.
A distribuição utilizada como base para o curso é o Debian GNU/Linux 3.1, ou
Debian “Sarge”. Esta distribuição é desenvolvida e atualizada através do esforço de
voluntários espalhados ao redor do mundo, seguindo o estilo de desenvolvimento
GNU/Linux. Por este motivo, foi adotada como a distribuição oficial do projeto GNU.
Apesar da sua instalação ser inteiramente em modo texto, pode-se instalar um sistema
completo com uma enorme facilidade e rapidez. Sua instalação é dividida nas seguintes
etapas:
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 21
✔ Tipo de instalação (modo texto, gráfico, expert, etc.)
✔ Detecção de hardware
✔ Seleção do idioma
✔ Seleção do layout do teclado
✔ Seleção e configuração do mouse
✔ Perfis de instalação
✔ Configurar rede
✔ Particionamento de disco
✔ Instalação de pacotes
✔ Configurar o modo gráfico
✔ Monitor
✔ Placa de vídeo
✔ Nº de cores / resolução
✔ Configuração do fuso horário
✔ Configuração de usuários e senhas
✔ Configuração do gerenciador de inicialização
(bootloader)
✔ Disco de inicialização
✔ Finalização da instalação
GNU/Linux - módulo 1 - Introdução
A partir de agora, vamos detalhar o processo de instalação do Debian GNU/Linux
3.1 “Sarge”, passo-a-passo, com apresentação das telas que fazem parte do instalador.
Lembrando que as opções selecionadas fazem parte dos exemplos deste curso.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 22
✔ Tipo de instalação (linux26, expert, etc.)
✔ Seleção do idioma
✔ Seleção do layout do teclado
✔ Detectar e montar CD-ROM
✔ Carregar componentes do instalador
✔ Detectar hardware de rede
✔ Configurar rede
✔ Detectar discos e outros hardwares
✔ Particionar disco
✔ Instalar Sistema Básico
✔ Instalar o GRUB em um disco rígido
✔ Configuração do fuso horário
✔ Configurar usuários e senhas
✔ Configurar o APT (repositório de pacotes)
✔ Seleção dos perfis de instalação
✔ Configurar o modo gráfico
✔ Monitor
✔ Placa de vídeo
✔ Nº de cores / resolução
✔ Configurar o EXIM
✔ Finalização da Configuração e da Instalação
✔ Inicialização do Modo Gráfico
GNU/Linux - módulo 1 - Introdução
✔ Tipo de instalação (linux26, expert, etc.)
A figura 2.2.1 mostra a tela de apresentação do instalador, logo após a
inicialização do computador pela mídia de instalação do Debian GNU/Linux Sarge. Esta
pode ser adquirida em um dos mirrors oficiais, que encontram-se espalhados pelo
mundo, e listados em http://www.debian.org/CD/http-ftp/ . Precisa-se apenas do CD 1
para realizar uma instalação funcional e enxuta.
Figura 2.2.1 – Primeira tela de apresentação do instalador.
Pressionando a tecla F1, podemos visualizar um menu com diversar informações
sobre a instalação e sobre o Projeto Debian GNU/Linux. Utilize o método de instalação
“linux26” (figura 2.2.2).
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 23
GNU/Linux - módulo 1 - Introdução
Figura 2.2.2 – Menu de opções do instalador.
✔ Seleção do Idioma
Nesta etapa, faz-se a seleção do idioma usado no processo de instalação (figura
2.2.3). Selecione a opção “Portuguese (Brazil) - Português do Brasil”.
Figura 2.2.3 – Seleção do idioma.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 24
GNU/Linux - módulo 1 - Introdução
✔ Seleção do layout do teclado
Escolha o layout do teclado que você está usando (figura 2.2.4). O instalador te
oferece a opção mais comum, baseada na sua escolha do idioma, mas obviamente, você
pode mudar se desejar. Selecione a opção “Português Brasileiro (layout ABNT2)”.
Figura 2.2.4 – Escolha do layout do teclado.
✔ Detectar e montar CD-ROM
O instalador executa a detecção do CD-ROM (figura 2.2.5) para poder carregar na
memória os componentes necessários ao seu funcionamento (figuras 2.2.6 e figura
2.2.7).
Figura 2.2.5 – Detecção do CD-ROM.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 25
GNU/Linux - módulo 1 - Introdução
Figura 2.2.6 – Lendo os componentes do instalador no CD-ROM.
Figura 2.2.7 – Carregando na memória os componentes do instalador.
✔ Configurar Rede
A detecção do hardware de rede é feita automáticamente (figura 2.2.8), e se a
máquina faz parte de uma rede, o instalador tenta realizar a configuração automática via
DHCP (figura 2.2.9). Caso contrário, será exibida uma mensagem de erro (figura 2.2.10)
e o menu de opções da configuração de rede. Selecione a opção “Configurar a Rede
Manualmente” (figura 2.2.11).
Figura 2.2.8 – Detectando o hardware de rede.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 26
GNU/Linux - módulo 1 - Introdução
Figura 2.2.9 – Configuração de rede via DHCP.
Figura 2.2.10 – Mensagem de erro exibida por não achar nenhum servidor DHCP.
Figura 2.2.11 – Menu de opções da Configuração de Rede.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 27
GNU/Linux - módulo 1 - Introdução
As informações de rede como endereço IP (figura 2.2.12), máscara de rede (figura
2.2.13), gateway (figura 2.2.14), servidores de nomes, ou DNS (figura 2.2.15), nome da
máquina (figura 2.2.16) e domínio da rede(figura 2.2.17), serão necessárias nesta etapa
da instalação.
Figura 2.2.12 – Endereço IP.
Figura 2.2.13 – Máscara de Rede.
Figura 2.2.14 – Gateway.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 28
GNU/Linux - módulo 1 - Introdução
Figura 2.2.15 – Servidores de Nomes, ou DNS.
Figura 2.2.16 – Nome da Máquina.
Figura 2.2.17 - Domínio da rede.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 29
GNU/Linux - módulo 1 - Introdução
✔ Detectar Discos e outros Hardwares
Nesta etapa é feita a detecção dos disco e outros hardwares relacionados (figura
2.2.18).
Figura 2.2.18 – Detecção de de discos e outros hardware relacionados.
✔ Particionar Discos
Após realizar a detecção automática dos discos, o instalador inicializa o
particionador (figura 2.2.19) e exibe um menu onde é listado todos discos detectados
(figura 2.2.20). Selecione a opção “Editar manualmente a tabela de particões”.
Figura 2.2.19 – Iniciando o particionador.
Figura 2.2.20 – Menu do particionador.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 30
GNU/Linux - módulo 1 - Introdução
Como neste custo já existem partições configuradas, formatadas e montadas, você
irá inicialmente removê-las para aprender como realizar o processo de particionamento
de discos. Selecione a primeira partição (swap)(figura 2.2.21), e na próxima tela (figura
2.2.22), selecione a opção “Remover a partição”.
Figura 2.2.21 – Selecione a primeira partição para remoção.
Figura 2.2.22 – Selecione a opção “Remover a partição”.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 31
GNU/Linux - módulo 1 - Introdução
O particionador irá atualizar a tabela de partições da máquina (figura 2.2.23), e
depois voltará novamente ao menu onde estão listadas todas as partições configuradas
no(s) respectivo(s) disco(s) (figura 2.2.24). Repita a operação anterior com a segunda
partição (reiserfs), selecionando-a, e na próxima tela, escolhendo a opção “Remover a
partição” (figura 2.2.25).
Figura 2.2.23 – Atualizando a tabela de partições.
Figura 2.2.24 – Menu do particionador.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 32
GNU/Linux - módulo 1 - Introdução
Figura 2.2.25 – Selecione a opção “Remover a partição”.
Novamente é apresentado o menu do particionador, com a tabela de
partições sem nenhuma configuração. Nesta instalação será utilizado um esquema de
particionamento básico, indicado para iniciantes. Siga as orientações enumeradas para
criar as partições. Cada item contém a referência das telas exibidas durante o
particionamento para que o usuário possa localizar-se durante a execução dos
procedimentos.
1. Selecione a área do disco que contenha espaço livre para criar as partições
(figura 2.2.26):
Figura 2.2.26 – Selecionar área do disco para particionar.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 33
GNU/Linux - módulo 1 - Introdução
2. Primeiramente, cria-se uma partição de SWAP (Área de troca) para o sistema.
Selecione a opção “Criar uma nova partição” (figura 2.2.27):
Figura 2.2.27 – Criar uma partição de SWAP.
3. Coloque neste campo o valor “128 MB“ (Entre os valores “128” e “MB” coloque
um espaço em branco) (figura 2.2.28):
Figura 2.2.28 – informando o valor do tamanho da partição de SWAP.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 34
GNU/Linux - módulo 1 - Introdução
4. Selecione a opção “Primária” (figura 2.2.29):
Figura 2.2.29 – Tipo de partição.
5. Selecione a opção “Início” (figura 2.2.30):
Figura 2.2.30 – Posicionamento da partição de SWAP no disco.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 35
GNU/Linux - módulo 1 - Introdução
6. Selecione o item “Usar como” para selecionar o tipo de sistema de arquivos
para esta partição (figura 2.2.31):
Figura 2.2.31 – Informações sobre a partição.
7. Para a criação de uma partição de SWAP, seleciona-se a opção “Área de Troca”
(figura 2.2.32):
Figura 2.2.32 – Selecionando o tipo de sistema de arquivos.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 36
GNU/Linux - módulo 1 - Introdução
8. Nesta etapa, o instalador exibe a configuração da partição recém-criada.
Selecione a opção “Finalizar a configuração da partição” para confirmar a
criação da partição de SWAP (figura 2.2.33):
Figura 2.2.33 – Confirmação da criação da partição de SWAP.
9. O instalador volta a exibir o menu do particionador, com a nova partição de
SWAP sendo exibida. Agora cria-se a partição principal, o qual será instalado o
sistema operacional. Novamente selecione a área do disco que contenha espaço
livre para criar as partições (figura 2.2.34):
Figura 2.2.34 – Selecionar espaço livre para criação a partição principal.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 37
GNU/Linux - módulo 1 - Introdução
10. Selecione a opção “Criar uma nova partição” (figura 2.2.35):
Figura 2.2.35 – Criar uma nova partição.
11. Coloque neste campo o valor “5 GB“ (Entre os valores “5” e “GB” coloque um
espaço em branco) (figura 2.2.36):
Figura 2.2.36 – Informando o valor do tamanho da partição principal.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 38
GNU/Linux - módulo 1 - Introdução
12. Selecione a opção “Primária” (figura 2.2.37):
Figura 2.2.37 – Tipo de partição.
13. Selecione a opção “Início” (figura 2.2.38):
Figura 2.2.38 – Posicionamento da partição principal no disco.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 39
GNU/Linux - módulo 1 - Introdução
14. Selecione o item “Usar como” para selecionar o tipo de sistema de arquivos
para esta partição (figura 2.2.39):
Figura 2.2.39 - Informações sobre a partição.
15. Para a nossa partição principal, selecione o item “sistema de arquivo com
journaling ReiserFS” (figura 2.2.40):
Figura 2.2.40 - Selecionando o tipo de sistema de arquivos.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 40
GNU/Linux - módulo 1 - Introdução
16. Escolhido o tipo de sistemas de arquivos, selecione o item “Flag
Inicializável”, (figura 2.2.41) para tornar a nossa partição inicializável
(“ligado”):
Figura 2.2.41– Tornar a partição principal inicializável
17. Após estas configurações, Selecione a opção “Finalizar a configuração da
partição” (figura 2.2.42):
Figura 2.2.42- Confirmação da criação da partição principal.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 41
GNU/Linux - módulo 1 - Introdução
18. Será exibida a configuração da sua tabela de partições (figura 2.2.43).
Selecione a opção “Finalizar o particionamento e gravar as mudanças no
disco”:
Figura 2.2.43 – Finalizar o particionamento.
19. Confirme a gravação da tabela de partições, selecionando a opção “Sim”
(Figura 2.2.44):
Figura 2.2.44 – Confirmar a gravação da tabela de partições.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 42
GNU/Linux - módulo 1 - Introdução
20. Após a confirmação anterior, o instalador irá formatar as partições recém-
criadas (figura 2.2.45):
Figura 2.2.45 – Formatando as partições.
✔ Instalação do Sistema Básico
A instalação do sistema básico é feita logo após a formatação das partições (figura
2.2.46):
Figura 2.2.46 – Instalação do sistema básico.
Terminada a instalação do sistema básico, o instalador pede a confirmação para
instalar o gerenciador de inicialização GRUB (figura 2.2.47):
Figura 2.2.47 - Instalar o gerenciador de inicialização GRUB.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 43
GNU/Linux - módulo 1 - Introdução
21. Executa-se a instalação do GRUB na MBR (figura 2.2.48):
Figura 2.2.48 – Executando a instalação do GRUB.
Agora o instalador realiza as últimas configurações desta primeira etapa (figura
2.2.49), e exibe uma mensagem notificando a finalização da instalação (figura 2.2.50). O
CD será ejetado da bandeja e o computador será reinicializado para a próxima etapa que
é a configuração do sistema
Figura 2.2.49 – Finalizando a instalação.
Figura 2.2.50 – Instalação Finalizada.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 44
GNU/Linux - módulo 1 - Introdução
2.3- Configuração do Sistema
A configuração do sistema GNU/Linux é iniciada após a instalação do sistema
básico (figura 2.3.2). Agora será feita as configurações mais específicas do sistema, e a
instalação de pacotes de acordo com o uso da máquina. Mesmo que na mesma máquina
exista outro sistema operacional instalado, o novo gerenciador de inicialização será o
GRUB, e a sua interface padrão tem a configuração como a da figura 2.3.1:
Figura 2.3.1 – Tela inicial do GRUB.
Figura 2.3.2 - Tela de boas vindas do configurador Debian.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 45
GNU/Linux - módulo 1 - Introdução
✔ Configuração do Fuso
Selecione a configuração de fuso horário para o seu computador (figuras 2.3.3 e
2.3.4):
Figura 2.3.3 – Selecionando o fuso horário.
Figura 2.3.4 - Selecionando o fuso horário.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 46
GNU/Linux - módulo 1 - Introdução
✔ Configurar usuário e senha
Nesta parte da configuração, serão configuradas as informações dos usuários que
normalmente utilizam a máquina. Basicamente, têm-se dois usuário no sistema, o
usuário para tarefas administrativas, o “root”, e um usuário para utilização geral, o qual
daremos o nome de “curso”. Para o usuário administrativo (root), a configuração pede a
sua senha (figura 2.3.5) e a confirmação para esta senha (figura 2.3.6):
Figura 2.3.5 – Senha para usuário administrativo.
Figura 2.3.6 – Confirmação para senha do usuário administrativo.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 47
GNU/Linux - módulo 1 - Introdução
Para o usuário de utilização geral (curso), a configuração pede o seu nome
completo (figura 2.3.7), seu username (figura 2.3.8), sua senha (figura 2.3.9) e a
confirmação para esta senha (figuras 2.3.10):
Figura 2.3.7 – Nome completo do usuário de utilização geral.
Figura 2.3.8 – Username para o usuário de utilização geral.
Figura 2.3.9 – Senha para o usuário de utilização geral.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 48
GNU/Linux - módulo 1 - Introdução
Figura 2.3.10 – Confirmação da senha para o usuário de utilização geral.
✔ Configurar repositório de pacotes (APT)
Deve-se escolher o método que o APT (A ferramenta de gerenciamento de
pacotes do Debian GNU/Linux) deverá utilizar para acessar o repositório de pacotes
Debian. É possível instalar estes pacotes através de um CD-ROM, FTP, HTTP, ou
diretamente do sistema de arquivos. Utilize a opção “cdrom” (figura 2.3.11) para o
repositório de pacotes, o qual será examinado e preparado (figura 2.3.12) para
selecionar os perfis de instalação.
Figura 2.3.11 – Selecione o repositório de pacotes do Debian GNU/Linux.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 49
GNU/Linux - módulo 1 - Introdução
Figura 2.3.12 – Examinando e preparando as informações do repositório.
✔ Seleção dos Perfis de Instalação
Nesta etapa a seleção de perfis é requerida pela configuração do sistema. Como
visto, existem perfis para os mais variados usos para serem instalados (figura 2.3.13).
Selecione as opções “Ambiente Desktop” e “Servidor Web”, as quais serão suficientes
para as tarefas propostas:
Figura 2.3.13 – Menu dos perfis de instalação.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 50
GNU/Linux - módulo 1 - Introdução
✔ Configurar o modo gráfico
Logo após a instalação dos pacotes dos perfis selecionados, o instalador inicia a
configuração do modo gráfico. Como indicado no início do capítulo, tenha em mãos as
informações de hardware relacionados ao modo gráfico (monitor, placa de vídeo, etc.) e
selecione-o no menu de opções. Primeiramente, será pedido o modelo da sua placa de
vídeo. No nosso caso, selecione “i810” (figura 2.3.14). A detecção automática do mouse
(figura 2.3.15) e do monitor (2.3.16) serão, respectivamente, pedidos em seguida:
Figura 2.3.14 – Selecionando a placa de vídeo.
Figura 2.3.15 – Detecção do mouse.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 51
GNU/Linux - módulo 1 - Introdução
Figura 2.3.16 – Detectar o monitor.
Se o seu monitor for do tipo LCD, selecione a opção abaixo (figura 2.3.17):
Figura 2.3.17 – Se o seu monitor dor do tipo LCD, selecione esta opção.
A mensagem exibida na figura 2.3.18 informa os tipo de opções que o instalador
disponibiliza para a configuração do seu monitor. Na figura 2.3.19 estas opção são
exibidas. A opção “Medium” será utilizada nesta instalação, porém, se você for um
usuário mais avançado ou seu monitor precise de configurações mais aprofundadas,
escolha a opção “Advanced”. No caso de ser um usuário muito iniciante, escolha a opção
“Simple”:
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 52
GNU/Linux - módulo 1 - Introdução
Figura 2.3.18 – Informações iniciais para configurar o monitor.
Figura 2.3.19 – Selecione a opção “Medium”.
Na figura 2.3.20, o instalador exibe o menu de opções para configurar o modo de
exibição do seu monitor. Neste caso selecione a opção “800x600 @ 60Hz”, que é a
resolução do monitor que está sendo utilizado. Porém, no caso de realizar a instalação do
Debian GNU/Linux em outra máquina, selecione a opção que mais adequada para o seu
monitor.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 53
GNU/Linux - módulo 1 - Introdução
Figura 2.3.20 – Selecionando o modo de exibição para o monitor.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 54
GNU/Linux - módulo 1 - Introdução
✔ Configurar o servidor de mensagens
A última parte da instalação é a configuração do EXIM, o MTA (servidor de emails
padrão do Debian). Se você pretende usar o sendmail ou o postfix, selecione a opção
“sem configuração no momento” (figura 2.3.21) e não configure o EXIM. Selecione esta
opção, pois neste momento este recurso não será utilizado.
Figura 2.3.21 – Sem configuração para o EXIM no momento.
Mesmo o instalador pedindo a confirmação para configurar o servidor de
mensagens (figura 2.3.22), selecione a opção “Sim”. Na próxima tela, o instalador
pergunta para qual conta de usuário as mensagens serão postadas (figura 2.3.23). Como
não configuramos o servidor de mensagens, selecione “Ok”, para então ser exibida a tela
que finaliza a instalação do nosso sistema Debian GNU/Linux (figura 2.3.24).
Figura 2.3.22 – Confirmação para configurar o EXIM.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 55
GNU/Linux - módulo 1 - Introdução
Figura 2.3.23 – Selecione a opção “Ok”, pois o EXIM não foi configurado.
Figura 2.3.24 – Fim da instalação do Debian GNU/Linux
Pronto! Agora o seu sistema Debian GNU/Linux está instalado. O servidor gráfico
será inicializado e uma tela para a autenticação aparece para o uso do gerenciador de
janelas. Utilize a conta de usuário recém-criada, e bom uso!
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 56
GNU/Linux - módulo 1 - Introdução
Capítulo 3
Utilizando o GNU/LinuxUtilizando o GNU/Linux
Neste capítulo o usuário acessa e utiliza pela primeira vez o
GNU/Linux, aprende o que é um gerenciador de janelas, e utiliza
os recursos mais básico do sistema.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 57
GNU/Linux - módulo 1 - Introdução
3.1- Os gerenciadores de janelas
O gerenciador de janelas é o programa que controla a aparência da aplicação. Ele
atua entre o servidor X (servidor gráfico) e a aplicação (figura 3.1.1) .
Figura 3.1.1 – Ilustração do esquema de atuação dos aplicativos gráficos.
No universo do software livre, existem vários tipos de gerenciadores de janelas
disponíveis, que entre os mais conhecidos, podem-se citar:
✔ KDE : K Desktop Environment, ou simplesmente KDE, é um ambiente gráfico
muito difundido no mundo GNU/Linux, pois apresenta um conjunto de aplicativos
consistentes para usuários e programadores, além de uma aparência agradável
e modo de operação bastante familiar. Além do gerenciador de janelas, fazem
parte do projeto KDE inúmeros aplicativos para gerenciamento de arquivos,
controle de dispositivos, acesso à compartilhamentos de rede, gerenciamento
do sistema, acesso a Internet, além da suíte de escritório KOffice, o pacote
KDevelop para desenvolvimento de aplicativos gráficos, o editor de páginas para
a Internet Quanta, e muito mais. O KDE utiliza a biblioteca gráfica QT, mantida
pelos desenvolvedores do KDE e muito utilizada para a construção de interfaces
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 58
GNU/Linux - módulo 1 - Introdução
gráficas para aplicativos. Um dos pontos contra para o KDE é o seu elevado
consumo de recursos de sistema, principalmente de memória RAM, o que o
torna inutilizável em máquina que não tenha pelo menos 128 MB de memória
disponível.
✔ GNOME : O GNOME, assim como o KDE, é constituído por um gerenciador de
janelas, e diversos aplicativos para o usuário, como gerenciador de arquivos,
navegador de Internet, aplicativos para gerenciamento e configuração do
sistema, navegação pela rede, jogos, etc. Além de aplicativos para
desenvolvimento de aplicações. O GNOME utiliza a biblioteca gráfica GTK+,
muito utilizada por outros aplicativos, como o GIMP e o editor de páginas para a
Internet Bluefish. Uma grande vantagem do GNOME sobre outros gerenciadores
de janelas é o seu sistema de atualização dinâmica das configurações, que
permite que qualquer configuração entre em vigor imediatamente à sua
seleção, sem a necessidade de clicar em um botão "Aplicar" ou de reinicar o
ambiente gráfico, como acontece na maioria dos gerenciadores de janelas,
incluindo o KDE.
✔ Enlightenment : O Enlightenment é um super gerenciador de janelas
altamente personalizável, bonito e com muitos efeitos visuais. O projeto
Enlightenment produz, além do ambiente gráfico, diversas bibliotecas gráficas,
como Imlib, FNLib e Imlib2, que são hoje utilizadas por muitos programas,
inclusive outros ambientes gráficos, como o fluxbox.
✔ Blackbox : O Blackbox é um gerenciador de janelas minimalista, muito leve e
pequeno. Ao contrário de outros gerenciadores de janelas mais poderosos, ele
não inclui nenhum outro aplicativo, motivo pelo qual ele é tão pequeno (alguns
poucos KB). Sua configuração é toda feita através da edição de arquivos de
texto, o que não é nem um pouco prático, mas tem lá as suas vantagens. Graças
à sua velocidade, o Blackbox é muito apreciado por usuários avançados, que
não gostam de dispender processamento e memória para rodar um ambiente
com o KDE, GNOME ou Enlightenment. O Blackbox, quando em conjunto com
outros pequenos mini-aplicativos, torna-se um gerenciador de janelas muito
bonito.
✔ Fluxbox : Baseado no Blackbox, o Fluxbox contém mais recursos que aquele,
como suavizador de fontes e suporte nativo a transparências, sem deixar de ser
igualmente leve e simples. O Fluxbox é muito apreciado entre seus usuários,
graças à perfeita união entre beleza e leveza deste excelente gerenciador de
janelas. O suporte a ícones no desktop é fornecido por programas externos.
Outro recurso muito interessante é o suporte aos chamados docks,
popularizados no WindowMaker.
✔ Windowmaker : Criado pelo brasileiro Alfredo Kojima, é um gerenciador de
janelas que, ao contrário do KDE e GNOME, que se assemelham as interfaces do
Microsoft Windows, tem uma proposta bastante diferente. O objetivo principal
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 59
GNU/Linux - módulo 1 - Introdução
que é gerenciar abertura e manipulação de janelas acontece de forma muito
rápida e eficiente. O consumo de memória é bem pequeno. Ele ainda possui
uma facilidade de possuir atalhos para programas, sem prejudicar o consumo de
memória do computador.
Existem outras dezenas de tipos de gerenciadores de janelas, como o Twm,
Icewm, Xfce, AfterStep, entre outros. A escolha do seu gerenciador de janelas é pessoal,
depende muito do gosto de cada pessoa e dos recursos que deseja utilizar. Como
mencionado, o gerenciador de janelas padrão do Debian GNU/Linux é o GNOME (figura
3.1.2). Ele não é apenas um simples gerenciador de janelas, e sim, um desktop
completo, com diversos aplicativos de diferentes tipos disponíveis para a sua utilização
(figura 3.1.3). Através do gerenciador de pacotes APT e Synapitc (versão gráfica do APT),
podemos instalar e atualizar facilmente os aplicativos disponíveis, aumentando o número
de ferramentas para o seu desktop.
Figura 3.1.2 – Gerenciador de janelas GNOME.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 60
GNU/Linux - módulo 1 - Introdução
Figura 3.1.3 – Menu dos aplicativos disponíveis.
3.2- Terminal Virtual (console)
Terminal (ou console) é o teclado e a tela conectados em seu computador. O
GNU/Linux faz uso de sua característica multi-usuária usando terminais virtuais. Um
terminal virtual é uma segunda sessão de trabalho completamente independente de
outras, que pode ser acessada no computador local ou remotamente, através de
aplicativos de acesso remoto como o SSH, telnet, rlogin, etc.
No GNU/Linux em modo texto, você pode acessar outros terminais virtuais
segurando a tecla ALT e pressionando F1 a F6. Cada tecla de função corresponde a um
número de terminal do 1 ao 6 (o sétimo é usado por padrão pelo modo gráfico). O
GNU/Linux possui mais de 63 terminais virtuais, mas apenas 6 estão disponíveis
inicialmente por motivos de economia de memória RAM. Se você estiver usando o modo
gráfico, você deve segurar as teclas CTRL+ALT enquanto pressiona uma das teclas de F1
a F6.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 61
GNU/Linux - módulo 1 - Introdução
Para um administrador de sistemas, esta ferramenta é fundamental, pois muitas
tarefas são feitas no modo texto, alterando arquivos de configuração, executando
comandos manualmente, verificando os processos que estão carregados na memória,
entre outros. Para executar um terminal virtual à partir do GNOME, clique no ícone que é
indicado pela figura 3.1.4.
Figura 3.1.4 – ícone do terminal virtual
3.3- Comandos básicos – nível 1
Neste item serão listados os comandos básicos para que você comece a interagir
com o interpretador de comandos bash.
3.3.1- ls : lista conteúdos de diretórios.
Sintaxe:
$ ls <opções>
Opções:
• - l : escreve no formato de colunas simples.
• - i : procede a saída para o arquivo pelo seu número serial (inode).
• - R : lista os diretórios encontrados recursivamente.
• - h : mostra o tamanho dos arquivos em KB, MB, GB.
• - a : lista todos os arquivos inclusive os ocultos.
• - F : insere um caracter após arquivos executáveis ('*'), diretórios ('/'), sockets
('=') e pipe ('|'). Seu uso é útil para identificar de forma fácil tipos de arquivos
nas listagens de diretórios.
Exemplo:
$ ls /
bin cdrom etc initrd lib mnt proc sbin sys usr vmlinuz
boot dev home initrd.img media opt root srv tmp var
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 62
     Ícone para
executar o
terminal virtual
GNU/Linux - módulo 1 - Introdução
3.3.2- mkdir : cria diretórios.
Sintaxe:
$ mkdir <opções> <diretório>
Opções:
• - p : cria toda a estrutura de diretórios passada como parâmetro.
• --verbose : imprime uma mensagem para cada diretório criado.
Exemplo:
$ mkdir teste
3.3.3- rmdir : remove diretórios vazios.
Sintaxe:
$ rmdir <opções> <diretório>
Opções:
• - p : remove a estrutura de diretórios passadas como parâmetro, porém, o
último diretório passado como parâmetro deve estar vazio.
• -- verbose : imprime uma mensagem para cada diretório apagado.
Exemplo:
$ rmdir teste
3.3.4- rm : além de remover diretórios e estrutura de diretórios, tem como função
principal remover arquivos.
Sintaxe:
$ rm <opções> <diretório> <ou arquivo>
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 63
GNU/Linux - módulo 1 - Introdução
Opções:
• - i : pergunta antes de remover, esta é ativada por padrão.
• - v : mostra os arquivos/diretórios na medida que são removidos
• - r : usado para remover arquivos em sub-diretórios. Esta opção também pode
ser usada para remover sub-diretórios.
• - f : remove os arquivos sem perguntar.
Exemplo:
$ rm arquivo.txt
$ rm -r teste2
3.3.5- cd : muda o diretório de trabalho atual. Caso não seja especificado nenhum
diretório, muda para o diretório pessoal do usuário.
Sintaxe:
$ cd <diretório>
Exemplo:
$ cd teste2
3.3.6- pwd : mostra o nome e caminho do diretório atual.
Sintaxe:
$ pwd
Exemplo:
$ pwd
/home/curso/teste2
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 64
GNU/Linux - módulo 1 - Introdução
3.3.7- clear : limpa o conteúdo do terminal e posiciona o cursos no início da tela.
Sintaxe:
$ clear
3.3.8- man : este comando exibe as páginas de manual do comando ou programa
passado como parâmetro. Elas trazem uma descrição básica desta comando ou
programa e detalhes sobre o funcionamento de uma determinada opção. Uma página
de manual é visualizada na forma de texto único com rolagem vertical. Também
documenta parâmetros usados em alguns arquivos de configuração.
Sintaxe:
$ man <comando ou programa>
Opções de navegação:
• q : sai da página de manual.
• f ou PageDown : rola 25 linhas abaixo
• w ou PageUp : rola 25 linhas acima
• k ou seta para cima : rola uma linha acima.
• e ou seta para baixo : rola uma linha abaixo.
• p ou g : Início da página.
• h : ajuda sobre as opções da página de manual.
• s : salva a página de manual em formato texto no arquivo especificado.
Exemplo:
$ man bash
3.3.9- apropos : procura por comandos através da descrição. É útil quando precisamos
fazer alguma coisa mas não sabemos qual comando usar. Ele faz sua pesquisa nas
páginas de manual existentes no sistema e lista os comandos/programas que
atendem a consulta.
Sintaxe:
$ apropos <comando ou programa>
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 65
GNU/Linux - módulo 1 - Introdução
Exemplo:
$ apropos bash
bash (1) - GNU Bourne-Again Shell
bash-builtins (7) - bash built-in commands, see bash(1)
bashbug (1) - report a bug in bash
builtins (7) - bash built-in commands, see bash(1)
checkbashisms (1) - check for bashisms in /bin/sh scripts
gst-complete-0.8 (1) - do bash completion for gst-launch command-lines
ispellconfig (8) - Bash script to select a new ispell default dictionary.
rbash (1) - restricted bash, see bash(1)
update-ispell-dictionary (8) - Bash script to select a new ispell default
dictionary.
Além dos comandos man e apropos, você pode conseguir mais informações sobre
os comandos ou programas através dos comandos info e help. Outra maneira de
conseguir informações mais rápidas sobre os parâmetros que o comando suporta é
utilizando o parâmetro –-help.
Exemplo:
$ mkdir --help
Usage: mkdir [OPTION] DIRECTORY...
Create the DIRECTORY(ies), if they do not already exist.
Argumentos obrigatórios para opções longas também o são para opções curtas
-m, --mode=MODE set permission mode (as in chmod), not rwxrwxrwx - umask
-p, --parents no error if existing, make parent directories as needed
-v, --verbose print a message for each created directory
--help display this help and exit
--version output version information and exit
Comunicar `bugs' para <bug-coreutils@gnu.org>.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 66
GNU/Linux - módulo 1 - Introdução
Capítulo 4
Sistema de ArquivosSistema de Arquivos
Neste capítulo o usuário compreenderá as noções teóricas de
como funcionam as partições e os sistema de arquivos
suportados pelo GNU/Linux.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 67
GNU/Linux - módulo 1 - Introdução
4.1- Partições
São divisões existentes no disco rígido que marcam onde começa e onde termina
um sistema de arquivos. Por causa destas divisões, nós podemos usar mais de um
sistema operacional no mesmo computador (como o GNU/Linux, Microsoft Windows e
DOS), ou dividir o disco rígido em uma ou mais partes para ser usado por um único
sistema operacional. Uma partição de disco não interfere em outras partições existentes,
por estarem em áreas distintas no disco rígido.
Para particionar (dividir) o disco rígido em uma ou mais partes é necessário o uso
de um programa de particionamento. Os programas mais conhecidos para
particionamento de discos no GNU/Linux são fdisk, cfdisk, Parted e o Disk Druid.
Informações importantes para a criação e utilização das partições:
✔ Para gravar os dados, o disco rígido precisa ser particionado (usando o cfdisk ou
outro particionador), deve-se escolher o tipo da partição, e depois tal partição deve
ser formatada com o um tipo de sistema de arquivos. Após criada e formatada, a
partição será identificada como um dispositivo no diretório /dev e deverá ser
montada para permitir seu uso no sistema;
✔ Quando se apaga uma partição, você estará apagando TODOS os arquivos
existentes nela;
✔ Em sistemas novos, é comum encontrar o Microsoft Windows instalado em uma
partição que consome TODO o espaço do disco rígido. Uma solução para instalar o
GNU/Linux é apagar esta partição e criar três com tamanhos menores (uma para o
Microsft Windows, uma para o GNU/Linux e outra para a Memória Virtual do Linux
(SWAP);
4.2- Sistema de Arquivos
Um sistema de arquivos é o método e a estrutura que um sistema operacional
utiliza para administrar a forma que os arquivos estão organizados em um disco ou
partição. É criado durante a formatação da partição de disco. Após a formatação, toda a
estrutura para leitura e gravação de arquivos e diretórios pelo sistema operacional
estará pronta para ser usada. Normalmente este passo é feito durante a instalação de
sua distribuição GNU/Linux. Cada sistema de arquivos tem uma característica em
particular mas seu propósito é o mesmo: Oferecer ao sistema operacional a estrutura
necessária para ler/gravar os arquivos e diretórios. Entre os sistemas de arquivos
existentes pode-se citar:
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 68
GNU/Linux - módulo 1 - Introdução
4.2.1– EXT2
Logo que foi inventado, o GNU/Linux utilizava o sistema de arquivos Minix (e
conseqüentemente uma partição Minix) para o armazenamento de arquivos. Com a
evolução do desenvolvimento, foi criado o padrão EXT (Extended Filesystem) e logo
evoluiu para o EXT2 (Second Extended Filesystem) que, apesar de obsoleto, ainda é o
usado hoje em dia. Ele é rápido, não se fragmenta tão facilmente pois permite a
localização do melhor lugar onde o arquivo se encaixa no disco, etc. Isto é útil para
grandes ambientes multiusuário onde várias pessoas gravam/apagam arquivos o tempo
todo.
4.2.2– Journaling
O sistema de journaling grava qualquer operação que será feita no disco em uma
área especial chamada journal, assim se acontecer algum problema durante a operação
de disco, ele pode voltar ao estado anterior do arquivo, ou finalizar a operação. Desta
forma, o journal acrescenta ao sistema de arquivos o suporte a alta disponibilidade e
maior tolerância a falhas. Após uma falha de energia, por exemplo, o journal é analisado
durante a montagem do sistema de arquivos e todas as operações que estavam sendo
feitas no disco são verificadas.
Dependendo do estado da operação, elas podem ser desfeitas ou finalizadas. O
retorno do servidor é praticamente imediato (sem precisar a enorme espera da execução
do fsck em partições maiores que 10Gb), garantindo o rápido retorno dos serviços da
máquina. Outra situação que pode ser evitada é com inconsistências no sistema de
arquivos do servidor após a situação acima, fazendo o servidor ficar em estado single
user e esperando pela intervenção do administrador. Alguns tipos de sistema de arquivos
utilizam este recurso atualmente, como por exemplo, o EXT3 e o ReiserFS.
4.2.3– EXT3
O sistema de arquivos EXT3 faz parte da nova geração extended file system do
GNU/Linux, sendo que seu maior benefício é o suporte a journaling. O uso deste sistema
de arquivos comparado ao EXT2, na maioria dos casos, melhora o desempenho do
sistema de arquivos através da gravação seqüencial dos dados na área de metadados e
acesso mhash a sua árvore de diretórios.
A estrutura da partição EXT3 é semelhante a EXT2, o journaling é feito em um
arquivo chamado .journal que fica oculto pelo código EXT3 na partição (desta forma ele
não poderá ser apagado, comprometendo o funcionamento do sistema). A estrutura
idêntica da partição EXT3 com a EXT2 torna mais fácil a manutenção do sistema, já que
todas as ferramentas para recuperação EXT2 funcionarão sem problemas.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 69
GNU/Linux - módulo 1 - Introdução
4.2.4– ReiserFS
O ReiserFS é um sistema desenvolvido especialmente para o GNU/Linux, muito
confiável e surpreendentemente rápido, e em muitos casos, mais rápido até mesmo que
sistemas sem suporte a journaling. O ReiserFS, por não utilizar blocos de tamanho fixo,
mas ajustar seu tamanho de acordo com o arquivo, evita os problemas de desperdício de
espaço comuns em outros sistemas de arquivos. Possui suporte a arquivos maiores que 2
GB e o acesso a árvore de diretórios é muito mais rápido. Utiliza uma eficiente estrutura
de dados chamada balanced tree (árvore equilibrada), que trata toda a partição como se
fosse uma única tabela de banco de dados contendo diretórios, arquivos e arquivos de
meta-data, o que aumenta muito o desempenho de aplicativos que trabalham com
arquivos pequenos, porque estes são lidos de uma só vez, em apenas um ciclo de I/O do
HD. Sua versão 3 não trabalha perfeitamente com o sistema de arquivos de rede NFS
(Network File System). Existem alguns patches para resolver o problema, mas eles não o
resolvem completamente. O criador do ReiserFS é Hans Reiser. Atualmente o projeto é
patrocinado pela SuSE e mantido pela empresa NameSys. Aguarda-se o lançamento
oficial da versão 4 do ReiserFS, o Reiser4, que foi totalmente reescrito e possui um
desempenho superior à da versão 3.
4.2.5– JFS
Criado pela IBM para uso em servidores corporativos, teve seu código liberado. O
sistema de arquivos JFS também usa a estrutura I-node para armazenar a localização dos
blocos de cada arquivo nas estruturas físicas do disco. A versão JFS2 armazena esses I-
nodes em uma árvore binária para acelerar o acesso a essas informações. Esses blocos
podem variar de 512 a 4096 bytes, e a alocação dos I-nodes é feita conforme vai sendo
necessário.
4.2.6– XFS
Desenvolvido originalmente pela Silicon Graphics e posteriormente disponibilizado
o código fonte, o XFS possui vários patches e alguns bugs, mas é um sistema de arquivos
muito rápido na gravação e possui um desfragmentador para arquivos.
4.2.7– SWAP (Memórial Virtual)
Este tipo de partição é usada para oferecer o suporte a memória virtual ao
GNU/Linux em adição a memória RAM instalada no sistema. Somente os dados na
memória RAM são processados pelo processador, por ser mais rápida.
Desta forma, quando você está executando um programa e a memória RAM
começa a encher, o GNU/Linux move automaticamente os dados que não estão sendo
usados para a partição SWAP, e libera a memória RAM para continuar carregando os
dados necessários pelo programa que está sendo carregado. Quando os dados movidos
para a partição SWAP são solicitados, o GNU/Linux move os dados da partição SWAP para a
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 70
GNU/Linux - módulo 1 - Introdução
memória. Por este motivo a partição SWAP também é chamada de área de troca ou
memória virtual. A velocidade em que os dados são movidos da memória RAM para a
partição é muito alta.
4.2.8– Qual Sistema de Arquivos devo Utilizar?
Falar qual sistema de arquivos você deve usar é uma missão quase impossível, é
como falar de distribuições GNU/Linux: alguém que adora o Slackware com certeza só vai
recomendar o Slackware, e alguém que adora o Debian com certeza só vai recomendar o
Debian, e assim por diante.
Em se tratando de sistemas de arquivos, a recomendação é que você escolha, entre os
que possuem os recursos que você precisa, aquele que apresentar o melhor
desempenho.
Nesse caso, a menos que você vá utilizar NFS, o sistema de arquivos mais indicado
é o ReiserFS, que possui comprovadamente um desempenho muito superior ao de outros
sistemas de arquivos. Se for utilizar NFS, uma vez que existe o problema de
compatibilidade do ReiserFS, pode-se utilizar o XFS, ou o EXT3.
4.3- Identificação de Discos e Partições
No GNU/Linux, os dispositivos existentes em seu computador (como discos rígidos,
disquetes, tela, portas de impressora, modem, etc) são identificados por um arquivo no
diretório /dev. A identificação de discos rígidos no GNU/Linux é feita da seguinte forma:
/dev/hda1
| |||
| |||_ Número que identifica o número da partição no disco rígido.
| ||
| ||_ Letra que identifica o disco rígido (a=primeiro, b=segundo, etc...).
| |
| |_ Sigla que identifica o tipo do disco rígido (hd=ide, sd=SCSI, xd=XT).
|
|_ Diretório onde são armazenados os dispositivos existentes no sistema.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 71
GNU/Linux - módulo 1 - Introdução
Abaixo algumas identificações de discos e partições em sistemas Linux:
✔ /dev/fd0 - Primeira unidade de disquetes.
✔ /dev/fd1 - Segunda unidade de disquetes.
✔ /dev/hda - Primeiro HD na primeira controladora IDE do micro (primary master).
✔ /dev/hda1 - Primeira partição do primeiro HD IDE.
✔ /dev/hdb - Segundo HD na primeira controladora IDE do micro (primary slave).
✔ /dev/hdb1 - Primeira partição do segundo HD IDE.
✔ /dev/sda - Primeiro HD na primeira controladora SCSI.
✔ /dev/sda1 - Primeira partição do primeiro HD SCSI.
✔ /dev/sdb - Segundo HD na primeira controladora SCSI.
✔ /dev/sdb1 - Primeira partição do segundo HD SCSI.
✔ /dev/sr0 - Primeiro CD-ROM SCSI.
✔ /dev/sr1 - Segundo CD-ROM SCSI.
✔ /dev/xda - Primeiro HD XT.
✔ /dev/xdb - Segundo HD XT.
As letras de identificação de discos rígidos podem ir além de hdb, em algumas
máquinas, por exemplo, a unidade de CD-ROM podem estar localizada em /dev/hdg
(Primeiro disco - quarta controladora IDE). É importante entender como os discos e
partições são identificados no sistema, pois será necessário usar os parâmetros corretos
para montá-los.
4.4- Pontos de montagem
Antes de um sistema de arquivos poder ser utilizado, ele necessita ser montado. O
sistema operacional executa diversas verificações para estar seguro de que tudo está
funcionando bem. Uma vez que todos os arquivos no GNU/Linux estão em uma única
árvore de diretórios, a operação de montagem fará com que o novo sistema de arquivos
pareça um subdiretório existente em algum sistema de arquivos já montado.
Como será visto em outro curso, o comando para montagem de um sistema de
arquivos possui dois argumentos. O primeiro é o arquivo de dispositivo correspondente
ao disco ou partição que contenha o sistema de arquivos. O segundo é o diretório sob o
qual ele será montado. Por exemplo, após a execução do comando, dizemos então que
/dev/hda2 está montado em /mnt/backup.
Para utilizar estes sistemas de arquivos, pode-se acessar estes diretórios
exatamente da mesma forma que qualquer outro, como veremos mais adiante. É
importante ressaltar a diferença entre o dispositivo /dev/hda e o o diretório montado
/mnt/backup. Enquanto o primeiro dá acesso aos dados brutos do disco, ilegíveis pelos
usuários e apenas pelo kernel, o segundo permite o acesso aos dados legíveis pelos
usuários, como arquivos e diretórios dos mais diversos fins. O diretório montado é
chamado ponto de montagem.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 72
GNU/Linux - módulo 1 - Introdução
Capítulo 5
Arquivos e DiretóriosArquivos e Diretórios
Neste capítulo o usuário aprenderá como os arquivos são
tratados pelo GNU/Linux, seus tipos e a estrutura de diretórios
padrão do sistema.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 73
GNU/Linux - módulo 1 - Introdução
5.1- Arquivos
Nos sistemas *NIX, tudo o que pode ser manipulado pelo sistema operacional é
representado sob a forma de arquivo, incluindo aí diretórios, dispositivos e processos. O
arquivo é a estrutura mais básica e mais importante em um sistema GNU/Linux.
O GNU/Linux segue o padrão POSIX, o mesmo utilizado por outros sistemas
operacionais derivados do UNIX. Dessa forma, conhecendo o GNU/Linux você não terá
dificuldades em operar outros sistemas como HPUX, FreeBSD, Solaris, etc., que assim
como o GNU/Linux são baseados no UNIX.
Também devido ao grande número de distribuições GNU/Linux que existem, foram
determinados padrões sobre a sua estrutura e a forma dele manipular os arquivos. Esses
padrões constituem a Linux Standard Base, ou simplesmente LSB. A LSB contém todas as
especificações que um sistema GNU/Linux deve adotar, para manter um nível de
compatibilidade entre diferentes distribuições.
Costuma-se definir arquivo como o lugar onde gravamos nossos dados. Em outros
sistemas operacionais é feita uma distinção entre arquivos, diretórios, dispositivos e
outros componentes do sistema. No GNU/Linux, entretanto, tudo aquilo que pode ser
manipulado pelo sistema é tratado como arquivo.
Mas, se tudo é arquivo, como o sistema operacional faz a distinção entre arquivo
regular, diretório, dispositivo, processo, etc? Muito simples: todo arquivo tem o que é
chamado cabeçalho, que contém informações como: tipo, tamanho, data de acesso,
modificação, etc. Através desse cabeçalho o GNU/Linux sabe então quando se trata de
arquivo regular, diretório, dispositivo, e assim por diante.
5.2- Tipos de Arquivos
Os tipos de arquivos existentes num sistema GNU/Linux são os seguintes:
✔ Arquivo regular: Tipo comum que contém dados somente. Os arquivos regulares
podem ser dos mais variados tipos, guardando os mais diferentes tipos de
informações. Existem arquivos de áudio, vídeo, imagem, texto, etc. Os arquivos se
dividem em 2 (duas) categorias principais:
✔ Binários: Arquivos binários são compostos por bits 1 e 0 e só podem ser
interpretados pelo sistema operacional, sendo incompreensíveis por nós
humanos. Se um arquivo binário for aberto por um editor de textos, serão
exibidos vários símbolos estranhos. Arquivos de música, vídeos, imagens e
bibliotecas são exemplos de arquivos binários;
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 74
GNU/Linux - módulo 1 - Introdução
✔ Texto: Arquivos do tipo texto são compostos por informações em forma de
texto, que podem ser entendidas pelo usuário comum. Arquivos desse tipo
não necessariamente contém texto propriamente dito. Quando se diz que
um arquivo é do tipo texto, estamos querendo dizer que se o abrirmos num
editor de texto, serão exibidos informações legíveis.
✔ Diretórios: Os diretórios são utilizados para separar um grupos de arquivos. Um
diretório pode conter arquivos e outros diretórios, que serão chamados
subdiretórios;
✔ Dispositivos: Todo componente de hardware instalável é chamado dispositivo.
Placas de vídeo, som, rede, drives de CD-ROM, tudo o que se liga na interface USB,
memória RAM, são dispositivos. Os dispositivos podem ser:
✔ De Bloco: Dispositivos de bloco utilizam buffer para leitura/gravação.
Geralmente são unidades de disco, como HD's, CD's, etc;
✔ De Caracter: Esses dispositivos não utilizam buffer para leitura/gravação. A
maioria dos dispositivos PCI e outros dispositivos como impressoras, mouse,
etc. são do tipo caracter;
✔ Pipes: Utilizados pelos processos do sistema para comunicarem-se entre si;
✔ Sockets : Utilizados nos processos de comunicação em rede;
✔ Links: São atalhos. Servem para fazer referância a outro arquivo localizado em
outro local. Podem ser de dois tipos:
✔ Simbólicos: Fazem referência ao arquivo através de seu endereço lógico no
disco ou memória. São os links mais comuns;
✔ Absolutos: Fazem referência ao arquivo através do seu endereço físico no
disco rígido.
Arquivos podem conter diferentes tipos de informações. Cada tipo de informação
requer um método específico de trabalho. Assim, um arquivo de imagem não pode ser
lido por um programa de reprodução de áudio, porque os dados de um arquivo de
imagem são organizados de forma totalmente diferente da de um arquivo de áudio, e o
programa em questão só é capaz de lidar com arquivos de áudio.
Tendo isso em vista, é necessário que o sistema operacional e os demais
programas possam diferenciar os diversos tipos de arquivos disponíveis, para evitar que
um programa tente manipular um tipo de arquivo que não suporta.
O GNU/Linux faz essa diferenciação através da leitura do cabeçalho do arquivo. Assim, a
extensão do arquivo geralmente não importa para o sistema operacional, mas é usada
tão somente para fácil identificação do usuário, motivo pelo qual é muito comum
encontrarmos arquivos sem extensão no GNU/Linux.
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 75
GNU/Linux - módulo 1 - Introdução
5.3- Nomes de Arquivos
Os nomes de arquivos no GNU/Linux podem ter até 255 caracteres, podendo
utilizar espaços e acentos. Há exceção somente quanto ao uso dos caracteres especiais
'/', '', '|', ' " ', '*', '?', '<', '>', '!', '(', ')', '`'.
Um ponto muito importante que deve ser frisado é que o GNU/Linux é case
sensitive, ou seja, diferencia letras maiúsculas de minúsculas. Sendo assim, os arquivos
file.iso e File.iso são diferentes para o GNU/Linux. Então, quando referir-se a um
arquivo, tenha a certeza de escrever com a capitulação correta.
Os arquivos também podem ser ocultos, que contém um ponto '.' antes do seu
nome, e normalmente aparecem no diretório pessoal de cada usuário, como por exemplo
o arquivo '.bash_profile' .
5.4- Diretórios
Os diretórios, como você deve saber, contém arquivos ou outros diretórios. Todo
sistema operacional possui o que é chamado árvore de diretórios, que é uma estrutura
básica de diretórios principais com seus respectivos subdiretórios.
No GNU/Linux a árvore de diretórios é particularmente muito bem organizada, e os
arquivos são divididos em categorias. Assim, arquivos executáveis (programas) são
agrupados num determinado diretório, enquanto bibliotecas são arquivados em outro, e
arquivos temporários em outro, e assim por diante. Isso garante uma boa organização do
sistema e traz também uma grande praticidade, como vocês poderão ver mais adiante.
5.5– Estrutura de Diretórios
Os sistemas GNU/Linux possuem um padrão rígido e específico a respeito da
organização hierárquica dos diretórios, definido pela Filesystem Hierarquy Standard, ou
simplesmente FHS, constante da LSB, que diferem totalmente da estrutura de diretórios
do Microsoft Windows. Basicamente, no Microsoft Windows temos os arquivos do sistema
concentrados nas pastas C:Windows e C:Arquivos de programas e você pode criar e
organizar suas pastas da forma que quiser. No GNU/Linux é basicamente o contrário. O
diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus
arquivos pessoais dentro da sua pasta no diretório /home. Nada impede que você crie
mais pastas no diretório raiz para armazenar seus arquivos. Apesar de ser recomendável
Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 76
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1
GNU/Linux Introdução Módulo 1

Más contenido relacionado

La actualidad más candente

F fmpeg2 theora_oggfwd
F fmpeg2 theora_oggfwdF fmpeg2 theora_oggfwd
F fmpeg2 theora_oggfwdTiago
 
Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03luizaselis
 
Pen linux
Pen linuxPen linux
Pen linuxTiago
 
Ubuntu guia do_iniciante-2.0 - 12.04
Ubuntu guia do_iniciante-2.0 - 12.04Ubuntu guia do_iniciante-2.0 - 12.04
Ubuntu guia do_iniciante-2.0 - 12.04Lindomar ...
 
Apostila win linux revisada unidde iii
Apostila win  linux revisada unidde iii Apostila win  linux revisada unidde iii
Apostila win linux revisada unidde iii Josiane Silva
 
Instalação de softwares em sistemas baseados no Debian
Instalação de softwares em sistemas baseados no DebianInstalação de softwares em sistemas baseados no Debian
Instalação de softwares em sistemas baseados no DebianVinícius Hax
 
Linux software livre e tudo mais (CPBR)
Linux software livre e tudo mais (CPBR)Linux software livre e tudo mais (CPBR)
Linux software livre e tudo mais (CPBR)guilhermemar
 
Linux Educacional 4.0 - Aula 1
Linux Educacional 4.0 - Aula 1Linux Educacional 4.0 - Aula 1
Linux Educacional 4.0 - Aula 1Adson Nunes
 

La actualidad más candente (13)

F fmpeg2 theora_oggfwd
F fmpeg2 theora_oggfwdF fmpeg2 theora_oggfwd
F fmpeg2 theora_oggfwd
 
Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03
 
Pen linux
Pen linuxPen linux
Pen linux
 
3360 183055085 ubuntu-guia-do-iniciante-2-0
3360 183055085 ubuntu-guia-do-iniciante-2-03360 183055085 ubuntu-guia-do-iniciante-2-0
3360 183055085 ubuntu-guia-do-iniciante-2-0
 
Ubuntu guia do_iniciante-2.0 - 12.04
Ubuntu guia do_iniciante-2.0 - 12.04Ubuntu guia do_iniciante-2.0 - 12.04
Ubuntu guia do_iniciante-2.0 - 12.04
 
2545 2122 linux
2545 2122 linux2545 2122 linux
2545 2122 linux
 
Apostila win linux revisada unidde iii
Apostila win  linux revisada unidde iii Apostila win  linux revisada unidde iii
Apostila win linux revisada unidde iii
 
fdyrjdhgd xff
fdyrjdhgd xfffdyrjdhgd xff
fdyrjdhgd xff
 
Introdução ao Software Livre
Introdução ao Software LivreIntrodução ao Software Livre
Introdução ao Software Livre
 
Instalação de softwares em sistemas baseados no Debian
Instalação de softwares em sistemas baseados no DebianInstalação de softwares em sistemas baseados no Debian
Instalação de softwares em sistemas baseados no Debian
 
Linux software livre e tudo mais (CPBR)
Linux software livre e tudo mais (CPBR)Linux software livre e tudo mais (CPBR)
Linux software livre e tudo mais (CPBR)
 
License
LicenseLicense
License
 
Linux Educacional 4.0 - Aula 1
Linux Educacional 4.0 - Aula 1Linux Educacional 4.0 - Aula 1
Linux Educacional 4.0 - Aula 1
 

Destacado

Destacado (16)

Introducao a acessibilidade_web
Introducao a acessibilidade_webIntroducao a acessibilidade_web
Introducao a acessibilidade_web
 
Mohammed Haji Evaluation (1) (1)
Mohammed Haji Evaluation (1) (1)Mohammed Haji Evaluation (1) (1)
Mohammed Haji Evaluation (1) (1)
 
PROYECTO RIO FRIO TOMAS
PROYECTO RIO FRIO TOMASPROYECTO RIO FRIO TOMAS
PROYECTO RIO FRIO TOMAS
 
Proyecto red social de salidas para Rosario, Argentina
Proyecto red social de salidas para Rosario, ArgentinaProyecto red social de salidas para Rosario, Argentina
Proyecto red social de salidas para Rosario, Argentina
 
2
22
2
 
Money Over Work 2013 - Atualizado
Money Over Work 2013 - AtualizadoMoney Over Work 2013 - Atualizado
Money Over Work 2013 - Atualizado
 
エフスタ!!Vol.4
エフスタ!!Vol.4エフスタ!!Vol.4
エフスタ!!Vol.4
 
Rio hacha software contable desde 990mil -
Rio hacha software contable   desde 990mil -Rio hacha software contable   desde 990mil -
Rio hacha software contable desde 990mil -
 
Institional logo
Institional logoInstitional logo
Institional logo
 
Torsion de barras circulares elásticas
Torsion de barras circulares elásticasTorsion de barras circulares elásticas
Torsion de barras circulares elásticas
 
Aprender en colaboracion
Aprender en colaboracionAprender en colaboracion
Aprender en colaboracion
 
завод сока
завод соказавод сока
завод сока
 
EF Certificate
EF CertificateEF Certificate
EF Certificate
 
Team hybrid | 1st Place Winner in the Caribbean BETA Pitchfest 2012
Team hybrid | 1st Place Winner in the Caribbean BETA Pitchfest 2012Team hybrid | 1st Place Winner in the Caribbean BETA Pitchfest 2012
Team hybrid | 1st Place Winner in the Caribbean BETA Pitchfest 2012
 
El oso de la vitrina
El oso de la vitrinaEl oso de la vitrina
El oso de la vitrina
 
EMTALA
EMTALAEMTALA
EMTALA
 

Similar a GNU/Linux Introdução Módulo 1

Ebook-Curso-Linux-Ubuntu-Pedro-Delfino.pdf
Ebook-Curso-Linux-Ubuntu-Pedro-Delfino.pdfEbook-Curso-Linux-Ubuntu-Pedro-Delfino.pdf
Ebook-Curso-Linux-Ubuntu-Pedro-Delfino.pdfMitsuro Kawabata
 
Apostila php intermediario
Apostila php intermediarioApostila php intermediario
Apostila php intermediarioOscar Ramada Eng
 
Apostila open office calc
Apostila open office calcApostila open office calc
Apostila open office calcLeciOne
 
Open vpn
Open vpnOpen vpn
Open vpnTiago
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basicoedisantos1970
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basicoRogerio Souza
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basicoSoftD Abreu
 
Busca CfhBusca de informação em arquivos abertos e o acesso livre
Busca CfhBusca de informação em arquivos abertos e o acesso livreBusca CfhBusca de informação em arquivos abertos e o acesso livre
Busca CfhBusca de informação em arquivos abertos e o acesso livreUFSC
 
De javaparapython
De javaparapythonDe javaparapython
De javaparapythonTiago
 
Selinux
SelinuxSelinux
SelinuxTiago
 
Apresentacao Linux módulo 1
Apresentacao Linux módulo 1Apresentacao Linux módulo 1
Apresentacao Linux módulo 1Tiago
 
[Engenharia de Software] Marquivos.com
[Engenharia de Software] Marquivos.com[Engenharia de Software] Marquivos.com
[Engenharia de Software] Marquivos.comBruno Dadalt Zambiazi
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basicoJoao Paulo
 

Similar a GNU/Linux Introdução Módulo 1 (20)

Ebook-Curso-Linux-Ubuntu-Pedro-Delfino.pdf
Ebook-Curso-Linux-Ubuntu-Pedro-Delfino.pdfEbook-Curso-Linux-Ubuntu-Pedro-Delfino.pdf
Ebook-Curso-Linux-Ubuntu-Pedro-Delfino.pdf
 
Apostila php intermediario
Apostila php intermediarioApostila php intermediario
Apostila php intermediario
 
Linux basico jolim 2007
Linux basico jolim 2007Linux basico jolim 2007
Linux basico jolim 2007
 
Apostila open office calc
Apostila open office calcApostila open office calc
Apostila open office calc
 
Apostila open office calc
Apostila open office calcApostila open office calc
Apostila open office calc
 
guvgu
guvguguvgu
guvgu
 
Open vpn
Open vpnOpen vpn
Open vpn
 
Ubuntu 8
Ubuntu 8Ubuntu 8
Ubuntu 8
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basico
 
apostila de linux
apostila de linuxapostila de linux
apostila de linux
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basico
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basico
 
Busca CfhBusca de informação em arquivos abertos e o acesso livre
Busca CfhBusca de informação em arquivos abertos e o acesso livreBusca CfhBusca de informação em arquivos abertos e o acesso livre
Busca CfhBusca de informação em arquivos abertos e o acesso livre
 
De javaparapython
De javaparapythonDe javaparapython
De javaparapython
 
Selinux
SelinuxSelinux
Selinux
 
Apresentação Software Livre
Apresentação Software LivreApresentação Software Livre
Apresentação Software Livre
 
Linux
LinuxLinux
Linux
 
Apresentacao Linux módulo 1
Apresentacao Linux módulo 1Apresentacao Linux módulo 1
Apresentacao Linux módulo 1
 
[Engenharia de Software] Marquivos.com
[Engenharia de Software] Marquivos.com[Engenharia de Software] Marquivos.com
[Engenharia de Software] Marquivos.com
 
Apostila linux curso_basico
Apostila linux curso_basicoApostila linux curso_basico
Apostila linux curso_basico
 

Más de Tiago

Programacao php moodle
Programacao php moodleProgramacao php moodle
Programacao php moodleTiago
 
Apostila cdtc dotproject
Apostila cdtc dotprojectApostila cdtc dotproject
Apostila cdtc dotprojectTiago
 
6572501 ldp-apostila-de-turbo-pascal
6572501 ldp-apostila-de-turbo-pascal6572501 ldp-apostila-de-turbo-pascal
6572501 ldp-apostila-de-turbo-pascalTiago
 
Guia rapido de_pascal
Guia rapido de_pascalGuia rapido de_pascal
Guia rapido de_pascalTiago
 
Python bge
Python bgePython bge
Python bgeTiago
 
Curso python
Curso pythonCurso python
Curso pythonTiago
 
Curso python
Curso pythonCurso python
Curso pythonTiago
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 pythonTiago
 
Threading in c_sharp
Threading in c_sharpThreading in c_sharp
Threading in c_sharpTiago
 
Retirar acentos de_determinado_texto_em_c_sharp
Retirar acentos de_determinado_texto_em_c_sharpRetirar acentos de_determinado_texto_em_c_sharp
Retirar acentos de_determinado_texto_em_c_sharpTiago
 
Remover caracteres especiais_texto_em_c_sharp
Remover caracteres especiais_texto_em_c_sharpRemover caracteres especiais_texto_em_c_sharp
Remover caracteres especiais_texto_em_c_sharpTiago
 
Obter ip da_internet_em_c_sharp
Obter ip da_internet_em_c_sharpObter ip da_internet_em_c_sharp
Obter ip da_internet_em_c_sharpTiago
 
Metodo using no_c_sharp
Metodo using no_c_sharpMetodo using no_c_sharp
Metodo using no_c_sharpTiago
 
Introdução ao c# para iniciantes
Introdução ao c# para iniciantesIntrodução ao c# para iniciantes
Introdução ao c# para iniciantesTiago
 
Interfaces windows em c sharp
Interfaces windows em c sharpInterfaces windows em c sharp
Interfaces windows em c sharpTiago
 
Filestream sistema arquivos
Filestream  sistema arquivosFilestream  sistema arquivos
Filestream sistema arquivosTiago
 
Curso linux professor rafael
Curso linux professor rafaelCurso linux professor rafael
Curso linux professor rafaelTiago
 
Curso de shell
Curso de shellCurso de shell
Curso de shellTiago
 
Controle lpt em_c_sharp
Controle lpt em_c_sharpControle lpt em_c_sharp
Controle lpt em_c_sharpTiago
 
Classes csharp
Classes csharpClasses csharp
Classes csharpTiago
 

Más de Tiago (20)

Programacao php moodle
Programacao php moodleProgramacao php moodle
Programacao php moodle
 
Apostila cdtc dotproject
Apostila cdtc dotprojectApostila cdtc dotproject
Apostila cdtc dotproject
 
6572501 ldp-apostila-de-turbo-pascal
6572501 ldp-apostila-de-turbo-pascal6572501 ldp-apostila-de-turbo-pascal
6572501 ldp-apostila-de-turbo-pascal
 
Guia rapido de_pascal
Guia rapido de_pascalGuia rapido de_pascal
Guia rapido de_pascal
 
Python bge
Python bgePython bge
Python bge
 
Curso python
Curso pythonCurso python
Curso python
 
Curso python
Curso pythonCurso python
Curso python
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
 
Threading in c_sharp
Threading in c_sharpThreading in c_sharp
Threading in c_sharp
 
Retirar acentos de_determinado_texto_em_c_sharp
Retirar acentos de_determinado_texto_em_c_sharpRetirar acentos de_determinado_texto_em_c_sharp
Retirar acentos de_determinado_texto_em_c_sharp
 
Remover caracteres especiais_texto_em_c_sharp
Remover caracteres especiais_texto_em_c_sharpRemover caracteres especiais_texto_em_c_sharp
Remover caracteres especiais_texto_em_c_sharp
 
Obter ip da_internet_em_c_sharp
Obter ip da_internet_em_c_sharpObter ip da_internet_em_c_sharp
Obter ip da_internet_em_c_sharp
 
Metodo using no_c_sharp
Metodo using no_c_sharpMetodo using no_c_sharp
Metodo using no_c_sharp
 
Introdução ao c# para iniciantes
Introdução ao c# para iniciantesIntrodução ao c# para iniciantes
Introdução ao c# para iniciantes
 
Interfaces windows em c sharp
Interfaces windows em c sharpInterfaces windows em c sharp
Interfaces windows em c sharp
 
Filestream sistema arquivos
Filestream  sistema arquivosFilestream  sistema arquivos
Filestream sistema arquivos
 
Curso linux professor rafael
Curso linux professor rafaelCurso linux professor rafael
Curso linux professor rafael
 
Curso de shell
Curso de shellCurso de shell
Curso de shell
 
Controle lpt em_c_sharp
Controle lpt em_c_sharpControle lpt em_c_sharp
Controle lpt em_c_sharp
 
Classes csharp
Classes csharpClasses csharp
Classes csharp
 

Último

Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxedelon1
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfEmanuel Pio
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfWagnerCamposCEA
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfHELENO FAVACHO
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxLusGlissonGud
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesFabianeMartins35
 

Último (20)

Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Historia da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdfHistoria da Arte europeia e não só. .pdf
Historia da Arte europeia e não só. .pdf
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptx
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 

GNU/Linux Introdução Módulo 1

  • 1.
  • 2. GNU/Linux - módulo 1 - Introdução Licenciamento de Uso Este documento é propriedade intelectual © 2002 do Centro de Computação da Unicamp e distribuído sob os seguintes termos: 1. As apostilas publicadas pelo Centro de Computação da Unicamp podem ser reproduzidas e distribuídas no todo ou em parte, em qualquer meio físico ou eletrônico, desde que os termos desta licença sejam obedecidos, e que esta licença ou referência a ela seja exibida na reprodução. 2. Qualquer publicação na forma impressa deve obrigatoriamente citar, nas páginas externas, sua origem e atribuições de direito autoral (o Centro de Computação da Unicamp e seu(s) autor(es)). 3. Todas as traduções e trabalhos derivados ou agregados incorporando qualquer informação contida neste documento devem ser regidas por estas mesmas normas de distribuição e direitos autorais. Ou seja, não é permitido produzir um trabalho derivado desta obra e impor restrições à sua distribuição. O Centro de Computação da Unicamp deve obrigatoriamente ser notificado (treinamentos@ccuec.unicamp.br) de tais trabalhos com vista ao aperfeiçoamento e incorporação de melhorias aos originais. Adicionalmente, devem ser observadas as seguintes restrições: • A versão modificada deve ser identificada como tal • O responsável pelas modificações deve ser identificado e as modificações datadas • Reconhecimento da fonte original do documento • A localização do documento original deve ser citada • Versões modificadas não contam com o endosso dos autores originais a menos que autorização para tal seja fornecida por escrito. A licença de uso e redistribuição deste material é oferecida sem nenhuma garantia de qualquer tipo, expressa ou implícita, quanto a sua adequação a qualquer finalidade. O Centro de Computação da Unicamp não assume qualquer responsabilidade sobre o uso das informações contidas neste material. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 2
  • 3. GNU/Linux - módulo 1 - Introdução Nota do Autor Este documento é uma “sistematização” de capítulos criados por mim, em conjunto com outros documentos de outras pessoas que desenvolveram ótimos materiais, dicas e artigos relacionados ao GNU/Linux, e que os disponibilizaram livremente. A lista destes documentos que tive como base para a criação deste treinamento, encontra-se no capítulo “Bibliografia”. Gostaria que esse documento fosse encarado como uma sistematização de documentos disponibilizados livremente e que serão utilizados com o propósito de realizar treinamentos de GNU/Linux para quem ainda não o conhece muito bem, mas que tem a curiosidade ou necessidade de aprender. Este documento é livre, e os fontes estão disponibilizados para download no site do Centro de Computação da Unicamp http://www.ccuec.unicamp.br. Obrigado e bom proveito. Fabio da Silva Santos Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 3
  • 4. GNU/Linux - módulo 1 - Introdução Índice 1. Introdução ao GNU/Linux.................................................................................................7 1.1 O que é GNU/Linux?........................................................................................8 1.2 História...........................................................................................................8 1.3 Algumas características.................................................................................9 1.4 O GNU/Linux e as distribuições....................................................................11 1.5 Sou novo usuário GNU/Linux, qual distribuição devo usar?..........................13 1.6 Entendendo o Software Livre?......................................................................16 1.7 Patentes de Software...................................................................................18 2. Instalação......................................................................................................................19 2.1 Antes da Instalação......................................................................................20 2.2 Instalação do Sistema Básico.......................................................................20 2.3 Configuração do Sistema..............................................................................45 3. Utilizando o sistema GNU/Linux.....................................................................................57 3.1 Os gerenciadores de janelas........................................................................58 3.2 Terminal Virtual (console)............................................................................61 3.3 Comandos básicos – nível 1...........................................................................62 3.3.1 – ls......................................................................................................62 3.3.2 – mkdir................................................................................................63 3.3.3 – rmdir................................................................................................63 3.3.4 – rm....................................................................................................63 3.3.5 – cd.....................................................................................................64 3.3.6 – pwd..................................................................................................64 3.3.7 – clear.................................................................................................65 3.3.8 – man..................................................................................................65 3.3.9 – apropos............................................................................................65 4. Sistemas de Arquivos....................................................................................................67 4.1 Partições..........................................................................................................68 4.2 Sistemas de Arquivos......................................................................................68 4.2.1 – EXT2................................................................................................69 4.2.2 – Journaling........................................................................................69 4.2.3 – EXT3................................................................................................69 4.2.4 – ReiserFS..........................................................................................70 4.2.5 – JFS...................................................................................................70 4.2.6 – XFS..................................................................................................70 4.2.7 – SWAP..............................................................................................70 4.2.8 – Qual Sistema de Arquivos devo Utilizar?.......................................71 4.3 - Identificação de Discos e Partições..............................................................71 4.4 - Pontos de Montagem....................................................................................72 5. Arquivos e Diretórios.....................................................................................................73 5.1 – Arquivos......................................................................................................74 5.2 – Tipo de Arquivos.........................................................................................74 5.3 – Nomes de Arquivos.....................................................................................76 5.4 – Diretórios....................................................................................................76 5.5 – Estrutura de Diretórios................................................................................76 5.6 – Caminhos....................................................................................................84 5.7 – Notações de Diretórios do Sistema.............................................................84 Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 4
  • 5. GNU/Linux - módulo 1 - Introdução 6. Utilizando o interpretador de comandos (shell).............................................................85 6.1 – O interpretador de comandos.....................................................................86 6.2 – Aviso de comando (prompt)........................................................................87 6.3 – Curingas (Wildcards)...................................................................................87 6.4 – Direcionadores............................................................................................90 6.5 – Alias............................................................................................................94 6.6 – Histórico dos comandos..............................................................................94 6.7 – Editor de textos “vi”...................................................................................95 6.8 – Comandos Básicos – nível 2........................................................................97 6.8.1 – history............................................................................................97 6.8.2 – tee.................................................................................................97 6.8.3 – grep...............................................................................................98 6.8.4 – cat..................................................................................................98 6.8.5 – tac................................................................................................100 6.8.6 – wc................................................................................................100 6.8.7 – find (utilização básica).................................................................101 6.8.8 – more............................................................................................102 6.8.9 – less..............................................................................................103 6.8.10 – touch..........................................................................................104 6.8.11 – ln................................................................................................105 7. Gerenciamento de Pacotes..........................................................................................107 7.1 – O que são pacotes?...................................................................................108 7.2 – Os pacotes Debian....................................................................................109 7.3 – Ferramentas de Gerenciamento de Pacotes.............................................110 8. Aplicativos para GNU/linux..........................................................................................125 8.1 – Suítes de Escritórios.................................................................................126 8.2 – Internet.....................................................................................................126 8.3 – Multimídia.................................................................................................129 8.4 – Gráficos.....................................................................................................131 8.5 – Desktop Publishing (DTP)..........................................................................131 8.6 – Visualizadores de Imagem........................................................................132 8.7 – Emuladores...............................................................................................132 8.8 – Editores de Texto......................................................................................133 8.9 – Desenvolvimento......................................................................................133 8.10 – Terminais Gráficos..................................................................................134 8.11 – Onde procurar softwares para GNU/Linux..............................................135 9. Bibliografia...................................................................................................................137 Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 5
  • 6. GNU/Linux - módulo 1 - Introdução Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 6
  • 7. GNU/Linux - módulo 1 - Introdução Capítulo 1 Introdução ao GNU/LinuxIntrodução ao GNU/Linux Neste capítulo o usuário compreenderá o que é o GNU/Linux, sua história, características, noções sobre distribuições, e uma introdução do que é software livre. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 7
  • 8. GNU/Linux - módulo 1 - Introdução 1.1- O que é GNU/Linux? Em uma definição mais abrangente do que é GNU/Linux, podemos dizer que é um sistema operacional de código-fonte aberto, e que é distribuído gratuitamente pela internet. Tecnicamente falando, o GNU/Linux é um kernel. O Termo Kernel (ou núcleo) propriamente refere-se ao sistema de software que representa a camada mais baixa de interface com o hardware, sendo o responsável por gerenciar os recursos do sistema computacional como um todo. É no kernel que estão definidas funções para operações com periféricos (mouse, impressora, disco, interface serial/interface paralela), gerenciamento de memória, entre outros. Resumidamente, o kernel é um conjunto de programas que fornece aos programas de usuários (aplicativos), uma interface para utilizar os recursos do sistema. Sistemas completos construídos em torno do kernel do GNU/Linux (mais conhecidos como “Distribuições GNU/Linux”) usam o sistema GNU que oferece uma shell (interpretador de comandos, como o bash), utilitários (por exemplo, o whoami, que mostra quem é o usuário autenticado no momento, o find, comando para pesquisar arquivos em uma hierarquia de diretórios), bibliotecas (glibc), compiladores (compilador C GCC), editores de texto (Emacs), e outros tipo de ferramentas. Por essa razão, Richard M. Stallman, criador do Projeto GNU, pede aos usuários que se refiram ao sistema como GNU/Linux. Além do sistema GNU, um Sistema GNU/Linux completo pode conter outros softwares como o XOrg ou XFree86 (servidores gráficos), Apache (servidor web) , PostgreSQL e MySQL (banco de dados), KDE e GNOME (gerenciadores de janelas), Mozilla FireFox (navegador web), Mozilla Thunderbird e Evolution (leitores de e-mails), entre outros softwares livres (e as vezes não-livres) desenvolvidos por indivíduos e grupos ao redor do mundo. 1.2 - História O kernel do GNU/Linux foi originalmente desenvolvido como passatempo por Linus Torvalds, um estudante de computação da Universidade de Helsinki, na Finlândia. Sua inspiração foi uma pequena versão do Unix desenvolvida por Andrew Tannenbaun chamado Minix. Ele queria um sistema operacional que fosse semelhante ao Unix, com todas as suas funcionalidades e , ainda, que pudesse utilizá-lo num PC. A partir dessa idéia, Linus começou a trabalhar nesse que seria o futuro kernel do sistema operacional que hoje é chamado de GNU/Linux. Isso tudo aconteceu em meados de 1991, e em 5 de outubro deste mesmo ano, a seguinte mensagem circulou na UseNet: “...Como eu mencionei há um mês, estou trabalhando em uma versão free de um sistema semelhante ao Minix para computadores AT-386. Ele já alcançou o estágio de ser usável (embora possa não ser dependendo do que você fazer), e pretendo distribuir o código-fonte. É apenas a versão 0.02, mas já consegui rodar nele o BASH, GCC, GNU-make, GNU-sed, compress, etc.” Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 8
  • 9. GNU/Linux - módulo 1 - Introdução Esta mensagem era assinada por Linus Torvalds, e ninguém adivinharia que ela estaria marcando o início de um movimento que, em menos de 10 anos, já superava trinta milhões de seguidores, e que hoje se tornou um dos sistemas operacionais mais utilizados no mundo em servidores (e agora a caminho do mundos dos desktops!), graças ao seu sistema colaborativo de desenvolvimento, de ajuda aos usuários, e de divulgação por parte dos adeptos de um sistema operacional livre, que aos poucos põe fim ao monópolio tecnológico imposto por grandes empresas de software, principalmente pela Microsoft (líder no mercado de sistemas operacionais para desktops), que oprime o desenvolvimento do conhecimento tecnológico de países “emergentes” como Brasil, que dá um grande exemplo adontando preferencialmente as soluções em software livre com apoio do governo federal, como mostra o projeto de lei do Senado Número 330, DE 2003, Altera a redação do art. 45 da Lei número 8.666: “5o. Somente será realizada licitação ou contratação direta, com base no inciso II do art. 24, para aquisição de programas de informática quando a autoridade competente acolher, em despacho motivado, parecer técnico que conclua pela ausência de programas abertos gratuitos, capazes de suprir adequadamente as necessidade da Administração.” Portanto, adotar preferencialmente soluções livres é dar um voto de confiança para que todas as pessoas possam ter a oportunidade e a opção de participarem da inclusão digital, a qual corre em grande velocidade mundo a fora, e no caso do Brasil, com software livre, sendo através de empresas, escolas, telecentros, e qualquer instituição que necessite de recursos de informática para auxiliar em seus serviços rotineiros. 1.3- Algumas Características Neste item estão descritas algumas das muitas características do GNU/Linux, as quais são muito vantajosas em relação à outros sistemas operacionais: ✔ É livre e desenvolvido voluntariamente por programadores experientes, hackers e contribuidores espalhados ao redor do mundo, que tem como objetivo, a contribuição para a melhoria e crescimento deste sistema operacional; ✔ Não é requerida uma licença para uso. O GNU/Linux é licenciado de acordo com os termos da GPL (GNU Public Licence); ✔ Não precisa de um processador potente para funcionar. O sistema roda bem em computadores 386SX 25MHz com 4MB de RAM (sem rodar o sistema X, que é recomendado 8MB de RAM), sendo um 386SX com 2MB de RAM e 40MB de disco rígido para uma instalação básica e funcional; ✔ Por ser um sistema operacional de código aberto, você pode ver o que código-fonte faz e adaptá-lo as suas necessidades ou de sua empresa. Esta característica é uma segurança a mais para empresas e outros que não querem ter seus dados roubados Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 9
  • 10. GNU/Linux - módulo 1 - Introdução (você não sabe o que um sistema operacional sem código-fonte aberto faz na realidade enquanto está processando um programa); ✔ Multitarefa e multiusuário; ✔ Convive sem nenhum conflito com outros sistemas operacionais (DOS, Microsoft Windows, OS/2, etc), no mesmo computador; ✔ Acessa corretamente discos formatados pelo DOS, Microsoft Windows, Novell, OS/2, NTFS, MAC, SunOS, Amiga, etc; ✔ Os sistemas de arquivos que podem ser usados com o GNU/Linux como EXT2, EXT3, ReiserFS, etc, organizam os arquivos de forma inteligente evitando fragmentação e fazendo um poderoso sistema para aplicações exigentes e gravações intensivas; ✔ Roda aplicações Microsoft Windows através do WINE; ✔ Não há a necessidade de reiniciar o sistema após modificar a configuração de qualquer periférico ou parâmetro de rede. Somente é necessário reiniciar o sistema no caso de uma instalação interna de um novo periférico ou falha em algum hardware (queima do processador, placa-mãe, etc.); ✔ Modularização – O GNU/Linux somente carrega para a memória o que é usado durante o processamento, liberando totalmente a memória assim que o programa ou dispositivo é finalizado; ✔ Devido a modularização, os drivers dos periféricos e recursos do sistema podem ser carregados e removidos completamente da memória RAM a qualquer momento; ✔ Os drivers (módulos) ocupam pouco espaço quando carregados na memória RAM (cerca de 6KB para a placa de rede NE2000, por exemplo); ✔ Consultores técnicos especializados no suporte ao sistema espalhados por todo o mundo; ✔ Na parte dos desktops, possui gerenciadores de janelas amigáveis e que já podem se considerar alternativa ao Microsoft Windows, como por exemplo o KDE, GNOME e XPDE; ✔ Possui uma porção significativa de aplicativos para os mais diversos fins para usuários mais leigos, como por exemplo, aplicativos de escritórios, navegadores web e leitores de e-mail; Analisando algumas das características do sistema GNU/Linux, podemos concluir que ele já está maduro e estável para ser utilizado no mercado e em instituições de pesquisas de diversos seguimentos, como já acontece nos dias de hoje, tendo como parceiros e incentivadores, grandes empresas como IBM e Novell, além de instituições de ensino superior como por exemplo a Unicamp e UNIVATES, e órgãos governamentais como a Prefeitura de Monique na Alemanha, Metrô de São Paulo, os Governos do Estado do Paraná e do Rio Grande do Sul (os quais são os maiores incentivadores), Prefeitura de Rio das Ostras-RJ e o Governo Federal. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 10
  • 11. GNU/Linux - módulo 1 - Introdução 1.4- O GNU/Linux e as Distribuições Logo que Linus Torvalds passou a disponibilizar o GNU/Linux, ele apenas disponibilizava o kernel com alguns comandos básicos. O próprio usuário devia arrumar os outros programas, compilá-los e configurá-los. Até para um hacker isto não é nada fácil. Para nos poupar deste trabalho de montar um sistema do zero, como faziam os pioneiros, temos hoje as distribuições, que nada mais são do que grandes pacotes de software que trazem instaladores, documentações e outras facilidades, que poupam o usuário de tarefas mais espinhosas de instalação e configuração do sistema. Embora seja possível desenvolver sua própria distribuição GNU/Linux do zero, compilando o Kernel e adicionando um a um os programas desejados, é muito mais simples colocar um CD na bandeja, responder a algumas perguntas e se deparar com um sistema configurado, pronto para usar. Entre as distribuições mais conhecidas, estão: SuSe, Conectiva/Mandriva, Fedora, Gentoo, Debian, Slackware, Kurumin e Knoppix. As diferenças básicas entre elas estão em como são organizados e pré-configurados os aplicativos, instaladores e ferramentas de configuração disponibilizadas para auxiliar na administração do sistema GNU/Linux. Outras diferenças entre as distribuições estão nos seus sistemas de empacotamento, que podem ser o RPM, DEB ou TGZ, em alguns casos a estrutura de diretórios, que normalmente seguem o padrão LSB (Linux Standard Base) que usa o FHS (Filesystem Hierarchy Standard), e a versão da biblioteca básica, glibc (biblioteca que contém as funcões básicas para o funcionamento do sistema operacional GNU/Linux). Uma ilustração de como são compostas as distrubuições encontra-se na figura 1.1. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 11
  • 12. GNU/Linux - módulo 1 - Introdução Figura 1.1 – Ilustração de como são compostas as distribuições. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 12
  • 13. GNU/Linux - módulo 1 - Introdução 1.5- Sou novo usuário GNU/Linux, qual distribuição devo usar? Este é o grande problema em existir várias distribuições, qual usar? O primeiro passo é pesquisar discussões em fóruns e sites sobre GNU/Linux e pedir auxílio. Depois analisar a pesquisa. Porém, tome cuidado, pois normalmente o usuário fica desapontado com a primeira distribuição escolhida. Por isso, é bom escolher a distribuição que mais tenha afinidade com você, e para que isso ocorra, deve-se experimentar várias distribuições e escolher aquela que mais lhe agradou. O problema é que o usuário não vai querer instalar várias distribuições para achar aquela que fará sentir-se confortável, pois é muito trabalho, e o usuário novo teria dificuldade. Para estas pessoas a indicação é procurar por distribuições de mais fácil manipulação (considerando que varia pelo gosto da pessoa). Abaixo encontram-se descrições mais detalhada das distribuições mais conhecidas: ✔ SuSe : Distribuição alemã, adquirida pela americana Novell, que vem se destacando pelo seu grande crescimento no mercado corporativo, sendo a distribuição que mais cresce atualmente nesse setor. O SuSE Linux sempre se destacou por ter o melhor suporte a hardware dentre as distribuições existentes, isso graças à inclusão de drivers não-livres (gratuitos ou pagos) com seu sistema operacional. O SuSE possui uma ferramenta muito versátil, o YAST, através da qual é possível configurar todo o sistema, além de gerenciar os programas instalados, tudo ao alcance do mouse. A união dessa facilidade como ótimo suporte comercial vem fazendo do SuSE uma das melhores alternativas para grandes empresas, que não podem abrir mão de suporte técnico especializado e sempre à mão. ✔ Red Hat :Lançada oficialmente em novembro de 1994, a Red Hat foi a empresa pioneira no ramo de GNU/Linux, tornando-se rapidamente a maior empresa do mundo a trabalhar exclusivamente com o sistema operacional livre. Ainda hoje, a Red Hat é a distribuição mais utilizada no mundo, e muitas outras distribuições famosas como SuSe e Mandriva são derivadas dela. Pioneira no uso de ferramentas para configuração e manutenção do sistema, o Red Hat foi e ainda é usado principalmente em servidores, a contragosto de muitos que dizem que seu desempenho não é lá dos melhores, apesar da extrema facilidade do gerenciamento do sistema, fornecida pelas ferramentas incluídas na distribuição. No atual modelo de negócios, a Red Hat está desenvolvendo somente soluções para empresas, através de distribuições fechadas, não disponíveis para download. ✔ Fedora : Quando a Red Hat decidiu mudar seu modelo de negócios e trabalhar apenas com soluções para o mercado corporativo, deixou de disponibilizar a sua distribuição para download sob uma licença de Software Livre. Isso causou uma certa revolta na comunidade, que alegava que a Red Hat a estava traindo. Temendo retaliação e boicote, a Red Hat decidiu criar uma versão livre de seu Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 13
  • 14. GNU/Linux - módulo 1 - Introdução sistema operacional, voltado para o desktop, e disponibilizá-la abertamente para download. Chamado Fedora, o projeto alcançou um grande sucesso, e atualmente é utilizado por um número expressivo de usuários ao redor do mundo. Por possuir as mesmas ferramentas do Red Hat, a migração dos usuários aconteceu de forma tranquila e nem um pouco traumática. O Fedora é mantido pela comunidade, e gerenciado pela Red Hat. Atualmente ele está na versão Core 4. ✔ Conectiva (Mandriva) : A primeira distribuição GNU/Linux nacional criada em 1995. Baseada no Red Hat, o Conectiva Linux destacou-se graças ao ótimo suporte ao hardware omumente usado no Brasil e aos seus programadores que desenvolveram diversas ferramentas utilizadas posteriormente por muitas distribuições, como o gerenciador de pacotes Synaptic e o APT for RPM, uma adaptação do APT do Debian para sistemas baseados no Red Hat. A Conectiva tornou-se rapidamente a maior empresa de Linux da América Latina, tendo sido recentemente adquirida pela francesa MandrakeLinux, tornando-se a distribuição Mandriva. A Conectiva sempre disponibilizou os seus produtos sob a licença GPL, exceto as versões para empresas do seu sistema operacional. ✔ Mandrake (Mandriva) : Distribuição francesa baseada no Red Hat, que com o tempo tomou características próprias e assumiu um sucesso que tornou a Mandrakelinux a maior empresa do ramo de Linux na Europa. O principal trunfo do Mandrake é a facilidade de uso. Tudo é simples de fazer, desde a instalação do sistema até a sua configuração, instalação de novos itens de hardware e gerenciamento dos programas instalados. Suporta vários idiomas, incluindo o português brasileiro, e possui muitos serviços para usuários, como o Mandrake Club, onde o membro recebe as últimas atualizações sobre segurança, softwares, e outros, de forma rápida e automatizada. Recentemente, a Mandrakelinux comprou a brasileira Conectiva, tornando-se também a maior empresa do ramo de Linux da América Latina, e lançando a nova distribuição, o Mandriva. ✔ Slackware : Mais antiga das distribuições, criada em abril de 1993 pelo irlandês, Patrick Volkerding, o Slackware é uma distribuição tradicionalista, voltada para usuários que conhecem o sistema e sabem o que estão fazendo. O objetivo de Patrick é fornecer um ambiente mais parecido possível com um sistema UNIX padrão, mantendo a simplicidade e oferecendo total controle para o administrador. Além disso, o Slackware é a única distribuição que não aplica patches (pacotes de correção e modificações) nos seus pacotes, ficando essa tarefa a cargo do usuário, se assim achar necessário. O melhor uso do Slackware é em servidores dedicados, geralmente estáticos no sentido de não requererem atualizações constantes de software, e onde o sistema seja administrado por uma pessoa apenas, que sabe muito bem o que está fazendo. O Slackware tem a fama de ser uma distribuição difícil e sem muitos recursos. É comum os iniciantes enfrentaram problemas com a configuração do servidor gráfico. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 14
  • 15. GNU/Linux - módulo 1 - Introdução ✔ Debian : O Debian foi criado por Ian Murdock em 1993, inicialmente patrocinado pelo projeto GNU da Free Software Fundation. Hoje, os projetistas do Debian entendem-no como um descendente direto do Projeto GNU. O Debian atualmente inclui mais de 8250 pacotes de software, facilmente instaláveis através de uma ferramenta chamada APT. Esses pacotes são em sua maioria softwares livres disponibilizados sob a licença GPL. Alguns deles não são livres, mas ainda assim gratuitos. Você pode encontrar uma lista e descrições dos pacotes atualmente disponíveis no Debian em qualquer um dos seus sites mirrors (espelhos). Um diferencial do Debian sobre as demais distribuições é que ele é o único sistema que não é mantido, supervisionado ou patrocinado por alguém ou alguma organização. Todo o sistema, incluindo suas ferramentas e os pacotes que utiliza são mantidos por diversos desenvolvedores ao redor do mundo. Mas nem por isso o processo de desenvolvimento do Debian é desorganizado, muito pelo contrário, é um dos processos mais organizados que se conhece. As pessoas que se candidatam a serem mantenedores do sistema passam por testes dificílimos, ficam um longo período em experiência e, se aprovados, têm de assinar um termo de responsabilidade onde se comprometem a garantir a continuidade do sistema operacional, zelando pela qualidade e segurança de tudo o que passar por suas mãos. Prega-se que o Debian é a distribuição mais testada do mundo, e isso é de fato verdade. O processo de inclusão de um recurso no sistema ou um pacote no repositório é muito rígido, o que garante uma confiabilidade total na integridade e segurança do sistema. ✔ Gentoo : Criado por Daniel Robins, o Gentoo é uma distribuição que pode ser definida como um “Linux From Scratch automatizado”. A instalação é feita segundo os mesmo princípios de uma instalação de GNU/Linux a partir do zero, com todos os pacotes sendo compilados um a um, incluindo o kernel. A diferença é que o Gentoo permite automatizar essas tarefas, através de um sistema de gerenciamento de pacotes, o Portage, que busca e baixa o pacote da Internet, compila-o e instala-o automaticamente, de acordo com as configurações feitas pelo usuário. O Gentoo possui arquivos de configuração próprios que definem as opções que devem ser utilizadas pelo compilador, de forma a otimizar os pacotes para uso na máquina local. Quando bem configurado, o Portage acaba produzindo um sistema onde o desempenho é o ponto mais marcante. Outro ponto de destaque o Gentoo é a rica documentação disponível em seu site oficial. Mesmo usuário de outras distribuições podem se beneficiar de documentos que tratam de assuntos fundamentais como particionamento, formatação e sistema de arquivos, muitos desses documentos já traduzidos pela comunidade brasileira do Gentoo. ✔ Knoppix : Distribuição criada por Laus Knooper que oferece a possibilidade de rodar o sistema a partir do CD-ROM. O Knoppix é muito popular, sendo muito utilizado para demonstrações do GNU/Linux, uma vez que pode-se rodar um sistema completo, repleto de aplicativos, a partir de um CD, sem necessidade de instalação. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 15
  • 16. GNU/Linux - módulo 1 - Introdução ✔ Kurumin : Distribuição nacional criada por Carlos Eduardo Morimoto. O Kurumin é baseado no Knoppix, tendo sobre esse a vantagem de ser adaptado à realidade do usuário brasileiro, com ferramentas de instalação de hardwares muito comuns no Brasil, como modems e outros dispositivos. Por ser baseado no Knoppix, o Kurumin também roda a partir do CD, e pode ser rapidamente instalado no computador. ✔ Debian-BR-CDD : Este projeto é uma iniciativa da comunidade brasileira Debian-BR para adaptar a distribuição Debian à realidade do usuário brasileiro. Seu grande apelo está na facilidade de instalação e no belo aspecto visual. O Debian-BR-CDD 1.0 pre5 utiliza o GNOME como gerenciador de janelas padrão, inclui uma excelente documentação para o usuário iniciante e um link para abrir o canal de IRC #debian-br-cdd, onde é possível tirar dúvidas e relatar bugs diretamente para os desenvolvedores do sistema. ✔ Muriqui Linux : Esse projeto é mantido e desenvolvido pelo Instituto Doctum de Educação e Tecnologia. Trata-se de uma distribuição baseada no Debian (um tipo de CDD, Custom Debian Distribution), com o diferencial de estar completamente traduzido para o português brasileiro, e pelo fato de ele vir com o instalador Anaconda, o mesmo usado em distribuições como o Red Hat e o Fedora. Isso o torna um sistema Debian muito fácil de instalar. O nome da distribuição foi baseada no nome de um macaco, considerado o maior da américa latina, que só existe em alguns poucos lugares do Brasil. É uma distribuição nova, mas que pode se tornar sucesso em um futuro próximo. ✔ Ubuntu : Desenvolvido na África do Sul, o Ubuntu tem feito muito sucesso desde o seu lançamento, graças às suas ferramentas que tornam muito prático o uso do sistema, e também pelo seu visual caprichado, utilizando X.org como servidor gráfico padrão. 1.6- Entendendo o Software Livre “Software Livre” é uma questão de liberdade, não de preço. Para entender o conceito, deve-se pensar em “liberdade de expressão”, e não em “almoço grátis”. “Software Livre” refere-se a liberdade dos usuários executarem, copiarem, distribuírem, estudarem, modificarem e aperfeiçoarem o software. Mais precisamente, ele se refere a quatro tipos de liberdade, para os usuários de software: ✔ A liberdade de executar o programa, para qualquer propósito (Liberdade número 0 – zero); ✔ A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades (Liberdade número 1). Acesso ao código-fonte é um pré-requisito para esta liberdade; Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 16
  • 17. GNU/Linux - módulo 1 - Introdução ✔ A liberdade de redistribuir cópias de modo que você possa ajudar ao próximo (Liberdade número 2); ✔ A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie (Liberdade número 3). Acesso ao código-fonte é um pré-requisito para esta liberdade; Um programa é software livre se os usuários tem todas estas liberdades. Portanto, você deve ser livre para redistribuir cópias, seja com ou sem modificações, seja de graça ou cobrando uma taxa pela distribuição, para qualquer um em qualquer lugar. Ser livre para fazer essas coisas significa (entre outras coisas) que você não tem que pedir ou pagar pela permissão. Você deve também ter a liberdade de fazer modificações e usá-las privativamente no seu trabalho ou lazer, sem nem mesmo mencionar que elas existem. Se você publicar as modificações, você não deve ser obrigado a avisar a ninguém em particular, ou de nenhum modo em especial. “Software Livre” não significa “não-comercial”. Um programa livre deve estar disponível para uso comercial, desenvolvimento comercial, e distribuição comercial. O desenvolvimento comercial de software livre não é incomum; tais softwares livres comerciais são muito importantes. Portanto, você pode ter pago para receber cópias de software livres, ou você pode ter obtidos cópias sem nenhum custo. Mas independentemente de como você obteve a sua cópias, você sempre tem a liberdade de copiar e modificar o software, ou mesmo vender cópias, VOCÊ É LIVRE PARA ISSO. “Softwares livres“ distribuídos pelo licença GPL (GNU Public Licence) seguem um conceito conhecido como Copyleft, um trocadilho com o termo Copyright, que traduzindo literalmente significa “deixamos copiar”, que é o que garante a liberdade dos usuários de modificarem e distribuírem sua modificações. Ou seja, um software livre sem Copyleft pode ser tornado proprietário por um usuário. Já um software protegido por uma licença que ofereça Copyleft deverá, se distribuído, ser distribuído sob a mesma licença, ou seja, repassando seus direitos. Em todo caso, não é necessário redistribuir um software livre modificado. O movimento do “Software Livre” foi criado em 1984 por Richard Stallman, um pesquisador do MIT (Massachusetts Insitute Technology), que não era a favor de grandes empresas de software imporem restrições aos usuários com o uso do contrato de licenças de software. Desde então, criou o projeto GNU (GNU is not UNIX), fundando a Free Software Foundation (FSF). A licença mais conhecida no mundo do software livre é a GPL (GNU Public Licence), que é uma das licenças que garantem todas essas liberdades listadas e comentadas acima, porém, existem outros tipos de licenças de software que são semelhantes, mas não iguais à GPL, como por exemplo a BSD, Creative Commons, entre outras. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 17
  • 18. GNU/Linux - módulo 1 - Introdução 1.7- Patentes de Software Outro motivo importante que justifica a adoção do Software Livre são as chamadas patentes de software. Imagine que uma empresa patenteasse o duplo-clique, por exemplo, e passasse a exigir que qualquer um que utilizasse esse recurso em seus softwares tivessem que pagar por isso. E se tudo o que for criado na área de software for patenteado, e tivemos que pagar para utilizar esses recursos, como poderá haver desenvolvimento, no futuro? Somente as grandes companhias poderão desenvolver software, e eles terão de ser pagos. Imagine que terrível seria se todos os programas que você utiliza em seu computador lhe custassem alguns dólares. Isso tornaria os programas mais caros que o próprio computador, o que inibiria a aquisição de computadores pelos menos favorecidos. O que acontece então é a estagnação total, e o domínio do conhecimento pelas grandes companhias. Existe uma grande movimentação por parte dos Estados Unidos para que o seu sistema de patentes seja implementado nos outros países. Recentemente, isso aconteceu na União Européia, a contragosto de muitos. No Brasil e outros países da América Latina tal sistema de patentes não existe, o que nos assegura uma certa liberdade no uso de tecnologias de software patenteadas pelas empresas americanas. Entretanto, é preciso ter consciência da importância de não impôr qualquer sistema de proteção ao direito intelectual que venha a inibir a disseminação do conhecimento e o desenvolvimento tecnológico, o que nos deixaria à mercê da vontade das grandes companhias americanas, que não estão nem um pouco interessadas no desenvolvimento tecnológico e na disseminação do conhecimento, mas tão somente em encher os bolsos às custas de usuários sem acesso à informação, escravos de seus programas fechados e seus Service Packs. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 18
  • 19. GNU/Linux - módulo 1 - Introdução Capítulo 2 Instalação do GNU/LinuxInstalação do GNU/Linux Neste capítulo o usuário compreenderá como é organizada uma instalação do GNU/Linux independente da sua distribuição, e o que é necessário saber antes e durante a instalação para se ter uma sistema enxuto e funcional. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 19
  • 20. GNU/Linux - módulo 1 - Introdução 2.1– Antes da Instalação A instalação de um sistema GNU/Linux não é uma tarefa difícil como muitos usuários pensam, ela é apenas um processo mais detalhado e customizável do que, por exemplo, a instalação de um sistema Microsoft Windows. Para que este procedimento seja bem sucedido, é indicado seguir algumas dicas básicas: 1. Antes da instalação, verifique se existe outro sistema operacional instalado na máquina; 2. Caso exista outro sistema operacional (normalmente o Microsoft Windows) que esteja ocupando o espaço disponível em disco, é necessário fazer um redimensionamento para que o GNU/Linux possa ser instalado; 3. Faça um backup de todos os seus arquivos mais importantes e execute a ferramenta de desfragmentação de discos antes de realizar o redimensionamento (Apenas no caso de existir outro sistema operacional na máquina); 4. Mesmo que os instaladores possuam o recurso de detecção automática de hardware, sempre tenha em mãos a listagem de hardware da sua máquina (monitor, placa de vídeo, placa de rede, placa de fax modem, disco rígido SCSI, etc.), pois nem todos os instaladores possuem um abrangente banco de dados de drivers; 5. Dê preferência à instalação via boot no CD-ROM, que é a mais comum e a mais simples disponível até o momento; 6. Em muitos casos, a máquina está localizada dentro de uma rede interna, então peça ao administrador da rede as seguintes informações: ✔ Endereço IP da máquina; ✔ Nome da máquina; ✔ Gateway; ✔ Servidores de Nomes (DNS); ✔ domínio; 7. Tenha em mãos os cd's da sua distribuição GNU/Linux (Pode-se instalar um sistema através da rede, NFS, FTP ou HTTP, com um boot pelo disquete ou mesmo pelo CD); 2.2 – Instalação do Sistema Básico Independente de existirem diversas distribuições, que possuem seus próprios sistemas de instalação, cada qual com suas características individuais, o processo de instalação do GNU/Linux, no geral, segue um padrão, o qual pode-se resumir da seguinte forma: Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 20
  • 21. GNU/Linux - módulo 1 - Introdução Normalmente uma instalação de GNU/Linux possui estas características, porém, como existem diversas distribuições com seus próprios instaladores, algumas destas etapas podem não existir, podem fazer parte de outro item do instalador, ou mesmo podem ser executadas sem aparecerem visualmente para o usuário. A distribuição utilizada como base para o curso é o Debian GNU/Linux 3.1, ou Debian “Sarge”. Esta distribuição é desenvolvida e atualizada através do esforço de voluntários espalhados ao redor do mundo, seguindo o estilo de desenvolvimento GNU/Linux. Por este motivo, foi adotada como a distribuição oficial do projeto GNU. Apesar da sua instalação ser inteiramente em modo texto, pode-se instalar um sistema completo com uma enorme facilidade e rapidez. Sua instalação é dividida nas seguintes etapas: Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 21 ✔ Tipo de instalação (modo texto, gráfico, expert, etc.) ✔ Detecção de hardware ✔ Seleção do idioma ✔ Seleção do layout do teclado ✔ Seleção e configuração do mouse ✔ Perfis de instalação ✔ Configurar rede ✔ Particionamento de disco ✔ Instalação de pacotes ✔ Configurar o modo gráfico ✔ Monitor ✔ Placa de vídeo ✔ Nº de cores / resolução ✔ Configuração do fuso horário ✔ Configuração de usuários e senhas ✔ Configuração do gerenciador de inicialização (bootloader) ✔ Disco de inicialização ✔ Finalização da instalação
  • 22. GNU/Linux - módulo 1 - Introdução A partir de agora, vamos detalhar o processo de instalação do Debian GNU/Linux 3.1 “Sarge”, passo-a-passo, com apresentação das telas que fazem parte do instalador. Lembrando que as opções selecionadas fazem parte dos exemplos deste curso. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 22 ✔ Tipo de instalação (linux26, expert, etc.) ✔ Seleção do idioma ✔ Seleção do layout do teclado ✔ Detectar e montar CD-ROM ✔ Carregar componentes do instalador ✔ Detectar hardware de rede ✔ Configurar rede ✔ Detectar discos e outros hardwares ✔ Particionar disco ✔ Instalar Sistema Básico ✔ Instalar o GRUB em um disco rígido ✔ Configuração do fuso horário ✔ Configurar usuários e senhas ✔ Configurar o APT (repositório de pacotes) ✔ Seleção dos perfis de instalação ✔ Configurar o modo gráfico ✔ Monitor ✔ Placa de vídeo ✔ Nº de cores / resolução ✔ Configurar o EXIM ✔ Finalização da Configuração e da Instalação ✔ Inicialização do Modo Gráfico
  • 23. GNU/Linux - módulo 1 - Introdução ✔ Tipo de instalação (linux26, expert, etc.) A figura 2.2.1 mostra a tela de apresentação do instalador, logo após a inicialização do computador pela mídia de instalação do Debian GNU/Linux Sarge. Esta pode ser adquirida em um dos mirrors oficiais, que encontram-se espalhados pelo mundo, e listados em http://www.debian.org/CD/http-ftp/ . Precisa-se apenas do CD 1 para realizar uma instalação funcional e enxuta. Figura 2.2.1 – Primeira tela de apresentação do instalador. Pressionando a tecla F1, podemos visualizar um menu com diversar informações sobre a instalação e sobre o Projeto Debian GNU/Linux. Utilize o método de instalação “linux26” (figura 2.2.2). Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 23
  • 24. GNU/Linux - módulo 1 - Introdução Figura 2.2.2 – Menu de opções do instalador. ✔ Seleção do Idioma Nesta etapa, faz-se a seleção do idioma usado no processo de instalação (figura 2.2.3). Selecione a opção “Portuguese (Brazil) - Português do Brasil”. Figura 2.2.3 – Seleção do idioma. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 24
  • 25. GNU/Linux - módulo 1 - Introdução ✔ Seleção do layout do teclado Escolha o layout do teclado que você está usando (figura 2.2.4). O instalador te oferece a opção mais comum, baseada na sua escolha do idioma, mas obviamente, você pode mudar se desejar. Selecione a opção “Português Brasileiro (layout ABNT2)”. Figura 2.2.4 – Escolha do layout do teclado. ✔ Detectar e montar CD-ROM O instalador executa a detecção do CD-ROM (figura 2.2.5) para poder carregar na memória os componentes necessários ao seu funcionamento (figuras 2.2.6 e figura 2.2.7). Figura 2.2.5 – Detecção do CD-ROM. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 25
  • 26. GNU/Linux - módulo 1 - Introdução Figura 2.2.6 – Lendo os componentes do instalador no CD-ROM. Figura 2.2.7 – Carregando na memória os componentes do instalador. ✔ Configurar Rede A detecção do hardware de rede é feita automáticamente (figura 2.2.8), e se a máquina faz parte de uma rede, o instalador tenta realizar a configuração automática via DHCP (figura 2.2.9). Caso contrário, será exibida uma mensagem de erro (figura 2.2.10) e o menu de opções da configuração de rede. Selecione a opção “Configurar a Rede Manualmente” (figura 2.2.11). Figura 2.2.8 – Detectando o hardware de rede. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 26
  • 27. GNU/Linux - módulo 1 - Introdução Figura 2.2.9 – Configuração de rede via DHCP. Figura 2.2.10 – Mensagem de erro exibida por não achar nenhum servidor DHCP. Figura 2.2.11 – Menu de opções da Configuração de Rede. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 27
  • 28. GNU/Linux - módulo 1 - Introdução As informações de rede como endereço IP (figura 2.2.12), máscara de rede (figura 2.2.13), gateway (figura 2.2.14), servidores de nomes, ou DNS (figura 2.2.15), nome da máquina (figura 2.2.16) e domínio da rede(figura 2.2.17), serão necessárias nesta etapa da instalação. Figura 2.2.12 – Endereço IP. Figura 2.2.13 – Máscara de Rede. Figura 2.2.14 – Gateway. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 28
  • 29. GNU/Linux - módulo 1 - Introdução Figura 2.2.15 – Servidores de Nomes, ou DNS. Figura 2.2.16 – Nome da Máquina. Figura 2.2.17 - Domínio da rede. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 29
  • 30. GNU/Linux - módulo 1 - Introdução ✔ Detectar Discos e outros Hardwares Nesta etapa é feita a detecção dos disco e outros hardwares relacionados (figura 2.2.18). Figura 2.2.18 – Detecção de de discos e outros hardware relacionados. ✔ Particionar Discos Após realizar a detecção automática dos discos, o instalador inicializa o particionador (figura 2.2.19) e exibe um menu onde é listado todos discos detectados (figura 2.2.20). Selecione a opção “Editar manualmente a tabela de particões”. Figura 2.2.19 – Iniciando o particionador. Figura 2.2.20 – Menu do particionador. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 30
  • 31. GNU/Linux - módulo 1 - Introdução Como neste custo já existem partições configuradas, formatadas e montadas, você irá inicialmente removê-las para aprender como realizar o processo de particionamento de discos. Selecione a primeira partição (swap)(figura 2.2.21), e na próxima tela (figura 2.2.22), selecione a opção “Remover a partição”. Figura 2.2.21 – Selecione a primeira partição para remoção. Figura 2.2.22 – Selecione a opção “Remover a partição”. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 31
  • 32. GNU/Linux - módulo 1 - Introdução O particionador irá atualizar a tabela de partições da máquina (figura 2.2.23), e depois voltará novamente ao menu onde estão listadas todas as partições configuradas no(s) respectivo(s) disco(s) (figura 2.2.24). Repita a operação anterior com a segunda partição (reiserfs), selecionando-a, e na próxima tela, escolhendo a opção “Remover a partição” (figura 2.2.25). Figura 2.2.23 – Atualizando a tabela de partições. Figura 2.2.24 – Menu do particionador. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 32
  • 33. GNU/Linux - módulo 1 - Introdução Figura 2.2.25 – Selecione a opção “Remover a partição”. Novamente é apresentado o menu do particionador, com a tabela de partições sem nenhuma configuração. Nesta instalação será utilizado um esquema de particionamento básico, indicado para iniciantes. Siga as orientações enumeradas para criar as partições. Cada item contém a referência das telas exibidas durante o particionamento para que o usuário possa localizar-se durante a execução dos procedimentos. 1. Selecione a área do disco que contenha espaço livre para criar as partições (figura 2.2.26): Figura 2.2.26 – Selecionar área do disco para particionar. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 33
  • 34. GNU/Linux - módulo 1 - Introdução 2. Primeiramente, cria-se uma partição de SWAP (Área de troca) para o sistema. Selecione a opção “Criar uma nova partição” (figura 2.2.27): Figura 2.2.27 – Criar uma partição de SWAP. 3. Coloque neste campo o valor “128 MB“ (Entre os valores “128” e “MB” coloque um espaço em branco) (figura 2.2.28): Figura 2.2.28 – informando o valor do tamanho da partição de SWAP. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 34
  • 35. GNU/Linux - módulo 1 - Introdução 4. Selecione a opção “Primária” (figura 2.2.29): Figura 2.2.29 – Tipo de partição. 5. Selecione a opção “Início” (figura 2.2.30): Figura 2.2.30 – Posicionamento da partição de SWAP no disco. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 35
  • 36. GNU/Linux - módulo 1 - Introdução 6. Selecione o item “Usar como” para selecionar o tipo de sistema de arquivos para esta partição (figura 2.2.31): Figura 2.2.31 – Informações sobre a partição. 7. Para a criação de uma partição de SWAP, seleciona-se a opção “Área de Troca” (figura 2.2.32): Figura 2.2.32 – Selecionando o tipo de sistema de arquivos. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 36
  • 37. GNU/Linux - módulo 1 - Introdução 8. Nesta etapa, o instalador exibe a configuração da partição recém-criada. Selecione a opção “Finalizar a configuração da partição” para confirmar a criação da partição de SWAP (figura 2.2.33): Figura 2.2.33 – Confirmação da criação da partição de SWAP. 9. O instalador volta a exibir o menu do particionador, com a nova partição de SWAP sendo exibida. Agora cria-se a partição principal, o qual será instalado o sistema operacional. Novamente selecione a área do disco que contenha espaço livre para criar as partições (figura 2.2.34): Figura 2.2.34 – Selecionar espaço livre para criação a partição principal. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 37
  • 38. GNU/Linux - módulo 1 - Introdução 10. Selecione a opção “Criar uma nova partição” (figura 2.2.35): Figura 2.2.35 – Criar uma nova partição. 11. Coloque neste campo o valor “5 GB“ (Entre os valores “5” e “GB” coloque um espaço em branco) (figura 2.2.36): Figura 2.2.36 – Informando o valor do tamanho da partição principal. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 38
  • 39. GNU/Linux - módulo 1 - Introdução 12. Selecione a opção “Primária” (figura 2.2.37): Figura 2.2.37 – Tipo de partição. 13. Selecione a opção “Início” (figura 2.2.38): Figura 2.2.38 – Posicionamento da partição principal no disco. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 39
  • 40. GNU/Linux - módulo 1 - Introdução 14. Selecione o item “Usar como” para selecionar o tipo de sistema de arquivos para esta partição (figura 2.2.39): Figura 2.2.39 - Informações sobre a partição. 15. Para a nossa partição principal, selecione o item “sistema de arquivo com journaling ReiserFS” (figura 2.2.40): Figura 2.2.40 - Selecionando o tipo de sistema de arquivos. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 40
  • 41. GNU/Linux - módulo 1 - Introdução 16. Escolhido o tipo de sistemas de arquivos, selecione o item “Flag Inicializável”, (figura 2.2.41) para tornar a nossa partição inicializável (“ligado”): Figura 2.2.41– Tornar a partição principal inicializável 17. Após estas configurações, Selecione a opção “Finalizar a configuração da partição” (figura 2.2.42): Figura 2.2.42- Confirmação da criação da partição principal. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 41
  • 42. GNU/Linux - módulo 1 - Introdução 18. Será exibida a configuração da sua tabela de partições (figura 2.2.43). Selecione a opção “Finalizar o particionamento e gravar as mudanças no disco”: Figura 2.2.43 – Finalizar o particionamento. 19. Confirme a gravação da tabela de partições, selecionando a opção “Sim” (Figura 2.2.44): Figura 2.2.44 – Confirmar a gravação da tabela de partições. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 42
  • 43. GNU/Linux - módulo 1 - Introdução 20. Após a confirmação anterior, o instalador irá formatar as partições recém- criadas (figura 2.2.45): Figura 2.2.45 – Formatando as partições. ✔ Instalação do Sistema Básico A instalação do sistema básico é feita logo após a formatação das partições (figura 2.2.46): Figura 2.2.46 – Instalação do sistema básico. Terminada a instalação do sistema básico, o instalador pede a confirmação para instalar o gerenciador de inicialização GRUB (figura 2.2.47): Figura 2.2.47 - Instalar o gerenciador de inicialização GRUB. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 43
  • 44. GNU/Linux - módulo 1 - Introdução 21. Executa-se a instalação do GRUB na MBR (figura 2.2.48): Figura 2.2.48 – Executando a instalação do GRUB. Agora o instalador realiza as últimas configurações desta primeira etapa (figura 2.2.49), e exibe uma mensagem notificando a finalização da instalação (figura 2.2.50). O CD será ejetado da bandeja e o computador será reinicializado para a próxima etapa que é a configuração do sistema Figura 2.2.49 – Finalizando a instalação. Figura 2.2.50 – Instalação Finalizada. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 44
  • 45. GNU/Linux - módulo 1 - Introdução 2.3- Configuração do Sistema A configuração do sistema GNU/Linux é iniciada após a instalação do sistema básico (figura 2.3.2). Agora será feita as configurações mais específicas do sistema, e a instalação de pacotes de acordo com o uso da máquina. Mesmo que na mesma máquina exista outro sistema operacional instalado, o novo gerenciador de inicialização será o GRUB, e a sua interface padrão tem a configuração como a da figura 2.3.1: Figura 2.3.1 – Tela inicial do GRUB. Figura 2.3.2 - Tela de boas vindas do configurador Debian. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 45
  • 46. GNU/Linux - módulo 1 - Introdução ✔ Configuração do Fuso Selecione a configuração de fuso horário para o seu computador (figuras 2.3.3 e 2.3.4): Figura 2.3.3 – Selecionando o fuso horário. Figura 2.3.4 - Selecionando o fuso horário. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 46
  • 47. GNU/Linux - módulo 1 - Introdução ✔ Configurar usuário e senha Nesta parte da configuração, serão configuradas as informações dos usuários que normalmente utilizam a máquina. Basicamente, têm-se dois usuário no sistema, o usuário para tarefas administrativas, o “root”, e um usuário para utilização geral, o qual daremos o nome de “curso”. Para o usuário administrativo (root), a configuração pede a sua senha (figura 2.3.5) e a confirmação para esta senha (figura 2.3.6): Figura 2.3.5 – Senha para usuário administrativo. Figura 2.3.6 – Confirmação para senha do usuário administrativo. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 47
  • 48. GNU/Linux - módulo 1 - Introdução Para o usuário de utilização geral (curso), a configuração pede o seu nome completo (figura 2.3.7), seu username (figura 2.3.8), sua senha (figura 2.3.9) e a confirmação para esta senha (figuras 2.3.10): Figura 2.3.7 – Nome completo do usuário de utilização geral. Figura 2.3.8 – Username para o usuário de utilização geral. Figura 2.3.9 – Senha para o usuário de utilização geral. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 48
  • 49. GNU/Linux - módulo 1 - Introdução Figura 2.3.10 – Confirmação da senha para o usuário de utilização geral. ✔ Configurar repositório de pacotes (APT) Deve-se escolher o método que o APT (A ferramenta de gerenciamento de pacotes do Debian GNU/Linux) deverá utilizar para acessar o repositório de pacotes Debian. É possível instalar estes pacotes através de um CD-ROM, FTP, HTTP, ou diretamente do sistema de arquivos. Utilize a opção “cdrom” (figura 2.3.11) para o repositório de pacotes, o qual será examinado e preparado (figura 2.3.12) para selecionar os perfis de instalação. Figura 2.3.11 – Selecione o repositório de pacotes do Debian GNU/Linux. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 49
  • 50. GNU/Linux - módulo 1 - Introdução Figura 2.3.12 – Examinando e preparando as informações do repositório. ✔ Seleção dos Perfis de Instalação Nesta etapa a seleção de perfis é requerida pela configuração do sistema. Como visto, existem perfis para os mais variados usos para serem instalados (figura 2.3.13). Selecione as opções “Ambiente Desktop” e “Servidor Web”, as quais serão suficientes para as tarefas propostas: Figura 2.3.13 – Menu dos perfis de instalação. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 50
  • 51. GNU/Linux - módulo 1 - Introdução ✔ Configurar o modo gráfico Logo após a instalação dos pacotes dos perfis selecionados, o instalador inicia a configuração do modo gráfico. Como indicado no início do capítulo, tenha em mãos as informações de hardware relacionados ao modo gráfico (monitor, placa de vídeo, etc.) e selecione-o no menu de opções. Primeiramente, será pedido o modelo da sua placa de vídeo. No nosso caso, selecione “i810” (figura 2.3.14). A detecção automática do mouse (figura 2.3.15) e do monitor (2.3.16) serão, respectivamente, pedidos em seguida: Figura 2.3.14 – Selecionando a placa de vídeo. Figura 2.3.15 – Detecção do mouse. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 51
  • 52. GNU/Linux - módulo 1 - Introdução Figura 2.3.16 – Detectar o monitor. Se o seu monitor for do tipo LCD, selecione a opção abaixo (figura 2.3.17): Figura 2.3.17 – Se o seu monitor dor do tipo LCD, selecione esta opção. A mensagem exibida na figura 2.3.18 informa os tipo de opções que o instalador disponibiliza para a configuração do seu monitor. Na figura 2.3.19 estas opção são exibidas. A opção “Medium” será utilizada nesta instalação, porém, se você for um usuário mais avançado ou seu monitor precise de configurações mais aprofundadas, escolha a opção “Advanced”. No caso de ser um usuário muito iniciante, escolha a opção “Simple”: Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 52
  • 53. GNU/Linux - módulo 1 - Introdução Figura 2.3.18 – Informações iniciais para configurar o monitor. Figura 2.3.19 – Selecione a opção “Medium”. Na figura 2.3.20, o instalador exibe o menu de opções para configurar o modo de exibição do seu monitor. Neste caso selecione a opção “800x600 @ 60Hz”, que é a resolução do monitor que está sendo utilizado. Porém, no caso de realizar a instalação do Debian GNU/Linux em outra máquina, selecione a opção que mais adequada para o seu monitor. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 53
  • 54. GNU/Linux - módulo 1 - Introdução Figura 2.3.20 – Selecionando o modo de exibição para o monitor. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 54
  • 55. GNU/Linux - módulo 1 - Introdução ✔ Configurar o servidor de mensagens A última parte da instalação é a configuração do EXIM, o MTA (servidor de emails padrão do Debian). Se você pretende usar o sendmail ou o postfix, selecione a opção “sem configuração no momento” (figura 2.3.21) e não configure o EXIM. Selecione esta opção, pois neste momento este recurso não será utilizado. Figura 2.3.21 – Sem configuração para o EXIM no momento. Mesmo o instalador pedindo a confirmação para configurar o servidor de mensagens (figura 2.3.22), selecione a opção “Sim”. Na próxima tela, o instalador pergunta para qual conta de usuário as mensagens serão postadas (figura 2.3.23). Como não configuramos o servidor de mensagens, selecione “Ok”, para então ser exibida a tela que finaliza a instalação do nosso sistema Debian GNU/Linux (figura 2.3.24). Figura 2.3.22 – Confirmação para configurar o EXIM. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 55
  • 56. GNU/Linux - módulo 1 - Introdução Figura 2.3.23 – Selecione a opção “Ok”, pois o EXIM não foi configurado. Figura 2.3.24 – Fim da instalação do Debian GNU/Linux Pronto! Agora o seu sistema Debian GNU/Linux está instalado. O servidor gráfico será inicializado e uma tela para a autenticação aparece para o uso do gerenciador de janelas. Utilize a conta de usuário recém-criada, e bom uso! Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 56
  • 57. GNU/Linux - módulo 1 - Introdução Capítulo 3 Utilizando o GNU/LinuxUtilizando o GNU/Linux Neste capítulo o usuário acessa e utiliza pela primeira vez o GNU/Linux, aprende o que é um gerenciador de janelas, e utiliza os recursos mais básico do sistema. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 57
  • 58. GNU/Linux - módulo 1 - Introdução 3.1- Os gerenciadores de janelas O gerenciador de janelas é o programa que controla a aparência da aplicação. Ele atua entre o servidor X (servidor gráfico) e a aplicação (figura 3.1.1) . Figura 3.1.1 – Ilustração do esquema de atuação dos aplicativos gráficos. No universo do software livre, existem vários tipos de gerenciadores de janelas disponíveis, que entre os mais conhecidos, podem-se citar: ✔ KDE : K Desktop Environment, ou simplesmente KDE, é um ambiente gráfico muito difundido no mundo GNU/Linux, pois apresenta um conjunto de aplicativos consistentes para usuários e programadores, além de uma aparência agradável e modo de operação bastante familiar. Além do gerenciador de janelas, fazem parte do projeto KDE inúmeros aplicativos para gerenciamento de arquivos, controle de dispositivos, acesso à compartilhamentos de rede, gerenciamento do sistema, acesso a Internet, além da suíte de escritório KOffice, o pacote KDevelop para desenvolvimento de aplicativos gráficos, o editor de páginas para a Internet Quanta, e muito mais. O KDE utiliza a biblioteca gráfica QT, mantida pelos desenvolvedores do KDE e muito utilizada para a construção de interfaces Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 58
  • 59. GNU/Linux - módulo 1 - Introdução gráficas para aplicativos. Um dos pontos contra para o KDE é o seu elevado consumo de recursos de sistema, principalmente de memória RAM, o que o torna inutilizável em máquina que não tenha pelo menos 128 MB de memória disponível. ✔ GNOME : O GNOME, assim como o KDE, é constituído por um gerenciador de janelas, e diversos aplicativos para o usuário, como gerenciador de arquivos, navegador de Internet, aplicativos para gerenciamento e configuração do sistema, navegação pela rede, jogos, etc. Além de aplicativos para desenvolvimento de aplicações. O GNOME utiliza a biblioteca gráfica GTK+, muito utilizada por outros aplicativos, como o GIMP e o editor de páginas para a Internet Bluefish. Uma grande vantagem do GNOME sobre outros gerenciadores de janelas é o seu sistema de atualização dinâmica das configurações, que permite que qualquer configuração entre em vigor imediatamente à sua seleção, sem a necessidade de clicar em um botão "Aplicar" ou de reinicar o ambiente gráfico, como acontece na maioria dos gerenciadores de janelas, incluindo o KDE. ✔ Enlightenment : O Enlightenment é um super gerenciador de janelas altamente personalizável, bonito e com muitos efeitos visuais. O projeto Enlightenment produz, além do ambiente gráfico, diversas bibliotecas gráficas, como Imlib, FNLib e Imlib2, que são hoje utilizadas por muitos programas, inclusive outros ambientes gráficos, como o fluxbox. ✔ Blackbox : O Blackbox é um gerenciador de janelas minimalista, muito leve e pequeno. Ao contrário de outros gerenciadores de janelas mais poderosos, ele não inclui nenhum outro aplicativo, motivo pelo qual ele é tão pequeno (alguns poucos KB). Sua configuração é toda feita através da edição de arquivos de texto, o que não é nem um pouco prático, mas tem lá as suas vantagens. Graças à sua velocidade, o Blackbox é muito apreciado por usuários avançados, que não gostam de dispender processamento e memória para rodar um ambiente com o KDE, GNOME ou Enlightenment. O Blackbox, quando em conjunto com outros pequenos mini-aplicativos, torna-se um gerenciador de janelas muito bonito. ✔ Fluxbox : Baseado no Blackbox, o Fluxbox contém mais recursos que aquele, como suavizador de fontes e suporte nativo a transparências, sem deixar de ser igualmente leve e simples. O Fluxbox é muito apreciado entre seus usuários, graças à perfeita união entre beleza e leveza deste excelente gerenciador de janelas. O suporte a ícones no desktop é fornecido por programas externos. Outro recurso muito interessante é o suporte aos chamados docks, popularizados no WindowMaker. ✔ Windowmaker : Criado pelo brasileiro Alfredo Kojima, é um gerenciador de janelas que, ao contrário do KDE e GNOME, que se assemelham as interfaces do Microsoft Windows, tem uma proposta bastante diferente. O objetivo principal Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 59
  • 60. GNU/Linux - módulo 1 - Introdução que é gerenciar abertura e manipulação de janelas acontece de forma muito rápida e eficiente. O consumo de memória é bem pequeno. Ele ainda possui uma facilidade de possuir atalhos para programas, sem prejudicar o consumo de memória do computador. Existem outras dezenas de tipos de gerenciadores de janelas, como o Twm, Icewm, Xfce, AfterStep, entre outros. A escolha do seu gerenciador de janelas é pessoal, depende muito do gosto de cada pessoa e dos recursos que deseja utilizar. Como mencionado, o gerenciador de janelas padrão do Debian GNU/Linux é o GNOME (figura 3.1.2). Ele não é apenas um simples gerenciador de janelas, e sim, um desktop completo, com diversos aplicativos de diferentes tipos disponíveis para a sua utilização (figura 3.1.3). Através do gerenciador de pacotes APT e Synapitc (versão gráfica do APT), podemos instalar e atualizar facilmente os aplicativos disponíveis, aumentando o número de ferramentas para o seu desktop. Figura 3.1.2 – Gerenciador de janelas GNOME. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 60
  • 61. GNU/Linux - módulo 1 - Introdução Figura 3.1.3 – Menu dos aplicativos disponíveis. 3.2- Terminal Virtual (console) Terminal (ou console) é o teclado e a tela conectados em seu computador. O GNU/Linux faz uso de sua característica multi-usuária usando terminais virtuais. Um terminal virtual é uma segunda sessão de trabalho completamente independente de outras, que pode ser acessada no computador local ou remotamente, através de aplicativos de acesso remoto como o SSH, telnet, rlogin, etc. No GNU/Linux em modo texto, você pode acessar outros terminais virtuais segurando a tecla ALT e pressionando F1 a F6. Cada tecla de função corresponde a um número de terminal do 1 ao 6 (o sétimo é usado por padrão pelo modo gráfico). O GNU/Linux possui mais de 63 terminais virtuais, mas apenas 6 estão disponíveis inicialmente por motivos de economia de memória RAM. Se você estiver usando o modo gráfico, você deve segurar as teclas CTRL+ALT enquanto pressiona uma das teclas de F1 a F6. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 61
  • 62. GNU/Linux - módulo 1 - Introdução Para um administrador de sistemas, esta ferramenta é fundamental, pois muitas tarefas são feitas no modo texto, alterando arquivos de configuração, executando comandos manualmente, verificando os processos que estão carregados na memória, entre outros. Para executar um terminal virtual à partir do GNOME, clique no ícone que é indicado pela figura 3.1.4. Figura 3.1.4 – ícone do terminal virtual 3.3- Comandos básicos – nível 1 Neste item serão listados os comandos básicos para que você comece a interagir com o interpretador de comandos bash. 3.3.1- ls : lista conteúdos de diretórios. Sintaxe: $ ls <opções> Opções: • - l : escreve no formato de colunas simples. • - i : procede a saída para o arquivo pelo seu número serial (inode). • - R : lista os diretórios encontrados recursivamente. • - h : mostra o tamanho dos arquivos em KB, MB, GB. • - a : lista todos os arquivos inclusive os ocultos. • - F : insere um caracter após arquivos executáveis ('*'), diretórios ('/'), sockets ('=') e pipe ('|'). Seu uso é útil para identificar de forma fácil tipos de arquivos nas listagens de diretórios. Exemplo: $ ls / bin cdrom etc initrd lib mnt proc sbin sys usr vmlinuz boot dev home initrd.img media opt root srv tmp var Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 62      Ícone para executar o terminal virtual
  • 63. GNU/Linux - módulo 1 - Introdução 3.3.2- mkdir : cria diretórios. Sintaxe: $ mkdir <opções> <diretório> Opções: • - p : cria toda a estrutura de diretórios passada como parâmetro. • --verbose : imprime uma mensagem para cada diretório criado. Exemplo: $ mkdir teste 3.3.3- rmdir : remove diretórios vazios. Sintaxe: $ rmdir <opções> <diretório> Opções: • - p : remove a estrutura de diretórios passadas como parâmetro, porém, o último diretório passado como parâmetro deve estar vazio. • -- verbose : imprime uma mensagem para cada diretório apagado. Exemplo: $ rmdir teste 3.3.4- rm : além de remover diretórios e estrutura de diretórios, tem como função principal remover arquivos. Sintaxe: $ rm <opções> <diretório> <ou arquivo> Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 63
  • 64. GNU/Linux - módulo 1 - Introdução Opções: • - i : pergunta antes de remover, esta é ativada por padrão. • - v : mostra os arquivos/diretórios na medida que são removidos • - r : usado para remover arquivos em sub-diretórios. Esta opção também pode ser usada para remover sub-diretórios. • - f : remove os arquivos sem perguntar. Exemplo: $ rm arquivo.txt $ rm -r teste2 3.3.5- cd : muda o diretório de trabalho atual. Caso não seja especificado nenhum diretório, muda para o diretório pessoal do usuário. Sintaxe: $ cd <diretório> Exemplo: $ cd teste2 3.3.6- pwd : mostra o nome e caminho do diretório atual. Sintaxe: $ pwd Exemplo: $ pwd /home/curso/teste2 Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 64
  • 65. GNU/Linux - módulo 1 - Introdução 3.3.7- clear : limpa o conteúdo do terminal e posiciona o cursos no início da tela. Sintaxe: $ clear 3.3.8- man : este comando exibe as páginas de manual do comando ou programa passado como parâmetro. Elas trazem uma descrição básica desta comando ou programa e detalhes sobre o funcionamento de uma determinada opção. Uma página de manual é visualizada na forma de texto único com rolagem vertical. Também documenta parâmetros usados em alguns arquivos de configuração. Sintaxe: $ man <comando ou programa> Opções de navegação: • q : sai da página de manual. • f ou PageDown : rola 25 linhas abaixo • w ou PageUp : rola 25 linhas acima • k ou seta para cima : rola uma linha acima. • e ou seta para baixo : rola uma linha abaixo. • p ou g : Início da página. • h : ajuda sobre as opções da página de manual. • s : salva a página de manual em formato texto no arquivo especificado. Exemplo: $ man bash 3.3.9- apropos : procura por comandos através da descrição. É útil quando precisamos fazer alguma coisa mas não sabemos qual comando usar. Ele faz sua pesquisa nas páginas de manual existentes no sistema e lista os comandos/programas que atendem a consulta. Sintaxe: $ apropos <comando ou programa> Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 65
  • 66. GNU/Linux - módulo 1 - Introdução Exemplo: $ apropos bash bash (1) - GNU Bourne-Again Shell bash-builtins (7) - bash built-in commands, see bash(1) bashbug (1) - report a bug in bash builtins (7) - bash built-in commands, see bash(1) checkbashisms (1) - check for bashisms in /bin/sh scripts gst-complete-0.8 (1) - do bash completion for gst-launch command-lines ispellconfig (8) - Bash script to select a new ispell default dictionary. rbash (1) - restricted bash, see bash(1) update-ispell-dictionary (8) - Bash script to select a new ispell default dictionary. Além dos comandos man e apropos, você pode conseguir mais informações sobre os comandos ou programas através dos comandos info e help. Outra maneira de conseguir informações mais rápidas sobre os parâmetros que o comando suporta é utilizando o parâmetro –-help. Exemplo: $ mkdir --help Usage: mkdir [OPTION] DIRECTORY... Create the DIRECTORY(ies), if they do not already exist. Argumentos obrigatórios para opções longas também o são para opções curtas -m, --mode=MODE set permission mode (as in chmod), not rwxrwxrwx - umask -p, --parents no error if existing, make parent directories as needed -v, --verbose print a message for each created directory --help display this help and exit --version output version information and exit Comunicar `bugs' para <bug-coreutils@gnu.org>. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 66
  • 67. GNU/Linux - módulo 1 - Introdução Capítulo 4 Sistema de ArquivosSistema de Arquivos Neste capítulo o usuário compreenderá as noções teóricas de como funcionam as partições e os sistema de arquivos suportados pelo GNU/Linux. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 67
  • 68. GNU/Linux - módulo 1 - Introdução 4.1- Partições São divisões existentes no disco rígido que marcam onde começa e onde termina um sistema de arquivos. Por causa destas divisões, nós podemos usar mais de um sistema operacional no mesmo computador (como o GNU/Linux, Microsoft Windows e DOS), ou dividir o disco rígido em uma ou mais partes para ser usado por um único sistema operacional. Uma partição de disco não interfere em outras partições existentes, por estarem em áreas distintas no disco rígido. Para particionar (dividir) o disco rígido em uma ou mais partes é necessário o uso de um programa de particionamento. Os programas mais conhecidos para particionamento de discos no GNU/Linux são fdisk, cfdisk, Parted e o Disk Druid. Informações importantes para a criação e utilização das partições: ✔ Para gravar os dados, o disco rígido precisa ser particionado (usando o cfdisk ou outro particionador), deve-se escolher o tipo da partição, e depois tal partição deve ser formatada com o um tipo de sistema de arquivos. Após criada e formatada, a partição será identificada como um dispositivo no diretório /dev e deverá ser montada para permitir seu uso no sistema; ✔ Quando se apaga uma partição, você estará apagando TODOS os arquivos existentes nela; ✔ Em sistemas novos, é comum encontrar o Microsoft Windows instalado em uma partição que consome TODO o espaço do disco rígido. Uma solução para instalar o GNU/Linux é apagar esta partição e criar três com tamanhos menores (uma para o Microsft Windows, uma para o GNU/Linux e outra para a Memória Virtual do Linux (SWAP); 4.2- Sistema de Arquivos Um sistema de arquivos é o método e a estrutura que um sistema operacional utiliza para administrar a forma que os arquivos estão organizados em um disco ou partição. É criado durante a formatação da partição de disco. Após a formatação, toda a estrutura para leitura e gravação de arquivos e diretórios pelo sistema operacional estará pronta para ser usada. Normalmente este passo é feito durante a instalação de sua distribuição GNU/Linux. Cada sistema de arquivos tem uma característica em particular mas seu propósito é o mesmo: Oferecer ao sistema operacional a estrutura necessária para ler/gravar os arquivos e diretórios. Entre os sistemas de arquivos existentes pode-se citar: Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 68
  • 69. GNU/Linux - módulo 1 - Introdução 4.2.1– EXT2 Logo que foi inventado, o GNU/Linux utilizava o sistema de arquivos Minix (e conseqüentemente uma partição Minix) para o armazenamento de arquivos. Com a evolução do desenvolvimento, foi criado o padrão EXT (Extended Filesystem) e logo evoluiu para o EXT2 (Second Extended Filesystem) que, apesar de obsoleto, ainda é o usado hoje em dia. Ele é rápido, não se fragmenta tão facilmente pois permite a localização do melhor lugar onde o arquivo se encaixa no disco, etc. Isto é útil para grandes ambientes multiusuário onde várias pessoas gravam/apagam arquivos o tempo todo. 4.2.2– Journaling O sistema de journaling grava qualquer operação que será feita no disco em uma área especial chamada journal, assim se acontecer algum problema durante a operação de disco, ele pode voltar ao estado anterior do arquivo, ou finalizar a operação. Desta forma, o journal acrescenta ao sistema de arquivos o suporte a alta disponibilidade e maior tolerância a falhas. Após uma falha de energia, por exemplo, o journal é analisado durante a montagem do sistema de arquivos e todas as operações que estavam sendo feitas no disco são verificadas. Dependendo do estado da operação, elas podem ser desfeitas ou finalizadas. O retorno do servidor é praticamente imediato (sem precisar a enorme espera da execução do fsck em partições maiores que 10Gb), garantindo o rápido retorno dos serviços da máquina. Outra situação que pode ser evitada é com inconsistências no sistema de arquivos do servidor após a situação acima, fazendo o servidor ficar em estado single user e esperando pela intervenção do administrador. Alguns tipos de sistema de arquivos utilizam este recurso atualmente, como por exemplo, o EXT3 e o ReiserFS. 4.2.3– EXT3 O sistema de arquivos EXT3 faz parte da nova geração extended file system do GNU/Linux, sendo que seu maior benefício é o suporte a journaling. O uso deste sistema de arquivos comparado ao EXT2, na maioria dos casos, melhora o desempenho do sistema de arquivos através da gravação seqüencial dos dados na área de metadados e acesso mhash a sua árvore de diretórios. A estrutura da partição EXT3 é semelhante a EXT2, o journaling é feito em um arquivo chamado .journal que fica oculto pelo código EXT3 na partição (desta forma ele não poderá ser apagado, comprometendo o funcionamento do sistema). A estrutura idêntica da partição EXT3 com a EXT2 torna mais fácil a manutenção do sistema, já que todas as ferramentas para recuperação EXT2 funcionarão sem problemas. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 69
  • 70. GNU/Linux - módulo 1 - Introdução 4.2.4– ReiserFS O ReiserFS é um sistema desenvolvido especialmente para o GNU/Linux, muito confiável e surpreendentemente rápido, e em muitos casos, mais rápido até mesmo que sistemas sem suporte a journaling. O ReiserFS, por não utilizar blocos de tamanho fixo, mas ajustar seu tamanho de acordo com o arquivo, evita os problemas de desperdício de espaço comuns em outros sistemas de arquivos. Possui suporte a arquivos maiores que 2 GB e o acesso a árvore de diretórios é muito mais rápido. Utiliza uma eficiente estrutura de dados chamada balanced tree (árvore equilibrada), que trata toda a partição como se fosse uma única tabela de banco de dados contendo diretórios, arquivos e arquivos de meta-data, o que aumenta muito o desempenho de aplicativos que trabalham com arquivos pequenos, porque estes são lidos de uma só vez, em apenas um ciclo de I/O do HD. Sua versão 3 não trabalha perfeitamente com o sistema de arquivos de rede NFS (Network File System). Existem alguns patches para resolver o problema, mas eles não o resolvem completamente. O criador do ReiserFS é Hans Reiser. Atualmente o projeto é patrocinado pela SuSE e mantido pela empresa NameSys. Aguarda-se o lançamento oficial da versão 4 do ReiserFS, o Reiser4, que foi totalmente reescrito e possui um desempenho superior à da versão 3. 4.2.5– JFS Criado pela IBM para uso em servidores corporativos, teve seu código liberado. O sistema de arquivos JFS também usa a estrutura I-node para armazenar a localização dos blocos de cada arquivo nas estruturas físicas do disco. A versão JFS2 armazena esses I- nodes em uma árvore binária para acelerar o acesso a essas informações. Esses blocos podem variar de 512 a 4096 bytes, e a alocação dos I-nodes é feita conforme vai sendo necessário. 4.2.6– XFS Desenvolvido originalmente pela Silicon Graphics e posteriormente disponibilizado o código fonte, o XFS possui vários patches e alguns bugs, mas é um sistema de arquivos muito rápido na gravação e possui um desfragmentador para arquivos. 4.2.7– SWAP (Memórial Virtual) Este tipo de partição é usada para oferecer o suporte a memória virtual ao GNU/Linux em adição a memória RAM instalada no sistema. Somente os dados na memória RAM são processados pelo processador, por ser mais rápida. Desta forma, quando você está executando um programa e a memória RAM começa a encher, o GNU/Linux move automaticamente os dados que não estão sendo usados para a partição SWAP, e libera a memória RAM para continuar carregando os dados necessários pelo programa que está sendo carregado. Quando os dados movidos para a partição SWAP são solicitados, o GNU/Linux move os dados da partição SWAP para a Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 70
  • 71. GNU/Linux - módulo 1 - Introdução memória. Por este motivo a partição SWAP também é chamada de área de troca ou memória virtual. A velocidade em que os dados são movidos da memória RAM para a partição é muito alta. 4.2.8– Qual Sistema de Arquivos devo Utilizar? Falar qual sistema de arquivos você deve usar é uma missão quase impossível, é como falar de distribuições GNU/Linux: alguém que adora o Slackware com certeza só vai recomendar o Slackware, e alguém que adora o Debian com certeza só vai recomendar o Debian, e assim por diante. Em se tratando de sistemas de arquivos, a recomendação é que você escolha, entre os que possuem os recursos que você precisa, aquele que apresentar o melhor desempenho. Nesse caso, a menos que você vá utilizar NFS, o sistema de arquivos mais indicado é o ReiserFS, que possui comprovadamente um desempenho muito superior ao de outros sistemas de arquivos. Se for utilizar NFS, uma vez que existe o problema de compatibilidade do ReiserFS, pode-se utilizar o XFS, ou o EXT3. 4.3- Identificação de Discos e Partições No GNU/Linux, os dispositivos existentes em seu computador (como discos rígidos, disquetes, tela, portas de impressora, modem, etc) são identificados por um arquivo no diretório /dev. A identificação de discos rígidos no GNU/Linux é feita da seguinte forma: /dev/hda1 | ||| | |||_ Número que identifica o número da partição no disco rígido. | || | ||_ Letra que identifica o disco rígido (a=primeiro, b=segundo, etc...). | | | |_ Sigla que identifica o tipo do disco rígido (hd=ide, sd=SCSI, xd=XT). | |_ Diretório onde são armazenados os dispositivos existentes no sistema. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 71
  • 72. GNU/Linux - módulo 1 - Introdução Abaixo algumas identificações de discos e partições em sistemas Linux: ✔ /dev/fd0 - Primeira unidade de disquetes. ✔ /dev/fd1 - Segunda unidade de disquetes. ✔ /dev/hda - Primeiro HD na primeira controladora IDE do micro (primary master). ✔ /dev/hda1 - Primeira partição do primeiro HD IDE. ✔ /dev/hdb - Segundo HD na primeira controladora IDE do micro (primary slave). ✔ /dev/hdb1 - Primeira partição do segundo HD IDE. ✔ /dev/sda - Primeiro HD na primeira controladora SCSI. ✔ /dev/sda1 - Primeira partição do primeiro HD SCSI. ✔ /dev/sdb - Segundo HD na primeira controladora SCSI. ✔ /dev/sdb1 - Primeira partição do segundo HD SCSI. ✔ /dev/sr0 - Primeiro CD-ROM SCSI. ✔ /dev/sr1 - Segundo CD-ROM SCSI. ✔ /dev/xda - Primeiro HD XT. ✔ /dev/xdb - Segundo HD XT. As letras de identificação de discos rígidos podem ir além de hdb, em algumas máquinas, por exemplo, a unidade de CD-ROM podem estar localizada em /dev/hdg (Primeiro disco - quarta controladora IDE). É importante entender como os discos e partições são identificados no sistema, pois será necessário usar os parâmetros corretos para montá-los. 4.4- Pontos de montagem Antes de um sistema de arquivos poder ser utilizado, ele necessita ser montado. O sistema operacional executa diversas verificações para estar seguro de que tudo está funcionando bem. Uma vez que todos os arquivos no GNU/Linux estão em uma única árvore de diretórios, a operação de montagem fará com que o novo sistema de arquivos pareça um subdiretório existente em algum sistema de arquivos já montado. Como será visto em outro curso, o comando para montagem de um sistema de arquivos possui dois argumentos. O primeiro é o arquivo de dispositivo correspondente ao disco ou partição que contenha o sistema de arquivos. O segundo é o diretório sob o qual ele será montado. Por exemplo, após a execução do comando, dizemos então que /dev/hda2 está montado em /mnt/backup. Para utilizar estes sistemas de arquivos, pode-se acessar estes diretórios exatamente da mesma forma que qualquer outro, como veremos mais adiante. É importante ressaltar a diferença entre o dispositivo /dev/hda e o o diretório montado /mnt/backup. Enquanto o primeiro dá acesso aos dados brutos do disco, ilegíveis pelos usuários e apenas pelo kernel, o segundo permite o acesso aos dados legíveis pelos usuários, como arquivos e diretórios dos mais diversos fins. O diretório montado é chamado ponto de montagem. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 72
  • 73. GNU/Linux - módulo 1 - Introdução Capítulo 5 Arquivos e DiretóriosArquivos e Diretórios Neste capítulo o usuário aprenderá como os arquivos são tratados pelo GNU/Linux, seus tipos e a estrutura de diretórios padrão do sistema. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 73
  • 74. GNU/Linux - módulo 1 - Introdução 5.1- Arquivos Nos sistemas *NIX, tudo o que pode ser manipulado pelo sistema operacional é representado sob a forma de arquivo, incluindo aí diretórios, dispositivos e processos. O arquivo é a estrutura mais básica e mais importante em um sistema GNU/Linux. O GNU/Linux segue o padrão POSIX, o mesmo utilizado por outros sistemas operacionais derivados do UNIX. Dessa forma, conhecendo o GNU/Linux você não terá dificuldades em operar outros sistemas como HPUX, FreeBSD, Solaris, etc., que assim como o GNU/Linux são baseados no UNIX. Também devido ao grande número de distribuições GNU/Linux que existem, foram determinados padrões sobre a sua estrutura e a forma dele manipular os arquivos. Esses padrões constituem a Linux Standard Base, ou simplesmente LSB. A LSB contém todas as especificações que um sistema GNU/Linux deve adotar, para manter um nível de compatibilidade entre diferentes distribuições. Costuma-se definir arquivo como o lugar onde gravamos nossos dados. Em outros sistemas operacionais é feita uma distinção entre arquivos, diretórios, dispositivos e outros componentes do sistema. No GNU/Linux, entretanto, tudo aquilo que pode ser manipulado pelo sistema é tratado como arquivo. Mas, se tudo é arquivo, como o sistema operacional faz a distinção entre arquivo regular, diretório, dispositivo, processo, etc? Muito simples: todo arquivo tem o que é chamado cabeçalho, que contém informações como: tipo, tamanho, data de acesso, modificação, etc. Através desse cabeçalho o GNU/Linux sabe então quando se trata de arquivo regular, diretório, dispositivo, e assim por diante. 5.2- Tipos de Arquivos Os tipos de arquivos existentes num sistema GNU/Linux são os seguintes: ✔ Arquivo regular: Tipo comum que contém dados somente. Os arquivos regulares podem ser dos mais variados tipos, guardando os mais diferentes tipos de informações. Existem arquivos de áudio, vídeo, imagem, texto, etc. Os arquivos se dividem em 2 (duas) categorias principais: ✔ Binários: Arquivos binários são compostos por bits 1 e 0 e só podem ser interpretados pelo sistema operacional, sendo incompreensíveis por nós humanos. Se um arquivo binário for aberto por um editor de textos, serão exibidos vários símbolos estranhos. Arquivos de música, vídeos, imagens e bibliotecas são exemplos de arquivos binários; Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 74
  • 75. GNU/Linux - módulo 1 - Introdução ✔ Texto: Arquivos do tipo texto são compostos por informações em forma de texto, que podem ser entendidas pelo usuário comum. Arquivos desse tipo não necessariamente contém texto propriamente dito. Quando se diz que um arquivo é do tipo texto, estamos querendo dizer que se o abrirmos num editor de texto, serão exibidos informações legíveis. ✔ Diretórios: Os diretórios são utilizados para separar um grupos de arquivos. Um diretório pode conter arquivos e outros diretórios, que serão chamados subdiretórios; ✔ Dispositivos: Todo componente de hardware instalável é chamado dispositivo. Placas de vídeo, som, rede, drives de CD-ROM, tudo o que se liga na interface USB, memória RAM, são dispositivos. Os dispositivos podem ser: ✔ De Bloco: Dispositivos de bloco utilizam buffer para leitura/gravação. Geralmente são unidades de disco, como HD's, CD's, etc; ✔ De Caracter: Esses dispositivos não utilizam buffer para leitura/gravação. A maioria dos dispositivos PCI e outros dispositivos como impressoras, mouse, etc. são do tipo caracter; ✔ Pipes: Utilizados pelos processos do sistema para comunicarem-se entre si; ✔ Sockets : Utilizados nos processos de comunicação em rede; ✔ Links: São atalhos. Servem para fazer referância a outro arquivo localizado em outro local. Podem ser de dois tipos: ✔ Simbólicos: Fazem referência ao arquivo através de seu endereço lógico no disco ou memória. São os links mais comuns; ✔ Absolutos: Fazem referência ao arquivo através do seu endereço físico no disco rígido. Arquivos podem conter diferentes tipos de informações. Cada tipo de informação requer um método específico de trabalho. Assim, um arquivo de imagem não pode ser lido por um programa de reprodução de áudio, porque os dados de um arquivo de imagem são organizados de forma totalmente diferente da de um arquivo de áudio, e o programa em questão só é capaz de lidar com arquivos de áudio. Tendo isso em vista, é necessário que o sistema operacional e os demais programas possam diferenciar os diversos tipos de arquivos disponíveis, para evitar que um programa tente manipular um tipo de arquivo que não suporta. O GNU/Linux faz essa diferenciação através da leitura do cabeçalho do arquivo. Assim, a extensão do arquivo geralmente não importa para o sistema operacional, mas é usada tão somente para fácil identificação do usuário, motivo pelo qual é muito comum encontrarmos arquivos sem extensão no GNU/Linux. Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 75
  • 76. GNU/Linux - módulo 1 - Introdução 5.3- Nomes de Arquivos Os nomes de arquivos no GNU/Linux podem ter até 255 caracteres, podendo utilizar espaços e acentos. Há exceção somente quanto ao uso dos caracteres especiais '/', '', '|', ' " ', '*', '?', '<', '>', '!', '(', ')', '`'. Um ponto muito importante que deve ser frisado é que o GNU/Linux é case sensitive, ou seja, diferencia letras maiúsculas de minúsculas. Sendo assim, os arquivos file.iso e File.iso são diferentes para o GNU/Linux. Então, quando referir-se a um arquivo, tenha a certeza de escrever com a capitulação correta. Os arquivos também podem ser ocultos, que contém um ponto '.' antes do seu nome, e normalmente aparecem no diretório pessoal de cada usuário, como por exemplo o arquivo '.bash_profile' . 5.4- Diretórios Os diretórios, como você deve saber, contém arquivos ou outros diretórios. Todo sistema operacional possui o que é chamado árvore de diretórios, que é uma estrutura básica de diretórios principais com seus respectivos subdiretórios. No GNU/Linux a árvore de diretórios é particularmente muito bem organizada, e os arquivos são divididos em categorias. Assim, arquivos executáveis (programas) são agrupados num determinado diretório, enquanto bibliotecas são arquivados em outro, e arquivos temporários em outro, e assim por diante. Isso garante uma boa organização do sistema e traz também uma grande praticidade, como vocês poderão ver mais adiante. 5.5– Estrutura de Diretórios Os sistemas GNU/Linux possuem um padrão rígido e específico a respeito da organização hierárquica dos diretórios, definido pela Filesystem Hierarquy Standard, ou simplesmente FHS, constante da LSB, que diferem totalmente da estrutura de diretórios do Microsoft Windows. Basicamente, no Microsoft Windows temos os arquivos do sistema concentrados nas pastas C:Windows e C:Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser. No GNU/Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home. Nada impede que você crie mais pastas no diretório raiz para armazenar seus arquivos. Apesar de ser recomendável Diretoria de Transferência Tecnológica – Centro de Computação – Unicamp 76