Arch Linux initrd

Параметры загрузки ядра

root=

Обязательно указать : root=раздел_c_файлами_системы . Примеры:

root=/dev/sda1                                                # /dev node
root=LABEL=CorsairF80                                         # label
root=UUID=ea1c4959-406c-45d0-a144-912f4e86b207                # UUID
root=PARTUUID=14420948-2cea-4de7-b042-40f67c618660            # GPT partition UUID

ro ; rw

Тип монтирование корня файловой системы только чтение. Перемонтировать в rw:

sudo mount -w -n -o remount /

init=

init=/lib/systemd/systemd - прямое указание (если не находит или несколько)

quiet

Минимум вывода в консоль

net.ifnames=

Чтобы любой ethernet интерфейс имел имя eth0, а wifi - wlan0 : net.ifnames=0 biosdevname=0

Сборка initrd

  • Управляется через /etc/mkinitcpio.conf
  • mkinitcpio -g /boot/linux.img - создаст /boot/linux.img для используемого ядра с конфигом /etc/mkinitcpio.conf
  • mkinitcpio -c /etc/mkinitcpio-custom.conf -g /boot/linux.img -k 3.3.0-ARCH - для ядра 3.3.0-ARCH с конфигом /etc/mkinitcpio-custom.conf

Загрузка с iso

MODULES="iso9660"

Загрузка с ntfs

BINARIES="ntfs-3g"

autodetect - универсальный initrd или только под свое железо

HOOKS="autodetect block"
  • Уменьшает размер Вашего initrd, создавая список модулей по итогу сканирования sysfs. Т.е. на другом компьютере может не работать. Нужно загрузиться с initramfs-*fallback и пересобрать под этот компьютер
  • initramfs-*fallback отличается от initramfs отсутствием хука autodetect. Т.е. включены все модули ядра
  • Хуки, помещенные до «autodetect», будут установлены полностью. Например:
HOOKS="block autodetect"

Спец. ядро, как в PRA, porteus

  • С монолитно вкомпиленными модулями, необходимыми для загрузки
  • initrd получается универсальным (без модулей ядра). Ядра можно менять на аналогичные
MODULES=""
BINARIES="ntfs-3g"
HOOKS="base  autodetect filesystems keyboard fsck rootaufs2 subdir2"

mkinitcpio-rootaufs2

  • Создает корневую aufs файловую систему из каталогов и(или) модулей.pfs (squashfs). Т.е. модульный frugal и full c сохраненкой в раздел, каталог или файл
  • Аналог porteus-initrd
  • Работает только с aufs ядрами.

archiso

mkinitcpio-loop-subdir

  • subdir - загрузка ситемы из каталога (т.е. можно иметь несколько систем на одном разделе)
  • loop - загрузка ситемы из файла. Файл может располагаться на fat ntfs
truncate -s 2G /test/ext2.img && losetup /dev/loop0 /test/ext2.img && mkfs.ext2 /test/ext2.img
Печать/экспорт