gpt4 book ai didi

php - 通过 php 执行 bash 脚本

转载 作者:太空狗 更新时间:2023-10-29 12:41:44 25 4
gpt4 key购买 nike

大家好,我正在尝试实现一个可以操作我的无线网络的 Web 界面。

其中一项操作是将我的卡配置为监控模式。很简单,如果你运行这个命令:

bash prepareCard.sh wlan0

而脚本prepareCard.sh如下:

#! /bin/bash
IFACE=$1
ifconfig $IFACE down
iwconfig $IFACE mode monitor
ifconfig $IFACE up

现在我想通过 php 脚本执行这个脚本:

$cmd = shell_exec("bash prepareCard.sh wlan0");

当我检查卡是否已设置为监控模式时,什么都没有!它仍然处于管理模式!你能告诉我我哪里出错了吗?

最佳答案

假设运行脚本的网络服务器用户没有足够的权限,您可以尝试通过这种方式修复它:

使用命令visudo 编辑/etc/sudoers 并添加这一行:

ALL    ALL=(root) NOPASSWD: /absolute/path/prepareCard.sh

确保为脚本设置权限 700,这样其他人就无法编辑它。然后用 sudo 像这样执行你的脚本:

$cmd = shell_exec("sudo /absolute/path/prepareCard.sh wlan0");

这应该以 root 身份执行脚本,无需输入密码。

关于php - 通过 php 执行 bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40375975/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com