我使用 useradd abcservice --shell /usr/sbin/nologin
创建了一个名为
abcservice的用户,并且我有一个 bash 脚本(
auto.sh
),其内容为:
#!/bin/bash
# Download Python script from S3 bucket
aws s3 cp s3://myscript/local_account.py /tmp/local_account.py
# Run the script
# The script will push the report to S3 bucket
sudo python3 /tmp/local_account.py
我的 cronjob 设置是
* * * * * /bin/bash /tmp/auto.sh
(用于测试)
由于某种原因,abcserviec 无法执行 cronjob...
auto.sh
的权限为 777
我已经检查了用户、组、/var/log/messages、IAM 角色和策略、SELinux 和 crond。
用你的 cronjob 试试这个:
* * * * * /bin/bash /tmp/auto.sh >> output.log 2>&1
我认为问题可能是auto.sh中的AWS命令设置不正确。您可能需要在 auto.sh 脚本中使用 AWS 命令的完整路径。您可以通过运行以下命令找到完整路径:
which aws
。
/path/to/command/aws cp s3...