1. 程式人生 > >centos rsync安裝配置使用

centos rsync安裝配置使用

一、rsync介紹

rsync 是一個快速增量檔案傳輸工具,它可以用於在同一主機備份內部的備分,還可以把它作為不同主機網路備份工具之用。

二、rsync的安裝

伺服器端和客戶端都需要安裝rsync。
CentOS5.5系統預設安裝了rsync,其版本號是2.6.8,如果系統沒有,可以通過以下命令安裝:
[[email protected] ~]# yum –y install rsync
也可以通過原始碼安裝,:
[[email protected] ~]# wget http://rsync.samba.org/ftp/rsync/rsync-3.0.7.tar.gz
[[email protected]

~]# tar zxvf rsync-3.0.7.tar.gz
[roo[email protected] ~]# cd rsync-3.0.7
[[email protected] sqing25 rsync-3.0.7]# ./configure
[[email protected] sqing25 rsync-3.0.7]# make
[[email protected] sqing25 rsync-3.0.7]# make install
注:在用原始碼包編譯安裝之前,需安裝gcc編譯工具,否則編譯出錯。

三、rsync伺服器端配置

1、rsyncd.conf
新建並編輯rsyncd.conf檔案,該檔案是rsync伺服器的主要配置檔案,儲存路徑自行設定,一般放在etc目錄下,內容分為全域性定義和模組定義
[

[email protected] ~]# vi /etc/rsyncd.conf
內容如下:
uid = root
gid = root
use chroot = no
strict modes = yes
address = 10.8.5.25    //指定本機IP地址,可以不設
port = 873    //指定rsync服務埠,預設是873
max connections = 10    //最大連線數
pid file = /var/run/rsyncd.pid  //告訴程序,寫到/var/run/rsyncd.pid中
motd file=/etc/rsyncd.motd  //伺服器資訊檔案,需算自行建立,可不設
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log

[home]    //模組名稱,即同步或備份的目錄,客戶端用這個關鍵字連線
path=/home    //指定檔案目錄所在位置
comment = this is a test
ignore errors  //忽略IO錯誤
read only = yes   //只讀,不讓客戶端上傳檔案到伺服器端
list = no
auth users = root   //登入使用者,必須是伺服器上存在的真實使用者,多個使用者用逗號隔開
secrets file = /etc/rsyncd.pas  //密碼檔案,需自行建立 
hosts allow = 10.8.5.24  //允許訪問的客戶端
hosts deny=*  //禁止訪問的客戶端       2、rsyncd.pas

新建並編輯rsyncd.pas檔案,用於存放登入使用者的登入密碼,檔案的屬性需是屬主可讀,為安全起見,一般不把系統使用者的密碼寫在這裡,而是另外設定密碼。密碼格式為“使用者名稱:密碼”,其中使用者是rsyncd.conf中的auth users指定的使用者,若是多個使用者,要在多行中輸入“使用者名稱:密碼”。
[[email protected] ~]# vi /etc/rsyncd.pas
內容如下:
root:123456
[[email protected] ~]# chmod 600 /etc/rsyncd.pas
將其許可權修改為600,這一步很重要,要是不修改,客戶端嘗試連線時會出現類似如下的報錯:
@ERROR: auth failed on module home
rsync error: error starting client-server protocol (code 5) at main.c(1296) [receiver=2.6.8]

3、rsyncd.motd
新建並編輯rsyncd.motd檔案,該檔案是定義伺服器資訊的,用於標識伺服器,使用者登入時會看到該資訊
[[email protected] ~]# vi /etc/rsyncd.motd
內容如下:
----------------------------------------------
Welcome to 192.168.1.182 server!
----------------------------------------------

4、防火牆設定
如果伺服器上裝有防火牆,需在伺服器中設定iptables將837埠開放。
[[email protected] ~]#iptables -A INPUT -p tcp --dport 873 -j ACCEPT

5、啟動rsync伺服器
在伺服器端將rsync以守護程序形式啟動
[[email protected] ~]#rsync --daemon --config=/etc/rsyncd.conf

四、rsync客戶端同步資料

1、rsync客戶端配置
客戶端rsync如果是通過原始碼安裝的,需在/etc目錄下建立了一個rsyncd.conf檔案,內容也空也無所謂,否則在執行rsync時會出現如下報錯:
[[email protected] ~]# rsync --daemon
Failed to parse config file: /etc/rsyncd.conf
但如果是系統預設安裝或yum安裝的,則不存在此問題。

2、手動同步資料,手動輸入密碼
[[email protected] ~]#rsync -azvr --progress --delete [email protected]::home /home/server25
~~Welcome to 192.168.1.182
Password: 
receiving file list ...

3、手動同步資料, 指定密碼檔案
新建並編輯rsyncd.pas檔案,用於存放登入使用者的登入密碼,這樣可以在指令碼中使用而無需互動式地輸入驗證密碼。
[[email protected] ~]# vi /etc/rsyncd.pas
內容如下:
123456
[[email protected] ~]# chmod 600 /etc/rsyncd.pas
[[email protected] ~]#rsync -azvr --progress –delete --password-file=/etc/rsyncd.pas  [email protected]::home /databackup
~~Welcome to 192.168.1.182!
receiving file list ...

