Ви перепаковуєте с
cd your_working_directory_with_modifications
find . | cpio --quiet --dereference -o -H newc | lzma -7 > ../cusotm.initrd.lz
Друга команда перейменовує initrd, ви вказуєте initrd, який слід використовувати під час завантаження в grub.
Я пропоную вам протестувати (завантажувати) користувальницький initrd перед тим, як перемістити або перейменувати його.
Додаткова інформація з обговорення в коментарях:
По-перше, я не думаю, що ви розумієте роль cpio / tar. і cpio, і tar беруть ряд файлів та / або каталогів і складають їх в один файл чи архів.
По-друге, я не думаю, що ви розумієте роль стиснення, стиснення просто робить отриманий архів меншим. Для стиснення можна використовувати будь-який інструмент, який хочете.
Подивитися
https://wiki.ubuntu.com/CustomizeLiveInitrd
https://wiki.gentoo.org/wiki/Initramfs/Guide
По-третє, ядро Linux використовує cipo, а не tar.
Подивитися
https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt
Дивіться "Чому cpio, а не дьоготь?" розділ
Чому cpio, а не дьоготь?
Це рішення було прийнято ще в грудні 2001 року. Дискусія розпочалася тут:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1538.html
І породив другу нитку (конкретно на tar-cpio), починаючи тут:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1587.html
Швидка та брудна підсумкова версія (яка не замінює читання вищевказаних тем):
1) cpio - це стандарт. Це десятиліття (з AT&T днів) і вже широко використовується в Linux (всередині RPM, диски драйверів пристроїв Red Hat). Ось стаття щодо журналу Linux з 1996 року:
http://www.linuxjournal.com/article/1213
Це не так популярно, як смола, оскільки для традиційних інструментів командного рядка cpio потрібні аргументи командного рядка _truly_hideous_. Але це нічого не говорить про формат архіву, і є альтернативні інструменти, такі як:
http://freecode.com/projects/afio
2) Формат архіву cpio, обраний ядром, простіший і чіткіший (і, таким чином, простіше створити та проаналізувати), ніж будь-який із (буквально десятки) різних форматів архіву tar. Повний архівний формат initramfs пояснюється в buffer-format.txt, створеному в usr / gen_init_cpio.c, і витягується в init / initramfs.c. Усі троє разом складають менш ніж 26 тис. Текстів, що читаються людиною.
3) Стандартизація проекту GNU на дьогті приблизно настільки ж актуальна, як стандартизація Windows на zip. Linux також не є частиною, і вільний приймати власні технічні рішення.
4) Оскільки це внутрішній формат ядра, він може бути легко
новим. Ядро надає власні інструменти для створення та вилучення цього формату в будь-якому випадку. Використання існуючого стандарту було кращим, але не суттєвим.
5) Аль-Віро прийняв рішення (цитата: "дьоготь некрасивий як пекло і його не підтримуватимуть на стороні ядра"):
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1540.html
пояснив свої міркування:
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1550.html
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1638.html
і, найголовніше, розробили і реалізували код initramfs.
find . | cpio --quiet --dereference -o -H newc | lzma -7 > ../cusotm.initrd.lz
якщо ця процедура не працює, уточнюйте, які команди ви виконували, а які не працюють.