当前位置: 首页 > 编程笔记 >

一键备份gitolite服务器的Shell脚本

空夕
2023-03-14
本文向大家介绍一键备份gitolite服务器的Shell脚本,包括了一键备份gitolite服务器的Shell脚本的使用技巧和注意事项,需要的朋友参考一下

运行一次就能够把gitolite服务器上的仓库备份到本地. 第一次运行会创建远程仓库的本地镜像, 以后每次运行会把本地镜像更新.

本程序只支持 ssh方式

其他的git server貌似不会在 ssh git@xxx 的时候返回repo列表, 所以只能手动备份.

#!/bin/sh server=serv_addr 
root_dir=`pwd` 
 echo "whill back in dir: ${root_dir}"
 ssh "git@${server}" | awk '{print $1$2,$3}' | grep "^RW" | awk '{print $2}' | while read line do
  echo " "
  echo "-------------------------------------"
  if [ ! -d "${root_dir}/${line}.git" ]; then
    echo "repo not init on local, init it ..."
        mkdir -p "${root_dir}/${line}.git"
        cd "${root_dir}/${line}.git"
        cd .. 
    git clone --mirror "git@${server}:${line}.git"
  else
    echo "repo already init on local, update it ..."
    cd "${root_dir}/${line}.git"
    git remote update 
    git gc 
  fi done
 类似资料:
  • 本文向大家介绍一个简单的MySQL备份Shell脚本,包括了一个简单的MySQL备份Shell脚本的使用技巧和注意事项,需要的朋友参考一下 说明:此脚本每七天做一次完全备份,以后每天做一次增量备份,完全备份使用mysqldump客户端工具,增量备份使用mysqlbinlog备份其二进制日志文件。

  • Gitolite是一款Perl语言开发的Git服务管理工具,通过公钥对用户进行认证,并能够通过配置文件对写操作进行基于分支和路径的精细授权。Gitolite采用的是SSH协议并且使用SSH公钥认证,因此无论是管理员还是普通用户,都需要对SSH非常熟悉。在开始之前,请确认您已经通读过第29章“使用SSH协议”。 Gitolite的官方网址是:http://github.com/sitaramc/gi

  • 使用 Linux 脚本一键快速搭建自己的 IPsec VPN 服务器。支持 IPsec/L2TP, Cisco IPsec 和 IKEv2 协议。你只需提供自己的 VPN 登录凭证,然后运行脚本自动完成安装。 项目地址:https://github.com/hwdsl2/setup-ipsec-vpn

  • 本文向大家介绍Shell脚本搭建FTP服务器(vsftpd),包括了Shell脚本搭建FTP服务器(vsftpd)的使用技巧和注意事项,需要的朋友参考一下 各种知识点都写在注释里。 只需要 sudo $PATH/ftpsetup.sh即可,默认以test/test为用户名密码登录,登录后的根目录只读,子目录writable可写。 Ubuntu 13和Linux Mint 15上测试ok。

  • 本文向大家介绍Windows服务器文件备份到本地的方法、Windows服务器数据备份方案,包括了Windows服务器文件备份到本地的方法、Windows服务器数据备份方案的使用技巧和注意事项,需要的朋友参考一下 重要的数据必须备份,并且必须实时备份,否则一旦出现意外情况,将会给服务器文件安全带来巨大灾难。那么,如何备份服务器文件呢?本文以Windows为例说明服务器文件备份的方法 方法一、通过专门

  • 问题内容: 我尝试了许多脚本来进行数据库备份,但是我做不到。我想每小时备份一次数据库。 我将文件添加到“ /etc/cron.hourly/”文件夹,将其chmod更改为755,但未运行。至少我写了我的伪代码。 如果您可以为此操作编写脚本并告诉我该怎么办,我将非常高兴。将这个脚本文件添加到文件夹之后。 获取当前日期并创建一个变量, 为文件名创建一个变量, 像这样获取我的数据库的转储 删除文件夹中所