2

Мой компьютер завис при обновлении с Ubuntu 12.04 до 14.04.

Это привело к панике ядра при перезагрузке.

/sbin/init: relocation error: /lib/i386-linux-gnu/librt.so.1: symbol__clock_nanosleep, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference.

[сопровождаемый некоторыми вещами паники ядра]

Я загрузился с usb и завершил обновление с помощью chroot на диск и запустил: sudo apt-get dist-upgrade (а также несколько других команд, как описано в разделе : Восстановление после выключения во время обновления дистрибутива Ubuntu)

Похоже, что он завершил обновление, но не создал новый загрузочный образ: update-initramfs is disabled since running on read-only media

Поскольку я не могу загрузиться в более старые версии ядра, есть ли способ создать новый загрузочный образ (то есть что-то, что будет в /boot /) с usb.

В качестве дальнейшего пояснения, при выполнении chroot uname -a выдает обновленное ядро, но соответствующий образ ядра отсутствует в /boot диска.

Могли бы воспользоваться некоторыми советами.

3 ответа3

1

У меня была похожая проблема, связанная с update-initramfs is disabled since running on read-only media сообщения об ошибке только для носителя . Если вы посмотрите на скрипт, вы увидите, что это просто скрипт-обертка для mkinitramfs .

whereis update-initramfs
update-initramfs: /usr/sbin/update-initramfs …
gedit /usr/sbin/update-initramfs

Таким образом, вы можете вызвать mkinitramfs напрямую:

mkinitramfs -o /boot/initrd.img-${kernel_ver}-generic ${kernel_ver}-generic

Более подробную информацию о переустановке образов ядра и initrd из live media/chroot можно найти по ссылке выше.

0

Вы упоминаете chroot в новой установке Ubuntu. запустите sudo update-initramfs -u -k all INSIDE chroot.

0

на live cd Linux Mint есть копия update-initramfs, которая используется для установки. Он переименован в «update-initramfs.distrib». Вы можете запустить это, чтобы воссоздать ваш initrd.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .