
В настоящее время я работаю над пользовательским initrd на основе ядра CentOS 6.7 (2.6) сследующие модулизагружен.
Initrd предназначен для резервного копирования файлов старой системы RHEL в память, размонтирования диска, очистки диска и, наконец, записи dd
на диск предварительно собранной системы CentOS.
Система CentOS была создана на базе VMware, затем vmdk был экспортирован и преобразован в формат raw с расширением qemu-img
.
После тестирования весь процесс работает отлично, и после его dd
завершения систему можно перезагрузить и запустить нормально.
Текущая проблема заключается в том, что после dd
завершения операции я не могу смонтировать диск LVM, чтобы скопировать файлы обратно.
Как вы можете видеть в списке модулей, драйверы LVM есть и загружены, если я запускаю, fisk -l
он отображается sda1
как загрузочный раздел (не LVM) и sda2
как раздел LVM. При запуске pvscan -vvv
он видит, /dev/sda2
но говорит No label detected
.
решение1
Поскольку вы очищаете диск, работающее ядро не будет знать о доступных разделах.
Вы можете запустить partprobe
(как и в parted
утилите разбиения на разделы), чтобы перезагрузить правильную информацию о разбиении на разделы в работающем ядре.
Если у вас нет partprobe
(не нужны маленькие диски parted
?), вы можете использовать, hdparm -z /dev/yourdrive
как указано@ko-dos