rsyncはマウントされたNFS共有に書き込まれません。

rsyncはマウントされたNFS共有に書き込まれません。

簡単に実行してみます。同期スクリプトは、CentOSサーバー上のファイルとフォルダをMy Synology NASにマウントされているNFS共有にコピーします。 NFS共有がCentOSサーバーに正しくマウントされました。 CentOSサーバーでファイルを作成し、問題なく閲覧できます。にNFS共有をマウントしました/mnt/nfs/synology

コピーしたいディレクトリはにあります~/resilio-sync/websites。 rsync コマンドは次のとおりです。rsync -avz ~/resilio-sync/websites /mnt/nfs/synology テストを実行すると、コピーする項目が表示されます。

sending incremental file list
websites/
websites/test.co.uk/
websites/test.co.uk/about.php
websites/test.co.uk/contact.php
websites/test.co.uk/dropbox_backup.sh
websites/test.co.uk/index.php
websites/test.co.uk/mailer.php
sent 6132 bytes  received 973 bytes  14210.00 bytes/sec
total size is 29217828  speedup is 4112.29 (DRY RUN)

実際に実行しようとすると、次の結果が表示されます。

sending incremental file list
websites/
rsync: failed to set times on "/mnt/nfs/synology/websites": Operation not permitted (1)
websites/.sync/
rsync: recv_generator: mkdir "/mnt/nfs/synology/websites/.sync" failed: Permission denied (13)
*** Skipping any contents from this failed directory ***
websites/test.co.uk/
rsync: recv_generator: mkdir "/mnt/nfs/synology/websites/test.co.uk" failed: Permission denied (13)
*** Skipping any contents from this failed directory ***

sent 5196 bytes  received 37 bytes  10466.00 bytes/sec
total size is 29217828  speedup is 5583.38
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1052) [sender=3.0.9]

権限に関連していると言っているようですが、奇妙なことにrsyncを使用しないと、ソースディレクトリとターゲットディレクトリに正しく書き込むことができます。

ここで見逃したアイデアはありますか?

ベストアンサー1

エラー出力はそのディレクトリに書き込むことができないことを示します/mnt/nfs/synology/websites(つまり、その中にディレクトリやファイルも作成できません)。

実際にファイル転送を試みなかったため、テストの実行に成功したため、権限の問題は発生しませんでした。

あなたがそれを使用している場合、sudo rsync...あなたは(ほぼ確実に)それがsudo mkdir /mnt/nfs/synology/websites/test.co.uk失敗することがわかります。


rsyncただし、Synology NASでこのサービスを有効にしてNFS経由で送信するのではなく、このサービスを使用するとより効率的に転送できます。

まず、rsyncローカルホストファイルシステムの一部からホストファイルシステムの別の部分にコピーを使用しています。それはどのように見えますか?ファイル内容の変更のみを転送するために差分アルゴリズムを使用しないローカルホスト上のファイルシステム。代わりに、ファイルサイズと変更時間を見て、異なる場合はファイル全体をコピーします。

Synology NASサービスを有効にすると(またはrsync可能であればrsyncオフにするとssh)、ツールはクライアントサーバーモードで実行され、ファイルの変更のみを確認して転送できます。

おすすめ記事