AWS EC2 Windows 实例用户数据和任务计划程序

Posted

技术标签:

【中文标题】AWS EC2 Windows 实例用户数据和任务计划程序【英文标题】:AWS EC2 Windows Instance User Data and Task Scheduler 【发布时间】:2022-01-23 06:08:08 【问题描述】:

我正在尝试启动一个在启动时使用 boto3 客户端的 python 脚本。我正在使用任务计划程序来执行此操作。但是,如果使用 SYSTEM 用户启动任务,我会收到一个脚本错误,即找不到我在环境变量中设置的 AWS 配置文件(“botocore.exceptions.profilenotfound:找不到配置文件(默认) ”)。 我认识到这可能是我需要编辑 .aws 文件夹中的配置文件。但是,我不知道 Windows 中 SYSTEM 用户的位置。顺便说一句,该任务在手动运行时在管理员下运行。

由于我的组织关于存储密码的组策略,我无法以任何其他用户身份运行此任务,并且不允许在任务设置中勾选“不存储密码”。如果我在未勾选“不存储密码”的情况下运行任务,我会发现任务在启动时失败,错误代码为 2147943711。

我也尝试将其作为用户数据脚本。它作为第一个启动选项工作,但只要我放入“persist”标签,持久的用户数据执行就会被放置在 Windows 任务计划程序中以在 SYSTEM 用户下运行,并且上述问题适用。

我肯定不是第一个遇到这个问题的人吗?

【问题讨论】:

【参考方案1】:

更新: 我想出了这个,所以对于任何搜索这个的人...... SYSTEM 配置文件文件夹的位置是“C:\Windows\System32\Config\systemprofile”

所以我不得不添加一个 .aws 文件夹和 aws 配置文件。我只是从我的管理员用户目录中复制了一个,然后就可以了。

【讨论】:

以上是关于AWS EC2 Windows 实例用户数据和任务计划程序的主要内容,如果未能解决你的问题,请参考以下文章

在 Terraform 管理的 AWS EC2 SSH 堡垒实例上处理多个用户的 SSH 密钥

监控AWS EC2实例上的活动

AWS EC2 Windows实例无法通过公共IP访问

使用 SSH 连接到AWS EC2 Linux 实例(Windows可用SSH)

如何在 AWS EC2 实例上预安装 sbt(通过用户数据)?

Java 计划任务是不是在 AWS Auto Scaling 组的所有 EC2 实例上运行?