Linuxのファイル/ディレクトリの所有権について質問があります。これにより、cp
を使用してファイルをコピーできますが、ユーティリティunison
を使用してファイルをバックアップすることはできません。問題は、ユニゾンの一時ファイルの所有権の変更にあるようです。これを修正する方法を知りたいのですが。
このファイルは、次のようなディレクトリ構造になっています。
/.../A/B/C/D.txt
所有権と権限は次のようになります。
A is root:root, 500 (rx)
B is me:root, 500 (rx)
C is me:root, 700 (rwx)
D.txt is me:root, 600 (rw)
Bで始まるデスクトップ上の同じ所有および許可されたファイル構造にcp D.txt
すると、すべて問題ありません。一方、unisonを使用してディレクトリ構造をコピーすると、「。unison.D.txt.nnnnn」ファイルの所有権の変更に失敗します。修正はありますか?
UNISON 2.48.3は、2018年11月20日の02:53:54.51に変更の伝播を開始しました
[BGN] B/C /D.txtを/.../Aから/ home/me/Desktop/[つまり/home/me/Desktop/B/C/D.txt]にコピーしています
失敗:ファイルの所有権の設定中にエラーが発生しました:
操作は許可されていません[chown(/home/me/Desktop/B/C/.unison.testing.txt.a14bcb4fe76cb8c262af6a50e2043619.unison.tmp)]失敗[B/C/D.txt]:ファイルの所有権の設定中にエラーが発生しました:
操作は許可されていません[chown(/home/me/Desktop/B/C/.unison.testing.txt.a14bcb4fe76cb8c262af6a50e2043619.unison.tmp)]UNISON 2.48.3は、2018年11月20日の02:53:54.51に変更の伝播を終了しました
背景:/run/user/1000/keybase/kbfs
にあるKeybaseのオンラインファイルシステムをバックアップするためにunison&incronを使用しようとしています。そのディレクトリの下に、フォルダのコレクションがすべてme:rootによって所有されていることがわかります。すべてのディレクトリはモード500(rx)であり、700(rwx)である自分の(/.../kbfs/private/me)を保存します。すべてのファイルはモード600(rw)です。それをデスクトップにミラーリングしたい。
問題は一致しているようには見えませんが、コピーの片側にキーベースによって実行されるファイルシステムがあるという事実。 Keybaseは、そのディレクトリへの書き込みとme:rootの所有権の報告を許可していますが、unisonがデスクトップにme:rootファイルを作成しようとすると、失敗します。ファイルシステムは、アクセス許可に関して必要なものをほぼすべて報告し、読み取り/書き込み/実行の機能に関して任意の方法で動作できることを理解しています。
ユニゾンの解決策は、group = false
を使用して、ルート所有権を同期しようとしないようにすることです。その場合、ルートまたは他のユーザーの許可ビットを設定しようとしないように、perms = 0o1700
も必要です。
これは、ユニゾンがCLIから実行されている場合は機能しますが、incrondで使用すると問題が発生し続けますが、それは別の質問です...