Так что, я думаю, я только что испортил свой сервер Ubuntu.
Я установил жесткий диск объемом 500 ГБ, отформатировал его с помощью ext4, а затем хотел статически смонтировать его, отредактировав / etc / fstab и UUID.
По какой-то причине я как-то удалил «-» в UUID, потому что я не знаю почему. Поэтому после перезагрузки я получаю следующее:
"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!"
Затем я получаю очень ограниченную оболочку BusyBox.
То, что я до сих пор пробовал, это загрузка с рабочего стола USB Ubuntu в режиме реального времени и монтирование загрузочного диска, но при доступе к нему есть только версии ядра и grub и некоторые другие вещи, но не корневые файлы »/ etc, / usr, / home и т. д. "В противном случае я просто отменил бы изменения в fstab и попытался, но я даже не добился этого.
редактировать (вывод 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
Выполните шаги для монтирования lvm разделов:
На живой сессии, откройте Нажатие терминала
Ctrl + Высокий звук + T
и работайте:sudo fdisk -l
Это перечисляет таблицу разделов системы, и она выглядела примерно так:
Device Boot Start End Blocks Id System
/dev/sda1* 1 4864 39070048+ 83 Linux
/dev/sda2 4865 6691 14675377+ 83 LVM2_member ...
следующий шаг должен был получить доступ к/dev/sda2 разделу. Это - lvm раздел.
для установки необходимых инструментов, выполните следующую команду.
sudo apt-get update
sudo apt-get install lvm2
, После того как Вы сделаны с этим выполнением pvs:
sudo pvs
Это перечислит группы объема, которым принадлежал наш физический том/dev/sda2. Это имело бы форму
PV VG Fmt Attr PSize PFree /dev/sda2 VolGroup01 lvm2 a- 148.94G 32.00M
поле VG: показывает группу Объема.
вышеупомянутый вывод является просто примером, показывая, что мы обеспокоены группой "VolGroup01".
Объема, следующий шаг должен перечислить информацию об этой группе объема:
sudo lvdisplay /dev/VolGroup01
Это бросит набор ouput, но тем, в котором мы обеспокоены, является Имя LV. Это будет выглядеть примерно так:
LV Name /dev/VolGroup01/LogVol00
Предположение, что выше каждый - раздел, который мы должны смонтировать, просто используйте обычный метод для монтирования его:
sudo mount /dev/VolGroup01/LogVol00 /mnt
Теперь, Вы можете для нахождения данных, которые Вы искали в /mnt
папка.
В initramfs
, тип:
#/sbin/lvm vgchange -a y
#vgchange -a y
#exit
Если Вы не можете решить проблему, введите это:
ls /dev/mapper
Теперь, необходимо было найти корень (как /dev/vgname/lvname
).
reboot
И затем выберите ядро на экране и выборе e
отредактировать и вставить корневое значение (как /dev/vgname/lvname
) в:
/boot/vmlinuxxxxx root=uuid/dev/xxx.
Затем наконец, нажмите Ctrl+X для начальной загрузки.
Если проблема повторяется когда перезагрузка сервер
перейдите в
#/boot/grub/grub.cfg
в/vm/vmlinuz root=write Ваш весь путь lv
если проблема не зафиксированная попытка фиксирует initramfs как ниже
1. Перейдите к терминалу сервера
# sudo rmmod floppy
#echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklis-floppy.conf
#dpkg-reconfigure initramfs-tools
#update-initramfs -u
#update-grub
#reboot
Выполните это
#/etc/initramfs-tools/scripts/local-top/forcelvm
со следующим содержанием:
#!/bin/sh
PREREQ=""
prereqs()
{
echo "$PREREQ"
}
case $1 in
prereqs)
prereqs
exit 0
;;
esac
. /scripts/functions
lvm vgchange -ay
Затем сделайте
# chmod +x `/etc/initramfs-tools/scripts/local-top/forcelvm`
# update-initramfs -u -k all
возьмите резервное копирование lvm2
#apt-get install lvm2
#cp /usr/share/initramfs-tools/scripts/local-top/lvm2 /tmp
Редактирование lvm2
#vi /usr/share/initramfs-tools/scripts/local-top/lvm2
запишите Между modprobe-q dm-модификацию, и activate_vg "$ROOT" добавляют эту строку для инициализации lvm:
lvm vgchange-ayactivate_vg "$ROOT", если Вы не находите эту строку
запишите ниже двух строк в конце файла выше, выходят 0
#lvm vgchange -ayactivate_vg "$ROOT"
#activate_vg="$ROOT"
save the file
затем
#update-initramfs -u
#update-grub
#reboot