![同じ Linux マシン上のユーザー間でファイル/フォルダーを共有するにはどうすればいいですか?](https://rvso.com/image/668795/%E5%90%8C%E3%81%98%20Linux%20%E3%83%9E%E3%82%B7%E3%83%B3%E4%B8%8A%E3%81%AE%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E9%96%93%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%2F%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%83%BC%E3%82%92%E5%85%B1%E6%9C%89%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%81%84%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
当社には、共通の NFS 上にホーム ディレクトリを持つ Linux シン クライアントを使用しているユーザーが 2500 人以上います。ユーザー間で Windows のようなファイル/フォルダー共有機能が必要です。
ユーザーは特定のマシンにリンクされていないため、IP とユーザーのマッピングはありません。したがって、CIFS/SMB はオプションではありません。(すべてのファイルが同じ物理マシンに存在することを考えると、特定の規模ではオーバーヘッドになると思われます)
移行先ユーザーのホーム ディレクトリ (または共通ディレクトリ) 内に、移行元ユーザーの共有ディレクトリのシンボリック リンクを作成しようとしました。ただし、セットアップではホーム ディレクトリの権限が 700 であるため、共有ディレクトリ (権限は緩和されていますが) にはユーザーがアクセスできません。これが正しい方法かどうかはわかりません。
これを効率的に実装する良い方法を提案してください。
PS: すべてのシステムは Linux/Ubuntu で動作します。ファイル マネージャーは Thunar です (必要に応じて変更できます)
。PS2: 私はかなりの量のシェル/Python/Perl スクリプトを書くことができます。ソリューションに必要な場合は、Thunar アプリも編集します。
編集:
コメントと回答に従って、ACLを試しました。NFSサーバーでsetfaclを使用して権限を設定し、新しい権限がそこに反映されましたが、ないgetfacl で確認すると、NFS クライアント マシンに反映されます。
NFS サーバー# setfacl -Rm u:akila:rwX /nfshome/jp/shared
NFS サーバー# getfacl /nfshome/jp/shared
# ファイル: nfshome/jp/shared
# 所有者: jp
# グループ: users
ユーザー::rwx
ユーザー:akila:rwx
group::rwx
mask::rwx
other::rx
------------
NFS-Client> getfacl /nfshome/jp/shared
# ファイル: nfshome/jp/shared/
# 所有者: jp
# グループ: users
user::rwx
group::rwx
other::rx
答え1
すでに提案されているように、ACL を使用してそのような設定を行ったり、スティッキー ビット ファイル システム/フォルダー (/tmp など) を作成したりできます。これは、全員が互いのデータを表示できるようにしながらも、個別の権限を保持したい場合に使用します。
個別の権限を保持したくない場合は、すべてのユーザーに一括ディレクトリ/共有を与えるだけでよいので、これほど簡単なものはありません。共有ディレクトリ (ローカル ユーザーのホーム) のローカル アカウント所有者を作成し、すべてのユーザーがそのアカウントに sudo でアクセスできるようにします。この場合、Sudoers が最高の味方です。これほど簡単なものはありません。