sábado, 16 de junho de 2007

Amor ao Slackware


Sim, sumi por um tempo, mas com o coração sempre aqui. Estava meio complicado, o meu trabalho e a minha faculdade estão me tomando tempo. Mas eu sempre volto.

Assim, quero explicar um fato curioso que me ocorreu recentemente, quando uma pessoa das quais eu converso me perguntou o motivo de eu usar Slackware e não Debian.

Esse artigo, então, é como um convite ao usuário que tem vontade de experimentar, aspirando esclarecer todo e qualquer mal entendido que rola pra distribuição, que é bem injustiçada por sinal. E, primeiramente, é bom advertir algumas coisas que tu precisa saber caso queira usar o Slackware:

- Esqueça tudo o que você sabe do teu sistema operacional ou distribuição Linux.
- Slackware não tenta imitar o Windows ou o MacOS X. Slackware tenta imitar o Unix.
- Slackware não te ajuda muita coisa, é você com você (e o Google caso dê errado).
- Slackware segue o padrão KISS. Keep It Simple, Stupid. Isso diz tudo.
- Aprenda a usar um editor de texto. Vi/Vim (weee \o/), nano/pico, mcedit, jed, kedit, kwrite, gedit, kate, enfim.
- Aprenda a usar comandos. cd, mv, cp, rm, pwd, grep, cat, dmesg, tail, ln, head, etc.
- Aprenda a estrutura de diretórios do Linux.

Sabendo de todas as situações que citei acima, você está pronto para prosseguir.

Então, por quê eu uso Slackware?

1) A Facilidade.

Que venham as pedras, ovos e tomates, mas Slackware é fácil. É simplesmente completo, em 3 mágicos CDs eu tenho absolutamente tudo. Uma base sólida, dois ambientes desktop (KDE e XFCE, eu não gosto dos dois, por isso uso DropLine Gnome) e programas. Muitos programas, pra todos os gostos. Modo texto e modo gráfico.

Todas as configurações são feitas em modo texto, que é rápido, fácil e intuitivo (sim, eu disse isso). Você modifica diretamente arquivos de configurações. Uma vez conhecendo as entranhas do seu sistema, tu faz absolutamente tudo. Assim, eu não entendo o motivo das dificuldades que todos falam. Pois, os arquivos são extremamente bem comentados, onde você interage com tudo, e não com o que a gui deixa. E em qualquer acontecimento fora do normal que você por acaso causou, os manuais ajudam bastante.

Ou seja, você conhece Linux? Você sabe usar Slackware! Você conhece ferramentas e menus coloridos? Você então não usa Linux.

2) A Estabilidade.

No meu desktop, o Slackware é instalado apenas uma vez. Eu instalo, ele funciona, eu não mexo nunca mais. Meus arquivos de configuração (fstab, xorg.conf, inittab, rc.local e outros) são sempre os mesmos. Eu não tenho qualquer tipo de problema com eles. Tudo funciona como mágica.

Eu não preciso remover o yum.pid, usar um apt-get -f install, sofrer com pacotes quebrados (ou com meta-dados incorretos), repositórios fora do ar, programas desatualizados, ausência de libs, enfim. Do jeito que se instala se usa. E do jeito que se configura, ele se mantém.

3) O Gerenciamento de Pacotes.

Os pacotes tgz foi o primeiro sistema de gerenciamento de pacotes implementado no Linux, que se mantém o mesmo até os dias atuais. E é muito simples. Dentro do TGZ vem os arquivos pré-compilados e organizados na estrutura de diretórios, para serem somentes descompactados e entrarem em funcionamento. De Slackware pra Slackware. Eles quebram um galho muito grande. E também, tu pode construir o teu pacote pro teu sistema, com o checkinstall ou com o SlackBuild. Inclusive podendo otimizar com o SlackBuild, não deixando a dever nada a nenhum Gentoo.

Baixando os CDs 4, 5 e 6 (e 3 e 4, nas versões anteriores ao 11) você pode utilizar as sources, alterar o SlackBuild e reempacotar para seu Athlon 64, Core2 Duo e etc, não ficando com o computador “inutilizado” até ficar tudo pronto, como acontece no Gentoo. (isso puxa o próximo tópico).

Os pacotes também não tem qualquer sistema de verificação de dependência. Instalou o pacote (ou foi compilar e deu erro no ./configure), chamou o programa se deu falta de dependência, ele dirá! Volta lá no LinuxPackages ou no Slacky e baixa o que faltou. Instala e pronto. Muitos simplesmente não gostam de ter que corrigir as dependências na unha, mas eu acho que isso é realmente interessante. Motivo? Se o pacote que você instalou deu errado, você simplesmente remove e procura outro! Deixa um pacote vir errado no Debian ou no Ubuntu, e me conta o que houve com o sistema depois!

4) Slackware roda até num 486

Adoro tópicos no estilo “Qual distribuição eu uso no meu Pentium 133″. Todos recomendam mil distros. Damn Small, Xubuntu (hehe), Vector, Kurumin Light e até RedHat 7.2 entra na dança. Mas primeiro, ninguém dos que respondem usaram Slackware ou alguma das distros aí citadas em configurações semelhantes. E segundo, quase ninguém (exceto eu e outros conhecedores da distro que usam) recomendam o Slackware. O mais engraçado é que todos se esquecem (ou simplesmente não sabem), que o Slackware é feito para processadores Intel 486 e/ou superior! Não obstante, o Slackware (e o KDE que acompanha) é empacotado inteiramente por dois 486, do Patrick Volkerding!

