【ModelArts】能在CloudShell运行成功的命令无法通过训练作业运行

举报
づ ̄3 ̄づ╭❤~ 发表于 2023/09/03 17:11:57 2023/09/03
【摘要】 背景用户使用自定义镜像去运行训练作业时会出现 python找不到的情况。但是用户直接通过CloudShell去调试时,能正常运行。原因:CloudShell进入到容器的Terminal时,会进行初始化。而训练作业去跑时,是直接运行用户的命令。这里的初始化指的是:login shell启动时首先读取/etc/profile系统全局配置,然后依次查找~/.bash_profile、~/.bash...

背景

用户使用自定义镜像去运行训练作业时会出现 python找不到的情况。

但是用户直接通过CloudShell去调试时,能正常运行。

原因:

CloudShell进入到容器的Terminal时,会进行初始化。而训练作业去跑时,是直接运行用户的命令。

这里的初始化指的是:

login shell启动时首先读取/etc/profile系统全局配置,然后依次查找~/.bash_profile、~/.bash_login、~/.profile三个配置文件,并且读取首个找到的并且可读的文件。

解决办法:

在训练作业的执行命令中新增 source /etc/profile等命令。主动去进行初始化,包括环境变量等。

参考:

详解bash中的初始化机制-腾讯云开发者社区-腾讯云 (tencent.com)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。