rsync(chown chmod)で宛先のアクセス許可を設定するにはどうすればよいですか


12

マウントポイントからローカルフォルダーまで、ローカルrsyncを実行しようとしています。所有者、グループ、およびアクセス許可を特定の設定に設定する必要があります。これが私が使っているものです:

 rsync -rtlv --chown=process:sambausers --chmod=D770,F770 /mnt/owncloud_mnt/Engineering/ /Drive_D/docs/Engineering_test

私はディレクトリとファイルの両方で760のパーミッションを取得し、所有権のroot:rootを取得します(rsyncはrootとして実行されます)。

何が悪いのですか?

TIA


「Drive_D」なので、ターゲットファイルシステムはNTFSのようなものですか?
Sami Kuhmonen

ターゲットのファイルシステムはext4です
Roger Creasy

-pを追加すると役立ちますか?
2016

-pは、移動されたファイルのchmodを機能させます。ただし、既存のファイルのアクセス許可を上書きしないことを確認するためにテストする必要があります。ありがとう。そして、私はまだchownコマンドを発行してい
ロジャーCreasy

1
そのためには、実際に-ogが必要だと思う
Sami Kuhmonen

回答:


19

権限と所有者/グループ情報を設定することをrsyncに通知する必要があります。それを持っている--chmodか、それ--chownを伝えると仮定するのは理にかなっていますが、そうではありません。

権限が伝播するために、あなたが必要とする--perms-pのフラグと所有者/グループのためにあなたが必要とする--owner --group-og設定する所有者/グループ/許可情報のフラグを。

ドキュメントは少し不明確に書かれているため、アクセス許可がさまざまな組み合わせでどのように処理されるか、または既存のファイルが影響を受けるかどうかは明確ではありません。


まだ不明確です。sudoとして実行する必要があるため、ドキュメントlinux.die.net/man/1/rsyncは、宛先をソースと同じにしか設定できないことを指摘しています。問題は、ログに記録されたユーザーを設定する必要があることです。たとえば、$(whoami)
Brian Thomas

1

は同じ質問のこのStackOverflowバージョンがより役立つことがわかりました。それは、Rogerのようであり、rsyncにはさまざまな形式の設定が含まれているためです--chmod(私はDebianパッケージの3.1.3です)。

Samiが言ったように、rsyncには「許可」を伝える必要があるので、を含めるか、-pを使用して暗黙的に含め-aます。ただし、コマンドを実際に実行するに--chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=rは、 "D755、F644"形式ではなく、(たとえば、ディレクトリ755およびファイル644の場合)が必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.