rsync用法详解.doc

上传人:sk****8 文档编号:3552695 上传时间:2019-06-04 格式:DOC 页数:5 大小:49.50KB
下载 相关 举报
rsync用法详解.doc_第1页
第1页 / 共5页
rsync用法详解.doc_第2页
第2页 / 共5页
rsync用法详解.doc_第3页
第3页 / 共5页
rsync用法详解.doc_第4页
第4页 / 共5页
rsync用法详解.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、rsync 用法详解一、简介rsync 是 Linux、UNIX 系统下的数据镜像备份工具,从软件的命名上就可以看出来了-remote sync。它的特性如下: (1)可以镜像保存整个目录树和文件系统。 (2)可以很容易做到保持原来文件的权限、时间、软硬链接等等。 (3)无须特殊权限即可安装。 (4)优化的流程,文件传输效率高。 (5)可以使用 rcp、ssh 等方式来传输文件,当然也可以通过直接的 socket 连接。 (6)支持匿名传输。二、安装(略)三. 設定 rsync server: (假設這台主機名稱為 bk.xxx.edu.tw)rsync server 端要設定以下四項:1.

2、規劃建立備份目錄區 2. 設定: /etc/xinetd.d/rsync 3. 設定: /etc/rsyncd.conf 4. 設定: 密碼檔 依次說明如下:1. 規劃建立備份目錄區:建議您準備一個容量較大且獨立的分割區, 並在其中開好備份目錄, 如此 /bk/server2. 設定 /etc/xinetd.d/rsync, 簡單範本如下:# default: off# description: The rsync server is a good addition to am ftp server, as it # allows crc checksumming etc.service rs

3、yncdisable = nosocket_type = streamwait = nouser = rootserver = /usr/bin/rsyncserver_args = -daemonlog_on_failure += USERID然後下 service xinetd restart, 使上述設定生效.上述, 主要是要打開 rsync 這個 daemon, 一旦有 rsync client 要連接時, xinetd 會把它轉介給 rsyncd (跑 port 873). 3. 設定 /etc/rsyncd.conf : 以下區塊, 代表開放給某一台 rsync client 主機

4、的設定, 簡單範本如下: mch1path = /bk/server/mch1_backupauth users = mch1_backupuid = rootgid = rootsecrets file = /etc/rsyncd.secretsread only = no比較重要的解釋: mch1 代表欲備份的主機代號, 名稱可自訂.path 用來設定備份檔案要存放在那一個目錄? 請先用 mkdir 開設好, 名稱可自訂.auth users 代表授權的帳號, 名稱可自訂.secrets file 代表儲存帳號密碼的密碼檔, 其放置的路徑檔名.當然, 這台備份主機, 可以容納許多 rsyn

5、c client 連接, 只要在 rsyncd.conf 中設妥對應的區塊即可.換言之, 以下範本, 代表二個主機 mch1 及 mch2 欲備份進來:mch1path = /bk/server/mch1_backupauth users = mch1_backupuid = rootgid = rootsecrets file = /etc/rsyncd.secretsread only = nomch2path = /bk/server/mch2_backupauth users = mch2_backupuid = rootgid = rootsecrets file = /etc/rs

6、yncd.secretsread only = no4. 設定密碼檔:rsyncd.secrets 的內容很簡單, 格式為 帳號:密碼如以下例子:mch1_backup:ILoveOLS3注意! 上述設定只是一個範例, 請務必自訂一組, 千萬不要直接套用.接下來, 要將 rsyncd.secrets 這個密碼檔的檔案屬性設為 root 擁有, 且權限要設為 600, 否則無法備份成功!因此, 請下: chown root.root rsyncd.secrets chmod 600 rsyncd.secrets 至此, rsync server 這端已設定完成, 若欲查看備份記錄, 可參考 /v

