Avamar:当启动时运行脚本返回非零退出代码时,Avtar 失败
摘要: 使用用户定义的启动时运行脚本时备份失败,因为该脚本返回退出代码 1;avtar 将任何非零代码视为错误(例如,“avtar Info:从运行开始返回,退出代码 1“)。将脚本更正为退出 0 以解决问题。
本文适用于
本文不适用于
本文并非针对某种特定的产品。
本文并非包含所有产品版本。
症状
使用“启动时运行”脚本时的备份失败
为 avtar 配置自定义启动时运行脚本时备份未完成。
- Avtar 日志指示它从启动时运行脚本返回,并带有非零退出代码。
- 备份作业标记为失败。
- 禁用启动时运行脚本可使备份成功。
avtar Info : Back from run-at-start, exit code 1 avtar Error : Exiting avtar with run-at-start script failure 1
原因
启动时运行脚本中的退出代码不正确
备份失败,因为自定义启动时运行脚本返回的退出代码不是 0 。在 Linux/UNIX 环境中, 0 是唯一指示成功的值。Avtar 将任何非零值解释为脚本失败,从而导致备份过程中止。
- 脚本返回退出代码
1哪avtar记录为错误。 - Avamar 将此非零退出代码视为失败,并停止备份作。
相关日志条目:
avtar Info : Back from run-at-start, exit code 1 avtar Error : Exiting avtar with run-at-start script failure 1
解决方案
Correcting avtar run-at-start script failures
分步解决方案
当自定义的启动时运行脚本返回非零退出代码时,avtar 会将备份视为失败。按照以下步骤作以确保脚本返回 0 关于成功。
- 找到为 avtar 启动时运行阶段配置的脚本(例如
/opt/avamar/etc/run_at_start.d/custom_script.sh)时,此方法起作用。 - 在编辑器中打开脚本并验证确定成功或失败的逻辑。
- 在脚本末尾,添加或修改 exit 语句,以便成功执行以
exit 0。 - 确保仅当发生真正的故障时,任何错误路径也使用适当的非零代码。
- 保存更改并设置可执行权限(如果尚未设置)。
正确的脚本终止示例:
#!/bin/bash
# Your custom logic here
if [ $? -eq 0 ]; then
echo "Custom script completed successfully"
exit 0
else
echo "Custom script encountered an error"
exit 1
fi
在本地验证脚本
手动运行脚本,并使用以下命令确认其退出 0 。
$ /opt/avamar/etc/run_at_start.d/custom_script.sh Custom script completed successfully $ echo $? 0
重新启动 avtar 并触发备份。
确认脚本返回后 0,重新启动 avtar 服务并启动备份作业以验证正常运行。
# Restart avtar service $ systemctl restart avtar # Initiate a test backup (replace and as needed) $ avtar -c -p -b
确认解决方法。
检查 avtar 日志是否不存在错误消息 "Exiting avtar with run‑at‑start script failure 1." 成功的日志条目如下所示:
[2025-10-09 12:34:56] INFO avtar Info : Back from run-at-start, exit code 0 [2025-10-09 12:35:10] INFO Backup completed successfully
注意:不要忽略非零退出代码;它们表示在继续之前必须解决的真正错误。
注意:不正确地修改启动时运行脚本可能会导致使用该策略的所有客户端备份失败。首先在非生产环境中测试更改。
提醒:如果您无法修改脚本或应用上述步骤后问题仍然存在,请联系戴尔支持以获得更多帮助。
受影响的产品
Avamar产品
Avamar Client, Avamar Client for Linux, UNIX, MacOSX文章属性
文章编号: 000210566
文章类型: Solution
上次修改时间: 23 10月 2025
版本: 4
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。