AWS EFS执行create-access-point创建访问点命令报错如何解决?
命令报错原因
你执行的命令出现报错,本质是shell参数解析错误,具体触发问题的点有两个:
--root-directory的参数值包含{}、=、,等shell特殊字符,未使用引号包裹,导致shell将参数拆分为多个独立片段传递给AWS CLI,工具无法识别拆分出来的片段,最终抛出未知选项错误- 参数内部
Permissions字段的双引号,和路径部分的双引号产生嵌套冲突,进一步打乱了参数结构
你收到的报错信息对应就是参数拆分后的结果:
"usage: aws [options] [ ...] [parameters]
To see help text, you can run:
aws help
aws help
aws help
Unknown options: Path=/mnt/,CreationInfo=Permissions=0755, Path=/mnt/,CreationInfo=OwnerGid=1001"
修正后的命令
Linux/macOS 下的bash/zsh环境直接使用单引号包裹整个--root-directory的参数值即可,避免shell解析特殊字符:
aws efs create-access-point --file-system-id fs-0163391d24d0b14b5 --posix-user Uid=1001,Gid=1001 --root-directory 'Path="/mnt/",CreationInfo={OwnerUid=1001,OwnerGid=1001,Permissions="0755"}'
如果是Windows PowerShell环境,需要对特殊字符做转义处理,修正后写法如下:
aws efs create-access-point --file-system-id fs-0163391d24d0b14b5 --posix-user Uid=1001,Gid=1001 --root-directory "Path=`"/mnt/`",CreationInfo={`OwnerUid=1001,OwnerGid=1001,Permissions=`"0755`"}"
内容的提问来源于stack exchange,提问作者Pradeep Gameria
相关产品推荐
相关产品推荐

