使用PHP脚本更改Linux主机名

时间:2013-05-08 11:00:39

标签: php linux sudo hostname

我正在尝试使用PHP脚本更改Linux主机名。我可以使用命令 hostname

直接在Linux机器上执行此操作

但是当我使用下面的PHP语句时......它没有用。

system('sudo hostname '.trim($Host));

请提出解决方案。

2 个答案:

答案 0 :(得分:3)

假设您的Apache用户可以在不输入密码的情况下运行sudo命令(顺便说一下,这将是一个巨大的安全漏洞,所以请不要这样做)你可以这样做:

exec("sudo hostname " . $hostname);

为了确保您的www-user可以执行此操作,请使用以下行修改/etc/sudoers

www-user ALL=NOPASSWD: /bin/hostname

无论你想通过改变主机名来完成什么,你都可能会发现你可以做到另一种更安全的方式。 对于阅读此内容的任何人,我完全不建议您按照这些说明进行操作,而是通过升级www-user帐户的权限来打开您的服务器。

答案 1 :(得分:0)

使用exec()函数尝试此命令。 http://php.net/manual/de/function.exec.php