
TarファイルとしてDebian rootfsがあります。 Kconfig(PetaLinuxを使用)でinitramfsソースとして指定したいが、ソースはcpioアーカイブでなければなりません。
.tarを.cpioに変換し、構造、権限などを維持する方法は?
答え1
答え2
bsdtar
どのプログラムもこれらの変換(ハードリンクを含むエラー処理アーカイブ)を安定した方法で提供しないため、以下を使用してtarアーカイブを解凍する必要があります。
tar xpf archive.tar
rootとして実行し、抽出されたディレクトリツリーからcpioアーカイブを作成します。
解凍/再梱包操作を実行すると、root権限は必要ありません。近さセッション例:
fakeroot sh -c "cd '$ROOTFS' &&
tar -xf input.tar.gz &&
find . | cpio -o -H newc" > output.cpio