Linux é um sistema operacional (interface entre o usuário e o computador) multiusuário e multitarefa (processa várias tarefas ao mesmo tempo), criado pelo finlandês Linux Torvalds em 1991, com a ajuda de diversos programadores voluntários. O Linux pertencente a família Unix (sistema desenvolvido em 1969, na Bell Labs/MIT), segue um conjunto de normas de padronização conhecidas como POSIX e utiliza, geralmente, licença GPL.
O coração ou núcleo de um sistema Linux é o Kernel. Ele é responsável por tarefas importantes como carregamento de drivers (comunicação do hardware com o sistema) e gerenciamento da memória (quantidade de espaço e local que cada programa usa). Esse núcleo vem sido constantemente alterado ao longo dos anos; sua versão atual é 2.6.30.5. Podemos dizer que todo sistema operacional que possui um Kernel Linux é considerado Linux.
A maioria dos grandes servidores do planeta utilizam Linux para disponibilizar suas aplicações (web, e-mail, ftp...) e o seu uso doméstico cresceu consideravelmente nos últimos dez anos. Existem, também, diversos sistemas Linux rodando em celulares, roteadores, video games e muitos outros dispositivos.
O símbolo ou logotipo do Linux é o Pinguim.
A grosso modo, todo programa é um arquivo compactado e codificado que contém um conjunto de instruções conhecido por código fonte. Programas que, sem restrições, podem ser distribuídos, copiados e alterados são considerados Software Livre.
Grande parte dos softwares livres vêm acompanhados da licença GNU GPL, criada no fim dos anos 80 por Richard Stallman, através do projeto GNU - pertencente a Free Software Foundation.
A filosofia Linux permite a participação de qualquer pessoa na criação e desenvolvimento de um sofware ou sistema operacional, através da programação, tradução, arte, empacotamento e suporte.
O fato do código fonte ser aberto ao público, permite que um software livre receba aprimorações e correções rápidas. Por exemplo, se um usuário comum ou programador descobrir uma falha de segurança ele pode mandar um aviso (bug report) aos desenvolvedores e também ajudar na resolução do problema; muitos programas fazem isso automaticamente, com a devida permissão do usuário. Ao contrário dos softwares proprietários (não divulgam as instruções de programação), é muito difícil encontrar um software GPL com vírus, devido a visibilidade do código fonte.
Esse cenário possibilita pessoas e empresas utilizarem a informática com uma acentuada redução de gastos e relativa segurança.
Atualmente, existem ao redor do mundo milhares de pessoas e empresas envolvidas no desenvolvimento de sistemas Linux. Para termos uma idéia, participam do desenvolvimento do Kernel, desde de usuários comuns a empresas como a IBM e a Intel.
Até agora usamos o termo sistemas Linux para nos referirmos as distribuições Linux. Ambos são sinônimos.
Uma distribuição é composta pelo Kernel Linux e mais um determinado conjunto de softwares (maioria livre) que resulta em um sistema operacional completo. Elas podem ser obtidas pela internet (através de arquivos “iso”) para serem gravadas em uma mídia (cd, dvd...) e posteriormente instaladas no HD (disco rígido) do computador ou pendrive.
Há centenas de distribuições Linux e cada uma delas é desenvolvida e mantida pelo grupo Linux, por uma empresa ou um conjunto de voluntários (comunidades). Elas distribuições possuem versões diferentes ao longo dos anos; a cada nova versão é adicionado um novo kernel, versões atualizadas dos softwares pré-existentes e, possivelmente, novos programas. Por exemplo, existe a distribuição Debian versão 5.0 (também chamado de Lenny), Fedora 11 (também chamado de Reign), entre outras.
Existem sistemas de uso geral, como Slackware e Ubuntu, que podem ser instalados em desktops e servidores, possuindo um conjunto de software para todos os gostos. Por outro lado, existem aqueles destinados para atividades específicas como, o a Backtrack (auditoria para segurança de redes), e o 64 Studio (edição de áudio e vídeo).
O tamanho das distribuições varia de um disquete à um dvd. As “clássicas” possuem um conjunto completo de softwares e aplicativos que cabem em um cd ou dvd. Elas são bastante customizáveis, sendo possível instalar apenas o kernel e mais alguns aplicativos para gerar um sistema enxuto em modo texto (visualmente parecido com o DOS da Microsoft) ou um sistema completo com interface gráfica que contém tocador de mídia e navegador de internet (parecido com o Windows Vista/XP).
É uma distribuição muito estável e segura, usada em boa parte dos servidores espalhados pela internet, totalmente gratuita e mantida por uma comunidade de desenvolvedores e colaboradores.
As versões são divididas em:
O Ubuntu é patrocinado e desenvolvido pela Canonical Ltd, sendo considerado um dos sistemas Linux mais populares entre os usuários domésticos. Esta distribuição é baseada no Debian, possui uma interface muito amigável e de fácil utilização.
Suas versões são lançadas a cada 6 meses e seus nomes baseados no ano e mês de lançamento. Por exemplo: o Ubuntu 8.10 se refere ao mês 10 (outubro) do ano de 2008. Existem as versões LTS (com suporte por longo período) e as que têm menor tempo de suporte. Seu sistema de atualizações e correções é parecido com o do Debian.
Também conhecida por Slack, foi criada em 1993. É a distribuição Linux mais antiga e a mais parecida com o Unix. É extremamente confiável e requer um pouco mais de conhecimento do usuário para sua utilização.
Diferente da maioria dos sistemas, o Slackware contém um conjunto de softwares que não sofrem customizações ao serem incluídos nele. Podemos dizer que o Slackware usa mantém os softwares e aplicativos em seu estado “puro”.
Só existem versões estáveis para download. Se você quer aprofundar no mundo Linux essa é uma distribuição muito indicada.
O Fedora é uma distribuição gratuita com uma interface gráfica muito bonita, de fácil uso, patrocinada pela Red Hat e mantida pelo Projeto Fedora, criado em 2003. Esse sistema é derivado do Red Hat 9 (versão gratuita mantida, na época, pela Red Hat).
Uma característica interessante do Fedora é a utilização de softwares e drivers em sua última versão. Isso faz do Fedora uma distribuição extremamente moderna, com suporte a diversos dispositivos de hadware recém lançados. A cada 6 meses, aproximadamente, é lançada uma nova versão.
Obs.: Existem mais distribuições importantes que são conhecidas e recomendadas, como Gentoo e o CentOS, por exemplo. Não é nosso foco escrever sobre todas as grandes distribuições. O site da Distrowatch tem cadastrado uma lista enorme de distribuições Linux, possuindo diversas informações sobre elas.
A maior parte das distribuições Linux são instaladas de maneira intuitiva, através de uma interface gráfica que fará um passo a passo com algumas perguntas (nome que o usuário deseja usar, senhas, idioma padrão, etc.). No restante das etapas da instalação, será necessário apenas avançar, pois o sistema se encarregará das configurações necessárias.
Durante a instalação ocorrerá o processo de particionamento (modo como o HD será dividido e qual sistema de arquivo utilizará). Ele poderá ser feito de maneira “automática” (para não complicar a vida dos novos usuários) ou manual (para pessoas experientes que querem customizões). Se o usuário solicitar particionamento automático, o instalador se encarregará de criar uma partição swap para auxiliar o trabalho das memórias caso estejam com seus recursos esgotados. Ela não irá acelerar o sistema, mas poderá amenizar possíveis travamentos. Também será criada uma partição raiz (/) para abrigar a instalação de todo o sistema operacional (arquivos, pastas, programas...). Essa partição deverá utilizar algum sistema de arquivos (maneira como os dados são organizados e gravados no HD) nativo do Linux.
Os sistemas de arquivos padrão no Linux são aqueles que pertencem a família EXT (Extended File System). O Ext3 e o Ext4 são confiáveis e modernos, possuindo um sistema de gravação de dados inteligente o que facilita o processo de auto recuperação, caso ocorra alguma falha ou desligamento incorreto do sistema. O script de instalação do Linux também oferece particionamento com outros filesystems, como o ReiserFS (que funciona muito bem), mas costuma ter o EXT definido como padrão.
Em um determinado momento da instalação será pedido para digitar a senha do usuário root (administrador com poder total sobre o sistema) e para criar o nome/senha de um usuário comum. Par manter o sistema seguro recomenda-se não usar senha óbvias do tipo “1234”, principalmente para o usuário root. A senha de usuário comum será utilizada para o acesso ao sistema e a de root para executar tarefas críticas de manutenção e adminstração.
Na maioria das vezes, é desejado que o sistema seja inicializado, automaticamente, sem a necessidade de cd ou disquete de boot (discos próprios para inicializar um sistema). Para evitar esse incômodo, é preciso confirmar a instalação do gerenciador de boot (programa responsável pela inicialização do sistema) na MBR (primeiro setor do HD). A maioria dos programas de instalação aplicam essa configuração por padrão, mas não custa prestar um pouco de atenção para confirmar se isso, de fato, ocorreu. Os softwares responsáveis pela inicialização podem ser o GRUB ou o Lilo, dependendo da distribuição utilizada.
Ao término de uma instalação convencional aparecerá uma tela de login, pedindo o nome de usuário e sua respectiva senha. Não é recomendado entrar no sistema como usuário root, portanto use sua conta de usuário comum. A senha de root será automaticamente exigida para execução de tarefas que, de alguma maneira, podem colocar o sistema em risco, como instalação de programas e criação de novos usuários.
Os sistemas operacionais Linux interagem com o usuário através de um shell (modo texto) ou por ambientes desktop (KDE, Gnome, Fluxbox, XFCE e LXDE).
Shell têm aparência muito semelhante ao antigo DOS da Microsoft, mas com muito mais recursos e funcionalidades. Nesse tipo de interface são digitados comandos para que o sistema execute as ações desejadas, como o uname (exibe informações sobre o kernel do sistema que estamos usando), o pwd (mostra o nosso diretório atual) e o ls (lista arquivos e diretórios).
No Linux não existe a obrigação de instalar um desktop (interface gráfica). Podemos, por exemplo, ter a última versão do Fedora operando apenas em modo texto. Isso é muito útil quando usamos máquinas antigas - com poucos recursos - e servidores.
Em modo gráfico é possível executar quase todas as tarefas que seriam executadas em modo texto de modo fácil e intuitivo, facilitando a vida de usuários domésticos e iniciantes. A maioria das ações são efetuadas usando-se o mouse como dispositivo de entrada, como no Windows 7, da Microsoft. Algumas interfaces gráficas possuem mais funcionalidades, portanto, exigem mais processamento e memória, como o KDE e Gnome; outras são mais leves e podem ser instalados em computadores antigos, como o Xfce e Fluxbox.
Os gerenciadores gráficos mais conhecidos possuem diversos aplicativos, como navegadores de internet (Firefox, Konqueror, etc.), gravadores de DVD/BD (K3b, Brasero, etc.), editores de texto (Libreoffice, Koffice, entre outros) e gestores de fotos (Gthumb, Shotwell e outros).
É possível instalar mais de uma interface gráfica em um pc e se o mesmo tiver vários usuários serão mantidas as configurações para cada um deles. Podemos, também, ativar diversos efeitos visuais nas interfaces gráficas (animações, 3D, etc.).
Esse artigo foi escrito com a intenção de apresentar os sistemas Linux, principalmente, para os usuários iniciantes. Por outro lado, aqueles que já estão acostumados com o sistema também poderão encontrar informações que lhes serão úteis.