私のサーバーの1つにデータをコピーしようとしています。一部のコピーされたファイルには、ソースコンピュータに対する444の権限があります。これらのファイルのいずれかに書き込み中に転送が中断された場合、そのファイルを削除しないと書き込みを完了できないため、これは非常に迷惑です。
scp
特定の権限セットをターゲット側に適用するように指示する方法はありますか(またはターゲットディレクトリの権限を継承しますか?)
好ましくは、私のファイルは664で、ディレクトリは775であることを望みます。
ベストアンサー1
scp
ファイルをコピーすると終了です。もっと柔軟なものを探しているなら、同期それはあなたが必要とするすべてです。
ディレクトリツリーをコピーするには、次のようにします。
rsync -a local-directory/ remote.example.com:remote-directory/
転送が中断された場合、rsyncを再実行すると、中断された部分から再開されます。
権限を維持するのはおそらく正しいことですが、他のパラメータを適用したい場合は、この--chmod
オプションを使用できます。ローカル権限を本当に無視するには、を使用します--no-perms
。
大量のファイルがあり、コピーが頻繁に中断され、リモートツリーがrsyncを使用して入力する新しいコピーである場合は、このオプションを使用してください--append
。これにより、ファイルの途中でコピーが中断された場合、rsyncはリモートファイルの現在のコンテンツがローカルコンテンツと一致することを確認せずにファイルを完了し、時間を節約できます。繰り返しますが、リモートファイルの一部を識別する場合にのみはいたとえば、ファイルの以前のバージョンではなく転送中断の結果です。