Заміна ядра Linux за межами системи


0

Є певне зображення ubuntu, яке працює (з SD-карти) з апаратним контролером. Ціле зображення займає 2 гігабайти, бо такий розмір карти. Зображення побудовано на старому ядрі. Нам потрібно замінити материнську плату, тому що стара вже не доступна, а нова відповідна не розмовляє зі старим ядром. І найголовніше, що безповоротно (через певний хаос при зміні розробників) корінний пароль із зображення втрачається - тобто заміна ядра цивілізовано, зсередини, на жаль, не вийде. Питання: чи можливо - і як я можу змінити ядро, не змінюючи решту, поза системою, просто переписавши щось із наявного зображення з мого ноутбука? Якщо ні, потрібно буде відновити весь обтічний і налагоджений образ, чого я хотів би уникнути.

Відповіді:


0

По-перше, я не можу наголосити на тому, щоб не використовувати вашу робочу копію, а зробити резервну копію та використовувати те, що щось робить жахливо не так.

Це може не спрацювати, але це найкращий результат.

Ядро залежить від файлів у / boot для початку.

System.map-4.19.1-1-default
.vmlinuz-4.19.4-1-default.hmac
config-4.19.4-1-default
initrd-4.19.1-1-default
initrd is symlinked to above
symvers-4.19.1-1-default.gz
sysctl.conf-4.19.1-1-default
vmlinux-4.19.1-1-default.gz
vmlinuz symlink to below
vmlinuz-4.19.4-1-default

Усі ці файли потрібні з нової версії, очевидно, що більшість імен файлів містять номер версії і будуть різними залежно від версії ядра, яку ви використовуєте.

Всередині / lib / модулі / - це серія папок для кожної версії ядра. Наприклад:

4.19.4-1-default

Усі модулі в цій папці потрібно буде скопіювати.

Нарешті, файли grub або grub2 потрібно буде змінити, щоб вказувати на ці нові файли.

  1. Створіть резервну копію SD-карти та скористайтеся резервною копією
  2. Якщо ваша стара материнська плата не є UEFI, відключіть її на новій материнській платі, або виникнуть проблеми.
  3. Отримайте ще одну SD-карту / HDD
  4. Встановіть нову версію будь-якого дистрибутива, який ви використовували.
  5. Скопіюйте / завантажуючи та / lib / модулі / у відповідні місця резервної копії вашої ОС. Якщо присутній / usr / lib / bootloader також слід скопіювати.
  6. Завантажте і подивіться, що станеться.

Можливо, будуть інші проблеми сумісності. Найбільша небезпека полягає в переході в далеко вперед і переході від initd до systemd або інших великих змін.

Я б запропонував дізнатися, з якою версією дистрибутива ви використовували, і для початку перенесіть лише на 1 версію вище. Якщо інсталяція не вдалася, можна рухатись по одній версії за один раз.

Коли у вас є завантажувальна система, то я пропоную використовувати apt-get або тощо, щоб зробити повне оновлення дистрибутива у відповідному маєтку.


Дякую. Це працює не відразу, але дає мені важливу інформацію
zimopisec
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.