Как восстановить случайно удаленный образ initrd?

Я случайно удалил образ initrd в моей системе. Как мне его восстановить?

4
задан 17 March 2012 в 04:13

3 ответа

Образ initrd для каждого ядра создается во время установки ядра из модулей и приложений на машине. Вы можете просто собрать отсутствующий initrd, используя следующую команду:

update-initramfs -c -k <version>

(Не забудьте заменить в соответствующей версии для вашего ядра.)

0
ответ дан 17 March 2012 в 04:13

Это лучший способ решить проблему OP, опубликованную в комментариях.

Я пытаюсь использовать initrd из livecd в моей установке Ubuntu. Удалил это случайно. - Биной ​​Бабу

Чтобы создать initramfs, сначала загрузите альтернативное ядро ​​(старшее в порядке)

Затем выполните

sudo mkinitramfs 3.2.0-15-generic-pae -o /boot/initrd.img-3.2.0-15-generic-pae

У меня нет Установлено ядро ​​pae, если «3.2.0-15-generic-pae» не работает, перечислите содержимое /lib/modules, чтобы получить имя

ls /lib/modules

Если у вас нет более старого ядра, вы можете загрузить live CD и использовать chroot:

  1. Сначала смонтируйте корневой раздел: mount -t ext4 /dev/sdX /mnt. Убедитесь, что вы используете правильное имя раздела и введите эту команду. Используйте команды, такие как lsblk, blkid и т. Д., Чтобы найти правильный раздел.

  2. [Необязательно] Если у вас есть отдельное монтирование загрузочного раздела, следующее: mount -t ext4 /dev/sdY /mnt/boot

  3. Далее выполните монтирование всех виртуальных файловых систем, необходимых команде makeinitramfs ... mount --bind / proc / mnt / proc mount --bind / sys / mnt / sys mount --bind / dev / dev / proc

  4. Теперь переключитесь на [ 119] и выполните команду makeinitramfs, как описано выше.

0
ответ дан 17 March 2012 в 04:13

Это - ответ на исходный вопрос, как извлечь initrd.lz из живого CD, обычно используемого, если Вы делаете пользовательский живой CD.

скопируйте initrd.lz в рабочий каталог ( ~)

cp /media/cdrom/initrd.lz ~

Сделайте каталог для извлечения содержания к, я буду использовать initrd, CD в каталог

mkdir ~/initrd
cd ~/initrd

Извлечение

lzma -dc -S .lz ../initrd.lz | cpio -imvd --no-absolute-filenames

Внесите любые изменения, в которых Вы, возможно, нуждались бы, перепакет

cd ~/initrd
find . | cpio --quiet --dereference -o -H newc | lzma -7 > ../cusotm.initrd.lz

Ваш новый initrd будет в Вашем корневом каталоге и назван cusotm.initrd.lz

6
ответ дан 17 March 2012 в 04:13

Другие вопросы по тегам:

Похожие вопросы: