国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Centos - rsync服務器架設(數據同步|文件增量備份)

rsync服務器架設(數據同步|文件增量備份)

2019-10-08 16:08服務器之家 Centos

我們在使用服務器發布我們的網站的時候,通常要考慮到文件的備份,而文件的備份比較高效的備份是增加備份,rsync軟件就是這樣的一個工具

為了實現多個服務器負載均衡,我們需要這幾個服務器之間進行數據同步,而rsync軟件也能勝任,下面我們來介紹如何架設rsync服務器來達到文件增量備份和數據同步的功能。 

什么是rsync 
rsync 是一個快速增量文件傳輸工具,它可以用于在同一主機備份內部的備分,我們還可以把它作為不同主機網絡備份工具之用。本文主要講述的是如何自架rsync服務器,以實現文件傳輸、備份和鏡像。相對tar和wget來說,rsync 也有其自身的優點,比如速度快、安全、高效。 

rsync的安裝 
在CentOS服務器,我們可以執行以下命令安裝 

yum install rsync 
對于debian、ubuntu服務器,則是以下命令 

sudo apt-get install rsync 
rsync服務器的配置文件rsyncd.conf 
下面我們將涉及到三個文件 rsyncd.conf,rsyncd.secrets 和rsyncd.motd。 
rsyncd.conf 是rsync服務器主要配置文件。 
rsyncd.secrets是登錄rsync服務器的密碼文件。 
rsyncd.motd是定義rysnc 服務器信息的,也就是用戶登錄信息。 
下面我們分別建立這三個文件。 

mkdir /etc/rsyncd 
注:在/etc目錄下創建一個rsyncd的目錄,我們用來存放rsyncd.conf 和rsyncd.secrets文件; 

touch /etc/rsyncd/rsyncd.conf 
注:創建rsyncd.conf ,這是rsync服務器的配置文件; 

touch /etc/rsyncd/rsyncd.secrets 
注:創建rsyncd.secrets ,這是用戶密碼文件; 

chmod 600 /etc/rsyncd/rsyncd.secrets 
注:為了密碼的安全性,我們把權限設為600; 

touch /etc/rsyncd/rsyncd.motd 
注:創建rsyncd.motd文件,這是定義服務器信息的文件。 
下一就是我們修改 rsyncd.conf 和rsyncd.secrets 和rsyncd.motd 文件的時候了。 
rsyncd.conf文件內容: 

復制代碼

代碼如下:


# Minimal configuration file for rsync daemon 
# See rsync(1) and rsyncd.conf(5) man pages for help 
# This line is required by the /etc/init.d/rsyncd script 
pid file = /var/run/rsyncd.pid 
port = 873 
address = 192.168.1.171 
#uid = nobody 
#gid = nobody 
uid = root 
gid = root 
use chroot = yes 
read only = yes 

#limit access to private LANs 
hosts allow=192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0 
hosts deny=* 
max connections = 5 
motd file = /etc/rsyncd/rsyncd.motd 
#This will give you a separate log file 
#log file = /var/log/rsync.log 
#This will log every file transferred - up to 85,000+ per user, per sync 
#transfer logging = yes 
log format = %t %a %m %f %b 
syslog facility = local3 
timeout = 300 
[linuxsirhome] 
path = /home 
list=yes 
ignore errors 
auth users = linuxsir 
secrets file = /etc/rsyncd/rsyncd.secrets 
comment = linuxsir home 
exclude = beinan/ samba/ 
[beinan] 
path = /opt 
list=no 
ignore errors 
comment = optdir 
auth users = beinan 
secrets file = /etc/rsyncd/rsyncd.secrets 


密碼文件:/etc/rsyncd/rsyncd.secrets的內容格式; 

用戶名:密碼 
linuxsir:222222 
beinan:333333 
注: 這里的密碼值得注意,為了安全,你不能把系統用戶的密碼寫在這里。比如你的系統用戶 linuxsir 密碼是 abcdefg ,為了安全,你可以讓rsync 中的linuxsir 為 222222 。這和samba的用戶認證的密碼原理是差不多的; 
rsyncd.motd 文件; 
它是定義rysnc 服務器信息的,也就是用戶登錄信息。比如讓用戶知道這個服務器是誰提供的等;類似ftp服務器登錄時,我們所看到的 jb51.net ftp ……。 當然這在全局定義變量時,并不是必須的,你可以用#號注掉,或刪除;我在這里寫了一個 rsyncd.motd的內容為: 

+++++++++++++++++++++++++++ 
+ jb51.net rsync 2002-2007 + 
+++++++++++++++++++++++++++ 
rsyncd.conf文件代碼說明 
pid file = /var/run/rsyncd.pid 
注:告訴進程寫到 /var/run/rsyncd.pid 文件中; 

port = 873 
注:指定運行端口,默認是873,您可以自己指定; 

address = 192.168.1.171 
注:指定服務器IP地址; 

