我有一个由 Apache 执行的服务器端脚本,以www-data
. http://example.com/script.sh
远程调用 ( )时,该脚本在服务器上运行良好。
我试图在同一台服务器上运行相同的脚本root
,模仿www-data
。它没有,甚至su www-data -c 'id'
或runuser -l www-data -c 'id'
失败
This account is currently not available.
2016 Nov 4 09:45:54 eu1 Attempted login by root on /dev/pts/0
此帐户确实被交互式登录锁定(这是正常的):
# grep www-data /etc/shadow
www-data:*:15246:0:99999:7:::
# grep www-data /etc/passwd
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
由于 Apache 设法运行一些东西,www-data
所以root
应该能够做同样的事情。怎么做?
尝试
由于 www-data 没有外壳,因此您必须使用该
-s
选项指定一个。