GIt的备份和恢复
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GIt的备份和恢复相关的知识,希望对你有一定的参考价值。
1、GItlab备份
Gitlab默认的备份路径都是在配置文件中指定的,所以我们可以去配置文件中查看
vim /etc/gitlab/gitlab.rb
# gitlab_rails[‘manage_backup_path‘] = true # gitlab_rails[‘backup_path‘] = "/var/opt/gitlab/backups" #在配置文件中我们需要注意这两条,定义备份位置
我们需要修改配置如下,激活
gitlab_rails[‘backup_keep_time‘] = 604800 #这个是秒,7天的时间 gitlab_rails[‘backup_path‘] = "/var/opt/gitlab/backups"
创建备份目录和授权
mkdir -p /var/opt/gitlab/backups chown -R git.git /var/opt/gitlab/backups
重新加载配置,让配置生效
gitlab-cli reconfigure gitlab-cli restart
备份:
gitlab的备份非常简单,就是一条命令
/usr/bin/gitlab-rake gitlab:backup:create
执行完上面的备份命令后,会在备份目录下面生成一个类似这样的文件1494780002_gitlab_backup.tar
这个压缩包就是Gitlab整个的完整部分, 其中开头的1494780002是备份创建的日期,可以通过date命令来查看这个uninx时间戳
[[email protected] app1]# ll /var/opt/gitlab/backups/ total 112 -rw------- 1 git git 112640 May 15 00:40 1494780002_gitlab_backup.tar [[email protected] app1]# date -d @1494780002 Mon May 15 00:40:02 CST 2017
需要备份的文件有:
/etc/gitlab/gitlab.rb 配置文件须备份 /var/opt/gitlab/nginx/conf nginx配置文件 /etc/postfix/main.cfpostfix 邮件配置备份
系统自动备份,设置定时任务
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
建议,本地保留7天,异地永久保存
2、GItlab恢复
恢复流程:
1、停止数据写入任务
gitlab-ctl stop unicorn gitlab-ctl stop sidekiq
2、恢复数据
gitlab-rake gitlab:backup:restore BACKUP=1494780002
3、启动服务
gitlab-ctl restart 或者启动上面关闭的那两个服务
3、只备份代码
如果只备份代码可以在这个目录下面去备份对应项目的代码,用户的关系不能备份走
[[email protected] app1]# cd /var/opt/gitlab/ [[email protected] gitlab]# ls backups gitlab-ci gitlab-workhorse postgresql bootstrapped gitlab-rails logrotate redis git-data gitlab-shell nginx trusted-certs-directory-hash [[email protected] gitlab]# cd git-data/ [[email protected] git-data]# ls repositories [root[email protected] git-data]# cd repositories/ [[email protected] repositories]# ll total 0 drwxrwx--- 2 git git 6 May 7 14:09 dev1 drwxrwx--- 2 git git 6 May 7 15:12 dev2 drwxrwx--- 4 git git 41 May 14 21:19 Group1 drwxrwx--- 2 git git 6 May 14 21:12 GYH drwxrwx--- 2 git git 6 May 7 15:12 pm drwxrwx--- 2 git git 6 May 7 14:05 proje1 drwxrwx--- 4 git git 43 May 7 14:03 root drwxrwx--- 2 git git 6 May 14 21:11 YH01 drwxrwx--- 2 git git 6 May 14 21:11 YH02 [[email protected] repositories]#
本文出自 “圈中一鸟” 博客,谢绝转载!
以上是关于GIt的备份和恢复的主要内容,如果未能解决你的问题,请参考以下文章