Desmistificando o Gnu/Linux
* Introdução:
GNU/Linux é um sistema operacional, baseado na ideia do compartilhamento de código,
onde todos podem ajudar de alguma maneira. Muitos ajudam programando, adicionando
linhas de código na programação do sistema, outros ajudam na tradução, outros no designer.
A vantagem de se utilizar um sistema operacional livre, é que ele cresce muito rápido,
assim, corrigindo os bugs, e adicionando funcionalidades.
Também vale lembrar da ideia, de ter um sistema operacional voltado para sua necessidade,
ou seja, você pode adequar ele, para o seu uso, modificando praticamente tudo.
* Por que ajudar?
Bem, uma forma bem simples de demonstrar que a ajuda sempre é necessária, é quando temos alguma dúvida,
e vamos procurar em algum fórum, ou até mesmo no google( www.google.com.br ), e obtemos resultados, que
acabam com a nossa dúvida ou problema. Então, começamos a pensar: "Mas, e se quem respondeu esse tópico,
que por sinal acabou com meu problema, não tivesse respondido!? Será que eu conseguiria resolver esse
problema?". Então, assim como os outros usuários ajudam você, porque não ajudar os outros? Contribuir
para o mundo do SL( Software Livre ), é algo muito gratificante! Não digo isso, na questão do lucro,
mas na questão de ajudar o próximo, com o seu conhecimento, assim, você será reconhecido.
* Um pouco da história
Bem, o sistema operacional Linux, ou GNU/Linux, é chamado dessa maneira, pelos seguintes fatos:
As siglas GNU, fazem referência a "Gnu is not Unix", traduzindo para o nosso português, seria
"Gnux não é Unix". Seu simbolo, é representado por um mamífero, com chifres.
Então, a GNU criou vários softwares, para a criação de um sistema operacional, mas, faltava
o coração do sistema operacional, o núcleo.
Foi então, que Linus Torvalds, criador do "Linux", elaborou o kernel. A junção do Kernel
mais os softwares e todo o seu ambiente, ficou conhecida como Gnu/Linux.
Porém, Linus Torvalds, ainda não aceita essa ideia, e interpreta o S.O apenas como Linux.
* O mundo Linux
Assim como o Windows tem várias versões, o Gnu/Linux tem várias distribuições.
As distribuições ficam abreviadas como "distro". As "distros" mais conhecidas são:
- Debian
- Red Hat
- Slackware
- OpenSuse
- Ubuntu
- Fedora
Porém, o nome das versões do Windows, variam com as melhorias, por exemplo:
Windows XP SP2 -> Windows XP Service Pack 2 (Adição de melhorias, como pacotes)
Windows 98, Windows NT, entre outros, foram lançados ao longo dos anos...
E podemos deduzir, que quanto mais novo, melhor, com correções de falhas.
Já no mundo Linux, não é assim! Quem entra nesse mundo, começa a se perguntar:
"Qual distribuições eu vou usar"?
Bem, isso é uma coisa muito pessoal, particularmente, eu já usei Slackware,
Ubuntu, CentOS( Distribuição Gnu/Linux baseada no Fedora ), mas hoje, não consigo ver nada além do Debian.
Então, você pode escolher qualquer distribuição, contanto que goste de usar.
Com o tempo, você vai se acostumando, e vendo que realmente Linux não é
difícil, e sim diferente do que você está acostumado.
Escrevi essa comparação das versões do Windows com as "distros" do Linux,
mas reconheço que esse conceito é impróprio, porém, para quem ainda não
utiliza o Gnu/Linux, é a melhor visão que se pode ter, para tentar entender.
Uma pergunta que também é frequente, é: "E qual a diferença de uma distro
para outra"?
Bem, eu vou explicar um pouco aqui de cada distribuição que falei, mas
garanto que você vai aprender muito mais, usando cada uma delas, mas antes
preciso explicar que o Linux trabalha com pacotes.
O Windows, "tem um pacote padrão" que é em formato .exe, ou seja, os
pacotes do windows, são instalados apenas de uma maneira, já no Linux não.
Cada distribuição tem pacotes específicos.
- Debian:
Debian, é uma distribuição GNU/Linux, que foi criada por Debra e Ian Murdock, que são casados.
Então, juntando o começo do nome do casal, Deb + Ian, formou-se o nome dessa maravilhosa distribuição,
que foi lançada no ano de 1993, e é oficialmente reconhecida pelo projeto GNU, para mais informações,
acesse o site do projeto Debian( www.debian.org ), onde você pode fazer o download da "distro", ou
participar de algum fórum, parar tirar as suas dúvidas, ou a dos outros usuários.
Utiliza pacotes .deb como padrão.
E utiliza a ferramenta DPKG para instalação dos pacotes.
-- Syntax: dpkg -i pacote.deb
Uma outra ferramenta muito boa do Debian, é o famoso "apt-get".
O funcionamento do APT-GET é bem simples. Essa ferramenta já vem
instalada com o Debian, para utiliza-la, precisamos de um arquivo
de texto, que possui várias url's, então quando o apt-get
é executado, ele vai procurar o software que você especificou, nos sites
que estão contidos nesse arquivo de texto.
Esse arquivo de texto, por padrão fica no diretório: /etc/apt/
E tem o nome de "sources.list". Sources do inglês, pode ser traduzido
como "fontes", ou seja, o apt-get procura o software nas "fontes de pesquisa"
e retorna algo, uma mensagem de erro, uma de confirmação...
-- Syntax: apt-get install software
O debian é baseado na simplicidade, e tem um esquema de segurança até
no lançamento das versões. Na verdade, a maioria das distribuições usam
isso. Existem versões antes de sair a "stable", que é a versão estável da distro,
essas versões geralmente são denominadas alpha, e beta.
O Debian, geralmente, lança de 2 (dois) em 2 (dois) anos uma nova versão.
Nesse intervalo de dois anos, são executados testes, não só de segurança,
onde são encontrados bugs e corrigidos. Quando realmente a distribuição está "redonda",
a equipe do Debian lança a versão "stable"
- Red Hat Linux
Uma das mais antigas distribuições, e líder de mercado nos Estados Unidos, que é mantida
pela empresa Red Hat. Foi criada na Carolina do Norte, e não é totalmente grátis.
A empresa Red Hat, disponibiliza uma versão básica do red hat para uso doméstico.
Utiliza o conceito de pacotes, e tem por padrão o pacote .rpm, para instalar use:
-- Syntax: rpm -i pacote.rpm
Assim como o Debian tem um gerenciador de pacotes, que usa uma lista de "mirros"
(Um arquivo com várias URL's), o YUM também utiliza esse esquema.
Yum, é um dos melhores gerenciadores de pacote! Uma diferença importante,
é que o yum faz uma verificação e um UPDATE do seu arquivo de mirros, toda vez
que executado. Enquanto o apt-get não, você precisa fazer um UPDATE manualmente,
utilizando "apt-get update" toda vez que atualizar o seu arquivo "sources.list".
-- Syntax: yum install software
Red hat é uma das distribuições mais procuradas para servidor, porém não tem uma
solução gratuita.
- Slackware
Uma das mais antigas distribuições, que até hoje é utilizada, e que não tem uma
imagem tão boa. Muitos usuários consideram o Slackware uma distribuição difícil,
pela ideologia que ele segue. Desde o Slackware 10.2( Dez ponto dois ) pra versão 12( Doze ) e 13( Treze )
, muitos avanços foram alcalçados. Várias implementações foram feitas, como as ferramentas INSTALLPKG e
PKGTOOLS. Bem, antes o slackware não tinha um pacote padrão, diziam que era ".tgz" mas eu discordo, pois
o .tgz é um ".tar.gz disfarçado". Um pacote .tar.gz, necessita de descompactação, e compilação, enquanto
um pacote .deb ou .rpm pode ser instalado com as ferramentas citadas anteriormente, onde a própria ferramenta
descompacta, configura e instala para você. Esse, é um dos motivos para os usuários considerarem o "slack",
uma "distro" difícil. Mas ao longo do tempo, com as versões, o slackware se tornou bastante amigável!
Antigamente, você precisava instalar um software, e esse software precisava de bibliotecas, então, imagine
o trabalho:
Instalar o software Amsn, biblioteca gtk, gtka, gtkb, gtkc.
Você iria procurar tudo isso na internet, baixar os pacotes .tar.gz de cada um, e então descompactar
compilar... Bem acho que ficaria um pouco cansativo não é? Hoje, podemos fazer desta maneira, ou não.
A maioria dos "Hackers" utilizam a "distro" BackTrack, e Slackware, e eles alegam que essas distribuições
realmente só são usadas, por usuários que realmente "Sabem usar Linux".
Então, aqui vai uma pergunta: "Eu devo usar Linux"?
Bem, vocês vão precisa responder essa pergunta, depois que usarem o Slackware, que na minha opinião,
é uma das melhores distribuições Gnu/Linux já criadas.
- OpenSuse
Essa distribuição, utiliza um gerenciador de pacotes em modo texto, chamado zypper, que segue
a mesma Syntax do yum para instalar pacotes:
-- Syntax: zypper install software
Ele também trabalha com a ferramenta rpm, e com pacotes .rpm:
-- Syntax: rpm -i pacote.rpm
O OpenSuse é uma distribuição Gnu/Linux utilizada por um número grande de pessoas, perdendo
apenas pra poucas distribuições como o Ubuntu. Ele tem um gerenciador de pacotes em modo
gráfico fantástico chamado Yast, que hoje é utilizado na versão 2, "Yast 2".
Bem, ele não só é um gerenciador de pacotes, como gerencia todo o sistema, podendo ir
de uma instalação de um software em modo gráfico, até a configuração da sua internet, do
seu vídeo, e muito mais.
O OpenSuse tem uma interface muito amigável, onde quase tudo pode ser feito pelo "clique" do
mouse.
Essa distribuição é mantida pela Novell, que também tem soluções pagas para servidores.
O Opensuse para Desktop é totalmente grátis.
- Ubuntu
É simplismente a distribuição mais usada no mundo. Por que? Pois ele faz a junção da facilidade
com a funcionalidade e beleza.
O ubuntu é uma distribuição baseada em Debian, e utiliza o gerenciador de pacotes em modo texto
"apt-get", e em modo gráfico o Synaptic assim como o Debian. Ele trabalha com pacotes .deb também.
Bem, podemos dizer que o Ubuntu é um Debian melhorado, com mais softwares, com uma maior beleza.
O Debian, é uma distro simples e funcional, e o Ubuntu é uma "distro" modificada, e funcional.
A empresa que mantém o Ubuntu, se chama canonical( www.canonical.com ).
- Fedora
Ele representa um conjunto de projetos da Red hat, e também trabalha com pacotes .rpm, usando a
mesma Syntax do OpenSuse e do Red Hat para instalar os pacotes, e um gerenciador de pacotes
em modo texto igual, o Yum.
É uma distribuição também bastante antiga, mas que até hoje é usada, porém, não é tão recomendada
para servidores, tendo em vista que temos outras opções, um pouco melhores. Mas, cabe a cada
administrador de redes, definir qual a distribuição usar.
* Utilizando o Terminal
Distribuições como o OpenSuse e o Ubuntu, tem um ambiente gráfico, com um gerenciador de janelas bem amigável,
deixando você utilizar o sistema através de cliques, sem muita dificuldade, então, Por que utilizar o terminal?
para que digitar comandos?
Bem, é importante saber os comandos, pelo menos os básicos, para ter uma noção de como o Gnu/Linux trabalha, por
trás do ambiente gráfico. Tudo o que você clica, tem uma ação, que provavelmente é um comando, que será executado
em um terminal oculto.
Mas, e se algum dia, você tiver que dar suporte, a uma outra distro?
Vamos tomar como exemplo, que você use o OpenSuse, e tenha que ajudar um amigo, ou executar uma tarefa em seu trabalho
em um Fedora.
Bem, um gerenciador de janelas, como o nome já diz, gerencia as janelas, e temos vários tipos, os mais conhecidos
são: Gnome, KDE... Bem, por padrão o OpenSuse vem com o KDE, então se você usa o KDE, e precisa dar suporte a uma distro
com Gnome, como você vai utilizar o ambiente gráfico? Como você vai navegar pelo menu do gerenciador de janelas?
Caso você saiba alguns comandos que irão resolver seu problema, você não precisa saber nada de Gnome ou KDE.
Porque toda distribuição usa o terminal.
Então, vamos dizer que você tenha uma tarefa bastante simples, ver quanto o diretório "/" está usando de espaço em disco.
Bem, se você sabe utilizar o comando "df", facilmente você resolveria esse problema, em menos de 30 segundos, e não
iria perder tempo, procurando nos menus de um gerenciador de janelas.
Com a Syntax "df -h" você veria quanto de espaço o diretório raiz que é representado por "/" está usando de espaço
em disco, e resolveria o seu problema.
Então, qualquer usuário que saiba utilizar o terminal, com os comandos, vai ter facilidade de usar qualquer Linux.
* Comandos básicos Gnu/Linux
Criar diretório: mkdir diretório
Remover diretório: rmdir diretório
Criar um arquvo de texto: touch arquivo.txt
Remover um arquivo: rm arquivo.txt
Acessar um diretório: cd diretório
Voltar para o diretório anterior: cd ..
Limpar a tela do terminal: clear
Exibir o histórico de comandos digitados: history
Bem, acredito que esses comandos são básicos, e você pode começar a utilizar o terminal utilizando eles.
precisamos entender, que o sistema Gnu/Linux é feito em forma hierárquica, sendo assim, temos diretórios
dentro de outros diretórios.
O diretório raiz, representado por uma barra "/", é o diretório "pai", onde todos os outros são derivados dele.
Por exemplo, se temos o diretório "/etc", quer dizer que o diretório etc, está sendo do diretório raiz.
Então, quando uso o comando "cd ..", caso eu esteja dentro do diretório /etc, eu vou voltar para o diretório "/".
Com o tempo, após utilizar o terminal por algum tempo, irão surgir dúvidas, e a curiosidade de utilizar novos
comandos.
* Gerenciadores de janelas
Os mais conhecidos são:
-- Gnome
-- KDE
-- XFCE
-- FluxBox
-- BlackBox
-- WindowMaker
Existem diversos gerenciadores, mas os que são mais conhecidos e utilizados são esses.
Um gerenciador de janelas, vai gerenciar o seu ambiente gráfico, por onde você navega no sistema.
Ele ti dá opções de modificar o sistema, utilizando a parte gráfica.
Ele faz a comunicação com o Shell, e o Shell faz a comunicação com o kernel.
O Shell, é um interpretador de comandos, onde tem várias derivações, como o Bash, ou seja,
O seu terminal é um derivado do Shell.
* Conceito de software livre
Software livre, nada mais é do que um sistema onde você tem a liberdade de ver, e modificar o código.
É a liberdade de poder adequar o software as suas necessidades.
Algumas pessoas ficam na dúvida, na questão das licenças.
Novos usuários no mundo Linux, ficam com medo de criar software para ajudar o projeto Gnome, por exemplo,
e terem seu código divulgado pela internet, e modificado para venda.
Então, nessa parte entra a questão das licenças, onde uma das mais conhecidas é a GPL( Gnu General Public Licence ).
Aqui a baixo têm a explicação ideal das regras para utilização da licença GPL:
1. A liberdade de executar o programa, para qualquer propósito (liberdade nº 0)
2. A liberdade de estudar como o programa funciona e adaptá-lo para as suas necessidades (liberdade nº 1). O acesso ao código-fonte é um pré-requisito para esta liberdade.
3. A liberdade de redistribuir cópias de modo que você possa ajudar ao seu próximo (liberdade nº 2).
4. A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie deles (liberdade nº 3). O acesso ao código-fonte é um pré-requisito para esta liberdade.
* Conclusão
De forma simples, tentei resumir e desmistificar o imenso mundo Gnu/Linux, que cresceu
150%( Cento e cinquenta por cento ) em 2 anos. A contribuição de todos é bem-vinda,
assim, divulgando o conhecimento, para que novos usuários não passem pelos mesmos
problemas que os usuários antigos passaram. Hoje, vejo que todos querem ajuda, mas
poucos querem ajudar, então fica aqui minha contribuição para novos usuários no
mundo Gnu/Linux.
Um abraço.
1 comentários:
parabéns pelo artigo...boa introdução para quem quer se aventurar no mundo Unix =D
você estuda na FAL é?
abraço!!!
Postar um comentário