Je suppose donc que je viens de tout gâcher sur mon serveur Ubuntu.
J'ai installé un disque dur de 500 Go, je l'ai formaté avec ext4, puis je voulais monter de manière statique via l'édition/etc/fstab et l'UUID.
Pour une raison quelconque, j'ai en quelque sorte supprimé le "-" dans l'UUID car je ne sais pas pourquoi. Donc, après avoir redémarré maintenant, j'obtiens ce qui suit:
"Gave up waiting for root device. Common Problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay = (did the system wait long enough?)
- Check root = (did the system wait for the right device?)
- Missing module (cat /proc/modules; ls /dev)
ALERT! /dev/mapper/server--vg-root does not exist. Dropping to Shell!"
Ensuite, je reçois un BusyBox Shell très limité.
Ce que j’ai essayé jusqu’à présent, c’est de démarrer avec un ordinateur de bureau USB Ubuntu en direct et de monter le lecteur de démarrage, mais lorsqu’on y accède, il n’ya que les versions du noyau et grub et quelques autres éléments, mais pas les fichiers racine "/ etc,/usr,/à la maison, etc. "sinon, j'aurais simplement annulé les modifications apportées à fstab et essayé, mais je n'y parviens même pas.
edit (sortie de fdisk -l
):
Disk /dev/sdb: 320.1 GB, 320072933376 bytes
81 heads, 63 sectors/track, 122504 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00094364
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 625142447 312570200 83 Linux
Dans initramfs
, tapez:
#/sbin/lvm vgchange -a y
#vgchange -a y
#exit
Si vous ne parvenez pas à résoudre le problème, tapez ceci:
ls /dev/mapper
Maintenant, vous devriez avoir trouvé la racine (comme /dev/vgname/lvname
).
reboot
Et puis sélectionnez un noyau à l'écran et sélectionnez e
pour éditer et coller une valeur racine (comme /dev/vgname/lvname
) à:
/boot/vmlinuxxxxx root=uuid/dev/xxx.
Enfin, appuyez sur Ctrl+X pour démarrer.
Si le problème se répète lors du redémarrage du serveur
aller à
#/boot/grub/grub.cfg
à/vm/vmlinuz root = écris ton chemin complet
si le problème n'est pas résolu, essayez de réparer initramfs comme ci-dessous
1.Allez au terminal du serveur
# Sudo rmmod floppy
#echo "blacklist floppy" | Sudo tee /etc/modprobe.d/blacklis-floppy.conf
#dpkg-reconfigure initramfs-tools
#update-initramfs -u
#update-grub
#reboot
Exécuter ceci
#/etc/initramfs-tools/scripts/local-top/forcelvm
avec le contenu suivant:
#!/bin/sh
PREREQ=""
prereqs()
{
echo "$PREREQ"
}
case $1 in
prereqs)
prereqs
exit 0
;;
esac
. /scripts/functions
lvm vgchange -ay
Alors fais
# chmod +x `/etc/initramfs-tools/scripts/local-top/forcelvm`
# update-initramfs -u -k all
faire une sauvegarde de lvm2
#apt-get install lvm2
#cp /usr/share/initramfs-tools/scripts/local-top/lvm2 /tmp
Éditer lvm2
#vi /usr/share/initramfs-tools/scripts/local-top/lvm2
write Between modprobe -q dm-mod et activate_vg "$ ROOT" ajoutez cette ligne pour initialiser votre lvm:
lvm vgchange -ayactivate_vg "$ ROOT" si vous ne trouvez pas cette ligne
écrire en dessous de deux lignes à la fin du fichier au-dessus de la sortie 0
#lvm vgchange -ayactivate_vg "$ROOT"
#activate_vg="$ROOT"
save the file
ensuite
#update-initramfs -u
#update-grub
#reboot
Suivez les étapes pour monter des partitions LVM:
En session live, ouvre un terminal
Presse Ctrl+Alt+T
Sudo fdisk -l
Ceci liste la table de partition du système et cela ressemble à ceci:
Device Boot Start End Blocks Id System
/dev/sda1* 1 4864 39070048+ 83 Linux
/dev/sda2 4865 6691 14675377+ 83 LVM2_member ...
L'étape suivante consistait à accéder à la partition/dev/sda2. C'est une partition de LVM.
Pour installer les outils requis, exécutez la commande suivante.
Sudo apt-get update
Sudo apt-get install lvm2
Une fois que vous avez terminé avec cette exécution pvs:
Sudo pvs
Ceci listera les groupes de volumes auxquels notre volume physique/dev/sda2 a appartenu. Ce serait de la forme
PV VG Fmt Attr PSize PFree /dev/sda2 VolGroup01 lvm2 a- 148.94G 32.00M
Le champ VG: indique le groupe de volumes.
La sortie ci-dessus est juste un exemple, montrant que nous sommes concernés par le groupe de volumes "VolGroup01".
L'étape suivante consiste à répertorier les informations sur ce groupe de volumes:
Sudo lvdisplay /dev/VolGroup01
Il y aura beaucoup de sorties, mais celui qui nous intéresse est LV Name. Cela ressemblera à ceci:
LV Name /dev/VolGroup01/LogVol00
En supposant que celle-ci soit la partition que nous devons monter, utilisez simplement la méthode habituelle pour la monter:
Sudo mount /dev/VolGroup01/LogVol00 /mnt
Vous pouvez maintenant trouver les données que vous recherchiez dans le dossier /mnt
.