Где update-initramfs ищет версии ядра?

14

Мне нужно было восстановить initrd. Делая это:

update-initramfs -u -k all

выдает ошибки для ядра, которое я скомпилировал, а затем удалил некоторое время назад (потому что update-initramfsне смог найти /lib/modulesкаталог, который я удалил, конечно).

Я думал, что полностью удалил ядро, удалив все его записи в /bootи каталоге в /lib/modules& running sudo update-grub(как в этом ответе ), но, очевидно, где-то есть его следы, которые я, вероятно, должен очистить.

Я прочитал это и покопался, /usr/share/initramfs-toolsно я не мог понять это.

В man update-initramfsя вижу , что:

Использование «all» для строки версии указывает update-initramfs для выполнения выбранного действия для всех версий ядра, которые уже известны update-initramfs.

Но как он их знает? Где update-initramfsискать версии ядра?

Примечание: много месяцев спустя ... я добавил ответ на этот вопрос в тег вики для

Занна
источник

Ответы:

15

У меня была та же проблема, что и у вас, я также думал, что полностью удалил ядро, удалив все его записи в /bootкаталоге /lib/modulesGRUB и обновив его, но нашел один каталог, который используется update-initramfsдля отслеживания ядер:

/var/lib/initramfs-tools
Thom
источник
1
update-initramfs -d -k <version>удалит запись в /var/lib/initramfs-toolsи изображение в /bootодин раз, просто Fyi :)
Мохамед Хафез