Well, hoje cheguei em casa, após aproveitar esposa e filha ( hoje /* dia 6 de outubro */ foi dia do meu aniversário ) e resolvi colocar o Slackão em dia com as atualizações.
Por sorte ( ou azar ) o Patrick estava em um de seus dias bons e encheu o Changelog do -current de coisitas para se baixar. Como bom psicótico, lá vai o Ataliba e baixa tudo.
O Slackpkg fez a pergunta de sempre e eu pedi para ele passar a usar as configs novas. Por algum motivo bizarro ao invés de responder para ele usar as configs novas, eu simplesmente mandei ele utilizar os arquivos antigos. Resumo, quando tentei reiniciar a máquina, n problemas começaram a acontecer.
Ele não achava os devices do meu segundo hd, não carregava direito os filesystems do meu hd com os dados principais e por aí vai ...
Resumo, o caos tomou conta do meu Slackão.
Desespero a parte, tomei ar e recitei o mantra do -current feliz, e comecei o processo de recuperação da máquina. Com um Live cd, bootei e passei o fsck nos filesystems para ver se havia alguma coisa. Mexi em alguns scripts de inicialização para ver se havia algo que podia fazer.
Comentei os filesytems do meu segundo hd no fstab e tentei reiniciar de novo. Resumo, já estava dando mala quando uma luz me apareceu.
Corri em um browser e fui direto ao Changelog do Slackão. Lá procurei por alguma coisa que pudesse me dar uma luz, e não foi que eu achei ?
No dia 5 de outubro, ontem, o udev havia sido atualizado :
a/udev-128-i486-1.tgz: Upgraded to udev-128.
E adivinha quem faz o mapeamento dos devices nos Linuxes atuais ?
Com a paciência e otimismo recuperados, corri para o diretório /etc/rc.d e dei o famoso :
bash-3.1# ls *udev*
rc.udev rc.udev.new rc.udev.orig
Com
isto, descobri que havia um arquivo do rc.udev novo. Como o meu Linux
estava gritando que não achava o arquivo /sbin/udevtrigger , tentei
achar o mesmo no script de inicialização.
Ele estava lá, mas se eu desse um ls no arquivo no diretório, ele não existia :
bash-3.1# ls /sbin/udevtrigger
ls: impossível acessar /sbin/udevtrigger: Arquivo ou diretório não encontrado
Resumo, havia algo errado. Editei o arquivo rc.udev.new procurando por trigger, e achei o porque meu Slackão não funcionava de jeito nenhum.
O Udevtrigger que era chamado assim :
/sbin/udevtrigger $OPT && /sbin/udevsettle --timeout=120
Passou a ser chamado via outro binário :
/sbin/udevadm trigger $OPT && /sbin/udevadm settle --timeout=120
O que causava no Slackão um problema de não achar os devices quando ele era iniciado, travando toda a inicialização.
Resumo, foi só dar este cp aqui e tudo voltou a funcionar no outro boot :
# cp rc.udev.new rc.udev
Que foi chato, foi. Mas serviu para eu pelo menos agora ter um pouco mais de cuidado quando for atualizar meu Linux. Olhar os arquivos de inicialização e ver se eles estão ok, é o primeiro passo antes de desesperar e achar que eu iria ter, depois de tanto tempo com esta Slackware aqui instalado, que instalar tudo do zero ... se bem, que não seria má idéia :-)
Como dizem, em casa de ferreiro, espeto é de pau. Em casa de SysAdmin ... documentação às vezes dá um tchauzinho e ri quando estas coisas acontecem hahahahaha