Pb au démarrage d'une machine virtualisée

ganjaman-echo Messages postés 14 Date d'inscription   Statut Membre Dernière intervention   -  
 gm -
Bonjour,

J'ai récemment virtualisé une machine (Serveur) utilisant Centreon sur CentOS 5. C'est un serveur de supervision utilisant Nagios.
J'ai réussi à effectuer la migration P2V (physique -> virtuel) mais au démarrage, j'obtiens le message d'erreur suivant : http://www.hostingpics.net/viewer.php?id=758218Messderreur.png
J'ai trouvé sur le site de VMware un lien permettant (a priori) de résoudre ce problème : http://translate.google.com/translate?hl=fr&prev=/search%3Fq%3Dswitch_root%2B:%2Bbad%2Bnewroot%2B%2B/sysroot%26hl%3Dfr%26client%3Dfirefox-a%26hs%3DAen%26rls%3Dorg.mozilla:fr:official%26prmd%3Divns&rurl=translate.google.fr&sl=en&u=http://communities.vmware.com/thread/325984%3Ftstart%3D0
Seulement voilà, je n'arrive pas à monter les répertoires /dev, /sys et /proc. J'obtiens un message d'erreur : "mount: /dev is not a block device" (ou "n'est pas un périphérique de type bloc" en français).
Donc voilà je suis actuellement bloqué et je viens demander de l'aide sur ce forum en espérant trouver une solution auprès de vous.
Merci.


A voir également:

2 réponses

gm
 
Bonjour,

Mon proxy bloque tes liens, je te réponds au jugé.
Il faut utiliser les lignes suivantes :

mount -t dev dev /dev
mount -t sysfs sys /sys
mount -t proc proc /proc
0
ganjaman-echo Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai essayé cette méthode (avec -t devpts et non dev car dev n'est pas reconnu comme étant un type).
Mais après, sur le tuto (que tu n'as pas pu lire malheureusement), il faut changer le répertoire root (chroot /mnt/root (mon répertoire où je monte tout)).
Et c'est là qu'apparaît une autre erreur : "bash: /dev/null: Permission denied" ... alors que je suis bien entendu loguer en root.
Peut-être (certainement même) j'ai loupé quelque chose mais je ne vois pas quoi.
0
gm
 
Tu as monté le devfs dans /mnt/root/dev ?
0
ganjaman-echo Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
 
Oui j'ai monté le /dev (en précisant -t devpts vu que -t dev n'existe pas) dans /mnt/root/dev (comme indiqué dans le tuto).
0
gm
 
Je ne vois pas non plus. A part des variables d'environnement manquantes qui feraient que dans un script quelconque, le shell croie qu'il doive exécuter /dev/null... oui je sais c'est capilotracté.
0
ganjaman-echo Messages postés 14 Date d'inscription   Statut Membre Dernière intervention  
 
Je sais que ça ne va pas apporter de réponse vraiment satisfaisante à mon problème mais j'ai peut-être trouvé une solution pour le contourner.
Il suffi(rai)t de démarrer à partir d'un CD bootable de même distribution que la machine virtualisée (ici Linux CentOS) et choisir l'option Réparer. Ensuite ça devrait fonctionner (a priori) mais pour l'instant je ne sais pas trop car j'ai installé une version 32 bits alors que la machine virtualisée est en 64 bits. Du coup problème. Mais ça c'est pas trop grave, il faudrait juste que j'arrive à me procurer la version 64 bits de CentOS 5, chose que pour l'instant je n'ai pas réussi à faire.

En tout cas merci gm pour tes réponses.
0
gm
 
Je te poste ici la fin d'un article de mon cru que j'avais écrit suite au passage d'un serveur dédié de partitions physiques à LVM (remarque le --bind sur le mount de /dev):


Modification du système pour lui permettre de démarrer

A partir de ce moment, toutes nos données sont transférées sur la LVM, et toutes les partitions ont été transformées en PV. Il reste à modifier certains fichiers indiquant au noyau où trouver les différents éléments du système.

Pour cela, nous allons travailler dans un chroot monté à la racine du système migré.
mount --bind /dev /mnt/lv_root/dev
mount -t proc proc /mnt/lv_root/proc
mount -t sysfs sysfs /mnt/lv_root/sys
mount /dev/sda1 /mnt/lv_root/boot
chroot /mnt/lv_root


[...]



SELinux

Puisque nous avons déplacé des fichiers d'un filesystem à un autre sans faire particulièrement attention à leurs attributs étendus, SELinux peut refuser des exécutions. Pour éviter ce problème, il faut forcer un réétiquetage au reboot :
touch /.autorelabel


Fin de la procédure et reboot

Le système est normalement prêt à redémarrer. Vous n'avez plus qu'à tout démonter, et redémarrer la machine sans CD :
exit
umount /mnt/lv_root/boot
umount /mnt/lv_root/sys
umount /mnt/lv_root/proc
umount /mnt/lv_root/dev
umount /mnt/lv_root
reboot

A son reboot, le système procède à un réétiquetage des fichiers pour SELinux (ce qui peut être très long), puis fonctionne comme si de rien n'était.
0