Hoje eu queria atualizar o kernel no meu sistema debian / testing de 2.6.32-5-686
para 3.9-1-686-pae
. Então eu instalei a imagem por sudo aptitude install linux-image-3.9.1-686-pae
(ou algo parecido). Então ele disse, eu preciso instalar alguns cabeçalhos, então eu fiz por sudo aptitude install linux-headers-3.9.1-686-pae
ou algo parecido. Agora meu sistema não inicializa corretamente. Ambos os kernels ainda estão instalados ou pelo menos eu posso escolher ambos no GRUB para carregar.
No entanto, eu ainda tenho o sistema aqui, ele simplesmente não inicializa. Eu tenho duas partições no meu disco: (1) sda1, que é minha partição de inicialização (sinalizador ainda está lá) e (2) sda2, no qual eu criei dois volumes virtuais usando lvm
: base-root
para /
e base-home
para home
. Consegui montar cada partição / volume em um sistema ativo em que estou (usando um pendrive).
Isto é o que está acontecendo durante a inicialização com qualquer um dos kernels instalados:
early console in decompress_kernel
Decompressing Linux ... Parsing ELF... done.
Booting the kernel.
Loading, please wait...
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdleay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /procmodules ls /dev)
ALERT! /dev/disk/by-uiid/<some_uuid> does not exist.
Dropping to a shell!
BusyBox...
Enter 'hel...
/bin/sh: can't access tty; job control turned off
O sistema espera / procura cerca de 30s após a mensagem "por favor aguarde ...".
Esta é a saída de cat /proc/cmdline
(ao tentar inicializar o novo kernel, para o kernel antigo, há uma mensagem análoga):
BOOT_IMAGE=/vmzlinuz-3.9.1-686-pae root=UUID=<someuuid>
Agora, esta é a saída de ls /dev/mapper/
:
control
Geralmente, também há entradas para base-root
e base-home
. Então, meu palpite é , que existe algum módulo do kernel lvm que é necessário para interpretar os volumes do lvm e não é carregado no kernel. Estranhamente, parece estar faltando no kernel olde também.
Esta é a saída de cat /proc/modules
ao inicializar o novo kernel:
usbhid 35908 0 - Live...
hid 64559 1 usbhid - ...
ohci_hcd 22150 0 - ...
dm_mod 577277 0 - ...
sd_mod 577277 - ...
crc_t10dif 12332 1 - ...
ahci 25000 0 - ...
libahci 22632 1 ahci - ...
thermal 13172 0 - ...
ata_generic 12450 - ...
thermal_sys 18359 thermal, ...
libata 126017 3 ahci, libahci,ata_generic, ...
uhci_hcd 22424 0 - ...
ehci_pcs 12432 - ...
e1000e 123671 0 - ...
ehci_hcd 3570 1 ehci_pci -
usbcore 110217 5 usbhis,ohci_hcd,uhci_hcd,ehci_pci,ehci_hcd, ...
scsi_mod 135333 2 sd_mod,esndld, ...
ptp 131711 e1000e, ...
usb_common 12338 1 usbcore, ...
pps_core 13071 1 ptp, ...
(Eu poderia preencher o "..." mais tarde.)
De qualquer forma, o que eu quero fazer é, obviamente, inicializar corretamente em meu sistema debian instalado em base-root
.
Minha estratégia até agora é:
- anote as mensagens de erro retornadas durante a inicialização (e poste-as aqui)
- pesquise no Google, tente entender o erro
Por enquanto, tenho estas perguntas:
- O que esse erro significa? O que é / proc / cmdline para? Como posso alterar seu conteúdo?
- Quais módulos / dispositivos devo instalar? Quais módulos estão faltando e devem ser carregados?
- Como posso dizer ao meu kernel para carregar algum outro módulo.
Editar: pesquisando as mensagens de erro, eu encontrei isso , parece relacionado.