Primeiro passo pós-instalação: Configurar a localização do sistema
Antes de mais nada, acredito que você vá querer que seu
Slackware funcione em bom português. É possível configurar a localização do sistema a partir do modo texto, e essa configuração acaba sendo "importada" pelas interfaces gráficas no momento em que você usa o
startx pela primeira vez.
Isto é importante de salientar: Se você, no afã de sair da tela preta, lançou um startx logo de cara, os arquivos de configuração da sua interface gráfica estarão na localização padrão do Slackware, que é "en_US.ISO8859-1", e em alguns casos, você precisará traduzir na unha.
Então é mais fácil, simplesmente, configurar a localização antes de subir a interface gráfica pela primeira vez.
A localização do Slackware é configurada em dois arquivos do sistema, ambos na pasta
/etc/profile.d, o "lang.sh" e o "lang.csh". Nesta altura do campeonato, você dispõe apenas do
Vi para editar o arquivo, mas isso é muito bom: o
Vi é um dos melhores editores de texto disponíveis para o
GNU/Linux, ao lado do
Emacs. Aprender a usá-lo é algo extremamente necessário - PRINCIPALMENTE quando estamos falando de Slackware.
Mãos à obra? Em primeiro lugar é preciso se tornar root, do contrário, não será possível realizar edição ou configuração nenhuma no Slackware. Por padrão, a distro não tem o
sudo habilitado, então, vamos precisar do comando abaixo para assumir o root:
su -
Insira a senha do root, não a senha de seu usuário. Caso você já esteja logado como root, você pode simplesmente ignorar este passo.
Agora vamos editar o arquivo. Rode:
# vi /etc/profile.d/lang.sh
Aperte "i" para entrar no modo de edição, e comente todas as linhas (isto é, digite um "#" na frente delas) que contenham texto e já não estejam comentadas. Adicione estas linhas ao final do arquivo:
export LANG=pt_BR.ISO8859-1
export LC_CTYPE=pt_BR.ISO8859-1
export LC_COLLATE=pt_BR.ISO8859-1
export LESSCHARSET=latin1
Eu recomendo usar o mapa de caracteres ISO8859-1 por questões de compatibilidade com o sistema da Redmond, o "Canonical Windows" (interpretação do autor). Se não houver este tipo de problema, altere a informação após o ponto para UTF-8.
Agora, vamos fazer uma gambiarra para poupar tempo. Precisamos inserir informações muito parecidas no "lang.csh", mas não queremos digitar isso tudo de novo, não é? Vamos ao exercício de "POG" (programação orientada à gambiarras) com o comando:
# cat /etc/profile.d/lang.sh | grep export | grep -v \# | sed -e "s/export/setenv/g" -e "s/\=/\ /g" >> /etc/profile.d/lang.csh
Este comando vai criar as seguintes linhas no final do arquivo
/etc/profile.d/lang.csh:
setenv LANG pt_BR.ISO8859-1
setenv LC_CTYPE=pt_BR.ISO8859-1
setenv LC_COLLATE=pt_BR.ISO8859-1
setenv LESSCHARSET latin1
* Lembre-se: Eu estou usando o mapa de caracteres ISO8859-1, para UTF-8 as linhas vão ficar com UTF-8 após o ponto. Agora basta comentar as linhas que não queremos nesse arquivo. Rode:
# vi /etc/profile.d/lang.csh
E comente todas as linhas que não forem essas aí de cima. ;-)
Reinicie o computador para que as alterações tenham efeito.
Parabéns, seu Slackware já está localizado para
pt_BR!
Ganhando velocidade: Habilitando o kernel-generic
Para quem não sabe, tio
Pat (
Patrick Volkerding) distribui duas versões do kernel Linux no Slackware: o
kernel-huge e o
kernel-generic.
O kernel-huge é o padrão por questões de compatibilidade, pois ele traz todos os drivers empacotados com o Slackware compilados como
built-in, não como módulos. Isso permite que a inicialização reconheça uma pá de hardwares, mas faz com que a "pegada" de memória do kernel na RAM seja imensa, além de manter carregados módulos que não serão usados.
A solução para isso é habilitar o kernel-generic. Este kernel traz todos os drivers empacotados com o Slackware compilados como módulos, ou seja, configurados para serem carregados apenas se necessário. Isto significa que ele é mais rápido e mais adequado para o uso diário, embora um computador com 8 GB de RAM talvez não sinta a diferença. ;-)
Habilitar o kernel-generic não é uma questão de criar uma entrada no
lilo.conf apenas, é preciso criar um disco RAM de inicialização para então configurar o lilo.conf. Ao contrário da fama da distro, desde o Slack 13.0, existe uma ferramenta semiautomática (você vai entender o por quê do semiautomática mais pra frente) para fazer essa configuração!
Vamos começar. Para criar o disco RAM de inicialização para uso com o kernel-generic, você precisa, também, passar quais módulos são extremamente essenciais para a inicialização do sistema e, portanto, devem ser carregados no arranque como se fossem
built-in.
Do contrário, você não acessaria seu disco porque o módulo do
ext4, por exemplo, não estaria carregado. ;-)
Para gerar o disco RAM de inicialização corretamente, rode o comando:
# /usr/share/mkinitrd/mkinitrd_command_generator.sh
Você vai ter uma saída parecida com esta:
#
# mkinitrd_command_generator.sh revision 1.45
#
# This script will now make a recommendation about the command to use
# in case you require an initrd image to boot a kernel that does not
# have support for your storage or root filesystem built in
# (such as the Slackware 'generic' kernels').
# A suitable 'mkinitrd' command will be:
mkinitrd -c -k 3.2.29 -f ext4 -r /dev/sdb2 -m usb-storage:ehci-hcd:usbhid:ohci-hcd:mbcache:jbd2:ext4 -u -o /boot/initrd.gz
A última linha é a mais importante. A ferramenta é semiautomática porque ela não cria o disco RAM de inicialização, mas diz ao usuário qual é o comando que cria o tal disco RAM apropriado para o seu computador.
Portanto, tudo que você precisa fazer é copiar a última linha e executá-la como comando, certo?
Sim e não! Você pode copiar o comando tal como ele aparecer para você, mas existe o jeito do preguiçoso para isso! Rode o comando:
# /usr/share/mkinitrd/mkinitrd_command_generator.sh | grep mkinitrd | grep -v command | /bin/bash -
Este comando de preguiçoso já vai criar automaticamente o arquivo
/boot/initrd.gz, que é o disco RAM de inicialização que você precisa para usar o kernel-generic. Agora você precisa adicionar uma entrada no
LILO para o kernel-generic. NÃO exclua a entrada referente ao kernel-huge, pois caso alguma coisa dê errado (principalmente se você usar o método do preguiçoso ;-), você terá como inicializar o sistema e corrigir a caquinha.
Só que eu sou preguiçoso ao extremo, e ao invés de pensar como a entrada no "lilo.conf" tem que ficar, eu rodo o comando:
# /usr/share/mkinitrd/mkinitrd_command_generator.sh -l /boot/vmlinuz-generic-3.2.29
Obs.: Substitua
/boot/vmlinuz-generic-3.2.29 pelo arquivo correto do kernel-generic (que sempre vai ser /boot/vmlinuz-generic-algum número). Na dúvida, execute o comando que criou o disco RAM de inicialização, sem ser no modo preguiçoso, e veja qual é o número do parâmetro "-k" - este número tem que ser o mesmo do arquivo
vmlinuz-generic a ser usado.
A saída desse comando é nada mais, nada menos, do que as linhas que preciso adicionar ao
lilo.conf para habilitar o kernel-generic no boot. Vai ser algo parecido com isto aqui:
image = /boot/vmlinuz-generic-3.2.29
initrd = /boot/initrd.gz # add this line so that lilo sees initrd.gz
root = /dev/sda1
label = Slackware
read-only
Só que eu sou preguiçoso demais, e por isso mesmo, eu rodo aquele comando que me gerou estas linhas assim:
# /usr/share/mkinitrd/mkinitrd_command_generator.sh -l /boot/vmlinuz-generic-3.2.29 >> /etc/lilo.conf
Dessa maneira as linhas são "automagicamente" adicionadas ao arquivo
/etc/lilo.conf! Agora você precisa editar esse arquivo apenas para mudar a label do kernel-generic. Eu altero para Slack-Generic ou coisa assim, enquanto altero a entrada do kernel-huge (a pré-existente) para Slack-Huge.
Atualize seu LILO com:
# lilo
E reinicie seu computador, caso você já queira usar o kernel-generic.
Vamos ao próximo passo.