4、客戶端自動同步資料
rsync是通過crond這個後臺進行(計劃任務)來實現自動同步資料,CentOS5.5下預設安裝並執行crond伺服器,可以通過以下命令檢視
[[email protected] ~]#  rpm -qa |grep cron  //檢視crond是否安裝
[[email protected] ~]# ps aux |grep crond  //相看crond是否執行

在tmp目錄下建一個backup.sh檔案
[[email protected] ~]# vi /tmp/backup.sh
內容如下:
#!bin/sh
rsync –azvr --delete --password-file=/etc/rsyncd.pas [email protected]::home /databackup 或者 rsync -avzP  --delete  --password-file=/data/rsync/rsyncd.pas [email protected]::data /data/html/test/ 這個是在客戶端執行,將rsync伺服器上data專案指定資料夾拷貝到本地 /data/html/test/ /usr/bin/rsync -pogrtL --progress --delete /data/test/ [email protected]::test --password-file=/etc/rsync.pwd 這個是在客戶端執行,將本地的/data/test/ 資料夾中的內容 上傳到rsync伺服器的test專案指定資料夾中
需要注意的是,/etc/rsyncd.pas檔案的屬性要為600,這在先前的操作中已經設定過了。

修改crontab制定任務計劃,使其定時排程並執行backup.sh指令碼,
[[email protected] ~]# crontab –e
內容如下:
* * * * * sh /tmp/backup.sh  //表示每隔一分鐘執行一次指令碼
新建立的crontab檔案會放在/var/spool/cron目錄下,檔名就是使用者名稱,用cd  /var/spool/cron後 會看到使用者檔案,然後用 cat root(當前是root登入)可以看到“* * * * * sh /tmp/backup.sh”已經被轉到這裡了。

5、部分引數說明
[email protected]:/databackup 伺服器端的使用者名稱和模組
/databackup 指定客戶端存放備份檔案的路徑
-v,-verbose 詳細模式輸出
-z,-compress 壓縮
-r,-recursive 對子目錄以遞迴模式處理
-topg 保持檔案的原有屬性,如屬主、時間等引數
-c,-checksum 開啟校驗開關,強制對檔案傳輸進行校驗
-a,-archive 歸檔模式,表示以遞迴方式傳輸檔案,並保持所有檔案屬性,等於-rlptgoD
-R,-relative 使用相對路徑資訊
-q,-quiet 精簡輸出模式
--progress 顯示出詳細的進展情況
--delete 如果伺服器刪除了這一檔案,客戶算也會相應的把檔案刪除,保持真正的一致
--exclude 不包含某些檔案

五、rsync問題解決

開始時,客戶端訪問伺服器端,直接訪問的是待備份的目錄,命令如下
[[email protected] ~]#rsync -azvr --progress --delete [email protected]:/home /databackup

在輸入密碼時,rsyncd.pas中設定的密碼是無效的,只有該使用者在系統中的密碼才有效,一直以為是密碼設定上出了問題,但就是改不過來。後來發現,後來又發現,待備份檔案如果採用模組名稱,即“[email protected]需要備份的主機IP::備份裡的模組名稱”時,使用者根本就無法連線:
[[email protected] ~]#rsync -azvr --progress --delete [email protected]::home --exclude=".sh" /databackup

rsync: failed to connect to 192.168.1.182: Connection refused (111)
rsync error: error in socket IO (code 10) at clientserver.c(122) [Receiver=3.0.7]
經過進一步測試,得出結論,伺服器端在執行rsync –daemon命令後,實際並沒有執行rsync服務。
琢磨許久後,通過看程序才知道,由於rsync –daemon執行的意義在於使rsyncd.pid包含process id資訊,而該守護程序需要通過xinetd來啟動,故在系統中要安裝xinetd,並啟動
[[email protected] ~]# yum -y install xinetd
[[email protected] ~]# /etc/init.d/xinetd.d start

相關推薦

centos rsync 安裝配置測試

rsync的目錄主要是為了同步檔案用的,現在把使用的配置記錄一下 測試機器2臺 rsync伺服器IP:192.168.171.22 客戶端IP:192.168.171.134 rsync伺服器端操作 檢查是否安裝rsync rpm -qa | grep rsync 安裝rsy

centos rsync安裝配置使用

一、rsync介紹 rsync 是一個快速增量檔案傳輸工具,它可以用於在同一主機備份內部的備分,還可以把它作為不同主機網路備份工具之用。 二、rsync的安裝 伺服器端和客戶端都需要安裝rsync。 CentOS5.5系統預設安裝了rsync,其版本號是2.6.8,如果系統沒有,可以通過以下命令安裝

CentOS 7 安裝配置分布式文件系統 FastDFS 5.10

