2009-08-05 5 views
4

現在、バックアップジョブを実行するのにrsyncを使用しています。この仕事には数時間かかります。バックアップよりも重要な部分がいくつかあるので、他の部分より先にバックアップするようにしています(つまり、rsyncが最初にこれらのファイルを転送します)。これは簡単にrsync --files-fromを使用して達成する必要があります。rsyncによって転送されたファイルの注文

残念ながら、我々は優先順位をつける必要があるファイルは、単一のディレクトリ内の他のすべてのファイルと一緒にされている(フラット階層、ブーイング!)、彼らはちょうどそれらを識別するための特定の拡張子を持っています。そのため、我々はrsync転送することをファイルのリストを取得したいのですが、それをローカルにソートし、その後、rsync --files-fromを使用してrsyncにそれを渡します。

rsync -v --dry-runを使用すると、ほとんどの方法で(私は思うが)ディレクトリ追加とファイルプロパティの変更が表示されます。つまり、すぐに使用できるリストが得られません。

私の質問はこれです:どのようにrsyncから使用するファイルのリストを取得できますか?

答えて

4

rsyncを2回実行すると動作しますか?つまり優先度の高いファイルに対しては一度実行し、それ以外では一度実行しますか?

+0

であろうと私の最初の試み –

+1

うん、これはさまざまな優先順位のファイルに対してrsyncを5回実行しても、やってしまったことです。 –

0

最初にrdiff-backupを使用するか、rsyncをrdiff-backupに置き換えることができます。たとえば、次のようにファイルリストを得ることができます。

rdiff-backup --compare in-dir [email protected]::out-dir 

しかし、私は2つのパスを試してみることをお勧めします。また、圧縮を有効にしてみましたか?

+0

悲しいことに、これにはrsyncを使用する必要があります。 –

1

私は提案がforループを使用することをするかもしれない私は、@のalbergeの答えにコメントしているだろうが、あなたは別のrsyncコマンドを使用している場合、私は、

@Daniel :-(十分な評判を持っていない。

変更する
for pp in "*.png" "*.jpg" "*.bmp" "*.gif" 
do 
    rsync ... $pp 
done 

一つだけrsyncコマンドを使用すると、すべての変更と同期するものの素敵な簡単に管理可能リストを作りたいはずです。文の順序は、それらが使用される順序です。

関連する問題