user1:user1
Unixには2人のユーザーとグループがありますuser2:user2
。
myDirectory
次の詳細を含むディレクトリがあります(ls -ltr
)。
drwxr-xr-x. 4 user2 user2 35 Apr 27 10:16 myDirectory
今、私はmyScript.sh
次のスクリプトを実行していますuser1
。
#!/bin/sh
whoami
if [ -f /myDirectory/*.tar.gz ]
then
rm -f /myDirectory/*.tar.gz
fi
cp -f someDirectory/*.tar.gz /myDirectory/
ただし、次のエラーが発生します。
cp: cannot create regular file ‘/myDirectory/myTar.tar.gz’: Permission denied
私は何が間違っていましたか?この問題をどのように解決できますか?
ベストアンサー1
これを行うには、グループ権限を使用できます。ユーザーグループを作成し、2人のユーザーを追加し、ターゲットディレクトリのグループ所有権を変更する必要があります。まず、グループを作成します。
groupadd newusergroup
次に、ユーザーを追加します。
usermod -G newusergroup user1
usermod -G newusergroup user2
次に、ターゲットディレクトリの権限を変更します。
chgrp newusergroup /myDirectory
これは、両方のユーザーがディレクトリにアクセスできるようにしたいと仮定します。 user1にのみアクセス権を付与するには、次のように権限を変更します。
chown user1.user1 /myDirectory