Claro, você não pode se enganar pensando que vai rolar o KDE num bichinho desses, não zoa. :P Porém, você pode usar vários programas em modo texto, um dos gerenciadores de janela leves que ele acompanha (FluxBox, WindowMaker, TWM, FVWM) e rodar aplicações simples do X.

Também, você pode fazer terminais remotos de X com esse bicho + Slackware. Você deixa a sua sucata totalmente funcional, os únicos gargalos serão o monitor, que num micro desses mal deve pegar 1024×768@256 cores.

Você também poderá mesclar aplicações! Por exemplo, tu tem dois computadores e um modem ADSL bridgeado? Coloque outra placa de rede (Realtek é 15 conto :)) na tua sucata e faça um servidorzinho pro seu modem, com DHCP pro seu computador bom, que estará rodando Linux também, e configure um XDMCP no micro mais novo. Sua sucata conecta na internet e passa o acesso pro seu outro computador. E o seu outro computador tem um servidor XDMCP e devolve o ambiete gráfico pra sua sucata, os programas rodarão no seu computador bom e você tem um segundo terminal pro seu irmão pentelho usar enquanto você tá no outro micro. As possibilidades são infindas.

5) Slackware te dá as ferramentas certas.

O Slackware tem ferramentas que servem pra auxiliar o usuário. A partir do pkgtool (gerenciamento de pacotes) pode-se puxar as outras ferramentas (opção SETUP), que configuram o modem discado (só serve se for HardModem ou externo), mouse, rede, timezone, gerenciador de janelas e etc. São os scripts de configuração realizados após a instalação da distribuição, e o melhor é que eles não são primordiais para o funcionamento! Pois, as mesmas configurações que tu faz neles são feitas também nos arquivos de configuração a que eles se destinam.

Eu explico. Você pode configurar a rede através do netconfig (ou pkgtool -> Setup -> seleciona Network e dá OK, ele abrirá o netconfig) ou ir diretamente no /etc/rc.d/rc.inet1.conf, inserir os mesmos dados que o netconfig pergunta no arquivo. Tudo bem demarcado, sem ter nem como errar. São as únicas ferramentas onde o Slackware auxilia o usuário.

Do mesmo modo que as ferramentas não são primordiais, elas podem ser removidas e o sistema continuar intacto. Remove o aptitude, o dpkg-reconfigure e o apt-get do Debian e me conta como é que fica.

6) Slackware vem com os programas certos.

Slackware não é socialista, que segue aquela filosofia ridícula de só vir com programas OpenSource. Slackware só fica a dever programas que são ilegais nos Estados Unidos (libdvdcss, por exemplo. Precisa instalar à parte). Slackware vem com codecs pra MP3, MPG, Java (JDK e JRE por exemplo) e outros programas que os socialistas condenam mas os usários instalam.

7) O init do Slackware é perfeito.

Slackware tem um init simples e funcional. Primeiramente, a tabela de inicialização é diferente das outras distribuições, segue:

init 0 = Desliga.
init 1 = Single User;
init 2 = Desuso, mas configurado igual ao 3;
init 3 = Multi User;
init 4 = Multi User gerenciado pelo modo gráfico (GDM/KDM/XDM);
init 5 = Desuso, mas configurado igual ao 3;
init 6 = Reboot.

No inittab, o runlevel padrão é o init 3, que depois da instalação te põe numa tela em modo texto pedindo login. (Para o login ser feito em modo gráfico, deve se alterar o inittab para usar por padrão o init 4). Depois, toda a inicialização do sistema é feita no diretório /etc/rc.d. O primeiro arquivo chamado pelo inittab é o /etc/rc.d/rc.S, se o runlevel padrão for o 3 ou 4, o rc.S chama o rc.M, e se runlevel padrão for o 4, o rc.M chama o rc.4. E são eles que chamam os outros scripts no mesmo diretório, como rc.alsa, rc.cups, rc.bind, rc.samba, o GDM/KDM/XDM, e etc.

Os serviços também são desativados apenas tirando o nivel de execução (chmod -x rc.serviçoquetunaoquer), e no próximo reboot ele não será mais chamado. Simples assim. Nada como uma bagunça na /etc/init.d, com trezentos links simbólicos de programas que as vezes você nem tem. Tudo extremamente fácil e extremamente simples.

Não há limites para o seu Slackware.

Não há limites pro Slackware. Ele tem um grande repositório de TGZs em sites especializados), todos os tarballs e bzballs são compilados sem esforço nenhum, tem todas as libs necessárias, a documentação é vasta, a estabilidade é grande, os fóruns são fortes, ele geralmente é a porta de saída do Linux (quem usa resolve conhecer outros sistemas, como FreeBSD e Solaris) e os usuários são inteligentes (pelo menos 80% deles). Tendo os requisitos que mencionei acima, você pode ser um Slackware User. TEnha perseverança e não desista. Pois se você não faz vista grossa aos erros do teu Ubuntu, provavelmente, o Slackware é a distribuição certa pra você! E o Patrick está para lançar a nova versão do Slackware, a 12, com o kernel 2.6.21.5, GCC 4, versões novas da Glibc e do Xorg e ainda suporte a Xgl e ao Compiz ... Cada vez melhor !!