无法将 运行 文件传递​​给 aws ec2 运行-instances 命令

Not able to run file passed to aws ec2 run-instances command

我用来创建新 (ubuntu) 实例的命令是这样的:

aws ec2 run-instances --image-id ami-XXXXXXXX  --count 1 --instance-type 
t2.micro --key-name abcdef --query 'Instances[0].InstanceId' --user-data file:///Users/<username>/<somedir>/UserData.sh  --subnet-id subnet-XXXXXX --associate-public-ip-address

UserData.sh 包含这 3 行,包括换行符:

#!/bin/bash

mkdir ~/latest

但是,当系统创建并启动时,我没有看到 "latest" 目录。我做错了什么?

免责声明:我已经检查过了:how to pass in the user-data when launching AWS instances using CLI。以及其他论坛。

此外,有什么方法可以知道是否有任何警告消息等可以让我了解我做错了什么?是否需要 AWS 级别的任何权限?

mkdir ~/latest

谁的主目录? mkdir /home/myuser/latest 一样指定绝对路径。不要使用 C-Shell 风格的符号。