1.共有ディレクトリに対応するumaskを設定します。
2.適切なデフォルトaclをインストールします。
3. SGIDビットを設定します。
まあ、彼らは解決策の1つを適用した、または一度に適用した。 すべてが機能しているようです。 両方のユーザーは共有ディレクトリのコンテンツ全体へのフルアクセス権を持ち、このディレクトリ内の新しいファイルはその権限を継承しますが、カメラからこのディレクトリに写真をスローしました。 あなたの妻はユーザーの下でシステムに入り、不十分な権限についてのメッセージを保存するときにのみこれらの写真を少し変更することにします。 コピーしたファイルは共有ディレクトリの権限を継承していなかったことがわかります。 なんで? はい、 cpユーティリティはumaskとaclを考慮しないためです。 元の権限を保持したままファイルをコピーするか、権限が減らされます。すべてコピーするディレクトリの権限に依存します。
この記事では、この問題を解決する独自の方法を提供します。 いいえ、メソッドは美しくもエレガントでもありません。そのため、メソッドの説明と併せて、Habrasocietyにこの問題について議論し、Linuxデスクトップ上に共通ディレクトリを整理するためのソリューションを提供することをお勧めします。
必要なツール
これらのツールは2つしかありません。
1) famまたはgamin-ファイルシステム監視サービス。 使用するものを選択しますが、gaminをお勧めします。fam自体が古く、gaminがより安定して動作するためです。
2) fileschanged-基本的にfamまたはgaminクライアントプログラムである小さなコンソールユーティリティ。
使用例
実験カタログを〜/写真にします。 すべての行動は彼と一緒に行われます。
まず、次の内容のスクリプト/ usr / local / bin / scriptを作成する必要があります
#!/bin/bash
if [ -d "$2" ]; then
chmod 774 "$2"
elif [ -f "$2" ]; then
chmod 664 "$2"
fi
このスクリプトは〜/ Photoディレクトリ内のすべての新しいアイテムの権利を変更します。 rw-rw-r--ファイルの場合、 rwxrwxr-xディレクトリの場合。 famを使用する場合は、必ずfamデーモンを実行してください
/etc/rc.d/fam start
fileschangedを使用して、このスクリプトを実行する必要があります。
fileschanged -cCfr -x /usr/local/bin/script ~/ &
それだけです。 これで、 fileschsngedは、 fam(gamin)が〜/ Photoディレクトリの変更について言ったことをリッスンし、 / usr / local / bin / scriptスクリプトをすべてのnewに適用します。
共通カタログをどのように整理しますか?
私のブログの記事に基づいて書かれています
UPD: khimが提案する別のソリューション。 一番下の行はこれです:
1.両方のユーザーが異なるプライマリグループに属している必要があります。 これはRedHatで行われます。 新しいユーザーを作成すると、同じ名前のグループが作成されます。
2.両方のユーザーの家族グループを作成します(たとえば)。
3.ファミリーグループを共有ディレクトリの所有者にし、それに権利を設定します2775。
4. gnomeの場合、gconf-editorを実行し、/ system / storage / default_options / vfatセクションでumask 002を設定します。これは、FS fatを搭載したすべてのマウントデバイスで、ファイルのアクセス許可が664になることを意味します。kdeでこれを行う方法はまだわかりません、手元にない。
5.次に、コンテンツを共有ディレクトリに大胆にコピーします。 このコンテンツの所有者はグループファミリ(カタログから継承)になり、権利は664のままになります。
PS。 最初のポイントは、ファットメディアから個人ディレクトリにコピーされたファイルを自分だけが利用できるようにすることです。
PSS これはすべて良いことですが、CDについてはどうでしょう。 そこで、読み取り専用ファイルとumaskインストールが失敗します。