亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Centos 配置rsync遠程同步及使用inotify+rsync實時備份

發布時間:2020-06-20 17:20:13 來源:網絡 閱讀:489 作者:俊偉祺i 欄目:系統運維

博文目錄
一、rsync概述
1、rsync命令的基本用法
二、配置rsync
1、配置同步身份驗證的rsync
2、rsync定期同步
3、配置inotify+rsync實時同步

一、rsync概述

rsync(Remote Sync,遠程同步)是一個開源的快速備份工具,可以在不同主機之間鏡像同步整個目錄樹,支持增量備份,保持鏈接和權限,且采用優化的同步算法,傳輸前執行壓縮,因此非常適用于異地備份、鏡像服務器等應用。rsync的官方站點是http://rsync.samba.org/ 作為一種常用的文件備份工具,rsync往往是Linux和UNIX系統默認安裝的基本組件之一。

[root@centos01 ~]# rpm -q rsync
rsync-3.0.9-18.el7.x86_64

在遠程同步任務中,負責發起rsync同步 操作的客戶機稱為發起端,而負責響應來自客戶機的rsync同步操作的服務器稱為同步源。在同步過程中,同步源負責提供文檔的原始位置,發起端應對該位置具有讀取權限。rsync作為同步源時以守護進程運行,為其他客戶機提供備份源。配置rsync同步源需要建立配置文件rsync.conf,創建備份賬號,然后將rsync程序以守護進程(“--daemon”選項)方式運行。
Centos 配置rsync遠程同步及使用inotify+rsync實時備份

1、rsync命令的基本用法

絕大多數的備份程序要求指定原始位置、目標位置,rsync命令也一樣。最簡單的rsync用法類似于cp命令。例如,可以將文件/etc/fstab、目錄/boot/grub同步備份到/opt目錄下,其中,“-r”選項表示遞歸整個目錄樹,“-l”選項用來備份鏈接文件。

備份的基本格式為“rsync [選項] 原始位置 目標位置”,其中常用的一些命令選項如下:

  • -r:遞歸模式,包含目錄及子目錄中的所有文件;
  • -l:對于符號鏈接文件仍然復制為符號鏈接文件;
  • -v:顯示同步過程的詳細信息;
  • -a:歸檔模式,保留文件的權限、屬性等信息,等同于組合選項“-rlptgoD”;
  • -z:在傳輸文件時進行壓縮;
  • -p:保留文件的權限標記;
  • -t:保留文件的時間標記;
  • -g:保留文件的屬組標記(僅超級用戶使用);
  • -o:保留文件的屬主標記(僅超級用戶使用);
  • -H:保留硬連接文件;
  • -A:保留ACL屬性信息;
  • -D:保留設備文件及其他特殊文件;
  • --delete:刪除目標位置有而原始位置沒有的文件;
  • --checksum:根據校驗和(而不是文件大小、修改時間)來決定是否跳過文件;

二、配置rsync

[root@centos01 ~]# cp /etc/rsyncd.conf /etc/rsyncd.conf.bak   <!--備份rsync主配置文件-->
[root@centos01 ~]# vim /etc/rsyncd.conf   <!--編輯主配置文件-->
uid = nobody         <!--管理rsync的用戶-->
 gid = nobody       <!--管理rsync的組-->
 port 873           <!--rsync的端口號-->
pid file = /var/run/rsyncd.pid        <!--rsync進程id位置-->
dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2  <!--同步在壓縮的文件類型-->
 auth users = bob           <!--驗證賬戶-->
 secrest file = /etc/rsync_user.db          <!--密碼數據庫-->
 address = 192.168.100.10            <!--rsync服務監聽的ip地址-->
 hosts allow = 192.168.100.0/24       <!--允許192.168.100.0網段訪問-->
 read only = yes          <!--允許讀取權限-->
[root@centos01 ~]# rsync --daemon          <!--啟動rsync服務-->
[root@centos01 ~]# netstat -anptu | grep rsync        <!--監聽rsync服務是否正常啟動-->
tcp        0      0 192.168.100.10:873      0.0.0.0:*               LISTEN      1422/rsync     
[root@centos01 ~]# kill 1422        <!--停止服務使用kill結束進程-->
[root@centos01 ~]# vim /etc/rc.d/rc.local          <!--設置開機自動啟動rsync服務-->
/usr/bin/rsync --daemon          <!--rsync啟動服務添加到配置文件中-->
[root@centos01 ~]# chmod +x /etc/rc.d/rc.local         <!--添加執行權限-->