uid = nobody 
gid = nobdoy 
注:服務器端傳輸文件時,要發哪個用戶和用戶組來執行,默認是nobody。 如果用nobody 用戶和用戶組,可能遇到權限問題,有些文件從服務器上拉不下來。所以我就偷懶,為了方便,用了root 。不過您可以在定義要同步的目錄時定義的模塊中指定用戶來解決權限的問題。 

use chroot = yes 
用chroot,在傳輸文件之前,服務器守護程序在將chroot 到文件系統中的目錄中,這樣做的好處是可能保護系統被安裝漏洞侵襲的可能。缺點是需要超級用戶權限。另外對符號鏈接文件,將會排除在外。也就是說,你在rsync服務器上,如果有符號鏈接,你在備份服務器上運行客戶端的同步數據時,只會把符號鏈接名同步下來,并不會同步符號鏈接的內容;這個需要自己來嘗試; 

read only = yes 
注:read only 是只讀選擇,也就是說,不讓客戶端上傳文件到服務器上。還有一個 write only選項,自己嘗試是做什么用的吧; 

#limit access to private LANs 
hosts allow=192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0 
注:在您可以指定單個IP,也可以指定整個網段,能提高安全性。格式是ip 與ip 之間、ip和網段之間、網段和網段之間要用空格隔開; 

max connections = 5 
注:客戶端最多連接數; 

motd file = /etc/rsyncd/rsyncd.motd 
注:motd file 是定義服務器信息的,要自己寫 rsyncd.motd 文件內容。當用戶登錄時會看到這個信息。 

log file = /var/log/rsync.log 
注:rsync 服務器的日志; 

transfer logging = yes 
注:這是傳輸文件的日志; 

[linuxsirhome] 
注:模塊,它為我們提供了一個鏈接的名字,鏈接到哪呢,在本模塊中,鏈接到了/home目錄;要用[name] 形式; 

path = /home 
注:指定文件目錄所在位置,這是必須指定的; 

auth users = linuxsir 
注:認證用戶是linuxsir ,是必須在 服務器上存在的用戶; 

list=yes 
注:list 意思是把rsync 服務器上提供同步數據的目錄在服務器上模塊是否顯示列出來。默認是yes 。如果你不想列出來,就no ;如果是no是比較安全的,至少別人不知道你的服務器上提供了哪些目錄。你自己知道就行了; 

ignore errors 
注:忽略IO錯誤,詳細的請查文檔; 

secrets file = /etc/rsyncd/rsyncd.secrets 
注:密碼存在哪個文件; 

comment = linuxsir home data 
注:注釋可以自己定義,寫什么都行,寫點相關的內容就行; 

exclude = beinan/ samba/ 
注:exclude 是排除的意思,也就是說,要把/home目錄下的beinan和samba 排除在外; beinan/和samba/目錄之間有空格分開 ; 

啟動rsync 服務器及防火墻的設置 
啟動rsync服務器 
啟動rsync 服務器相當簡單,–daemon 是讓rsync 以服務器模式運行; 

/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf 
rsync服務器和防火墻 
Linux 防火墻是用iptables,所以我們至少在服務器端要讓你所定義的rsync 服務器端口通過,客戶端上也應該讓通過。 

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT 
查看一下防火墻是不是打開了 873端口; 

iptables -L 
通過rsync客戶端來同步數據 
rsync -avzP linuxsir@jb51.net::linuxsirhome linuxsirhome 
Password: 這里要輸入linuxsir的密碼,是服務器端提供的,在前面的例子中,我們用的是 222222,輸入的密碼并不顯示出來;輸好后就回車; 
注: 這個命令的意思就是說,用linuxsir 用戶登錄到服務器上,把linuxsirhome數據,同步到本地目錄linuxsirhome上。當然本地的目錄是可以你自己定義的,比如 linuxsir也是可以的;當你在客戶端上,當前操作的目錄下沒有linuxsirhome這個目錄時,系統會自動為你創建一個;當存在linuxsirhome這個目錄中,你要注意它的寫權限。 
說明: 
-a 參數,相當于-rlptgoD,-r 是遞歸 -l 是鏈接文件,意思是拷貝鏈接文件;-p 表示保持文件原有權限;-t 保持文件原有時間;-g 保持文件原有用戶組;-o 保持文件原有屬主;-D 相當于塊設備文件; 
-z 傳輸時壓縮; 
-P 傳輸進度; 
-v 傳輸時的進度等信息,和-P有點關系,自己試試。可以看文檔; 

rsync -avzP --delete linuxsir@jb51.net::linuxsirhome linuxsirhome 
這回我們引入一個 –delete 選項,表示客戶端上的數據要與服務器端完全一致,如果 linuxsirhome目錄中有服務器上不存在的文件,則刪除。最終目的是讓linuxsirhome目錄上的數據完全與服務器上保持一致;用的時候要小心點,最好不要把已經有重要數所據的目錄,當做本地更新目錄,否則會把你的數據全部刪除; 

