0

我想使用“passwd”命令通过php脚本更改linux pc的密码,但不知何故这对我不起作用,当m在终端中运行相同的命令时它执行得很好,但是当m在浏览器中运行相同的命令时它显示“密码:权限被拒绝错误”。

我检查了权限,它们是 755,所有权是“wwwrun”。

并且 exec() 函数在我的 php.ini 文件中没有被禁用。

请提供解决方案,因为我必须在星期一提交此申请。

4

2 回答 2

1

这应该有效:

shell_exec("sudo -u root -c 'echo test2 | passwd --stdin testuser'");

sudo而且您的命令仅对您不起作用,echo并且在当前用户凭据下执行管道之后

于 2013-02-23T09:34:15.047 回答
0

必须以 root 身份运行的程序是passwd而不是echo

echo mypswabc | sudo -u root passwd --stdin testuser
于 2013-02-23T10:11:01.820 回答