我正在尝试通过 bash 脚本启动 AWS 实例。该 bash 脚本由 PHP 脚本调用。
我的示例 php 脚本:
<?php
exec("sh /var/www/html/pushDatToAWS.sh >> $trainLog");
?>
我的 bash 脚本示例:
#!/bin/bash
insId='i-abcde'
aws ec2 start-instances wait --instance-ids $insId --region us-west-2
我已经在我的机器上配置了 aws cli。我收到以下错误。
/var/www/html/pushDatToAWS.sh: 21: /var/www/html/pushDatToAWS.sh: aws: not found
该文件有 777 权限,当我尝试从终端执行时,一切正常。当我检查时,which aws
我得到的回复表明/home/name/.local/bin/aws
。我已将路径导出到 bashrc。
export AWS_PATH=$PATH:/home/magesh/.local/bin
我尝试对我的 aws start 实例命令的路径进行硬编码:
/home/name/.local/bin/aws start-instances wait --instance-ids $insId --region us-west-2
为此,我收到权限被拒绝错误。我尝试将文件夹的用户所有权更改为root:www-data
和username:www-data
。两者都不起作用。