rsync -avzP --delete --password-file=rsync.password linuxsir@jb51.net::linuxsirhome linuxsirhome 
這次我們加了一個選項 –password-file=rsync.password ,這是當我們以linuxsir用戶登錄rsync服務器同步數據時,密碼將讀取 rsync.password 這個文件。這個文件內容只是linuxsir用戶的密碼。我們要如下做; 

復制代碼

代碼如下:


touch rsync.password 
chmod 600 rsync.password 
echo "222222"> rsync.password 
rsync -avzP --delete --password-file=rsync.password linuxsir@jb51.net::linuxsirhome linuxsirhome 


注: 這樣就不需要密碼了;其實這是比較重要的,因為服務器通過crond 計劃任務還是有必要的; 

讓rsync 客戶端自動與服務器同步數據 
編輯crontab 
crontab -e 
加入如下代碼: 

10 0 * * * rsync -avzP --delete --password-file=rsync.password linuxsir@jb51.net::linuxsirhome linuxsirhome 
表示每天0點10分執行后面的命令。更多crontab用法請參考

延伸 · 閱讀

精彩推薦
  • Centoscentos不小心刪除/root目錄該如何解決?

    centos不小心刪除/root目錄該如何解決?

    一些朋友最近在問小編centos不小心刪除/root目錄該如何解決?今天小編就為大家分享centos不小心刪除/root目錄解決辦法;希望對大家會有幫助,有需要的朋友...

    腳本之家8022019-05-29
  • CentosCentos7運用/dev/shm進行網站優化

    Centos7運用/dev/shm進行網站優化

    這篇文章主要介紹了LINUX中Centos7運用/dev/shm進行網站優化相關知識點,對此有興趣的朋友參考學習下。...

    彬菌9912022-03-02
  • CentosCentOS6.5下Redis安裝與配置詳細步驟

    CentOS6.5下Redis安裝與配置詳細步驟

    本篇文章主要介紹了CentOS6.5下Redis安裝與配置詳細步驟,詳細介紹redis單機單實例安裝與配置,服務及開機自啟動。有興趣的可以了解一下。...

    飛流11452021-12-24
  • Centoscentos 安裝與操作方法

    centos 安裝與操作方法

    這篇文章主要介紹了centos 安裝與操作方法,需要的朋友可以參考下...

    centos之家5272019-07-11
  • CentosCentos 7開啟網卡自動獲取IP的詳細方法

    Centos 7開啟網卡自動獲取IP的詳細方法

    本篇文章主要介紹了Centos 7開啟網卡自動獲取IP的詳細方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    凌鋒8972021-12-29
  • CentosCentOS7設置日期和時間方法以及基本概念介紹

    CentOS7設置日期和時間方法以及基本概念介紹

    這篇文章主要介紹了CentOS7設置日期和時間方法以及基本概念介紹,本文講解使用CentOS7中的新命令timedatectl設置日期時間方法,需要的朋友可以參考下 ...

    CentOS之家6522019-09-19
  • CentosCentOS下Uptime命令詳解

    CentOS下Uptime命令詳解

    在Linux下,我們可以使用uptime命令,而且此命令不必使用root權限。uptime命令在系統中已經默認安裝了。今天小編為大家帶來的是CentOS下Uptime命令詳解;希望...

    CentOS之家11482019-06-19
  • CentosCentOS 6.6實現永久修改DNS地址的方法

    CentOS 6.6實現永久修改DNS地址的方法

    這篇文章主要介紹了CentOS 6.6實現永久修改DNS地址的方法,涉及針對CentOS配置文件的相關設置技巧,具有一定參考借鑒價值,需要的朋友可以參考下 ...

    Linux社區4472020-08-21
主站蜘蛛池模板: 91免费版在线观看 | 久久久久久久久国产成人免费 | 国产97在线播放 | 亚洲精品福利 | 成人精品免费视频 | 成人黄页在线观看 | 一本大道伊人久久综合 | 精品成人国产在线观看男人呻吟 | 视频一区二区三区免费观看 | 天天摸天天干 | 中文日韩av | 亚洲国产精品久久久久婷婷老年 | 美日韩视频| 日韩成人| 美女主播精品视频一二三四 | 99视频精品| 欧美色综合网 | 精品无码久久久久国产 | 欧美日韩视频一区二区 | 亚洲精品电影网在线观看 | av免费直接看 | 久久久久无码国产精品一区 | 欧美一级特黄在线观看 | 精品自拍视频在线观看 | 久久这里只有国产精品 | 国产精品美女久久久免费 | 国产高清美女一级a毛片久久 | 成人免费看 | 综合色九九 | 日本一区二区三区四区 | 成人高清网站 | 一区二区精品视频 | 亚洲视频一区在线 | 黄色片免费看 | 国产精品精品视频一区二区三区 | 欧美综合视频 | 免费看一区二区三区 | 日韩av在线中文字幕 | 国产精品久久九九 | 亚洲一区中文字幕在线观看 | 午夜视频在线看 |