一、gitlab的备份
1.修改gitlab.rb文件
vi /etc/gitlab/gitlab.rb(分别修改备份目录和备份保留时间)
gitlab_rails[‘backup_path’] = “/var/opt/gitlab/backups” (修改备份目录)
gitlab_rails[‘backup_keep_time’] = 604800 (7天,默认单位为s)
2.GitLab数据自动备份
1)如果没有etc/crontab定时任务配置文件,执行crontab -e命令生成该配置文件;
2)编辑/etc/crontab定时任务配置文件,在里面添加定时任务指令如下:
[root@jenkins ~]$ crontab -e
0 23 * * * /usr/bin/gitlab-rake gitlab:backup:create
0 23 * * * /usr/bin/scp /var/opt/gitlab/backups/*.tar root@172.22.14.127:/home/gitlab/databak/
3.重新读取配置文件
gitlab-ctl reconfigure
4.重启gitlab
gitlab-ctl restart
知识小贴士:
在crontab文件里面,每一行代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,每个字段ii之间用空格分割,没用的段用*代替,格式如下:
m h dom mon dow user command
其中:
m: 表示分钟,可以是从0到59之间的任何整数。
h:表示小时,可以是从0到23之间的任何整数。
dom:表示日期,可以是从1到31之间的任何整数。
mon:表示月份,可以是从1到12之间的任何整数。
dow:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
user : 表示执行的用户。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件(如shell文件)