ファイルプロパティと親ディレクトリを維持しながら、/etc/binをフォルダにコピーしたいとします。 [ターゲットフォルダには、binフォルダだけでなく/ etc / binも含める必要があります。 ]
これは可能ですか? tarを使って圧縮して解凍するのは効率的ですか?
ベストアンサー1
mkdir target/etc
cp -Rp /etc/bin target/etc/
または(GNUのみ)
mkdir target/etc
cp -a /etc/bin target/etc/
または
mkdir target/etc
rsync -aAX /etc/bin target/etc/
または(クラシックUNIX)
find /etc/bin | cpio -pm target
または(クラシックUnix、その他)
( cd / && tar -tf - etc/bin ) | (cd target && tar -xf - )
または(少数の人が聞いたようなPOSIXの代替)
mkdir target/etc
pax -rw -pe etc/bin target/etc/
これはすべて既存のUnixメタデータ(権限、タイムスタンプ1、所有権(rootとして実行する場合)2)を保存します。システムによっては、ACLや拡張属性などの追加のメタデータを保存することも、保存しない場合もあります(一部は--acls --xattrs
GNU tarの使用などの追加オプションが必要な場合があります)。
1コピーできないctimeと一部のディレクトリatimeは除外されます。 ²ルートのみの所有権を保持できます。