あなたは
cd your_working_directory_with_modifications
find . | cpio --quiet --dereference -o -H newc | lzma -7 > ../cusotm.initrd.lz
2番目のコマンドはinitrdの名前を変更します。grubで起動するときに使用するinitrdを指定します。
カスタムinitrdを移動または名前変更する前にテスト(ブート)することをお勧めします。
コメントでの議論からの追加情報:
まず、cpio / tarの役割を理解しているとは思いません。cpioとtarは両方とも、いくつかのファイルやディレクトリを取得して、それらを1つのファイルまたはアーカイブにします。
次に、圧縮の役割を理解していないと思います。圧縮を行うと、結果として得られるアーカイブが小さくなります。圧縮に必要な任意のツールを使用できます。
見る
https://wiki.ubuntu.com/CustomizeLiveInitrd
https://wiki.gentoo.org/wiki/Initramfs/Guide
3番目に、Linuxカーネルはtarではなくcipoを使用します。
見る
https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt
「tarではなくcpioを使用する理由」を参照してください。セクション
なぜtarではなくcpioなのですか?
この決定は2001年12月に行われました。議論はここから始まりました。
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1538.html
そして、ここから始まる2番目のスレッド(特にtarとcpioで)を生成しました。
http://www.uwsg.iu.edu/hypermail/linux/kernel/0112.2/1587.html
(上記のスレッドを読むのに代わるものではない)迅速で汚い要約バージョンは次のとおりです。
1)cpioは標準です。それは(AT&Tの時代から)数十年前のものであり、すでにLinuxで広く使用されています(RPMの内部、Red Hatのデバイスドライバーディスク)。これは、1996年のLinux Journalに関する記事です。
http://www.linuxjournal.com/article/1213
従来のcpioコマンドラインツールは_truly_hideous_コマンドライン引数を必要とするため、tarほど一般的ではありません。しかし、それはアーカイブ形式について何の意味も持たず、次のような代替ツールがあります。
http://freecode.com/projects/afio
2)カーネルによって選択されたcpioアーカイブ形式は、(文字通り数十の)さまざまなtarアーカイブ形式のどれよりもシンプルでクリーンです(したがって、作成と解析が簡単です)。完全なinitramfsアーカイブ形式はbuffer-format.txtで説明され、usr / gen_init_cpio.cで作成され、init / initramfs.cで抽出されます。3つすべてを合わせると、人間が読めるテキストの合計は26k未満になります。
3)tarで標準化するGNUプロジェクトは、zipで標準化するWindowsとほぼ同じくらい関連性があります。Linuxもどちらにも含まれておらず、独自の技術的な決定を自由に行うことができます。
4)これはカーネルの内部フォーマットであるため、
まったく新しいものである可能性があります。カーネルは、このフォーマットを作成および抽出するための独自のツールを提供します。既存の標準を使用することをお勧めしますが、必須ではありません。
5)Al Viroが決定しました(引用:「tarは地獄のように醜く、カーネル側ではサポートされません」):
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
コマンドでアーカイブを再作成します。その手順が機能しない場合は、実行したコマンドと機能していないものを明確にします。