欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

遠(yuǎn)程鏡像與備份SVN服務(wù)器的方法小結(jié)第1/2頁

 更新時(shí)間:2009年01月01日 15:25:19   作者:  
此文講述SVN如何鏡像服務(wù)器,注意是單向鏡像。眾所周知,SVN有自已的鏡像命令svnsync(svn1.4以及以上版本特性),但是部署與維護(hù)確是繁瑣至極,令人望而卻步。
 
我們來看一個(gè)簡(jiǎn)單的svnsync例子:
主SVN服務(wù)器: http://mastersvn/project1
svnsync鏡像SVN服務(wù)器上的部署:http://backupsvn/project1
第一步:建立倉庫
cd /home/svn
svnadmin create –fs-type fsfs /home/svn/project1
chmod 777 –R project1
第二步:鏡像初始化
svnsync init http://backupsvn/project1 http://mastersvn/project1
第三步:更改配置文件
cd /home/svn/project1/hooks
cp pre-revprop-change.tmpl pre-revprop-change
vi pre-revprop-change
注銷所有語句,在語句前加入#即可,退出保存
第四步:同步
svnsync sync http://backupsvn/project1 --username username --password password
已提交版本 9。
復(fù)制版本 9 的屬性。
已提交版本 10。
復(fù)制版本 10 的屬性
……………
但是在實(shí)際運(yùn)用中,經(jīng)常會(huì)發(fā)生SVN庫被lock的情況
svnsync: Couldn't get lock on destination repos after 10 attempts
這不得不讓我們感覺頭痛地手動(dòng)使用改命令解鎖
svn propdel svn:sync-lock --revprop -r0 http://backupsvn/project1
寫到這里,大家不由對(duì)svnsync有了個(gè)初步的認(rèn)識(shí)了吧,就一個(gè)字,煩!??!而且同步速度很慢?。。?
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
接下來是此文的重點(diǎn)部分:
SVN新的鏡像備份方案:ssh + rsync + crontab(任務(wù)計(jì)劃))
什么是SSH?
SSH 是更靈活、更安全的 telnet 和 rlogin 替代品。它在開發(fā)項(xiàng)目中得到廣泛使用,以提供訪問控制和安全的數(shù)據(jù)傳輸。
什么是rysnc?
rsync是類unix系統(tǒng)下的數(shù)據(jù)鏡像備份工具,從軟件的命名上就可以看出來了——remote sync。它的特性如下:
可以鏡像保存整個(gè)目錄樹和文件系統(tǒng)。
可以很容易做到保持原來文件的權(quán)限、時(shí)間、軟硬鏈接等等。
無須特殊權(quán)限即可安裝。
優(yōu)化的流程,文件傳輸效率高。
可以使用rcp、ssh等方式來傳輸文件,當(dāng)然也可以通過直接的socket連接。
支持匿名傳輸,以方便進(jìn)行網(wǎng)站鏡象。
什么是crontab?
Crontab是Linux操作系統(tǒng)下的一個(gè)命令,可以用來根據(jù)時(shí)間、日期、月份、星期的組合來調(diào)度對(duì)重復(fù)任務(wù)的執(zhí)行的守護(hù)進(jìn)程。(類似windows下的任務(wù)計(jì)劃)
方案拓?fù)鋱D:(請(qǐng)看附件)
主SVN服務(wù)器環(huán)境:
SVN倉庫根目錄: /home/svn (project1,project2,project3三個(gè)倉庫)
SVN服務(wù)器IP: 192.168.100.80
鏡像SVN服務(wù)器環(huán)境:
SVN倉庫根目錄:/home/svn (無倉庫,無需建立,鏡像時(shí)會(huì)直接復(fù)制過來并保持文件屬性)
SVN服務(wù)器IP: 192.168.100.81
#主SVN服務(wù)器安裝部分:
(1)
SVN安裝部分(略)
(2)
安裝rsync部分
rpm -qa | grep rsync (所有系統(tǒng)是否有安裝過rsync)
rpm -e rsyncxxx (刪除以前安裝過的rsync)
wget http://samba.anu.edu.au/ftp/rsync/rsync-3.0.4.tar.gz (下載rsync源碼安裝包)
tar zxvf rsync-3.0.4.tar.gz (解壓)
cd rsync-3.0.4
./install.sh (安裝)
接下來我們就可以輸入rsync --version命令來測(cè)試下是否安裝成功了。
rsync
version 3.0.3
protocol version 30
Copyright (C) 1996-2008 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
append, ACLs, xattrs, iconv, no symtimes
rsync comes with ABSOLUTELY NO WARRANTY.
This is free software, and you
are welcome to redistribute it under certain conditions.
See the GNU
General Public Licence for details.
(3) 開啟rsync服務(wù)器端
/usr/local/bin/rsync --daemon (開啟rsync服務(wù))
vi /etc/rc.d/rc.local
在末尾加入/usr/local/bin/rsync --daemon (目的是讓服務(wù)器每次重啟后都能自動(dòng)運(yùn)行此進(jìn)程)
#鏡像SVN服務(wù)器安裝部分:
(1)SVN安裝部分(略)
(2)安裝rsync部分
rpm -qa | grep rsync (所有系統(tǒng)是否有安裝過rsync)
rpm -e rsyncxxx (刪除以前安裝過的rsync)
wget http://samba.anu.edu.au/ftp/rsync/rsync-3.0.4.tar.gz (下載rsync源碼安裝包)
tar zxvf rsync-3.0.4.tar.gz (解壓)
cd rsync-3.0.4
./install.sh (安裝)
接下來我們就可以輸入rsync --version命令來測(cè)試下是否安裝成功了。
接下來我們的配置就完成了,讓我們用命里那個(gè)測(cè)試下。
同步命令:
rsync -vzrtopgu --progress --delete root@192.168.100.80:/home/svn /home/
輸入用戶名root
輸入root的密碼。
65309 100%
224.57kB/s
0:00:00 (xfer#507, to-check=2187/23106)
svn/project1/db/revs/202
29655 100%
99.86kB/s
0:00:00 (xfer#508, to-check=2186/23106)
svn/project1/db/revs/203
7242 100%
23.19kB/s
0:00:00 (xfer#509, to-check=2185/23106)
sent 15928 bytes
received 521860019 bytes
4404016.43 bytes/sec
total size is 12240235825
speedup is 23.45
傳輸完成,這次鏡像過程就結(jié)束了。

相關(guān)文章

最新評(píng)論