Мінімальні initramfs - ArchWiki

У цій статті показано, як створити тонкий, мінімальний initramfs для системи з певною, відомою та статичною конфігурацією обладнання. Процедура викладена в статті "Оптимізація завантаження за допомогою mkinitcpio" від Falconindy (Dave Reisner).

archwiki

Зміст

  • 1 Вимога Udev
  • 2 Редагування попередньо встановлених файлів
  • 3 Пошук необхідних модулів
  • 4 Початкове редагування mkinitcpio.conf
  • 5 Початковий тест
  • 6 Сортування модулів
    • 6.1 Модулі файлової системи
    • 6.2 Модулі запам'ятовуючих пристроїв
    • 6.3 Клавіатурні модулі
  • 7 Завершення

Вимога Udev

Великою перевагою створення власних зображень initramfs є те, що ви можете усунути udev. Цей гачок сам по собі відповідає за незначний розмір (

700-800 КіБ з LZ4 та LZOP, менше з іншими алгоритмами) на зображенні initramfs. Не тільки більший розмір призведе до довших завантажень (більше даних для декомпресії), але і сама ініціалізація udev також займе додатковий час. Однак деякі речі вимагають udev . Це включає вирішення ідентифікаторів UUID, LABEL, PARTUUID та PARTLABEL (гачок обходу без udev) та складання пристроїв LVM та mdadm, які містять кореневий розділ. Якщо ви не впевнені, чи потрібен вам udev, продовжуйте вказівки на цій сторінці до #Initial test. Якщо не все працює без udev, увімкніть гачок і спробуйте ще раз.

Крім того, хоча більшість клавіатур (AT, PS/2, USB) не вимагають використання гачка udev, пристрої Logitech USB, які використовують уніфікований приймач Logitech. На цьому етапі ви можете або включити udev у всі зображення, або покластися на резервне зображення, яке це робить.

Якщо вам потрібен udev, ваші зусилля щодо мінімізації, швидше за все, будуть марними. Можливо, ви все ще зможете зменшити розмір зображення на

600 КіБ, але час завантаження істотно не покращиться. Продовження цього сценарію все ще може бути вартим досвіду навчання.

Редагування попередньо встановлених файлів

У підручнику Фальконіді він редагує /etc/mkinitcpio.conf та запускає mkinitcpio -g, щоб створити тестове зображення initramfs, залишаючи відомі хороші зображення initramfs в системі недоторканими. Однак якщо після цього ви сліпо запустите mkinitcpio -P, навіть запасне зображення буде видалено.

Більш безпечний спосіб підготуватися до створення файлів initramfs у свої руки - це змінити файли .preset у /etc/mkinitcpio.d. Наступний приклад конфігурації замінить за замовчуванням мінімальне зображення initramfs і створить нове звичайне зображення, яке побудовано The Arch Way. Якщо щось піде не так, ви можете покластися на звичайні або резервні зображення. Закінчивши, ви можете скинути з конфігурації рядки normal_ * і видалити файли initramfs-linux * -normal.img.