Linuxで他のユーザーにフォルダ権限を付与する方法は?

Linuxで他のユーザーにフォルダ権限を付与する方法は?

user12つのユーザーアカウントを持つLinuxシステムを検討してください。私のホームディレクトリにあるフォルダへの読み取り/書き込みアクセス権を持ちたいuser2です。user2user1

これまで、2人のユーザーのグループが作成され、2人のユーザーが追加されました。

groupadd twousers
usermod -a -G twousers user1
usermod -a -G twousers user2

次に、グループとパスを変更し、権限を変更します。

chgrp twousers /home/user1/folder
chmod g+rwx /home/user1/folder

残念ながら、user2フォルダにはまだアクセスできません/home/user1/folder。これは簡単に見えますが、なんだか迷子になりました。私は何を見逃していますか?

ベストアンサー1

現在経験している問題は予想される問題です。実際、他のユーザーのフォルダ内のフォルダを共有しようとしていますhome。セキュリティ上の理由から、フォルダは所有者だけがアクセスできる必要があります(そしてroot、しかしこれは別の話です)。

問題を解決するには、潜在的な親フォルダが両方のユーザーに対して同じ権限を持つ別のフォルダを作成する必要があります(例:)/data/shared_folder

以下は簡単なステップバイステップの例です。

  • 親フォルダを作成します(必須ではありませんが、例として使用します)。

     # cd /
     # mkdir data
    
  • 共有サブフォルダを作成する:

     # cd data
     # mkdir shared_folder
    
  • オプション:この手順では、将来の共有フォルダのコンテンツをにコピーできますshared_folder

     # cp -p  /path/to/folder/* /data/shared_folder/
    
  • グループsharedと2人のユーザーを作成して追加しますbobalice

     # groupadd shared
     # usermod -aG shared bob
     # usermod -aG shared alice
    
  • グループフォルダの所有権を再帰的に変更します。

     # chgrp -R shared /data
    
  • グループに読み取り、書き込み、および実行(すでに実行可能ファイルのみ)権限を追加しますshared

     # chmod -R g+rwX /data
    
  • Bob今フォルダAlice内で欲しいものは何でもできますが。shareddata

ユースケースによっては1つのレベルしかありませんが、この例では、親フォルダ権限がファイルシステムのより深いフォルダにどのように影響し、より大きなスケーラビリティと粒度を可能にするかを示します。

おすすめ記事