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

如何在root用户下从PHP运行bash脚本

微生毅
2023-03-14
问题内容

如何在 根用户 (具有所有权限)而不是 没人 用户(php默认用户)下从PHP运行bash脚本?

在sudo visudo之后,多数民众赞成在我的输出:

Defaults        env_keep += "LINES COLUMNS"
Defaults        env_keep += "LSCOLORS"
Defaults        env_keep += "SSH_AUTH_SOCK"
Defaults        env_keep += "TZ"
Defaults        env_keep += "DISPLAY XAUTHORIZATION XAUTHORITY"
Defaults        env_keep += "EDITOR VISUAL"
Defaults        env_keep += "HOME MAIL"

#User privilege specification
root    ALL=(ALL) ALL
%admin  ALL=(ALL) ALL


# Uncomment to allow people in group wheel to run all commands
# %wheel        ALL=(ALL) ALL

# Same thing without a password
# %wheel        ALL=(ALL) NOPASSWD: ALL

# Samples
# %users  ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
# %users  localhost=/sbin/shutdown -h now

问题答案:

您可以使用sudo:

exec("sudo /your/script");

您应该允许在没有密码提示的情况下执行脚本。sudo visudo在控制台中运行,并将以下字符串添加到末尾:

nobody ALL = NOPASSWD: /your/script

您必须正确设置文件模式,以确保没有人可以修改此脚本并将危险内容放入该脚本(在根控制台中):

chown root:root /your/script
chmod 755 /your/script


 类似资料:
  • 我正在尝试以root用户身份运行脚本。这是我的密码 它在出错 我也遵循了这些方法,但最终出现了错误

  • 我试图从一个简单的BASH脚本执行一个简单的PHP脚本。这个网站上的答案不能回答我的问题。 这是我的BASH脚本 这是我的PHP脚本 从命令行运行BASH脚本时,出现以下错误。 我试过键入/usr/bin/php-q/home/username/subfolder/durable2。这很好。它跑起来了

  • 问题内容: Bash脚本非常有用,可以节省很多编程时间。那么,如何在C ++程序中启动bash脚本呢?另外,如果您知道如何使用户成为超级用户,那也会很好。谢谢! 问题答案: 使用功能。

  • 问题内容: 我们如何使用linux bash运行php脚本? php文件test.php test.php包含。 问题答案: 在命令行中输入以下内容: 确保filename.php既包含并执行您要测试的功能。您回显的所有内容都会显示在控制台中,包括错误。 请注意,Apache PHP的php.ini通常不同于CLI PHP(命令行界面)。 参考:https : //secure.php.net/m

  • AMH 怎么指定www用户来运行php脚本。我现在运行脚本出错了。 提示root用户不行。 搞不了。

  • 我想从python脚本内部运行下面的bash脚本。 我的python脚本/函数如下所示 但是,我收到以下错误 - 我正在使用集群,我的系统规格如下 - 如果我遗漏了什么,请告诉我。我的基本问题是如何从给定的python脚本运行另一个python script,特别是当我们需要激活和停用虚拟环境时,因为由于一些依赖冲突,父python script和子python cript需要两个不同的虚拟环境。