php 执行shell_exec sudo su root -c 无效果

浏览:1086次阅读
没有评论

sudo 执行命令的流程

将当前用户切换到超级用户下,或切换到指定的用户下,
然后以超级用户或其指定切换到的用户身份执行命令,执行完成后,直接退回到当前用户。
具体工作过程如下:
当用户执行 sudo 时,系统会主动寻找 /etc/sudoers 文件,判断该用户是否有执行 sudo 的权限
–> 确认用户具有可执行 sudo 的权限后,让用户输入用户自己的密码确认
–> 若密码输入成功,则开始执行 sudo 后续的命令

解决方法

编辑 /etc/sudoers 文件 或输入 visudo 进入编辑
找到以下内容
## Allow root to run any commands anywhere
## 允许 root 用户执行任意路径下的任意命令

追加一行
让 username 拥有超级管理用户权限不输入密码

username ALL=(ALL) NOPASSWD: ALL

案例

  1. 让 test 用户拥有 sudo mysqld 的控制权限
    test ALL=(ALL) /etc/init.d/mysqld
正文完
 0
包子
版权声明:本站原创文章,由 包子 于2021-10-14发表,共计403字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)