7、ar/log/rsyncd.log 這個檔案. 接下來是 client 端(即欲備份的網路主機) 的設定.四. 設定 rsync client (假設這台主機 IP 為 : 11.22.33.44)步驟:1. 設定密碼檔 2. 測試 rsync 執行指令 3. 將 rsync 指令放入工作排程 (crontab) 另外, 假設 mch1 這台主機是網路主機, 今打算把 /usr/local/apache 這個目錄加以備份至 backup server (bk.xxx.edu.tw),但不想備份記錄檔(也就是說要把 logs 目錄排除), 整個操作方式如下:1. 假設把密碼檔放在 /root/r

8、syncd.secrets, 內容只要含有密碼一行即可:ILoveOLS3注意: rsyncd.secrets 的權限屬性必須設為 6002. 測試指令是否可以成功?/usr/bin/rsync -rvlHpogDtS -password-file=/root/rsyncd.secrets /usr/local/apache -exclude apache /logs mch1_backupbk.xxx.edu.tw:mch1若出現傳輸目錄檔案的畫面, 即表示測試成功.3. 置入工作排程, 假設每天凌晨 5 點開始備份:crontab -u root -e0 5 * * * /usr/bin/

9、rsync -rvlHpogDtS -password-file=/root/rsyncd.secrets /usr/local/apache -exclude apache /logs mch1_bakupbk.xxx.edu.tw:mch1若您有其它目錄(如 /home)要備份, 則如法泡製:20 5 * * * /usr/bin/rsync -rvlHpogDtS -password-file=/root/rsyncd.secrets /home mch1_bakupbk.xxx.edu.tw:mch1若您覺得備份一台 Backup Server 不夠, 可再按上述方法, 自行增加任意多

10、台 Backup Server, 以分散風險!像這樣把備份的工作全部自動化, 真是輕鬆愉快, 大大地減低備份工作煩人的壓力!五. 安全性:建議使用 ipchains 或 iptables 指令, 來限制 rsync client 的連線範圍, 例子如下:ipchains -A input -p tcp -s ! 11.22.33.44 -dport 873 -j DENY或iptables -A INPUT -p tcp -s ! 11.22.33.44 -dport 873 -j DROP如此, 只有 11.22.33.44 這個 client IP 能連入這台 rsync server.i

11、pchains 及 iptables 的用法, 可參考小弟寫的這份講義: Linux 防火牆入門另, rsync 可以結合 ssh 或 ssh2, 使安全性更加提高. 詳情請自行查閱 rsync / ssh / ssh2 的 manpage.六. 可能會遇到的疑難問題:1. Q: 出現以下這個訊息, 是怎麼一回事?ERROR: auth failed on module xxxxxrsync: connection unexpectedly closed (90 bytes read so far)rsync error: error in rsync protocol data stream

12、 (code 12) at io.c(150)A: 這是因為密碼設錯了, 無法登入成功, 請再檢查一下 rsyncd.secrets 中的密碼設定, 二端是否一致? 2. Q: 出現以下這個訊息, 是怎麼一回事? password file must not be other-accessible continuing without password file Password: A: 這表示 rsyncd.secrets 的檔案權限屬性不對, 應設為 600 請下 chmod 600 rsyncd.secrets 3. Q: 出現以下這個訊息, 是怎麼一回事?ERROR: chroot f

13、ailedrsync: connection unexpectedly closed (75 bytes read so far)rsync error: error in rsync protocol data stream (code 12) at io.c(150)A: 這通常是您的 rsyncd.conf 中的 path 路徑所設的那個目錄並不存在所致.請先用 mkdir 開設好備份目錄. 以下是我加的:rsync 的另类用法:1.在上述 rsync 的基础上把 rsync server 的 rsync.conf#auth users#secrets files 注释掉,密码文件也不需要了,这样就可以进行匿名备份了主要是 uid 跟 gid 要匹配客户端用以下命令即可:/usr/bin/rsync -rvlHpogDtS /usr/local/apache -exclude apache /logs bk.xxx.edu.tw:mch1#把 password file 跟 bk.xxx.edu.tw 前的用户名都去掉了2.传文件:rsync avz e ssh source:/dir /local若建立 ssh 信任关系后可不需要输入密码

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。