GNU/Linux Módulo 1 - Introdução
Fabio da Silva SantosDiretoria de Tranferência Tecnológica - DTTEC
CCUECUNICAMP
GNU/Linux Módulo 1 - Introdução
“Um detalhe importantíssimo a se falar quando trata-se de GNU/Linux ou aos Softwares Livres em geral, é que existem várias maneiras de se fazer a mesma coisa, e também existem vários software que fazem a mesma coisa. A liberdade de optar como fazer alguma tarefa é o seu diferencial.”
GNU/Linux Módulo 1 - Introdução
1.1 - O que é GNU/Linux?
✔ Em uma definição mais abrangente, 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.
✔ Kernel + Sistema GNU = GNU/Linux.
✔ Kernel + Sistema GNU + Aplicativos + Empacotamento = Distribuição Linux
GNU/Linux Módulo 1 - Introdução
1.2 - História
✔ O kernel do GNU/Linux foi desenvolvido como passatempo por Linus Torvalds, um estudante de computação da Universidade de Helsinki, na Finlândia.
✔ Sua inspiração foi uma pequena distribuição Unix chamada Minix, desenvolvida por Andrew Tannenbaun.
✔ Ele queria um sistema operacional semelhante ao Unix, que pudesse ser utilizado em um PC.
✔ Isso tudo aconteceu em meados de 1991, e em 5 de outubro deste mesmo ano, a seguinte mensagem circulou na UseNet:
GNU/Linux Módulo 1 - Introdução
1.2 - História
“Como mencionei à um mês, estou trabalhando em uma nova versão free de um sistema operacional 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ê for 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.”
GNU/Linux Módulo 1 - Introdução
1.2 - História
✔ Em 10 anos, atingiu o número de 30 milhões de usuários.
✔ Um dos sistemas operacionais mais utilizados no mundo dos servidores.
✔ Isso graças ao seu sistema de desenvolvimento colaborativo, de ajuda aos usuários, e de divulgação por partes dos adeptos.
✔ Aos poucos, põe fim ao monopólio tecnológico imposto por grandes empresas de software, principalmente pela Microsoft.
GNU/Linux Módulo 1 - Introdução
1.2 - História
✔ Tal monopólio tecnológico oprime o desenvolvimento tecnológico de países “emergentes”, como o Brasil.
✔ Hoje em dia o Brasil é uma referência no uso de software livre, tendo 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 acolher em despacho motivado, parecer técnico que conclua pela ausência de programas abertos gratuitos, capazes de suprir adequadamente as necessidades da Administração.
GNU/Linux Módulo 1 - Introdução
1.2 - História
✔ Por parte das instituições governamentais, adotar preferencialmente os Softwares Livres é também apoiar projetos de inclusão digital, para que pessoas sem condições possam ter acesso aos recursos da informática através de tais projetos, que dependem diretamente do Software Livre.
✔ Hoje em dia, é impossível falar de inclusão digital sem falar em Software Livre.
GNU/Linux Módulo 1 - Introdução
1.3 – Algumas características
✔ É 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 seu uso. O GNU/Linux é licenciado de acordo com os termos da GPL.
✔ 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.
GNU/Linux Módulo 1 - Introdução
1.3 – Algumas características
✔ 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 (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).
GNU/Linux Módulo 1 - Introdução
1.3 – Algumas características
✔ 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.
✔ Não há a necessidade de reiniciar o sistema após modificar a configuração de qualquer periférico ou parâmetro de rede.
GNU/Linux Módulo 1 - Introdução
1.3 – Algumas características
✔ Consultores técnicos especializados no suporte ao sistema espalhados por todo o mundo.
✔ Na parte dos desktops, já possui gerenciadores de janelas amigáveis e que já podem ser considerados alternativa ao Microsoft Windows, como por exemplo o KDE e GNOME.
✔ 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.
GNU/Linux Módulo 1 - Introdução
1.3 – Algumas características
✔ Empresas como IBM e Novell incentivam e já possuem modelo de negócio baseado em GNU/Linux.
✔ Universidades Públicas e Particulares em todo o mundo incentivam o Software Livre e principalmente o GNU/Linux.
✔ Orgãos governamentais como os Governos dos Estados do Paraná e Rio Grande do Sul, Prefeitura de Rio das Ostras no Rio de Janeiro, Metrô de São Paulo e a Prefeitura de Monique na Alemanha, utilizam e incentivam o Software Livre.
GNU/Linux Módulo 1 - Introdução
1.4 – O GNU/Linux e as Distribuições
✔ Kernel + Sistema GNU + Aplicativos + Empacotamento = Distribuição Linux.
✔ As distribuições 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.
✔ Companhia como RedHat, SuSe, Mandriva, e projetos de comunidades como Debian, Gentoo e Slackware, compilam os softwares e fornecem um sistema completo, pronto para instalação e uso.
GNU/Linux Módulo 1 - Introdução
1.4 – O GNU/Linux e as Distribuições
✔ As diferenças básicas entre si são como estão organizados e pré-configurados os aplicativos, instaladores e ferramentas de configuração disponibilizadas para auxiliar na administração do sistema GNU/Linux.
✔ Mas as principais diferenças estão no sistema de empacotamento, em alguns casos a estrutura de diretórios (normalmente seguem um padrão), e a biblioteca básica glibc.
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Qual distribuição devo usar?
✔ O primeiro passo é pesquisar em fóruns e sites sobre GNU/Linux e pedir auxílio;
✔ Depois analisar a pesquisa;
✔ Não fique desapontado caso a primeira distribuição não lhe agradar;
✔ Teste mais de uma distribuição e escolha uma de fácil utilização.
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ As distribuições mais conhecidas são:
✔ SuSe✔ Distribuição Alemã, comprada recentemente pela americana Novell;
✔ Cresceu bastante no mercado corporativo;
✔ Possui a ferramente de gerenciamento YaST;
✔ Possui ótimo suporte à hardware;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Red Hat
✔ Empresa pioneira no ramo de GNU/Linux;
✔ Tornou-se rapidamente a maior empresa do mundo a trabalhar exclusivamente com o GNU/Linux;✔ Várias outras distribuições são baseadas nela;
✔ Pioneira no uso de ferramentas para configuração do sistema;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Red Hat
✔ Muito usado em servidores (a contragosto de muitos);
✔ Atualmente só desenvolve soluções para empresas, possuindo apenas distribuições fechadas, não liberadas para a comunidade;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Fedora
✔ A Red Hat foi muito criticada por ter mudado seu modelo de negócios e ter deixado de liberar sua distribuição para a comunidade;
✔ Temendo um boicote generalizado, decidiu lançar o projeto Fedora;
✔ Este projeto é uma versão livre para desktops da sua distribuição;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Mandriva (Mandrake + Conectiva)
✔ Distribuição criada à partir da compra da Conectiva S/A pela francesa MandrakeSoft;
✔ Tanto o Conectiva Linux quanto o Mandrake Linux eram baseados no Red Hat;
✔ A Mandrakesoft que era a maior empresa de Linux da Europa, tornou-se também a maior da América Latina, posição ocupada antes pela Conectiva S/A;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Mandriva (Mandrake + Conectiva)
✔ O trunfo do Mandrake Linux é a sua facilidade de uso. Possui uma instalação simples e ferramentas de configuração muito amigáveis;
✔ Suporta vários idiomas, inclusive o Português Brasileiro;
✔ O Conectiva Linux foi a primeira distribuição nacional;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Mandriva (Mandrake + Conectiva)
✔ Possui um bom suporte ao hardware utilizado no Brasil;
✔ Criou ferramentas expressivas, como o Synaptic, e portou o APT, que é o gerenciador de pacotes nativo do Debian, para RPM;
✔ Tornou-se rapidamente a maior empresa do ramo na América Latina;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Slackware
✔ A mais antiga das distribuições GNU/Linux, criada por Patrick Volkerding;
✔ Distribuição tradicionalista, voltada para usuário que sabem o que estão fazendo;
✔ A distribuição mais próxima do Unix padrão;✔ O melhor uso do Slackware é em servidores dedicados, onde não há a necessidade de atualizações constantes;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Debian✔ Criado por Ian Murdock, e adotado pelo Projeto GNU como distribuição padrão;✔ Possui por volta de 8.000 pacotes, facilmente instaláveis pela ferramenta APT;✔ Uma das poucas distribuições que não são mantidas por empresas. 100% do trabalho é feito pela comunidade;✔ Processo de desenvolvimento muito organizado;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Debian✔ Desenvolvedores comprometidos com a estabilidade e segurança dos pacotes;
✔ De fato a distribuição mais testada do mundo;
✔ Apesar de não ter instalador gráfico, sua instalação é muito simples;
✔ Possui suporte para o Português Brasileiro;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Gentoo✔ Criado por Daniel Robins, e definida como uma distribuição “Linux From Scratch” automatizado;
✔ Todos os seus pacotes são compilados e instalados de acordo com o hardware da sua máquina;
✔ Seu gerenciador de pacotes é o Portage;
✔ Possui rica documentação;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Knoppix
✔ Criado por Laus Knopper que oferece a possibilidade de rodar o sistema a partir do CD-ROM (LiveCD);
✔ Muito conhecido e utilizado para demonstrar o GNU/Linux ou utilizá-lo sem precisar instalá-lo;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Kurumin
✔ Distribuição nacional criada por Carlos Eduardo Morimoto, que foi baseada no Knoppix;
✔ Muito conhecido e utilizado no nosso país, por ter sido adapatado para nossa realidade;
✔ Também roda através do CD-ROM (LiveCD), e pode ser instalado em seu computador raídamente;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Debian-BR-CDD
✔ Distribuição nacional criada pela comunidade brasileira Debian-BR, para adaptar a distribuição à realidade nacional;
✔ De fácil instalação e utilização;
✔ Interface gráfica muito bonita e com excelente documentação;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Muriqui Linux
✔ Distribuição nacional criada pelo Instituto Doctum de Educação e Tecnologia;
✔ Baseado no Debian, inteiramente traduzido para o português;
✔ Seu diferencial, além de estar inteiramente traduzido, possui instalação gráfica muito simples, através do software Anaconda;
GNU/Linux Módulo 1 - Introdução
1.5 – Sou novo usuário GNU/Linux, qual distribuição devo usar?
✔ Ubuntu
✔ Desenvolvido na Àfrica do Sul, e fazendo um grande sucesso desde seu lançamento;
✔ Possui ferramentas que tornam muito prático o uso do sistema;
✔ Seu visual é caprichado e organizado;
GNU/Linux Módulo 1 - Introduçã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 do usuário executar, copiar, distribuir, estudar, modificar e aperfeiçoar o software;
GNU/Linux Módulo 1 - Introdução
1.6 – Entendendo o Software Livre✔ A liberdade de executar o programa, para qualquer propósito (Liberdade Nº 0 - zero);
✔ A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades (Liberdade Nº 1). Acesso ao código-fonte é um pré-requisito para esta liberdade;✔ A liberdade de redistribuir cópias de modo que você possa ajudar ao próximo (Liberdade Nº 2);✔ A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie (Liberdade Nº 3). Acesso ao código-fonte é um pré-requisito para esta liberdade;
GNU/Linux Módulo 1 - Introdução
1.6 – Entendendo o Software Livre
✔ Pode-se cobrar pelo Software Livre;✔ Não é necessário pedir permissão para copiar, distribuir, modificar, etc;✔ Software Livre não quer dizer não-comercial. Um software livre deve estar disponível para uso comercial, desenvolvimento comercial, e distribuição comercial;
✔ Tais softwares livres comerciais são muito importantes;
✔ Mas independentemente e como você obteve as suas cópias, você sempre tem a liberdade de copiar e modificar o software, ou mesmo vender cópias, VOCÊ É LIVRE PARA ISSO!
GNU/Linux Módulo 1 - Introdução
1.6 – Entendendo o Software Livre
✔ Software licenciados pela GPL (GNU Public License), seguem um conceito conhecido como Copyleft, trocadilho com o termo Copyright, que literalmente sigfica “deixamos copiar”;✔ Esta licença garante a liberdade dos usuário de modificarem e distribuírem suas modificações;✔ O movimento do Software Livre foi criado por Richard Stallman em 1984, pesquisador do MIT (Massachussets Institute Technology);✔ Ele não era a favor de grandes empresas de software imporem restrições aos usuários com o uso do contrato de licença de softwares;
GNU/Linux Módulo 1 - Introdução
1.6 – Entendendo o Software Livre
✔ Desde então, criou o projeto GNU (GNU is not Unix), e fundou a Free Software Foundantion (FSF);
✔ A licença mais conhecida no mundo do Software Livre é a GPL , ou GNU Public Licence, que é uma licença que garante todas as liberdades necessária para um software ser livre;
✔ Outros tipo de licenças parecidas com a GPL são a BSD e a Creative Commons;
GNU/Linux Módulo 1 - Introdução
1.7 – Patentes de software
✔ Outro motivo importante que justifica a adoção dos Software Livres são as patentes de software.
✔ Imagine se o duplo-clique fosse patenteado, e se precisássemos passar a pagar pela sua utilização?
✔ Se esse tipo de recurso fosse patenteado, existirá desenvolvimento tecnológico no futuro para países ditos “emergente” e os mais pobres?
✔ Se isso acontecesse, o software passaria a ser mais caro que o prórpio computador, e apenas grandes empresas poderiam se beneficiar destes recursos.
GNU/Linux Módulo 1 - Introdução
2.1 – Antes da instalação
✔ A instalação de um sistema GNU/Linux é um tarefa fácil de se fazer.
✔ O processo de instalação é apenas mais detalhado do que instalar um Microsoft Windows.
✔ Para que este procedimento seja bem sucedido, é indicado seguir algumas dicas básicas:
GNU/Linux Módulo 1 - Introdução
2.1 – Antes da instalação
1) Antes da instalação, verifique se existe outro sistema operacional instalado na máquina.
2) Caso exista, será 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 ferramentas de desfragmentação de disco (Apenas se existir outro S.O. em sua máquina).
4) Mesmo que os instaladores possuam o recurso de detecção automática de hardware, sempre tenha em mãos a listagem do hardware da sua máquina (monitor, placa de vídeo, placa de rede wireless, etc).
GNU/Linux Módulo 1 - Introdução
2.1 – Antes da instalação
5) Dê preferência a instalação via boot pelo CD-ROM, que é a mais comum e a mais simples disponível até o momento.6) Caso a máquina esteja localizada em uma rede, 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 da sua distribuição.
GNU/Linux Módulo 1 - Introdução
2.2 – Instalação do Sistema Básico
✔ Independente da distribuição, a instalação do GNU/Linux segue um padrão, que podemos resumir da seguinte forma:
1) Tipo de instalação (modo texto, modo gráfico, etc)2) Detecção de hardware3) Seleção de Idioma4) Seleção do layout do teclado5) Perfis de instalação6) Configurar rede7) Particionamento de disco
GNU/Linux Módulo 1 - Introdução
2.2 – Instalação do Sistema Básico8) Instalação de pacotes9) Configurar o modo gráfico
✔ Monitor✔ Placa de Vídeo✔ Nº de cores / Resolução
10) Configuração do fuso horário
11) Configuração de usuários e senhas12) Configuração do gerenciador de inicialização (bootloader)13) Disco de inicialização
14) Finalização da instalação
GNU/Linux Módulo 1 - Introdução
2.2 – Instalação do Sistema Básico
✔ A distribuição Debian GNU/Linux 3.1 Sarge utiliza a seguinte organização:
1) Tipo de instalação (linux26, expert 26, etc)2) Seleção de Idioma3) Seleção do layout do teclado4) Detectar e montar CD-ROM5) Carregar componentes do instalador6) Detectar hardware de rede7) Detectar discos e outros hardwares8) Particionar discos
GNU/Linux Módulo 1 - Introdução
2.2 – Instalação do Sistema Básico
✔ A distribuição Debian GNU/Linux 3.1 Sarge utiliza a seguinte organização:
9) Instalar sistema básico10) Instalar o GRUB em um disco rígido11) Configuração do fuso horário12) Configurar usuário e senhas13) Configurar o APT (repositório de pacotes)14) Seleção dos perfis de instalação15) Configurar o modo gráfico16) Configurar o EXIM
GNU/Linux Módulo 1 - Introdução
2.2 – Instalação do Sistema Básico
✔ A distribuição Debian GNU/Linux 3.1 Sarge utiliza a seguinte organização:
17) Finalização da configuração18) Inicialização do modo gráfico
GNU/Linux Módulo 1 - Introdução
2.2 – Instalação do Sistema Básico
✔ Tipo de instalação (linux26, expert)
✔ A lista de mirrors oficiais onde encontra-se disponibilizada a imagem do CD de instalação fica em http://www.debian.org/CD/http-ftp/
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ É o programa que controla a aparência das aplicações. Ele atua entre o servidor X e as aplicações
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ No universo do software livre existem diversos tipos de gerenciadores de janela, dentre os quais, podemos citar:
✔ KDE
✔ Ambiente gráfico muito difundido no mundo do software livre;✔ Apresenta um conjunto de aplicativos consistentes para todos os tipos de usuários;✔ Aparência agradável e de fácil operação;✔ Diversos tipos de aplicativos integrados com ele;✔ A única desvantagem é seu alto consumo de memória
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ GNOME
✔ Ambiente gráfico muito difundido no mundo do software livre;✔ Apresenta um conjunto de aplicativos consistentes para todos os tipos de usuários;✔ Aparência agradável e de fácil operação;
✔ Diversos tipos de aplicativos integrados com ele;
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ Enlightenment
✔ Ambiente gráfico altamente personalizável, bonito, e com muitos efeitos visuais;✔ Uma desvantagem é o seu alto consumo de memória;
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ Blackbox
✔ Ambiente gráfico minimalista, muito leve, e pequeno;✔ Não inclui nenhum aplicativo;✔ Sua configuração é feita através de arquivos de configuração;✔ Muito apreciado por usuários mais avançados, graças a sua velocidade;✔ Pode-se melhorar sua aparência quando utilizado com outros programas;
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ Fluxbox
✔ Ambiente gráfico baseado no Blackbox;
✔ Contém mais recursos sem deixar de ser leve e simples;✔ Muito apreciado pelos seus usuários pela sua beleza e leveza;✔ O suporte à ícones é fornecido por programas externos;
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ Windowmaker
✔ Criado pelo Brasileiro Alfredo Kojima;
✔ Sua proposta é diferente de gerenciadores como KDE e GNOME;
✔ Realiza de forma muito rápida e eficiente, a abertura e a manipulação de janelas;
✔ Consome pouquíssima memória;
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ Além desta lista, o mundo do Software livre ainda possui mais uma dezena de gerenciadores de janelas:
✔ IceWM;✔ TWM;✔ XFCE;✔ AfterStep;✔ Blanes 2000;✔ etc..;
GNU/Linux Módulo 1 - Introdução
3.1 – Os gerenciadores de janelas
✔ A escolha do gerenciador de janelas é pessoal.
✔ O gerenciador de janelas padrão do Debian GNU/Linux é o GNOME.
GNU/Linux Módulo 1 - Introdução
3.2 – Terminal Virtual (Console)
✔ Terminal ou console é a tela e o teclado conectados em seu computador.
✔ Um terminal virtual é uma segunda sessão de trabalho completamente independente das outras.✔ Pode ser acessada local ou remotamente.
✔ Para acessá-las localmente, basta pressionar a tecla ALT + F1 até F6 se estiver no modo texto.
✔ Se estiver no modo gráfico, pressione a tecla CTRL + ALT + F1 até F6.
GNU/Linux Módulo 1 - Introdução
3.2 – Terminal Virtual (Console)
✔ Os terminais ou consoles são ferramentas fundamentais para administradores de sistemas e de rede.
✔ Para acessá-la através do GNOME, acesse o ícone que é mostrado na figura abaixo.
ícone para executar o terminal virtual
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.1 – ls : lista conteúdo de diretórios.
Sintaxe: ls <opções>
Opções:
● -l : escreve no formato de colunas simples● -i : exibe o número de inode do arquivo● -h : mostra o tamanho dos arquivos em KB, MB e GB.● -a : lista todos os arquivos, inclusive os ocultos.
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.2 – mkdir : cria diretórios.
Sintaxe: mkdir <opções> <diretório>
Opções:● -p : criada toda a estrutura de diretórios passada como parâmetro.● --verbose : imprime uma mensagem para cada diretório criado.
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.3 – rmdir : remove diretórios vazios.
Sintaxe: rmdir <opções> <diretório>
Opções:● -p : remove toda a estrutura de diretórios passada como parâmetro (o último diretório deve estar vazio).● --verbose : imprime uma mensagem para cada diretório apagado.
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.4 – rm : remove arquivos e diretórios.
Sintaxe: rm <opções> <diretório ou arquivo>
Opções:● -i : pergunta antes de remover. Ativada por padrão● -r : usado para remover arquivos e estrutura de diretórios.● -f : remove arquivos sem perguntar.
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.5 – cd : muda o diretório de trabalho atual.
Sintaxe: cd <diretório>
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.6 – pwd : mostra o nome e o caminho do diretório atual.
Sintaxe: pwd
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.7 – clear : limpa o conteúdo do terminal e posiciona o cursor no início da tela.
Sintaxe: clear
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.8 – man : exibe a página de manual de um comando.
Sintaxe: man <comando>
Opções:● q : sai da página de manual.● 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.
GNU/Linux Módulo 1 - Introdução
3.3 – Comandos Básicos – Nível 1
3.3.9 – apropos : procura por comandos através da descrição.
Sintaxe: apropos <comando ou programa>
GNU/Linux Módulo 1 - Introdução
4.1 – Partições
✔ São divisões no disco rígido que marcam onde começa e onde termina um sistema de arquivos.
✔ Por isso podemos usar mais de um sistema operacional no mesmo computador.✔ Um partição não interfere em outras já existentes, pois estão em áreas distintas dos disco rígido.
✔ Para particionar um disco rígido, é necessário utilizar um software de particionamento.✔ Os mais utilizados são: cfdisk, fdisk, parted e disk druid.
GNU/Linux Módulo 1 - Introdução
4.1 – Partições
✔ Algumas informações importantes para a criação de partições:
➢ Primeiramente a partição deve ser criada através dos softwares de particionamento;
➢ Neste processo, além do tamanho, escolhe-se o tipo de partição, selecionando um tipo de sistema de arquivos para formatá-la;➢ Após formatada, a partição deve ser montada, e será identificada com um dispositivo dentro do diretório /dev;
GNU/Linux Módulo 1 - Introdução
4.1 – Partições
✔ Algumas informações importantes para a criação de partições:
➢ Normalmente o sistema operacional encontrado é o Microsoft Windows ocupando todo o espaço do disco rígido;➢ Uma das soluções para isso é redimensionar a partição principal, adicionando mais duas partições para que o GNU/Linux seja instalado;➢ Outra solução é apagar todas as partições do disco rígido e recriá-las novamente. Uma para o Microsoft Windows e duas para o GNU/Linux;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
✔ É o método e a estrutura que o sistema operacional utiliza para administrar a forma que os arquivos estão organizados em um disco ou partição.
✔ É criado no momento em que a partição está sendo formatada.✔ Após a formatação, toda a estrutura para leitura e gravação de dados pelo sistema operacional estará pronta para ser usada.
✔ Cada sistema de arquivos tem uma característica em particular, mas seu propósito é o mesmo: Oferecer a estrutura necessária para ler/gravar dados no disco rígido.
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.1 - EXT2
✔ Um dos primeiros tipos de sistema de arquivos suportados pelo GNU/Linux;✔ Partições formatadas com este sistema de arquivos são conhecidas como do tipo Linux Native;✔ Veloz e não se fragmenta com facilidade, porém não tem suporte à journaling;✔ Na dúvida escolha o seu sucessor, o EXT3, que contém suporte à journaling;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.2 - Journaling
✔ Sistema de journaling grava qualquer operação que será feita no disco em uma área especial;
✔ Deste modo, se acontecer algum problema durante a operação de disco, ele pode voltar ao estado anterior do arquivo, ou finalizar a operação;✔ Com este recurso o journal acrescenta ao sistema de arquivos, o suporte a alta disponibilidade e maior tolerância a falhas;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.3 - EXT3
✔ Nova geração da família EXT (extended file system);
✔ A estrutura da partição EXT3 é semelhante ao EXT2, com a diferença de suportar journaling;✔ O journaling é feito em uma arquivo chamado .journal, que fica oculto pelo código do EXT3;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.4 - ReiserFS
✔ Criado por Hans Reiser, é patrocinado atualmente pela SuSe, e mantido pela empresa NameSys;✔ Desenvolvido expecialmente para o GNU/Linux, muito confiável e surpreendentemente rápido;✔ Por não utilizar blocos de tamanhos fixos, mas ajustar seu tamanho de acordo com o arquivo, evita problemas de desperdício de espaço, comuns em outros sistemas de arquivos;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.4 - ReiserFS
✔ Uma desvantagem do ReiserFS é não trabalhra perfeitamente com sistema de Quota e com NFS (Network File System);
✔ Aguarda-se o lançamento da versão 4, que foi totalmente reescrito e possui desempenho superior à da versão 3;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.5 - JFS
✔ Criado pela IBM para uso em servidores corporativos, teve seu código liberado;
✔ Também possui suporte à journaling;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.6 - XFS
✔ Desenvolvido originalmente pela Silicon Graphics, e também teve seu código liberado;
✔ Possui alguns bugs e vários patches, mas é um sistema de arquivos muito rápido na gravação e possui desfragmentador para arquivos;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.6 - XFS
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.6 - XFS
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.7 - SWAP
✔ Este tipo de partição é usada para oferecer o suporte à memória virtual ao GNU/Linux, em adição a memória RAM instalada;
GNU/Linux Módulo 1 - Introdução
4.2 – Sistema de Arquivos
4.2.8 – Qual sistema de arquivos devo utilizar?
✔ A recomendação é que você escolha, entre os que possuem os recursos que você precisa, aquele que apresentar melhor desempenho e que possui suporte à journaling;✔ Se você não for utilizar NFS, o sistema de arquivos mais recomendado é o ReiserFS, que possui comprovadamente desempenho superior aos demais;✔ Se você for utilizar NFS, pode-se utilizar o XFS ou EXT3;
GNU/Linux Módulo 1 - Introdução
4.3 – Identificação de discos e partições✔ No GNU/Linux, dispositivos do sistema como discos rígidos, disquetes, gravadores de CD, impressoras, etc, são identificados por um arquivo dentro do diretório /dev. No caso dos discos, a identificação é feita da seguinte maneira:
/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.
GNU/Linux Módulo 1 - Introdução
4.3 – Identificação de discos e partições
✔ Alguns exemplos de identificações de discos e partições:
✔ /dev/fd0 - Primeira unidade de disquetes.
✔ /dev/hda – Primeiro HD na primeira controladora IDE (Primary master).
✔ /dev/hda1 – Primeira partição do primeiro HD IDE.
✔ /dev/hdb – Segundo HD na primeira controladora IDE (Primary slave).
✔ /dev/hdb1 – Primeira partição do segundo HD IDE.
GNU/Linux Módulo 1 - Introdução
4.4 – Pontos de montagem
✔ Antes de um sistema de arquivos poder ser utilizado, ele precisa ser montado;✔ Neste processo, o sistema operacional executa diversas verificações para ter certeza de que tudo está bem;✔ A operação de montagem fará com que o novo sistema de arquivos pareça um subdiretório existente na estrutura de diretórios;✔ Para utilizar estes sistemas de arquivos, pode-se acessar estes diretórios exatamente da mesmo forma que outro qualquer;
GNU/Linux Módulo 1 - Introdução
4.4 – Pontos de montagem
✔ É importante ressaltar que os dispositivos são diferente de pontos de montagem;
✔ Os dispositivos dão acesso aos dados brutos da partição, ilegíveis pelos usuários e apenas pelo kernel (ex: /dev/hda2);✔ Os pontos de montagem permitem o acesso aos dados legíveis pelos usuários, como por exemplo, seus arquivos e diretórios pessoais (ex: /mnt/backup);✔ Podemos montar o dispositivo /dev/hda2 no ponto de montagem /mnt/backup, mas o contrário não é possível, por causa da natureza destes dois tipos de arquivos;
GNU/Linux Módulo 1 - Introdução
5.1 – Arquivos
✔ Nos sistemas UNIX, tudo o que pode ser manipulado pelo S.O. é representado sob a forma de arquivo, incluindo aí diretórios, dispositivos e processos;
✔ No GNU/Linux, o arquivo é a estrutura mais básica e mais importante do sistema;✔ O GNU/Linux segue o padrão POSIX, o mesmo utilizado por outros S.O's derivados do Unix;
✔ Costuma-se definir arquivos como o lugar onde gravamos nossos dados;
✔ Em outros S.O's é feita uma distinção entre arquivos, diretórios, dispositivos e outros componentes do sistema;
GNU/Linux Módulo 1 - Introdução
5.2 – Tipos de Arquivos
✔ Binários: são compostos por bits 1 e 0 e só podem ser interpretados pelo S.O. ou aplicativo específico. Por exemplo, bibliotecas, músicas, imagens, etc;
✔ Arquivo Regular: tipo comum que contém dados somente (áudio, vídeo, imagem, texto, etc), e divide-se em dois grupos;
✔ Texto: são compostos por informações em forma de texto puro (ASCII). Quando se diz que um arquivo é do tipo texto, estamos querendo dizer que se abrirmos num editor de texto, serão exibidas informações legíveis;
GNU/Linux Módulo 1 - Introdução
5.2 – Tipos de Arquivos
✔ Diretórios: são utilizados para separar grupos de arquivos. Um diretório pode conter arquivos e outros diretórios, que serão chamados de subdiretórios;✔ Dispositivos: Todo dispositivo de hardware instalável é chamado de dispositivo. Placas de vídeo, som, rede, CD-ROM, discos rígidos e tudo o que se conecta à interface USB são exemplos de dispositivos. Podem ser de dois tipos:
✔ De bloco: Geralmente são unidades de disco, como HD's, CD's, etc. ✔ De caracter: Em sua maioria são dispositivos PCI, impressoras, mouse, etc.
GNU/Linux Módulo 1 - Introdução
5.2 – Tipos de Arquivos
✔ 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 tipo:
✔ 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;
GNU/Linux Módulo 1 - Introdução
5.3 – Nomes de Arquivos
✔ Os nomes dos arquivos no GNU/Linux podem ter até 255 caracteres, podendo utilizar espaços e acentos. Há exceção somente quanto ao uso de caracteres especiais:
✔ / \ | “ * ? ! < > ( ) '✔ Um ponto muito importante a frisar é que o GNU/Linux é case sensitive, ou seja, diferencia letras maiúsculas de minúsculas.✔ Sendo assim, os arquivos File.iso e file.iso não são considerados o mesmo arquivo pelo GNU/Linux.✔ Os arquivos também podem ser ocultos, os quais contém um '.' (ponto) antes do seu nome, e normalmente, aparecem no diretório pessoal do usuário. Ex: .bash_history.
GNU/Linux Módulo 1 - Introdução
5.4 – Diretórios
✔ Os diretórios contém arquivos ou outros diretórios. Todo o S.O. possui o que é chamado de á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 é muito bem organizada, e os arquivos são divididos em categorias;
✔ Por isso, arquivos executáveis ficam em um diretório, bibliotecas em outro, arquivos pessoais em outro, e assim por diante, garantindo uma boa organização e uma grande praticidade ao sistema;
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ O GNU/Linux possui um padrão rígido e específico a respeito da organização hierárquica dos diretórios;
✔ Esse padrão é definido pela FHS, ou Filesystem Hierarquy Standard, constante da LSB, ou Linux Standard Base, e que diferem totalmente da estrutura de diretórios do Microsoft Windows;
✔ 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;
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ No GNU/Linux é ao 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;
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios /-- |-- bin |-- boot |-- dev |-- etc |-- home |-- lib |-- media |-- mnt |-- opt |-- proc |-- root |-- sbin |-- srv |-- sys |-- tmp |-- usr |-- var
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ /bin : Armazena arquivos executáveis essenciais aos funcionamento do sistema e utilizados com muito frequência pelo administrador do sistema;
✔ /boot : Armazena tudo o que é necessário para carregar o sistema, exceto os arquivos de configuração;
✔ /dev : Armazena os arquivos de dispositivo dos sistema. Ex. Disquete = /dev/fd0, HD = /dev/hda, etc;
✔ /etc : Armazena os arquivos de configuração do sistema. Equivalente ao registro do Microsoft Windows. Contém apenas arquivos texto (ASCII);
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ /home : Armazena os diretórios pessoais dos usuário do sistema, exceto do usuário administrador root. Pode ser criado como uma partição separada da partição principal;✔ /lib : Armazena bibliotecas necessárias para inicializar o sistema e executar comandos no sistema de arquivos. Pode conter também módulos do kernel em /lib/modules;✔ /media : Armezena os subdiretórios que são utilizados como pontos de montagem para mídias removíveis, como por exemplo, disquetes, CD-ROM, gravadores de CD/DVD, dispositivos USB, etc;✔ /mnt : Armazena subdiretórios que são utilizados como pontos de montagem para novas partições no disco rígido;
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ /proc : Este diretório é um sistema virtual utilizado para manipular informações de processos do sistema;✔ /root : Diretório pessoal do usuário administrador root;
✔ /sbin : Armazena executáveis essenciais para inicializar, reparar e recuperar o sistema, complementando os comandos encontrados em /bin;✔ /tmp : Armazena arquivos temporários gerados pelo sistema;✔ /usr : Segunda maior seção do sistema. Armazena uma subestrutura com diversos tipos de arquivos. Softwares instalados localmente costumam colocar seus arquivos executáveis e bibliotecas nesta estrutura;
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ /usr/bin : Armazena a maioria dos executáveis de utilização dos usuários. Executáveis de programas como python, perl e gcc encontram-se neste diretório;✔ /usr/lib : Armazena bibliotecas utilizadas pelas aplicações dos usuários;✔ /usr/local : Utilizado para armazenar a estrutura de diretórios de programas instalados localmente;✔ /usr/sbin : Armazena executáveis não essenciais usados apenas pelo administrador do sistema;✔ /usr/share : Armazena arquivos compartilháveis pelo sistema. Ex. páginas de manual, arquivos de locale, etc;
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ /var : Armazena arquivos e diretórios de dados variáveis e também arquivos temporários;✔ /var/cache : Armazena dados de aplicações em cache;
✔ /var/lib : Armazena informações que informam o estado das aplicações;✔ /var/log : Armazena uma miscelânia de arquivos de log. A maioria dos logs de sistema e de aplicações são escritos neste diretório;✔ /var/run : Armazena arquivos variáveis em tempo de execução, com informações do sistema, descrevendo-o desde que foi inicializado;
GNU/Linux Módulo 1 - Introdução
5.5 – Estrutura de Diretórios
✔ /var/tmp : Armazena arquivos temporários que são preservados entre as reinicializações do sistema;
GNU/Linux Módulo 1 - Introdução
5.6 – Caminhos
✔ Como em todo sistema de arquivos de qualquer sistema operacional, a referência a um arquivo/diretório deve ser feita através do seu caminho. Um caminho é formado da seguinte forma:✔ [dir. raiz] [dir. 1] [dir 2] [dir n] [arquivo]✔ Cada um desses itens são separados por um símbolo, que varia de acordo com o sistema operacional.✔ No GNU/Linux, o diretório raiz chama-se / (barra), e o símbolo utilizado para separar ps itens é a própria /. Um exemplo de caminho seria:✔ /home/curso/doc/linux/gnu.sxw
GNU/Linux Módulo 1 - Introdução
5.7 – Notações de diretórios do sistema
✔ Alguns diretórios possuem notações especiais, algo que poderíamos chamar de “atalho” para acesso. Veja a lista destas notações:
✔ ~ : Refere-se ao diretório pessoal do usuário logado no momento;✔ - : Refere-se ao último diretório acessado;✔ . : Refere-se ao diretório de trabalho atual;
✔ .. : Refere-se ao diretório pai do diretório de trabalho atual;
GNU/Linux Módulo 1 - Introdução
6.1 – O Interpretador de comandos
✔ Também conhecido como shell, é o programa responsável em interpretar as instruções enviadas pelo usuário ao sistema operacional. É a principal ligação entre o usuário, os programas, e o kernel;✔ Instruções como criação, listagem e remoção de diretórios e arquivos, execução de programas, são exemplos do que o shell gerencia no S.O.;
✔ Ele executa os comandos lidos do dispositivo de entrada padrão (teclado) ou de um arquivo executável, e repassa-o ao S.O., com as especificidades que o usuário deseja;
GNU/Linux Módulo 1 - Introdução
6.1 – O Interpretador de comandos
✔ Existem diversos tipos de interpretadores de comandos, e entre eles, os de maior destaque são:
✔ bash (Bourne Again Shell);✔ csh (C Shell);✔ tcsh (Turbo C Shell);✔ ksh (The korn Shell);
✔ No GNU/Linux, dentre eles, o bash é o mais usado;
GNU/Linux Módulo 1 - Introdução
6.1 – O Interpretador de comandos
✔ Os comandos podem ser enviados de duas maneiras para o interpretador:
✔ Interativa : os comandos são digitados no prompt e passados ao interpretador de comandos um a um;
✔ Não-interativa : são usados scripts, ou seja, arquivos criados pelo usuário com uma sequência de comandos definidos por este, que seguem uma determinada lógica, para executar determinada tarefa que precisa ser automatizada;
GNU/Linux Módulo 1 - Introdução
6.1 – O Interpretador de comandos
✔ O bash é um interpretador de comandos muito customizável, e um pequeno exemplo disso é o recurso de completar os nomes dos arquivos. Isto é feito através da tecla <TAB>. Por exemplo, se o usuário digitar:
$ ls tes<TAB>
✔ O bash localizará todos os arquivos que iniciam com “tes” e completará o restante do nome. Caso o bash encontre mais de uma expressão que satisfaça a pesquisa, ou nenhuma, é emitido um beep. Se o usuário pressionar novamente a tecla <TAB>, o bash listará as diversas possibilidades que satisfazem a pesquisa;
GNU/Linux Módulo 1 - Introdução
6.2 – Aviso de comando (prompt)
✔ É a linha mostrada na tela para digitação de comandos que serão passados ao interpretador de comandos para a sua execução;✔ A posição onde o comando será digitado é marcado por um traço piscante chamado cursor;✔ Consegue-se saber se o usuário administrador root está autenticado no momento através do cursor disponibilizado para este usuário. Enquanto este usuário utiliza em seu cursor o caracter “#” (tralha), o usuário comun utiliza o caracter “$” ;
GNU/Linux Módulo 1 - Introdução
6.3 – Curingas (Wildcards)
✔ Curingas, ou referência global, ou ainda wildcards, é um recurso utilizado para especificar e potencializar pesquisas feitas para um ou mais arquivos do sistema de uma vez;✔ Permite que você filtre o que será pesquisado, listado ou criado em seu sistema;✔ São utilizados 4 tipos de curingas no GNU/Linux:
GNU/Linux Módulo 1 - Introdução
6.3 – Curingas (Wildcards)
✔ * : Faz referência a qualquer nome completo/restante, qualquer número de vezes, de um arquivo;
✔ ? : Faz referência a um caracter em uma posição específica;
✔ [] : Define um padrão que casa com o conjunto de caracteres entre “[” e “]”. O conjunto ainda por conter intervalos de caracteres, como por exemplo “1-2” ou “a-z”, e também caracteres que não podem fazer parte do conjunto, indicados por “^” ou “!”;
✔ {} : Define um padrão que casa com o conjunto de caracteres entre “{” e “}”, separados por vírgula;
GNU/Linux Módulo 1 - Introdução
6.4 – Direcionadores
✔ Uma boa parte dos programas executados no terminal possuem alguma saída. Essas saída são enviadas por padrão para o terminal, sendo impressas na tela. Abaixo, encontra-se um exemplo deste fluxo;
✔ Entrada: ls teste[1-3].txt;
✔ Saída: teste1.txt teste2.txt teste3.txt;
✔ A entrada foi enviada pelo teclado (stdin), e a saída foi enviada para o terminal, que é a saída padrão (stdout);
GNU/Linux Módulo 1 - Introdução
6.4 – Direcionadores
✔ O que fazer se o usuário quiser gravar a saída de alguma comando executado no terminal para um arquivo, como por exemplo, a listagem gerada pelo comando ls?
✔ Para este tipo de necessidades existem os direcionadores, essenciais para diversas tarefas de manutenção do sistema.
✔ Eles direcionam o fluxo de saída dos programas, enviando-as para locais diferentes da saída padrão. Esses locais podem ser arquivos, dispositivos, processos, ou outros programas.
GNU/Linux Módulo 1 - Introdução
6.4 – Direcionadores
✔ > : Envia a saída padrão de um comando para um arquivo. Caso o arquivo exista, o seu conteúdo é substituído;✔ 2> : O direcionador > não trabalha com mensagens de erro (stderr). Para que essas mensagens também possam ser redirecionadas, utiliza-se o direcionador 2>;✔ &> : Podemos utilizar os recursos dos direcionadores > e 2> em apenas um, utilizando o direcionador &>;✔ >>, 2>> e &>> : Todos os direcionadores acima citados substituem o conteúdo do arquivo caso ele já exista. Se o usuário quiser manter os dados existentes do arquivo que esta direcionando a saída, deve-se usar os direcionadores >>, 2>> e &>>;
GNU/Linux Módulo 1 - Introdução
6.4 – Direcionadores
✔ < : Ao contrário do direcionador >, este direciona a entrada padrão de um arquivo ou dispositivos para um comando.✔ << : Utilizado para marcar o fim de exibição de um bloco. Um dos usos mais freqüentes é em conjunto com o comando cat, para digitação de textos.
✔ | : Utilizado para direcionar a saída de um comando, e utilizado o tempo todo para a realização de diversos tipos de tarefas e procedimentos.
GNU/Linux Módulo 1 - Introdução
6.5 – Alias
✔ Permite criar apelidos para comandos ou programas. Digamos que o usuário queira criar um apelido chamado ll para o seguinte comando: ls -lh:
$ alias ll='ls -lh'
✔ Para apagar o apelido, basta utilizar o comando unalias:
$ unalias ll
GNU/Linux Módulo 1 - Introdução
6.6 – Histórico de comandos
✔ Todos os comandos executados pelo usuário são memorizados pelo shell, e pode ser consultados e novamente executados quando desejado;✔ Para consultar o histórico, basta digitar o comando history. Este histórico de comandos é armazenado dentro do arquivo oculto .bash_history, que encontra-se no diretório de trabalho dos usuários;
GNU/Linux Módulo 1 - Introdução
6.6 – Histórico de comandos
✔ As operações mais comuns para utilizar este histórico são:
✔ !132 : executa o comando de número 132;
✔ !-2 : executa o penúltimo comando;
✔ !! : executa o comando anterior;✔ !gr : executa o último comando que começa com as letras “gr”;
GNU/Linux Módulo 1 - Introdução
6.7 – Editor de textos “vi”
✔ O vi é um dos editores mais de texto mais antigos. Este editor é encontrado em quase todos os sistemas Unix. ✔ É um editor de textos para console, então não há a necessidade de usar o ambiente gráfico. ✔ Ele é um pouco confuso para quem o utiliza pelas primeiras vezes, visto que todas as operações são iniciadas a partir de uma sequência de teclas. ✔ O vim (vi improved) é uma variação do vi com alguns recursos extras. O uso do vim é igual ao do vi, exceto pelas funções adicionais não encontradas neste.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.1 – history : Exibe em uma lista simples, o histórico de comandos digitados pelo usuário.
Sintaxe: $ history
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.2 – tee : Envia o resultado de um comando para a saída padrão (tela) e para um arquivo ao mesmo tempo.
Sintaxe: $ <comando> | tee <arquivo saída>
Opções:
● -a : acrescenta ao arquivo ao invés de sobrescrevê-lo.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.3 – grep : Procura por um texto dentro de arquivos ou no dispositivo de entrada padrão.
Sintaxe: $ grep <expressão> <arquivo> <opções>
Opções:
● -n : mostra o número de cada linha encontrada.
● -i : ignora as diferenças entre maiúsculas e minúsculas.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.4 – cat : Imprime o conteúdo de arquivos na saída padrão. Também pode concatenar uma sequência de arquivos, utilizando direcionadores.
Sintaxe: $ cat <opções> <arquivo>
Opções:
● -n : mostra o número de linhas, incluindo as em branco.
● -b : mostra o número de linhas, com exceção das linhas em branco.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.5 – tac : Faz o mesmo que cat, mas exibe o conteúdo pela ordem inversa.
Sintaxe: $ tac <arquivo>
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.6 – wc : Conta o número de linhas, palavras, caracteres e bytes nos arquivos.
Sintaxe: $ wc <opções> <arquivo>
Opções:
● -c : exibe apenas o número de bytes.● -l : exibe apenas o número de linhas.● -w : exibe o número de palavras encontradas.● -m : exibe apenas o número de caracteres.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.7 – find (utilização básica) : Procura por arquivos no disco.
Sintaxe: $ find <arquivo> <opções/expressões>
Opções:
● -name : Procura arquivos cujo nome coincida com a expressão registrada.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.7 – find (utilização básica) :
● -type [tipo] : Procura por arquivos que sejam de um tipo específico.
● l : links simbólicos.
● b : dispositivos de bloco.● c : dispositivos de caractere.● d : diretórios.● p : pipes.● f : arquivo regular.
● s : sockets.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.8 – more : Permite fazer a paginação de arquivos ou da entrada padrão.
Sintaxe: $ more <arquivo>
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.9 – less : Permite fazer a paginação de arquivos ou da entrada padrão.
Sintaxe: $ less <arquivo>
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.10 – touch : Muda a data e hora de criação ou modificação do arquivo.
Sintaxe: $ touch <opções> <arquivo>
Opções:
● -a : modifica apenas a data do último acesso.● -c : não cria arquivos, caso eles não existam.● -t : Usa meses, dias, horas, minutos e opcionalmente o ano para realizar a modificação.
GNU/Linux Módulo 1 - Introdução
6.8 – Comandos Básicos – Nível 2
6.8.11 – ln : Utilizado para criar links simbólicos ou absolutos.
Sintaxe: $ ln <opções> <origem> <destino>
Opções:
● -s : cria um link simbólico.● -v : exibe o nome de cada link antes de criá-lo.
GNU/Linux Módulo 1 - Introdução
7.1 – O que são pacotes?
✔ Um programa é constituído por vários arquivos: execut. , de configuração, bibliotecas, imagens e documentos.
✔ Na instalação de um programa, o processo natural segue em 3 etapas.
✔ Compilação: transforma o código-fonte em arquivos binários.✔ Cópia: Uma vez compilados, os arquivos precisam ser movidos para o local correto, para que possam ser executados.
✔ Configuração: Depois é preciso configurá-lo para que seja executado corretamente.
GNU/Linux Módulo 1 - Introdução
7.1 – O que são pacotes?
✔ Para que este processo fique mais enxuto, e usuários que não tem muita intimidade com este tipo de procedimento possam instalar aplicativos de uma forma mais simples, as distribuições criaram o que chamados de pacotes.
✔ Os pacotes são arquivos binários que possuem um aplicativo ou programa que encontra-se pré-compilado e pré-configurado, bastando apenas o usuário digitar um comando para que ele seja instalado em seu sistema.
✔ Os pacotes podem ser de tipos diferentes, dependendo da sua distribuição. Abaixo, uma listagem das distribuições e seus respectivos sistemas de gerenciamento de pacotes.
GNU/Linux Módulo 1 - Introdução
7.2 – Os pacotes Debian
✔ O Debian utiliza o formato DEB para os seu pacotes pré-compilados.
✔ Muitos pacotes (+ 8000) são mantidos pela equipe de desenvolvedores Debian, e disponíveis nos repositórios espalhados pelo mundo.
✔ Os nomes dos pacotes seguem um padrão, e são formados da seguinte maneira:
GNU/Linux Módulo 1 - Introdução
7.2 – Os pacotes Debian
[foo]_[versão]-[revisão]_[arquitetura].deb
✔[foo] : nome dado ao pacote;
✔ [versão] : versão do pacote;✔ [revisão] : número de alterações feitas na mesma versão do pacote;✔ [arquitetura] : arquitetura de hardware a qual o pacote foi compilado;
GNU/Linux Módulo 1 - Introdução
7.2 – Os pacotes Debian
✔ Alguns exemplo de nomes de pacotes:
✔ openoffice.org-bin_1.1.3-9_i386.deb✔ mozilla-firefox_1.0.4-2sarge5_i386.deb
✔ inkscape_0.41-2_i386.deb
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ dpkg
✔ O dpkg é o principal programa de gerenciamento de pacotes do Debian. Todas as outras ferramentas utilizam-no para as operações com pacotes DEB;
✔ A sintaxe de uso do dpkg e a seguinte:
dpkg <opções> <pacote>
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ dpkg
✔ As opções mais utilizadas são:
✔ -i : instala o pacote no sistema, desde que ele não tenha nehuma dependência;✔ --info : exibe as informações do pacote especificado;
✔ -r : remove o pacote, mantendo os arquivos de configuração;
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ dpkg
✔ As opções mais utilizadas são:
✔ --purge : remove o pacote e seus arquivos de configuração;✔ -l : lista o estado de instalação do pacote;✔ -L : exibe os arquivos instalados pelo pacote selecionado;
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ dpkg
✔ As opções mais utilizadas são:
✔ --get-selections : exibe uma lista com os pacotes do sistema, bem como seu estado;
✔ -S : procura pelo padrão informado na lista de pacotes instalados pelo pacote✔ -s : exibe o status o pacote selecionado;
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ O APT (Advanced Package Tool), é uma avançada interface de gerenciamento de pacotes Debian.✔ Consiste em vários programas cujos nomes tipicamente começam com apt-. O apt-get, apt-cache e o apt-cdrom são ferramentas de linha de comando para gerenciar pacotes;✔ O APT trabalha procurando os pacotes nos repositórios Debian, baixando-os e instalando-os automaticamente. Também permite remover e pesquisar pacotes;
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ Para poder utilizar o APT, é necessário primeiramente configurá-lo, escolhendo um repositório de pacotes, que são locais de onde os pacotes serão baixados.
✔ Essa informação será adicionada em /etc/apt/sources.list, onde ficam listadas as fontes de pacotes Debian.
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ Exemplo do arquivo /etc/apt/sources.list
deb http://ftp.unicamp.br/pub/debian stable main contrib
<pacote> <URI> <distribuição> <seções>
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
deb http://ftp.unicamp.br/pub/debian stable main contrib
✔ pacote [deb] : tipo de pacote, deb para pré-compilados e deb-src, para baixar os fontes;
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ file:/ : arquivos gravados localmente, no HD;✔ cdrom:/ : CD oficial de alguma versão do Debian;✔ http:// : servidor com suporte a HTTP;
✔ ftp:// : servidor com suporte a FTP;
✔ URI [http://ftp.unicamp.br] : a localização principal dos arquivos. O APT pode buscar pacotes em diversos locais, utilizando os seguintes protocolos:
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ stable : pacotes exaustivamente testados, considerados estáveis, porém as vezes, antigos;
✔ distribuição [stable] : Os pacotes Debian são separados por categorias, de acordo com seu estágio de estabilidade, que podem ser:
✔ testing : pacotes em fase de testes, mais recentes que os pacotes da stable;✔ unstable : versões mais recentes dos pacotes Debian;
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ main : seção principal, contendo somente pacotes de Software Livre;
✔ seções [main contrib] : Nos repositórios oficiais, existem 3 seções de pacotes disponíveis:
✔ non-free : pacotes que não são Software Livre, porém, gratuitos;✔ contrib : pacotes que são Software Livre, mas que precisam de alguns pacotes da seção non-free para funcionarem;
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ Para adicionar automaticamente um repositório em seu sistema, é necessário apenas digitar o comando apt-setup;
✔ Após adicionado um repositório, será necessário digitar o comando apt-get update , para que o seu sistema atualize a base de informações dos pacotes dos repositórios oficiais;✔ Depois que adicionamos um repositórios, e atualizamos a lista de pacotes, podemos realizar todas as operações de instalação, remoção e pesquisa com as ferramentas do APT. Para instalar um software, utilizamos o apt-get , com a seguinte sintaxe:
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
apt-get install <pacote>
✔ Para remover um pacote, utilizamos a seguinte sintaxe:
apt-get remove <pacote>
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ Para remover um pacote com seus arquivos de configuração, utilizamos a seguinte sintaxe:
apt-get remove –-purge <pacote>
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ Para pesquisar algum pacote no repositório:
apt-cache search <palavra-chave>
GNU/Linux Módulo 1 - Introdução
7.3 – Ferramentas de Gereciamento de pacotes
✔ APT
✔ Para realizar um upgrade em seu sistema de pacotes, utilize o seguinte comando:
apt-get upgrade
GNU/Linux Módulo 1 - Introdução
8.1 – Suítes de Escritório
✔ OpenOffice.org
✔ Koffice
✔ GNOME Office
GNU/Linux Módulo 1 - Introdução
8.2 – Internet
✔ Mozilla Firefox
✔ Konqueror
✔ Epiphany
✔ Lynx✔ Links
GNU/Linux Módulo 1 - Introdução
8.2 – Internet
✔ Mozilla Firefox
✔ Konqueror
✔ Epiphany
✔ Lynx
✔ Links
✔ Navegadores Web
GNU/Linux Módulo 1 - Introdução
8.2 – Internet
✔ Mozilla Thunderbird
✔ Evolution
✔ Mutt
✔ Pine
✔ Clientes de E-mail
GNU/Linux Módulo 1 - Introdução
8.2 – Internet
✔ GAIM
✔ Kopete
✔ aMSN
✔ GNOMEICU
✔ Mensagens instantâneas
GNU/Linux Módulo 1 - Introdução
8.3 – Multimídia
✔ XMMS
✔ Xine
✔ ToTem
✔ Kaffeine
✔ Reprodutores (Player)
✔ Amarok
GNU/Linux Módulo 1 - Introdução
8.3 – Multimídia
✔ Ardour
✔ Protux
✔ Rosegarden
✔ Editores
✔ Cinelerra
✔ Kino
GNU/Linux Módulo 1 - Introdução
8.9 – Desenvolvimento
✔ Quanta +
✔ BlueFish✔ Eclipse✔ Anjunta✔ Glade✔ JEdit
GNU/Linux Módulo 1 - Introdução
8.11 – Onde procurar softwares para GNU/Linux
✔ FreshMeat - http://freshmeat.net
✔ SourceForge - http://sourceforge.net ✔ CódigoLivre - http://codigolivre.org.br
Top Related