grob probleme pour reinstaller un kernel-image sur un debian chrooté - Installation - Linux et OS Alternatifs
Marsh Posté le 10-08-2006 à 18:29:22
un petit de MAKEDEV ?
Marsh Posté le 10-08-2006 à 18:36:20
Salut,
J'ai fait le MAKEDEV, mais ca ne change rien...
/dev/mapper/VG0-SLASH existe pourtant, et il est aussi sur /dev/VG0/SLASH
J'ai essayé de changer dans le mkinitrd.conf, sur la ligne ROOT, de mettre:
ROOT= /dev/VG0/SLASH
mais tjs la même erreur...
Une idée?
Merci
A+
Marsh Posté le 10-08-2006 à 18:39:51
non désolé
Marsh Posté le 10-08-2006 à 20:09:41
Re,
En faisant sur la debian chroot, un:
/etc/init.d/lvm start, ca a l'air d'avoir remarché, j'ai pu mettre un initrd, mais maintenant, ils me mettent ca :-(
Uniable to find volume group VG0
pivot_root: no such file or directory
/sbin/init: 432: cannot open /dev/console
kernel panic: attempt to kill init
Qu'est ce que je peux faire :-(?
Merci.
A+
Marsh Posté le 10-08-2006 à 20:11:20
tu as essayé de remettre un hotplug ?
Marsh Posté le 10-08-2006 à 20:29:38
Ouep,
J'ai viré le udev, du backports qui foutait le bordel depuis le debian chrooté.
Je viens de m'apercevoir à lorigine que j'avais kernel-image-2.6.8-2-386 et là j'avais remis le kernel-image-2.6.8-3-686...
On sait jamais je v essayer de remettre le même, et je te tiens au courant.
SInon, quand je suis sur ma debian chrooté, avec un vgchanges -ay, j'accède à tous les LVs, de mon VG.
un vgdisplay marche nikel aussi....
PS: je c pas pkoi mais le dowload, est super super lent en chroot...:-(
Merci :-)
Marsh Posté le 10-08-2006 à 20:32:57
Salut,
thierry_b a écrit : mount -t ext3 -rw /dev/VG0-SLASH /mnt/debian je chroote: chroot /mnt/debian Et de là, quand je veux installer le kernel-image avec aptitude, il me dit: /usr/bin/mkinird: /dev/mapper/VG0-SLASH: unknown root device |
C'est pas une histoire de ? :
mount -t ext3 -rw /dev/VG0-SLASH /mnt/debian
mount -o bind /dev /mnt/debian/dev
mount -t proc proc /mnt/debian/dev/proc
puis
chroot /mnt/debian
Marsh Posté le 10-08-2006 à 20:38:36
J'essaierai de refaire cela en plus, mais apparemment, en faisant:
/etc/init.d/lvm start
ca c bien passé par la suite (il a accepté de creer l'initrd), et mnt je suis passé au second message d'erreur:
"Uniable to find volume group VG0
pivot_root: no such file or directory
/sbin/init: 432: cannot open /dev/console
kernel panic: attempt to kill init "
Merci :-)
PS: je vais quand même essayyé de déchrooter, et de faire tes manips, et d'essayer de recreer l'initrd...
Marsh Posté le 10-08-2006 à 21:20:29
Re,
bon ca fait tjs pareil :-(
sauf que j'avais rajouté:
mount -t ext3 -rw /dev/md1 /mnt/boot pour le /boot
Arf, pourtant du chroot, tout se passe nikel:
-------------------------------------------------------------------
Knoppix# aptitude reinstall kernel-image-2.6.8-2-386
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
The following packages will be REINSTALLED:
kernel-image-2.6.8-2-386
0 packages upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0B/14.1MB of archives. After unpacking 0B will be used.
Writing extended state information... Done
(Reading database ... 65447 files and directories currently installed.)
Preparing to replace kernel-image-2.6.8-2-386 2.6.8-16sarge1 (using .../kernel-image-2.6.8-2-386_2.6.8-16sarge1_i386.deb) ...
The directory /lib/modules/2.6.8-2-386 still exists. Continuing as directed.
Unpacking replacement kernel-image-2.6.8-2-386 ...
Searching for GRUB installation directory ... found: /boot/grub .
Testing for an existing GRUB menu.list file... found: /boot/grub/menu.lst .
Searching for splash image... none found, skipping...
Found kernel: /vmlinuz-2.6.16.060810
Found kernel: /vmlinuz-2.6.8-2-386
Updating /boot/grub/menu.lst ... done
Setting up kernel-image-2.6.8-2-386 (2.6.8-16sarge1) ...
File descriptor 3 left open
File descriptor 4 left open
File descriptor 5 left open
File descriptor 6 left open
File descriptor 7 left open
Finding all volume groups
Finding volume group "VG0"
Not touching initrd symlinks since we are being reinstalled (2.6.8-16sarge1)
Not updating image symbolic links since we are being updated (2.6.8-16sarge1)
Searching for GRUB installation directory ... found: /boot/grub .
Testing for an existing GRUB menu.list file... found: /boot/grub/menu.lst .
Searching for splash image... none found, skipping...
Found kernel: /vmlinuz-2.6.16.060810
Found kernel: /vmlinuz-2.6.8-2-386
Updating /boot/grub/menu.lst ... done
Reading Package Lists... Done
Building Dependency Tree
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
Knoppix#
noppix# vgdisplay
--- Volume group ---
VG Name VG0
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 24
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 8
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size 296.98 GB
PE Size 4.00 MB
Total PE 76026
Alloc PE / Size 46036 / 179.83 GB
Free PE / Size 29990 / 117.15 GB
VG UUID We91Yb-uwts-w2Pv-VDeI-qgdz-LrLr-ey4Vks
------------------------------------------------------
Merci.
Marsh Posté le 10-08-2006 à 21:29:15
alors c'est :
mount -t ext3 -rw /dev/VG0-SLASH /mnt/debian
mount -t ext3 -rw /dev/md1 /mnt/debian/boot
mount -o bind /dev /mnt/debian/dev
mount -t proc proc /mnt/debian/dev/proc
puis
chroot /mnt/debian
Marsh Posté le 10-08-2006 à 21:42:10
bah, tu avais écrit :
mount -t ext3 -rw /dev/md1 /mnt/boot pour le /boot
Marsh Posté le 10-08-2006 à 22:01:27
Non, ca change rien du tout....:-(
Je c pas si le cd de debian pourrait me retablir ca :-(?
Merci
A+
Marsh Posté le 11-08-2006 à 00:01:37
J'aurai jamais du faire ce test et virer le kernel-image d'origine de cette debian sarge...:-(
Le pire c'est que tout y est....(tous les vgs accessibles en chroot)
Marsh Posté le 11-08-2006 à 00:13:38
juste apres que je choisis mon noyau 2.6.8, iil charge un tout petit peu, et hop, il dit qu'il ne peut pas trouver VG0 et y'a le trallaa avec pivot_root...:-(
Marsh Posté le 11-08-2006 à 00:32:48
comment tu boot dans grub ?, moi j'ai ça :
title Ubuntu, kernel 2.6.15-26-k7
root (hd0,0)
kernel /vmlinuz-2.6.15-26-k7 root=/dev/mapper/gv0-root ro quiet splash vga=791
initrd /initrd.img-2.6.15-26-k7
pas de raid, /boot en partoche normale et le reste en lvm2
sinon peut être qu'il te manque un module (raid?) quand tu fais ton initrd
sous ubuntu, on n'utilise plus mkinitrd mais mkinitramfs :
cat /etc/mkinitramfs/modules
# List of modules that you want to include in your initramfs.
#
# Syntax: module_name [args ...]
#
#
# This might be good choices:
#
# raid1
# sd_mod
désormais, j'utilise evms pour tout ça car c'est bien pratique mais j'ai peu d'experience raid
evmsn
et tu convertis les partition au format evms
pour ça, le mieux est de booter avec un livecd xubuntu car tout y est evms,lvm2,raid (je pense) ...
et ça me donne
kernel /vmlinuz-2.6.15-26-k7 root=/dev/evms/root ro quiet splash
je ne sais pas si le noyau debian est patché avec evms par défaut, ubuntu oui
Marsh Posté le 11-08-2006 à 00:47:48
Re,
Je peux pas faire de copier coller, mais je v resumer.
title
root (hd0,1)
kernel /vmlinux-2.6.8... root=/dev/mapper/VG0-SLASH ro
initrd /initrd.img-2.6.8-2.386
Moi j'ai du raid pour /dev/md0 (c pour la swap), /dev/md1 (c /boot) et enfin /dev/md2 c de la lvm.
dans /etc/mkinitrd/modules, tout est commenté...
Voila.
Maais j'avoue que j'aimerais ne pas chamboouler ma config, et faire que ca reboote comme avant, sans installer de nouvelles choses....
Merci
Marsh Posté le 11-08-2006 à 01:01:46
ta essayé un initrd en rajoutant des modules raidquelquechose qui vont bien dans /etc/mkinitrd/modules ?
Marsh Posté le 11-08-2006 à 02:11:49
ouais,
mais rien...
bizarre, en plus un pote à mooi ave cla mm install, il a rien aussi dnas son modules, mais si ca se trouve l'installeur de debian sarge avait deja généré le bon initrd....
Avec son initrd, je v deja plus loin, mais vu que les conf sont differentes ca marche pas, donc c'esyt sure que ca vient de là...
Mnt, fo trouver quoi faire :-(
Marsh Posté le 11-08-2006 à 09:40:54
Essaie yaird pour générer ton initrd ... j'avais eu des pbs assez semblables.
Marsh Posté le 11-08-2006 à 09:44:20
euh ouais, mais le truc c'est que je suis habitué à grub...lol.
Y'a moyen de juste générer initrd avec yaird et garder grub?
N'hesite pas à m'expliquer plus en detail si ca ne te derange pas.
Merci.
PS En attendant au cas où, je sauvegarde tout le contenu de mes lvs, vu qu'ils sont acceisslbes depus le chroot.
Marsh Posté le 11-08-2006 à 09:52:10
En fait yaird est juste une alternative à mkinitrd, il n'y a pas de rapport avec grub.
J'avais eu un pb similaire en installant une debian : lors du reboot j'avais des pbs avec lvm (pivot_root : no such file or directory ...). J'ai donc installé yaird (merci google et 3h de recherches), réinstallé le kernel et ça a marché.
Marsh Posté le 11-08-2006 à 10:42:37
Ha oki,
mais le truc c que j'aimerais conserver grub, j'ai pas envie de me lancer comme ca dans nu noveau truc :-(.
Merci qd mm.
Marsh Posté le 12-08-2006 à 01:54:00
Bon,
j'ai reinstallé lol, ca m'a pris 9h au total.
Heuresement, en reinstallant, il a detecté mes Lvs, et donc j'ai reformaté que le LV de / et celui de /home.
Maintenant, je ne touche plus aux initrd lol...enfin je ferai tjs en sorte de garder un noyau nikel, pq la génération de l'initrd dans un env chrooté, avec lvm et/ou => bof lol.
Merci pour tout en tout cas :-)
Marsh Posté le 12-08-2006 à 02:27:24
Pour info au passage : les noyaux Debian sont patchés evms.
Sinon autre remarque : pour des systèmes avec des configs type 'serveur' au niveau des disques (RAID, lvm2), perso j'éviterai de recourir au initrd (inutile d'en préciser les raisons à présent, je pense ) et par extension au noyau par défaut.
L'idéal pour ce type de config (et plus particulièrement un serveur), c'est de se faire son propre noyau à partir des sources patchées Debian en compilant en dur tous les modules nécessaires (et donc plus besoin de ramdisk) et en virant carrément le support pour les modules si possible (ça apporte un petit plus au niveau de la sécu, par la même occasion autant faire chier au maximum les pirates en herbe ).
Marsh Posté le 14-08-2006 à 10:52:07
Re,
Euh bah le truc c'est que même si y'a de l'initrd actuellement, ils ne precsent pas du tout les modules chargés dans cet initrd justement.
C'est ce que je trouve bizarre.
$ cat /etc/mkinitrd/modules
# /etc/mkinitrd/modules: Kernel modules to load for initrd.
#
# This file should contain the names of kernel modules and their arguments
# (if any) that are needed to mount the root file system, one per line.
# Comments begin with a `#', and everything on the line after them are ignored.
#
# You must run mkinitrd(8) to effect this change.
#
# Examples:
#
# ext2
# wd io=0x300
Normalement, il ne devrait pas rajouter ces fameux modules dans ce fichier?
Par contre, depuis que j'ai réinstallé, je remarque que si j'installe un nouveau noyau comme je l'ai fait (en faisant gaffe cettefois ci de garder l'ancien au cas où lol)
thierry@serveurP4:~$ dpkg -l|grep "kernel-image"
ii kernel-image-2 2.6.8-16sarge1 Linux kernel image for version 2.6.8 on 386.
ii kernel-image-2 2.6.8-16sarge4 Linux kernel image for version 2.6.8 on PPro
(entre parenthèse, c'est saoulant ce bug d'affichage sur la sarge lol)
il m'a crére dynamiquement un autre initrd et je peux booter sur celui-ci sans pb
ls -l /boot/initrd*
-rw-r--r-- 1 root root 4829184 2006-08-11 15:17 /boot/initrd.img-2.6.8-2-386
-rw-r--r-- 1 root root 5459968 2006-08-11 19:08 /boot/initrd.img-2.6.8-3-686
On dirait donc que c'est la génération d'un initrd depuis un chroot qui foire...
Voila :-)
Marsh Posté le 14-08-2006 à 13:57:35
En ce momment, je tente de démarer une machine sans disque via sshfs (j'y suis presque !) et j'ai donc décortiqué mkinitramfs : je construit mon initrd dans chroot sans problème.
#
# initramfs.conf
#
# BUSYBOX: [ y | n ]
#
# Use busybox if available. You MUST use the -static version
#
BUSYBOX=y
#
# BOOT: [ local | nfs ]
#
# local - Boot off of local media (harddrive, USB stick).
#
# nfs - Boot using an NFS drive as the root of the drive.
#
BOOT=sshfs
#
# MODULES: [ most | netboot | dep | list ]
#
# most - Add all framebuffer, acpi, filesystem, and harddrive drivers.
#
# netboot - Add the base modules, network modules, but skip block devices.
#
# dep - Try and guess which modules to load.
#
# list - Only include modules from the 'additional modules' list
#
MODULES=netboot
# Modules that we always add to the initramfs
auto_add_modules()
{
case "$1" in
base)
for x in md raid0 raid1 raid5 raid6 raid10 ehci-hcd ohci-hcd uhci-hcd usbhid usb-storage ext2 ext3 isofs jfs nfs reiserfs xfs af_packet dm_mod; do
manual_add_modules ${x}
done
;;
net)
for x in 3c59x 8139cp 8139too 8390 b44 bmac bnx2 defxx dl2k e1000 e100 epic100 eql fealnx famachi forcedeth hp100 mace mv643xx_eth natsemi ne2k-pci netconsole ns83820 pcnet32 r8169 s2io sis900 skge slhc starfire sundance sungem sungem_phy sunhme tg3 tlan de2104x de4x5 dmfe tulip winbond-840 xircom_cb xircom_tulip_cb typhon via-rhine via-velocity yellowfin; do
manual_add_modules ${x}
done
;;
ide)
for x in ide-cd ide-disk ide-generic aec62xx alim15x3 amd74xx atiixp atuuxo cmd64x cs5520 cs5530 cy82c693 generic hpt34x hpt366 ns87415 opti621 pdc202xx_new pdc202xx_old piix rz1000 sc1200 serverworks siimage sis5513 slc82c105 slc90e66 triflex trm290 via82cxxx; do
manual_add_modules ${x}
done
;;
scsi)
for x in 3w-9xxx 3w-xxxx a100u2x aacraid advansys ahci aic79xx aic7xxx arcmsr ata_piix atari_scsi atp870u BusLogic cciss ch cpqarray dc395x dmx3191d dpt_i2o eata fdomain gdth initio ipr ips isp1020 lpfc max_scsi mac53c94 megaraid megaraid_mbox megaraid_mm mesh mptfc mptsas mptspi nsp32 ohci1394 osst qla1280 qla2100 qla2200 qla2300 qla2322 qla2xxx qla6312 qlogicfas408 qlogicfc sata_promise sata_nv sata_qstor sata_sil sata_sis sata_svw sata_sx4 sata_uli sata_via sata_vsc sbp2 scsi_mod scsi_transport_fc scsi_transport_iscsi scsi_transport_spi sd_mod sym53c8xx tmscsim; do
manual_add_modules ${x}
done
;;
i2o)
for x in i2o_block; do
manual_add_modules ${x}
done
;;
*)
auto_add_modules base
auto_add_modules net
auto_add_modules ide
auto_add_modules scsi
auto_add_modules i2o
;;
esac
}
mkiniramfs copie dans l'initrd des executable, des modules, des librairies ...
il semblerait que se soit la différence udev/hotplug qui ait mis le wouaille ?
#!/bin/sh -e
# initramfs nfs-top script for udev
PREREQ=""
# Output pre-requisites
prereqs()
{
echo "$PREREQ"
}
case "$1" in
prereqs)
prereqs
exit 0
;;
esac
# Each call to udevplug can take up to three minutes
if [ -x /sbin/usplash_write ]; then
/sbin/usplash_write "TIMEOUT 360"
trap "/sbin/usplash_write 'TIMEOUT 15'" 0
fi
# All we need to do is load drivers for any network card on the PCI# bus, and hopefully we'll have one that can be used to boot# afterwards; load them in PCI bus order to try and produce some kind# of sanity.
/sbin/udevplug -s -Bpci -Iclass=0x02*
# Finally we need to load drivers for bridges (0x06),
# docking stations (0x0a), input devices (0x09), serial devices (0x0c)
# and "intelligent" devices (0x0e). Just in case there's a keyboard
# on the end and things go wrong.
/sbin/udevplug -Bpci -Iclass=0x0[69ace]*
je pense que pour pouvoir mettre ton noyau du backport + udev, tu avais vraiment besoin de apt-get install initramfs-tools !
Marsh Posté le 15-08-2006 à 00:36:12
Oui possible.
La, j'ai mis le backport 2.6.14, il marche nikel avec hotplus et il m'a installé aussi initramfs-tools et yaird, et il m'a généré un initrd valide tout seul.
Je laisse comme c pour l'instant, car ce qui m'interessait le plus c'est d'avoir le module w83627ehf pour gérer la temp de ma CM et CPU avec lm-sensors, et il y est apparemment depuis le 2.6.14 :-)
Euh, sinon pour mon pb, ce qui etait bizarre c'est que justement même en voulant remettre l'ancien noyau (kernel-image-2.6.8) depuis le chroot, ca marchait pas.
A l'install du 2.6.14, il m'a lancé la comande tout seul donc je c pas trop la syntaxe qu'il a utilisé, mais est-ce que qd on a ce paquet d'installer il est capable de construire un initrd, pour n'importe quel noyau comme le 2.6.8 d'origine?
C'est quoi ta syntaxe que tu utilises par curiosité ? :-)
Merci
A+
Marsh Posté le 15-08-2006 à 15:28:27
mkinitramfs -o /boot/initrd.img-2.6.17.8-depx 2.6.17.8-depx
l'initrd est construite automatiquement à l'installation d'un noyau et lors d'un dpkg-reconfigure ton noyau
il est possible que cela utilise plutôt update-initramfs
Marsh Posté le 10-08-2006 à 18:03:53
Bonjour,
Je voudrais me remettre un kernel-image sur ma debian sarge qui ne boote plus (à cause d'un kernel 2.6.16 de backports et en voulant mettre le udev de backports il m'a viré hotplug + kernel-image-2.6.8 de debian sarge donc plus moyen de booter sur le bon noyau)
Le soucis, c'est que j'utilise du raid + lvm2...
J'ai reussi avec mdadm à trouver toutes mes partoches raid, et ensuite avec vgchanges, à faire reconnaitre mon Vg, et mes LVS.
J'ai monté mon LV qui contient la partition /:
mount -t ext3 -rw /dev/VG0-SLASH /mnt/debian
je chroote:
chroot /mnt/debian
Et de là, quand je veux installer le kernel-image avec aptitude, il me dit:
/usr/bin/mkinird: /dev/mapper/VG0-SLASH: unknown root device
Je sais vraiment pas quoi faire....je suis bloqué :-( et je n'ai plus mon noyau fonctionnel :-(
Merci :-)
A+
Message édité par thierry_b le 10-08-2006 à 18:07:41