我有一个需要在我的EC2实例上的ec2-user下运行的cron作业,它需要能够写入我的web应用程序的标准日志文件.但是,日志文件由webapp拥有(按照正常情况).
我已成功更改了日志文件的权限,以便所有者和组webapp:webapp都可以访问它们.但是当我遇到麻烦的时候,我尝试将ec2用户添加到webapp组.
我可以使用sudo usermod -a -G webapp ec2-user在SSH中做得很好但是当我尝试通过EB容器命令添加此命令时,我得到一个错误,说你必须有一个tty来运行sudo.没有sudo运行命令会给我/ bin / sh:usermod:command not found.
解决方法
You need to run this command from a container_command before executing any commands with sudo:
echo Defaults:root \!requiretty >> /etc/sudoers
在上下文中(在.ebextensions / yourconf.config中)
container_commands: 001-enableroot: command: echo Defaults:root \!requiretty >> /etc/sudoers #disables error related to needing a tty for sudo,allows running without cli