You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:Cron执行Bash脚本时报错getpwnam() failed - user unknown

问题分析与解决

错误原因

你的cron任务语法存在问题:cron的标准格式为分钟 小时 日期 月份 星期 用户名 命令,你当前的任务行把cd误当作了用户名字段,系统找不到名为cd的用户,因此抛出getpwnam() failed - user unknown错误。

修复方案

方案1:修正cron任务行(推荐)

如果你是通过sudo crontab -e编辑的root用户crontab,无需额外指定用户名,直接编写命令部分即可。同时建议用&&替代;,确保切换目录成功后再执行脚本:

*/10 * * * * cd /var/trafficviewer/script && ./testfile.sh

方案2:直接使用脚本绝对路径

跳过目录切换步骤,直接调用脚本的绝对路径,避免路径相关问题:

*/10 * * * * /var/trafficviewer/script/testfile.sh

额外注意事项

  • 脚本内部如果调用了其他命令(如curl、python等),建议使用绝对路径(例如/usr/bin/curl而非curl),因为cron的环境变量PATH比登录会话的范围更窄。
  • 若脚本依赖特定环境变量,可在脚本开头手动导出,示例:
    export PATH=/usr/local/bin:/usr/bin:/bin
    

内容的提问来源于stack exchange,提问作者Codec737

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 08:39:46