cpioコマンドを実行すると永久に停止します。

cpioコマンドを実行すると永久に停止します。

私はcpioアーカイブ(この場合は初期のRAMディスク)のアーカイブを解放しようとしました。ただし、ファイルを抽出しようとすると、cpioファイルは永久にフリーズします。追加情報を印刷するためにパラメータを渡しても、-Vこれが発生します。

alex@alexs-arch-imac:/tmp/initramfs$ cpio -i initramfs-linux.img # wait for a while after this
^C
alex@alexs-arch-imac:/tmp/initramfs$ 

ユーティリティを中断せずにcpioアーカイブを抽出する方法は?

答え1

奇妙な理由でcpioファイル引数を受け入れるのが好きではありません。代わりに、アーカイブをにパイプする必要がありますcpio。経験のないユーザーは次のことを行います。

cat initramfs-linux.img | cpio -i

しかし、これはあなたを去ります役に立たない猫賞。より良いアプローチは次のとおりです。

cpio -i < initramfs-linux.img

これは、新しいプロセスを作成するのではなく、シェルに組み込まれたリダイレクト機能を使用します。

関連情報