php 执行cmd 权限,[转载]ubuntu php 调用系统命令 以及实现同时执行多
1.第一点就是注意写上命令的完整路径:
比如调用adb命令:
$test="/home/wxl/platform-tools/adb devices";
echo shell_exec($test);
2.第二点就是注意看apache所在用户组具不具有执行权限:
比如调用iptables命令(需要root权限):
2.1先编译一个可执行文件cmd.cpp,使得当前用户可以执行root权限命令:
#include
#include
#include
#include
#include
#include
using namespace std;
int main(int ac,char
**argv) // 获取iptables命令参数
{
string get("");
for(int i=1;i
string temp(argv[i]);
get+=" ";
get+=temp;
}
string
cmd=get; //命令字符串
cout<
0"<
setuid(0); //将当前用户的uid设置为0
(root用户的uid为0),使其具有root权限
system(cmd.c_str()); //执行命令
cout<
0"<
}
编译:g++ -o cmd -Wall cmd.cpp
2.2再修改cmd文件的权限问题:
ls -al查看cmd的权限:
-rwxr-xr-- 1 root root 8465
Dec 2 16:10 cmd
注意两个地方,第一个:chmod u+s cmd(使得群组里面的用户可以以root权限调用cmd)
第二个地方:chown :www-data(修改群组,把群组改为apache所在群组)
其中,查看群组命令:ps -ef | grep apache
2.3在php中调用cmd来执行root命令:
$cmdstr="iptables -L";
passthru("/var/www/cmd /sbin/iptables -L");
3.有关group和user的相关信息,请点击查看
===================多条shell命令的执行=============
4. 如下图所示:
然后修改tmp.sh脚本为可执行文件
最后执行shell脚本即可
注意:其中多条shell命令写在一起,用n换行符隔开每一条命令。千万不能直接用回车符。
5.要实现sudo命令,就需要给该用户赋予root权限,切不需要输入密码。具体操作如下:
打开文件:vim sudo /etc/sudoers
在最后一行添加具有root执行权限的用户即可。
php 执行cmd 权限,[转载]ubuntu php 调用系统命令 以及实现同时执行多相关推荐
- c执行cmd pdf2swf_在web 上调用exe权限解决方法 ,关于FlashPaper2 命令行FlashPrinterexe的调用...
http://hi.baidu.com/jiaxw/blog/item/93b619f38c5d805b342accf8.html 在此之前我已经找过很多国外的文章,很多人都碰到类似的情况 就是通过a ...
- python调用ping命令并输出ttl_详解Python调用系统命令的六种方法
作为胶水语言,Python可以很方便的执行系统命令,Python3中常用的执行操作系统命令有os.system().os.popen().subprocess.popen().subprocess.c ...
- linux php 执行命令权限不够,PHP调用Linux命令权限不足问题解决方法
PHP调用Linux命令权限不足问题解决方法 业务背景: yourcmd为我的linux程序,它对权限要求非常严格,当用php去执行yourcmd程序 系统:CentOS 6.3 apache是ph ...
- python执行cmd命令行异步执行_Python 异步调用命令行工具
当你在自己的 Python 程序中采用了基于事件循环的异步编程方法之后,你就会发现自己不自觉地被其牢牢吸引住,并不是说这一方法多么棒,而是因为你不得不想办法保证程序中的任意环节都不能是阻塞的! 例如当 ...
- java 执行cmd windows_Windows平台Java调用cmd命令执行程序
第一种方式:利用cmd方式 * 执行cmd命令 * * @param command * @throws IOException */ public static String executeCmd( ...
- python 调用控制台并获取返回结果_python脚本执行CMD命令并返回结果的例子
最近写脚本的时想要用python直接在脚本中去执行cmd命令,并且将返回值打印出来供下面调用,所以特意查了下,发现主要有一下几种方式来实现,很简单: 就拿执行adb, adb shell, adb d ...
- python调用cmd执行命令_详解python调用cmd命令三种方法
目前我使用到的python中执行cmd的方式有三种 使用os.system("cmd") 该方法在调用完shell脚本后,返回一个16位的二进制数,低位为杀死所调用脚本的信号号码, ...
- Java调用linux指令工具类,直接执行cmd,执行grep指令返回结果,执行sed追加指令,hdfs下载指令,获取文件行数
Java调用linux指令工具类,直接执行cmd,执行grep指令返回结果,执行sed追加指令,hdfs下载指令,获取文件行数 问题背景 LinuxUtils工具类 Lyric:梦想挟带眼泪 问题背景 ...
- 移动硬盘linux无权限,ubuntu上移动硬盘中文件没有可执行权限的解决方法
ubuntu上移动硬盘中文件没有可执行权限的解决方法,移动硬盘自动挂载到ubuntu上后,移动硬盘中的文件没有可执行权限的解决方法如下: 例如我的移动硬盘卷标为:workspace 当把移动硬盘插入P ...
最新文章
- 26.使用ajaxSetup()方法设置全局Ajax默认选项
- ABAP中的系统变量SY-INDEX与SY-TABIX
- 【软考-软件设计师】CPU的功能
- 求整数的位数及各位数字之和(C语言)
- 数据库每日一题 2020.04.29
- 前端-----小米商城模块练习
- 这“⼀⼝”和那“一口”有什么不同,关于unicode一个小知识
- 在Ubuntu16.04 安装RabbitVCS
- BLENDER快捷键(个人防止忘记的几个快捷键)
- 微信封的是微信号还是服务器,微信号被封,那这个手机号是不是废了?
- 笔试加分题:有16瓶水,其中只有一瓶水有毒,小白鼠喝一滴之后一小时会死。请问最少用() 只小白鼠,在1小时内一定可以找出有毒的水?
- android手机的语音助手在哪里设置,华为语音助手在哪设置 华为语音助手唤醒具体步骤...
- 前端xmp-js解析图片xmp信息
- altera fpga 型号说明_ALTERA的FPGA命名规则
- 微信公众号流量入口-搜索排名
- 使用Vert.x + SpringBoot编写业务系统
- 高企的专项审计里面是不是需要产学研协议?
- 计算机毕业设计node.js+vue+Element电商后台管理系统
- vue实现组件双向绑定
- 架构与开发语言 购OA最重要的两个核心