LinuxでファイルをコピーするときにWindowsファイルのプロパティを保持する方法は?

LinuxでファイルをコピーするときにWindowsファイルのプロパティを保持する方法は?

私はLinuxシステムで実行されているカスタムBashスクリプトを使用してFAT32形式のUSBドライブを一括コピーしています。

「非表示」などのWindowsファイルのプロパティを維持する必要があります。

私は使用しますrsync(または最新バージョンでは、ddより良い安定性と最適な帯域幅を使用するためにI / O同期を使用して強制します)。findmkdir

私は盲目的に試して-Xいくつかのファイルプロパティを維持することに-A切り替えましたが、rsyncWindowsファイルプロパティでは機能しないようです。

Linux環境でWindowsファイルのプロパティを読み書きする方法はありますか?

簡単な方法がない場合は、コピーして適用します。

dd特に、何百ものドライブに書き込む必要がある場合、ソースファイルシステム全体が真剣に最適化されていないことを望まない。時々ドライブの容量は16GBですが、ファイルの容量はわずか数GBです。愚か者はdd16GBをすべてコピーするので、本番環境で作業するのに長い時間がかかります。

オンラインで検索してみましたが、Linux拡張属性はWindowsファイル属性とは何の関係もないようで、この情報を読み書きする(またはファイルと一緒にコピーする)方法が見つかりませんでした。

答え1

この問題を処理するいくつかの方法を考えることができます。

最初は使用することです。ツールファイルをコピーします。これにはあなたが必要です「ドライブ」を定義する(A:ソースドライブ用、B:ターゲットドライブ用)以下を使用して、プロパティとタイムスタンプを維持しながらすべてをコピーできる必要があります。

mcopy -s -p -m a: b:

(検証されていません)。

fatattr2つ目は、属性を後処理するために(ほとんどのディストリビューションで利用可能)を使用することです。これはマウントされたファイルシステムを処理するため、ファイルシステムを現在のままコピーでき、すべてのソースファイルのすべてのFATプロパティを一覧表示して解析し、プロパティをターゲットファイルに適切に設定する必要があることfatattrを示します。fatattr

関連情報