以下は、Sudo特権を持つアカウントから実行されています。
次のコマンドで作成されたユーザーTomcat
があります
Sudo useradd -g Tomcat -d /usr/local/Tomcat -m -s /bin/false Tomcat
また、次のコマンドで作成されたユーザーtest
があります
Sudo adduser test
このフォルダーにはtemp
フォルダーとperms 777
が設定されています
chmod 777 temp
私の観察は次のとおりです。
## This works and I can see temp/a.txt being created
Sudo -u Tomcat touch temp/a.txt
## Does not work.
Sudo su -c "touch temp/b.txt" Tomcat
## works
Sudo -u test touch temp/c.txt
## works
Sudo su -c "touch temp/d.txt" test
だから私の質問は、Tomcatユーザーの何が間違っているのですか?
Tomcatのシェルは/ bin/falseで、su-asで実行できます
Sudo su -s /bin/bash -c "touch temp/b.txt" Tomcat