fastdfs下載目前作者最後一次releases的時間的17年4月6號,對應的最新版本是5.10,直接在余大的GitHub上下載就可以了: https://github.com/happyfish100/fastdfs/releases如上圖,由於FastDFS是純C語言實現,只支持Linux、FreeBS

centos mysql安裝配置

word 裝配 pass 0 rows server sql mysql localhost dev mysql安裝 [[email protected]/* */ ~]# yum install -y mysql-server mysql mysql-d

CentOS 7 安裝配置 OpenVPN Server

vpn open 這篇文章描述了如何在CentOS 7 服務器上安裝與配置OpenVPN服務器,以及如何編寫客戶端連接到新建立的OpenVPN服務器上所需的配置文件。目前OpenVPN最新版本為2.4.3(2017年9月)由於OpenVPN Server不在默認源中,所以需要安裝Extra Packa

CentOS 7 安裝配置 MySQL

provides 小寫 包名 datadir .html ide ini 創建數據庫 fault MySQL是一個關系型數據庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 是最流行的關系型數據庫管理系統之一,在 WEB 應用方面

centos安裝配置mongodb

創建 app con server col pro port PE 裝配 1:安裝mkdir -p /app/mongodb tar zxvf mongodb-linux-x86_64-rhel62-3.4.6.tgz vi .bash_profile PATH=$PAT

inotify+rsync安裝配置

服務器 while ble div In -s light ati spinner 環境 系統 IP地址 主服務器 CentOS7.4 192.168.1.1 備份服務器 CentOS7.4 192.168.1.2

centos安裝配置nginx完成之後主機無法訪問

CP 方法 true VM 配置 pre PE all 開啟 原因 VMware中安裝centos7,安裝配置完成nginx後,主機無法訪問。虛擬機沒有放行Nginx默認端口80。 解決方法 解決方法 首先:開啟 web 端口 firewall-cmd --p

CentOS安裝配置Nginx

zxvf queue 重新 如果 6.2 並發連接 div 即使 並且 Nginx 是一個高性能的 Web 和反向代理服務器, 它具有有很多非常優越的特性: 作為 Web 服務器:相比 Apache,Nginx 使用更少的資源,支持更多的並發連接,體現更高的效率,這點使

Centos安裝配置MySQL

之前曾在伺服器上安裝配置過MariaDB,畢竟MySQL作為Oracle的產品隨時存在閉源的風險,Red Hat Enterprise Linux / CentOS 7.0從支援MySQL切換到MariaDB作為預設資料庫管理系統。其中MariaDB的預設配置檔案位置在 /etc/my.

CentOS 7 安裝配置OpenVPN Server

CentOS 7 安裝配置OpenVPN Server 這篇文章描述瞭如何在CentOS 7 伺服器上安裝與配置OpenVPN伺服器,以及如何編寫客戶端連線到新建立的OpenVPN伺服器上所需的配置檔案。 由於OpenVPN Server不在預設源中,所以需要安裝Extra Pac

CentOS安裝配置MySQL8.0的步驟詳解

下載yum源的安裝包  yum localinstall https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm 安裝 yum install mysql-community-server 啟動

CentOS 7 安裝配置分散式檔案系統 FastDFS 5.11

            CentOS 7  安裝配置分散式檔案系統  FastDFS 5.11 前言:     FastDFS是現在比較流行的分散式檔案系

CentOS 6 安裝配置JDK+tomcat環境

1.安裝OpenJDK 這裡安裝的OpenJDK,是開源版本的JDK,我們平時自己電腦上安裝的是 Sun JDK(也叫Oracle JDK),OpenJDK可以看作Sun JDK的精簡版。 如果想安裝SunJDK,請參照下方的tomcat安裝方法,步驟是一樣的,注意liunx有些自帶OpenJDK,需

RabbitMQ-CentOS 7 安裝配置

1、安裝依賴環境 yum -y install unixODBC unixODBC-devel wxBase wxGTK SDL wxGTK-gl yum -y install install make gcc gcc-c++ kernel-devel m4 n

centos minimal安裝配置jdk

在根目錄(cd /)下建立soft資料夾,用於存放所有安裝的軟體,由於這需要root許可權,所以需要切換到root許可權。但是軟體許可權的話使用本地使用者許可權更有安全性,所以需要修改許可權:

centos安裝配置maven

下載maven安裝包 wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz   解壓安裝包 t

CentOS 7安裝配置

文章內容主要基於CentOS 7.6 首先,應該配置一下國內的源,這能明顯提高下載速度,推薦使用網易源或阿里源,具體可參考CentOS映象使用幫助 雙系統安裝完CentOS後,預設是無法開啟Windows分割槽,開機的時候也沒有Windows啟動項的,如果要找回無法開啟Windo

CentOS安裝配置vsFtpd

一、CentOS vsftpd安裝 在服務中檢視是否已安裝VSFTPD服務。如沒有,下載並安裝: rpm -ivh vsftpd-2.0.5-12.el5.i386.rpm 二、設定CentOS vsftpd自啟動