php 服务器 内存 exec,php - PHP exec:预设默认错误(23)-部分传输 - 堆栈内存溢出...

我有用于备份的Web服务,但是自从迁移到PHP7(?)以来,备份不再起作用。

所有Web服务链接均有效。

我隔离了PHP 7中有问题的代码,但它可能来自其他东西!

//$outputShell=shell_exec('sudo cat /etc/passwd');

exec('sudo /usr/sbin/dirvish --vault L106',$outputShell, $codeErreur);

//exec('sudo cat /etc/passwd',$outputShell, $codeErreur);

//

if ($codeErreur == 0){

var_dump ("ok",$outputShell,$codeErreur);

}

else{

var_dump ("nook",$outputShell,$codeErreur);

}

?>

当我直接通过浏览器执行此代码时,出现以下错误:

dirvish错误:分支/ san / pcdsi / L106:默认图像20190221154124 dirvish错误L106:默认错误(23)-部分传输expr:语法错误expr:非整数参数dirvish错误:分支/ san / pcdsi / L106:默认图像20190221154136失败

和日志苦恼

rsync_error: *执行周期0 rsync:change_dir“ / mnt / pc-backup / L106 / Users /”失败:没有这样的文件或目录(2)rsync错误:在main.c中未传输某些文件/文件(请参阅先前的错误)(代码23)( 1668)[Receiver = 3.1.2] rsync:[Receiver]写错误:管道损坏(32) 执行周期1 * rsync:change_dir“ / mnt / pc-backup / L106 / Users /”失败:没有这样的文件或目录(2)rsync错误:某些文件/属性未传输(请参见先前的错误)(代码23)位于main.c(1668)[Receiver = 3.1.2] rsync:[Receiver]写错误:管道损坏(32)

如果我在根目录下运行/ usr / sbin / dirvish --vault L106命令,那么备份就没有任何问题!

另外,我通过cat / etc / passwd测试的注释中的部分有效!

当然,我检查了权限sudo,并且通过浏览器www-data启动的脚本是sudo,没有密码...在这方面没有问题

在我的旧PHP 5服务器上,此PHP代码有效!

你有想法吗? 我持有? -系统问题? -PHP问题? -PHP 7平台上的苦恼问题?

简而言之,exec命令('sudo / usr / sbin / dirvish --vault L106', $ outputShell, $ errorCode); 在PHP 5中有效,而在PHP 7中无效!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值