当前位置: 首页 > 面试题库 >

如何从php文件重启Linux

燕朝明
2023-03-14
问题内容

我在Linux系统上有一个brftv用户,并且我有运行nginx的www-data。

从终端我可以让我的brftv用户运行

sudo /sbin/reboot

自从我将以下内容添加到我的/ etc / sudoers文件的“ #user权限规范”部分后,它就可以正常工作:

brftv ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff
www-data ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff

但是当我的php文件运行以下代码时,什么也没发生

exec('nohup sudo -u brftv /sbin/reboot');

我将www-data行添加到上面的etc / sudoers中,以防在运行上述exec()时有必要(即使我以-u
brftv身份运行它,但我不是linux专家,只是认为更好是安全的)如果)。

运行exec()的php文件由www-data拥有,而chmod为777,因此所有文件都应具有从其执行的特权。

我尝试通过浏览器(我假设用户www-data运行)和从终端$运行php文件php myFile.php

-------------------更新-----------------

我做了这个

sudo chmod u s /sbin/reboot

这允许我系统上的所有用户在没有密码的情况下运行重新启动cmd。它可以工作,但我宁愿不让它保持打开状态,因此如果有人暗示我的问题是什么,那么使用/ etc /
sudoers的其他解决方案会更好。

我遵循了这个教程http://linux.byexamples.com/archives/315/how-to-shutdown-and-reboot-
without-sudo-password/,第二个例子几乎是我没有得到的为了我..


问题答案:

我可以在我的系统上运行此方法的唯一方法是通过像这样的家伙在/ sbin / reboot上更改chmod来“破解”它

http://linux.byexamples.com/archives/315/how-to-shutdown-and-reboot-without-
sudo-password/

须藤chmod u + s / sbin / reboot

我意识到这在许多情况下可能不是最佳选择,但是该mediaPlayer已被锁定,因此无论如何都无法访问任何终端。



 类似资料:
  • 我有一个问题。我想用php代码重新启动ubuntu,但我不能。我已经尝试了互联网上的所有代码,比如 和 但他们都什么都不做。请帮帮我我需要这个密码。

  • 问题内容: 谁能告诉我如何从PHP脚本执行.bat文件? 我努力了: 什么都没用。我检查了PHP手册并在Google周围搜索,但找不到一个好的答案。有人知道我要去哪里错吗? 我正在运行Windows 2003 Server,并且已成功手动运行.bat文件,它可以执行我需要的操作;我只需要能够以编程方式启动它。 问题答案: 您可能需要通过来运行它,例如:

  • 我需要在AWSEC2实例中检查并启用某些php函数。(列在下面)。我已经通过了php。ini文件,但我找不到这些文件的任何引用。当我运行时,我也看不到它们。我需要逐个安装它们吗?如果是,我如何在unix命令行上执行此操作? 这些是功能 启用PHP函数: -dir -readdir -opendir -ava -exec -set_time_limit -ini_alter -ini_set -in

  • 我目前正在尝试将我的phpmyadmin服务器连接到android studio。如果重要的话,我正在使用模拟器。我制作了一些php文件来接收数据并更改数据库中的数据。 checkuserexist.php 在我的Android Studio程序中: InputStream=conn.getInputStream();返回一个exeption:failed to connect to/10.0.2

  • 我有一些c文件和.h头文件。现在我必须从这个.c和.h文件中创建.so文件。我怎么做?

  • 我在本地主机上运行php文件时遇到一些问题。当我在浏览器中运行它们时,我只能看到php代码,我只是想建立到MySql数据库的连接。我已经安装了XAMPP。 例如: ? 当我运行它时,我看到的都是PHP代码,有人知道为什么吗? 提前感谢!