You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过AWS Sessions Manager在EC2执行文件的运行用户及查询方法

关于AWS SSM Run Command执行Shell脚本的运行用户问题解答

默认执行用户说明

  • 默认情况下,Linux EC2实例中的SSM Agent服务本身以root身份运行,因此你通过Run Command提交的Shell脚本默认也会以root用户身份执行
  • 如果你需要指定其他用户执行脚本,可以在脚本内容中通过su - 目标用户名 -c "要执行的命令/脚本路径"的方式手动切换身份,也可以在Run Command的AWS-RunShellScript文档参数中配置runas字段指定执行用户

确认脚本实际执行用户的方法

  • 方法1:在待执行的Shell脚本开头加入身份查询命令,执行后直接查看Run Command返回的输出结果
    示例脚本片段:
    # 输出当前执行用户的用户名
    whoami
    # 输出更完整的用户ID、用户组信息
    id
    # 后续是你的原有脚本逻辑
    
  • 方法2:在脚本中将用户信息持久化写入实例本地文件,后续登录实例查看即可
    示例代码:
    echo "执行时间: $(date) 执行用户: $(whoami)" >> /var/tmp/ssm_execution_record.log
    
    日志文件可自定义路径,确保对执行用户可写即可
  • 方法3:直接查看EC2实例本地存储的SSM执行日志
    Linux实例中SSM命令执行的标准输出日志默认存放在/var/lib/amazon/ssm/[你的实例ID]/document/orchestration/[对应Run Command命令ID]/awsrunShellScript/stdout,打开该文件即可看到你输出的用户信息,也可以查看SSM Agent全局日志/var/log/amazon/ssm/amazon-ssm-agent.log确认执行上下文

内容的提问来源于stack exchange,提问作者lflflf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 21:36:03