[root@centos01 ~]# mkdir centos7             <!--創建centos7目錄-->
[root@centos01 ~]# rsync -alv /mnt/* ./centos7/      
                                                         <!--將mnt目錄下的文件復制到centos7目錄里-->
[root@centos01 ~]# mkdir benet            <!--創建目錄-->
[root@centos01 ~]# mkdir xsh          <!--創建目錄-->

[root@centos01 ~]# echo "11111" > ./benet/1.txt          <!--寫入數據-->
[root@centos01 ~]# echo "22222" > ./xsh/2.txt           <!--寫入數據-->
[root@centos01 ~]# rsync -av --delete ./benet/ ./xsh      
                   <!--將源benet目錄中數據同步到目錄xsh目錄,刪除xsh目錄中的歷史數據-->
sending incremental file list
./
deleting 2.txt
1.txt

sent 92 bytes  received 34 bytes  252.00 bytes/sec
total size is 6  speedup is 0.05
[root@centos01 ~]# cd xsh          <!--進入xsh目錄-->
[root@centos01 xsh]# ls           <!--查看是否同步成功-->
1.txt
[root@centos01 ~]# rsync -av ./xsh/ root@192.168.100.20:/          
                      <!--將本地xsh目錄中的數據,同步到遠程主機192.168.100.20的根目錄中-->
The authenticity of host '192.168.100.20 (192.168.100.20)' can't be established.
ECDSA key fingerprint is SHA256:PUueT9fU9QbsyNB5NC5hbSXzaWxxQavBxXmfoknXl4I.
ECDSA key fingerprint is MD5:6d:f7:95:0e:51:1a:d8:9e:7b:b6:3f:58:51:51:4b:3b.
Are you sure you want to continue connecting (yes/no)? yes       <!--輸入yes-->
Warning: Permanently added '192.168.100.20' (ECDSA) to the list of known hosts.
root@192.168.100.20's password:         <!--輸入密碼-->
sending incremental file list
./
1.txt

sent 92 bytes  received 34 bytes  19.38 bytes/sec
total size is 6  speedup is 0.05
[root@centos02 ~]# cd /      <!--進入根目錄-->
[root@centos02 /]# ls         <!--查看目錄下文件-->
1.txt  boot  etc   lib    media  opt   root  sbin  sys  usr
bin    dev   home  lib64  mnt    proc  run   srv   tmp  var

1、配置同步身份驗證的rsync

[root@centos01 ~]# vim /etc/rsync_user.db   
                                       <!--創建rsync驗證數據庫,賬戶是bob,密碼是pwd@123-->
bob:pwd@123
[root@centos01 ~]# chmod 600 /etc/rsync_user.db     <!--驗證數據庫文件添加600權限-->
[root@centos01 ~]# vim /etc/rsyncd.conf      <!--修改rsync主配置文件創建共享-->
  [accp]          <!--同步共享模塊名字-->
        path = /accp    <!--同步物理目錄-->
        comment = test    <!--描述-->
        auth users bob     <!--驗證賬戶-->
        secrets file = /etc/rsync_user.db     <!--驗證的數據庫-->
        read only = yes       <!--允許只讀權限-->
[root@centos01 ~]# mkdir /accp      <!--創建同步物理目錄-->
[root@centos01 ~]# echo "accp.com" > /accp/qq.txt      <!--寫入測試數據-->
[root@centos01 ~]# rsync -av bob@192.168.100.10::accp ./xsh/    
<!--客戶端同步數據,將遠程服務器192.168.100.10的accp數據同步到當前位置的xsh目錄-->
receiving incremental file list 
./
aa.txt

sent 48 bytes  received 118 bytes  332.00 bytes/sec
total size is 4  speedup is 0.02
[root@centos01 ~]# rsync -av rsync://bob@192.168.100.10/accp ./xsh/       <!--第二種方式同步-->
receiving incremental file list
./
aa.txt

sent 48 bytes  received 118 bytes  332.00 bytes/sec
total size is 4  speedup is 0.02
[root@centos01 ~]# cd xsh/         <!--驗證是否同步成功-->
[root@centos01 xsh]# ls
aa.txt

2、rsync定期同步

[root@centos01 ~]# mount /dev/cdrom /mnt/     <!--切換Linux光盤安裝inotify-->
mount: /dev/sr0 寫保護,將以只讀方式掛載
[root@centos01 ~]# tar zxvf /mnt/inotify-tools-3.14.tar.gz -C /usr/src/   <!--解壓縮inotify-->
[root@centos01 ~]# cd /usr/src/inotify-tools-3.14/   <!--進入inotify目錄-->
[root@centos01 inotify-tools-3.14]# ./configure     <!--配置inotify-->
[root@centos01 inotify-tools-3.14]# make && make install  <!--編譯安裝inotify-->
[root@centos01 ~]# cat /proc/sys/fs/inotify/max_queued_events 
                                                                   <!--查看inotify監控事件隊列-->
