タグ付けされた質問 「cpio」

6
initrdに「カーネル」というディレクトリが1つしかないのはなぜですか?
debian live-buildを使用して、ブート可能なシステムで動作します。プロセスの終わりまでに、squashfsファイル、いくつかのGRUBモジュールと設定ファイル、initrd.imgファイルなど、ライブシステムの起動に使用される一般的なファイルを取得します。 これらのファイルを使用して問題なく起動でき、initrdを介してカーネルに渡すことができます。 initrd=/path/to/my/initrd.img ブートローダーのコマンドラインで。しかし、次のようにinitrdイメージの内容を調べようとすると: $file initrd.img initrd.img: ASCII cpio archive (SVR4 with no CRC) $mkdir initTree && cd initTree $cpio -idv < ../initrd.img 私が得るファイルツリーは次のようになります: $tree --charset=ASCII . `-- kernel `-- x86 `-- microcode `-- GenuineIntel.bin 実際のファイルシステムツリーはどこにありますか?典型的な/ bin、/ etc、/ sbin ...には、ブート中に使用される実際のファイルが含まれていますか?
28 linux  debian  initrd  cpio 

2
ブロックデバイスの内容をアーカイブするようにtar(など)を説得する方法は?
仮想マシンを一緒にバックアップする6つのLinux論理ボリュームがあります。VMは現在シャットダウンされているため、VMの一貫したイメージを簡単に取得できます。 6つの画像すべてをアーカイブにまとめたいと思います。簡単に、私はこのようなことをすることができます: cp /dev/Zia/vm_lvraid_* /tmp/somedir tar c /tmp/somedir | whatever しかし、それはもちろん余分なコピーを作成します。余分なコピーは避けたいです。 明らかなアプローチ: tar c /dev/Zia/vm_lvraid_* | whatever tarは特殊なファイル(この場合はシンボリックリンク)を認識し、基本的ln -sにアーカイブに保存するため、動作しません。または、で、--dereferenceまたは直接ポイントされて/dev/dm-X、それらを特別な(デバイスファイル)として認識し、基本的mknodにアーカイブに保存します。 この動作をオーバーライドするためにtarのコマンドラインオプションを検索しましたが、見つかりませんでした。私もcpio同じ問題を試みましたが、そこでそれをオーバーライドするオプションも見つかりませんでした。私も試しました7z(同じ)。と同じpax。私も試してみましたがzip、混乱してしまいました。 編集:GNU tarとGNU cpioのソースコードを見ると、どちらもこれができないようです。少なくとも、深刻な策略がないわけではありません(デバイスファイルの特別な処理を無効にすることはできません)。そのため、深刻な策略の提案または代替ユーティリティをいただければ幸いです。 TLDR:複数のディスクイメージを(rawデバイスから取得して)まとめてパックし、余分なディスク上のコピーを作成せずにその出力をストリーミングするアーカイバはありますか?私の好みは、POSIXやGNU tarのような一般的な形式で出力されます。
13 tar  disk-image  cpio 

3
initramfsにcpioを使用する理由
Gentoo wikiに従って、自分のinitramfsを作成しています。おなじみのtarandの代わりにgzip、このページはcpioand を使用するように指示していますgzip。ウィキペディアはcpio、2.6カーネルのinitramfsで使用されていると述べていますが、その理由は説明していません。 これは単なる慣習cpioですか、それともinitramfsに適していますか?私はまだ使用できますtarとgzip?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.