您如何在 windows 上为 SageMaker 编写生命周期配置?
How do you write lifecycle configurations for SageMaker on windows?
我正在尝试为 SageMaker sketchbook(它最终只是一个 .sh 文件)设置启动生命周期配置,似乎无论我做什么,我的笔记本在启动时都会超时。我尽可能地简化了所有内容,以至于注释掉了 #!/bin/bash
以外的所有内容,但我仍然超时。检查 cloudwatch 这显示在日志中:
/bin/bash: /tmp/OnStart_2020-08-11-07-01jgfhhkwa: /bin/bash^M: bad interpreter: No such file or directory
通过测试,我还发现如果我在 #!/bin/bash
之前添加一个回车符 return 我会在日志中得到这个:
/tmp/OnStart_2020-08-11-06-444y3fobzp: line 1: $'\r': command not found
基于this on the \r error, and this on the ^M error,这似乎是windows和unix格式文本之间的不兼容。但是,我正在 windows 机器上通过 aws 编辑生命周期配置:
有没有什么方法可以让我通过 AWS 在我的 windows 机器上编辑这个字段,但它在另一端用 unix 正确编写?
这确实与基于 this 的不同 os' 中的特殊字符表示有关,您可以使用记事本++轻松地将 dos 表示转换为 unix 表示,然后只需“粘贴为纯文本”,它就可以正常工作
- 复制到记事本++查看
- 显示符号
- 显示所有符号
- 将“/r”替换为空 CRLF 应成为在 unix 中有效的 LF
- 复制并粘贴为纯文本
这样做解决了问题
我正在尝试为 SageMaker sketchbook(它最终只是一个 .sh 文件)设置启动生命周期配置,似乎无论我做什么,我的笔记本在启动时都会超时。我尽可能地简化了所有内容,以至于注释掉了 #!/bin/bash
以外的所有内容,但我仍然超时。检查 cloudwatch 这显示在日志中:
/bin/bash: /tmp/OnStart_2020-08-11-07-01jgfhhkwa: /bin/bash^M: bad interpreter: No such file or directory
通过测试,我还发现如果我在 #!/bin/bash
之前添加一个回车符 return 我会在日志中得到这个:
/tmp/OnStart_2020-08-11-06-444y3fobzp: line 1: $'\r': command not found
基于this on the \r error, and this on the ^M error,这似乎是windows和unix格式文本之间的不兼容。但是,我正在 windows 机器上通过 aws 编辑生命周期配置:
有没有什么方法可以让我通过 AWS 在我的 windows 机器上编辑这个字段,但它在另一端用 unix 正确编写?
这确实与基于 this 的不同 os' 中的特殊字符表示有关,您可以使用记事本++轻松地将 dos 表示转换为 unix 表示,然后只需“粘贴为纯文本”,它就可以正常工作
- 复制到记事本++查看
- 显示符号
- 显示所有符号
- 将“/r”替换为空 CRLF 应成为在 unix 中有效的 LF
- 复制并粘贴为纯文本
这样做解决了问题