Bacula:客户端在作业前运行仅全级别

Bacula:客户端在作业前运行仅全级别

我已经设置了一个bacula在备份之前和之后运行客户端脚本的作业,如下所示:

工作 {
        名称 = “my_job”
        客户端 = “my-fd”
        文件集 = “my-fset”
        存储 = “存储文件”
        已启用 = 是
        时间表 = “my_sched”
        池 = “pool_full”
        JobDefs =“默认作业”
        #最大启动延迟 = 3600
        客户端运行前作业 = “/path/to/before/script.sh”
        客户端运行后作业 = “/path/to/after/script.sh”
}

现在计划运行完整备份。

日程 {
        名称 = “my_sched”
        运行 = 级别 = 满池 =“pool_full”周一至周日 12:50
        }

我想添加如下增量备份计划:

Run = Level=Incremental IncrementalPool="pool_incr" FullPool="pool_full" mon-sun at 21:21

问题是:

如何判断bacula增量备份不能运行客户端脚本?

答案1

我发现的解决方案是将 JobLevel 作为参数提供给脚本%l

    Client Run Before Job = "/path/to/before/script.sh %l"
    Client Run After Job = "/path/to/after/script.sh %l"

并安排脚本如下:

/bin/bash #!/bin/bash
BACULA_J_LEVEL=$1

案例 $BACULA_J_LEVEL

 满的)
  echo "职位级别 $BACULA_J_LEVEL";
  #在这里做事
  出口 0
  ;;

 微分)

  echo "职位级别 $BACULA_J_LEVEL";
  # 没做什么
  出口 0
  ;;

 增加的)
  echo "职位级别 $BACULA_J_LEVEL";
  # 没做什么
  出口 0
  ;;

 *)

  echo "级别无法识别";
  1号出口;
  ;;

埃萨克

相关内容