16384
[root@centos01 ~]# cat /proc/sys/fs/inotify/max_user_instances <!--查看最多監控實例數-->
128
[root@centos01 ~]# cat /proc/sys/fs/inotify/max_user_watches <!--查看每個實例最多監控文件數-->
8192
[root@centos01 ~]# vim /etc/sysctl.conf  <!--修改inotify配置文件,加大三個參數的值-->
fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 1024
fs.inotify.max_user_watches = 1048576
[root@centos01 ~]# sysctl -p          <!--更新內核參數-->
fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 1024
fs.inotify.max_user_watches = 1048576
[root@centos01 ~]# inotifywait -mrq -e modify,create,delete,move,attrib /
accp/     
                         <!--配置一次性監控,監控/accp目錄發生的變化-->
[root@centos01 ~]# cd /accp/       
                             <!--進入accp目錄,修改、刪除、創建數據測試是否監控成功-->
[root@centos01 accp]# ls
aa.txt
[root@centos01 accp]# touch 11.txt 
[root@centos01 accp]# echo "111" > 1.txt 
[root@centos01 accp]# rm -rf 11.txt
[root@centos01 ~]# inotifywait -mrq -e modify,create,delete,move,attrib /
accp/ 
            <!--查看監控狀態-->
/accp/ CREATE 11.txt
/accp/ ATTRIB 11.txt
/accp/ CREATE 1.txt
/accp/ MODIFY 1.txt
/accp/ DELETE 11.txt

3、配置inotify+rsync實時同步

[root@centos01 ~]# vim rsync.sh         <!--創建編寫實時同步腳本-->
#!/bin/bash
INW="inotifywait -mrq -e modify,create,delete,move,attrib /accp/"
RSYNC="rsync -avzH /accp/ root@192.168.100.20:/baidu/ --delete"
$INW | while read DIRECTORY EVENT FILE;do
$RSYNC &> /dev/null
done
[root@centos01 ~]# chmod +x rsync.sh      <!--腳本添加執行權限-->
[root@centos01 ~]# ssh-keygen -t rsa          <!--配置密鑰對-->
[root@centos01 ~]# ssh-copy-id -i ./.ssh/id_rsa.pub root@192.168.100.20    
                                                              <!--上傳ssh客戶端的公鑰到ssh服務器端-->
[root@centos01 ~]# netstat -anptu | grep rsync     <!--停止rsync服務重新啟動-->
tcp        0      0 0.0.0.0:873             0.0.0.0:*               LISTEN      7657
tcp6       0      0 :::873                  :::*                    LISTEN      765
[root@centos01 ~]# kill 7657             <!--停止rsync服務-->
[root@centos01 ~]# rsync --daemon      <!--重新啟動-->
[root@centos02 ~]# mkdir baidu          <!--服務器端創建baidu目錄-->
[root@centos02 ~]# cd baidu/             <!--進入baidu目錄-->
[root@centos02 baidu]# echo "111" > 333.txt       <!--插入數據-->
[root@centos02 baidu]# ls         <!--查看-->
333.txt
[root@centos01 ~]# ./rsync.sh &          <!--執行腳本-->
[3] 11160
[root@centos02 ~]# cd /baidu/     
                  <!--服務器端查看baidu目錄是否刪除歷史數據插入客戶端accp目錄下的數據-->
[root@centos02 baidu]# ls
w.txt
[root@centos01 ~]# vim /etc/rc.d/rc.local 
                              <!--將rsync實時同步的腳本添加到開機自動啟動配置文件中-->
/root/rsync.sh &           <!--執行腳本的路徑添加進來-->
[root@centos02 ~]# kill 7984       <!--停止rsync服務-->
[root@centos02 ~]# rsync --daemon    <!--重新啟動-->
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

栾城县| 济源市| 师宗县| 赤峰市| 石狮市| 交口县| 东乡族自治县| 光山县| 长春市| 平定县| 察隅县| 古田县| 三台县| 塔城市| 三河市| 汝州市| 泸州市| 高邑县| 沈阳市| 岢岚县| 鄂伦春自治旗| 云浮市| 榆林市| 祁连县| 阳高县| 禹州市| 桃江县| 黔西县| 高碑店市| 类乌齐县| 铜梁县| 勃利县| 高平市| 山丹县| 商南县| 德庆县| 略阳县| 衡阳市| 樟树市| 沛县| 双牌县|