ユーザーは2人user1
でuser2
Ubuntu PCにいます。user1
インストールしながら作成しました。user2
実行可能なPythonプログラムを作成しました。これでプログラムがパスに表示されます/home/user1/programs/
。したがって、user2
.homeディレクトリにあるプログラムが実行されていますuser1
。実行中に出力ディレクトリにファイルを作成できません/home/user1/programs/Output/
。だから、引き続き権限を確認し、以下を見つけました。
$ ls -l /home/user1/programs/
drwxrwxr-x 10 user1 user1 4096 Sep 6 11:30 Output
drwxrwxr-x 2 user1 user1 4096 Sep 5 17:50 source
$ cd Output
$ mkdir dummy1
$ ls -l
drwxrwxr-x 2 user1 user1 4096 Sep 6 11:30 dummy1
$ cd dummy1
$ vi a.txt
$ ls -l
-rw-rw-r-- 1 user1 user1 7 Sep 6 11:31 a.txt
$ cd ..
$ sudo mkdir dummy2
$ ls -l
drwxr-xr-x 2 root root 4096 Sep 6 12:37 dummy2
他のユーザー(例:)がuser2
。write
home
user1
同じ権限を持つ同じグループにuser1
ユーザーを追加してグループを作成するにはどうすればよいですか?user2
user2
rwx (7)
答え1
sudo -i
addgroup mygroup
addgroup user1 mygroup
addgroup user2 mygroup
chgrp -R mygroup /home/user1/programs/Output/
chmod -R ug+rwX /home/user1/programs/Output/
find /home/user1/programs/Output/ -type d -exec chmod g+s {} +
exit
これにより、名前付きグループが追加され、2人のユーザーがグループに追加され、mygroup
すべてのファイルとサブディレクトリのグループ所有権がに変更されます。/home/user1/programs/Output/
mygroup
次に、ディレクトリの読み取り、書き込み、および実行権限を設定し、ディレクトリ内のすべてのファイルを読み書きできるようにします。今回も、これは再帰的に適用されます。../Output/
最後に、chmod g+s
以下に生成されたすべてのファイルとサブディレクトリ/home/user1/programs/Output/
がmygroup
。
これはすべてルートとして実行する必要があるため、sudo -i
ルートシェルを最初に起動し、exit
ルートシェルを最後に終了します。