Desmistificando o GNU/Linux


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 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 “GNU não é Unix”. Seu símbolo é representado por um mamífero, o GNU.

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, oGNU/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…

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ção 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, contando 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, 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 mesmos.

Sintaxe: 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 utilizá-la precisamos de um arquivo de texto que possui várias URLs, 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…

Sintaxe: 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, é líder de mercado nos Estados Unidos e 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:

Sintaxe: rpm -i pacote.rpm

Assim como o Debian tem um gerenciador de pacotes que usa uma lista de “mirrors” (um arquivo com várias URLs), o YUM também utiliza esse esquema. Yum é um dos melhores gerenciadores de pacote existentes! Uma diferença importante é que o Yum faz uma verificação e um UPDATE do seu arquivo de mirrors 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”.

Sintaxe: 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, até hoje é utilizada, porém 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 para as versões 12 e 13 muitos avanços foram alcançados. Várias implementações foram feitas, como as ferramentas installpkgpkgtools.

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 novas 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ê tinha que 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 as distros 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 precisarão 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 sintaxe do yum para instalar pacotes:

zypper install software

Ele também trabalha com a ferramenta rpm e com pacotes .rpm:

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

É simplesmente a distribuição mais usada no mundo. Por quê? 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.

Fedora

Ele representa um conjunto de projetos da Red Hat e também trabalha com pacotes .rpm, usando a mesma sintaxe 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 quê utilizar o terminal? Para quê 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 GnomeKDE… 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, não precisa saber nada de Gnome ou KDE, porque toda distribuição possui 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 resolveria esse problema, em menos de 30 segundos, e não iria perder tempo procurando nos menus de um gerenciador de janelas.

Com a sintaxe “df -h” você veria quanto de espaço o diretório raiz, que é representado por “/”, está ocupando 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 arquivo 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á dentro do diretório raiz.

Então quando uso o comando “cd ..”, caso eu esteja dentro do diretório /etc, vou voltar para o diretório “/”. Com o tempo, após utilizar o terminal por algum tempo, surgirão dúvidas e a curiosidade de utilizar novos comandos.

Gerenciadores de janelas, conceito de software livre e conclusão

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 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 às 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).

Abaixo segue 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% em dois 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.

Um abraço.

Conte-nos o que achou...

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: