rsyncのバックアップサーバは、研究ノートを設定します

rsyncのデータ同期、バックアップ
タイマー:rsyncの+ cronのスケジュールされたタスク
をリアルタイムで:rsyncを+ sersync(inotifyの)

https://www.samba.org/ftp/rsync/rsync.html公式文書

  • リモートコピーとのssh scpコマンド(暗号化されたコピー)
  • ローカルコピーのCP
  • 機能RMを削除します。

rsyncのの追加機能のいくつかは:rsyncの追加機能

  • などのリンク、機器、などの特殊なコピー文書を、サポートするためのリンク、デバイス、所有者、グループ、および権限をコピーするためのサポート
  • 除外と除外-から除外パッケージtarコマンドに相当し、指定したファイルまたはディレクトリの同期機能を除外することができますGNUのtarと同様のオプション、
  • CVSはCVSが無視するのと同じファイルを無視するためのモードを除外します
  • SSHでSSHまたはrshを含む、任意の透明リモートシェルを使用することができ、RSH暗号化送信(暗号化なしのrsync)
  • スーパーユーザー権限を必要としません。
  • 待ち時間のコストを最小限に抑えるために、ファイル転送のパイプライン
  • 匿名または認証モード送信処理のために、匿名または認証のrsyncデーモン(ミラーリングのための理想的な)をサポートするためのサポート

rsyncのは、ネットワークサービス(ポート、ソケット)することができ
rsyncコマンドをクライアントにコマンドです

rsyncの3つの動作モード

  • 第1の動作モード:ローカル
rsync -avz /root/aaa /tmp/  --->cp
rsync -avz --delete /root/aaa/ /tmp/    --->rm
  • 動作の第二モード:一般的にSSHでリモートシェル、転送キーキーレス、合成正規タスク
rsync -avzP -e 'ssh -p 22' /opt/ [email protected]:/tmp/     push
rsync -avzP -e "ssh -p 22" [email protected]:/tmp/ /opt/ 带斜线代表获取的是tmp下的文件    pull
rsync -avzP -e "ssh -p 22" [email protected]:/tmp /opt/  不带斜线代表获取的是tmp这个目录   pull
  • 第3の動作モード:ネットワークはrsyncのデーモン、暗号化のパフォーマンス損失VPN(PPTP、OpenVPNの、IPsec)を必要としません。
  Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
        rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
  Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
        rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

主な構文:
1、同等の-vzrtopgDl -avzは、そのままの属性の同期、ファイルおよびディレクトリの中で述べています。
2、-P同期表示処理、--progressに置き換えることができる
。3、'22 -eは、SSH -p」は、SSHを介してチャネルデータ伝送を示し、-p 22を省略してもよい
4、ルート@ 192.168.105.135:/ TMP / リモートホストシステムのユーザ、アドレス、パス
5、/ opt局所経路
6は、ファイルの内容を同期させる、これらの変化のいくつかがあり、第1の比較の再同期

パラメータのオプション 説明
-v --verbose 詳細出力モード、及び情報の送信中に進捗
-z --compress 伝送の伝送効率を向上させるための圧縮 - 圧縮レベルを=圧縮NUMレベルがあってもよいです
-a --archive アーカイブモードでは、再帰的にファイルを配布し、すべてのドキュメントのプロパティを保持し、-rlptgoDと同等の表現しました
-r --recursive すべてのサブディレクトリを再帰的モード、そのディレクトリも同様に、送信されています
-t --times 安定した時間情報を維持
-o --owner ファイルの所有者情報を保管してください
-p --perms ファイルのアクセス権を維持するために、
-g --group ファイルを保管してください情報の集合であり、
-P --progress そのような送信のタイムスケジュールなどのプロセスの同期と表示情報
-D --devices デバイスファイルの情報を保管してください
-l --links 予約済みソフトリンク
--delete ノー差同期(危険)
--exclude 1つのファイルを除外する
{A、B}、{a..d複数のファイルを除外 }
--exclude-から除外する複数のファイル
--partial HTTP大きなファイル
--bwlimit --bwlimit = 100制限速度

エンタープライズアプリケーションのシナリオ:

  1. 2つのサーバー間のデータ同期
  2. バックアップサーバへのすべてのクライアント・サーバ・データの同期化
  3. inotifyを行うリアルタイムのデータ同期にrsync + inotifyをかsersyncと組み合わせrsyncの機能

生産シナリオクラスタアーキテクチャサーバのバックアップ・ソリューション:

cronの+のrsync全体のネットワークサーバのデータバックアップソリューションが提案し、実装を担当

  1. 会社と混乱のリーダーシップのためのネットワーク全体のデータのバックアップ、重要なデータをバックアップするソリューションを提案
  2. ローカルバックアップでパッケージ化して、バックアップデータを統一された固定ストレージサーバ、ストレージサーバにして、上のスクリプトによるネットワーク全体へのrsyncはinotifyアプリケーションと組み合わせるとバックアップアラーム管理者の結果をチェックします
  3. IDCの部屋には、定期的にエンジンルームの火災や地震の問題は、データの損失につながる防ぐために、企業内の異なるサーバー上にデータをバックアップします

rsyncの利点:

1、増分バックアップ、支持ソケット(デーモン)、集中バックアップ(スライド支持、クライアント参照されている)
も、リモートシェルモードチャネル暗号化することができる、2(SSH)送信は、ソケット(デーモン)が送信を暗号化する必要があり、 IPSec VPNのサービスまたはサービスの使用

rsyncの短所:

  1. 長い時間よりも同期の小さなファイルの数が多い、時々、rsyncのプロセスが終了される場合があり
  2. ない完全な同期が完了している間、それは隠しファイルになり、10G、このような大きなファイルは、時には間違った、ターミナルに行く、大きなファイルを同期させ、送信はHTTPおよびその他のパラメータによって達成することができます。リモートコピーは、使い捨てSCPかもしれ

rsyncのバックアップ戦闘

ステップrsyncサーバの設定


1、サーバを設定し、現在のバージョン番号とインストールパッケージのrsyncを見ます

rsync --version     rsync-3.0.6-12.el6.x86_64


2、Vimはプロファイルを追加/etc/rsyncd.conf

rsyncの設定ファイル公式サイト:https://rsync.samba.org/ftp/rsync/rsyncd.conf.html

#配置文件详解,更多参数查看man rsyncd.conf
#Rsync server
#created by hejian 19:50 2019-3-17
##rsyncd.conf start##
uid = rsync     //客户端具备的权限(不存在,需要创建)
gid = rsync
use chroot = no     //安全相关
max connections = 2000   //客户端连接数
timeout = 600       //超时
pid file = /var/run/rsyncd.pid      #进程ID文件
lock file = /var/run/rsync.lock     #锁文件
log file = /var/log/rsyncd.log      #日志文件
ignore errors           #忽略错误
read only = false   #可读写
list = false        #不可以远程列表
hosts allow = 192.168.105.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup   //虚拟用户
secrets file = /etc/rsync.password   //存放用户账号密码的文件
#####################################
[backup]    //模块调用
#comment = backup by hejian 19:50 2019-3-17
path = /backup   //共享目录
[hejian]
path = /hejian


3、rsyncのユーザーが作成し、共有ディレクトリ/バックアップ、およびディレクトリへのアクセス権を与えます

useradd rsync -s /sbin/nologin -M
id rsync
mkdir /backup
chown -R rsync.rsync /backup/


4、パスワード・ファイルを作成します

echo "rsync_backup:123" > /etc/rsync.password
chmod 600 /etc/rsync.password


5、rsyncのサービスを開始し、表示

rsync --daemon

lsof -i :873  
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME  
rsync   1647 root    3u  IPv4  12479      0t0  TCP *:rsync (LISTEN)  
rsync   1647 root    5u  IPv6  12480      0t0  TCP *:rsync (LISTEN)  

netstat -tunlp|grep rsync  
tcp        0      0 0.0.0.0:873                 0.0.0.0:*                     LISTEN      1647/rsync            
tcp        0      0 :::873                      :::*                          LISTEN      1647/rsync    

ss -tunlp|grep rsync    
tcp    LISTEN     0      5                     :::873                  :::*        users:(("rsync",1647,5))  
tcp    LISTEN     0      5                      *:873                   *:*        users:(("rsync",1647,3))   

ps -ef|grep rsync  
root       1647      1  0 20:11 ?        00:00:00 rsync --daemon  
root       1660   1505  0 20:12 pts/0    00:00:00 grep --color=auto rsync    


6、スタートからの起動を追加します

echo "rsync --daemon" >>/etc/rc.local  
cat /etc/rc.local

rsyncのクライアント構成ステップ


1、パスワードファイルを作成し、権限を変更

echo "123" > /etc/rsync.password (与服务端密码保持一致,免密登陆)
chmod 600 /etc/rsync.password(与服务端密码权限保持一致)
ll /etc/rsync.password


2、送信ファイルのrsync(プッシュまたはプルがクライアントから操作されます)

(push)rsync -avz /backup/ [email protected]::backup/ --password-file=/etc/rsync.password
(pull)rsync -avz  rsync://[email protected]:873/backup/ /backup/ --password-file=/etc/rsync.password
echo $? = 0 就代表程序运行是正确的

プッシュ除外

rsync -avz --exclude=a /root/test/ [email protected]::backup/ --password-file=/etc/rsync.password

トラブルシューティング

#Rsync server
#created by hejian 19:50 2019-3-17
##rsyncd.conf start##
uid = rsync
gid = rsync
use chroot = no
max connections = 2000
timeout = 600
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 192.168.0.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
#####################################
[backup]
comment = backup by hejian 19:50 2019-3-17
path = /backup  

仮想マシンのスナップショットは、
実際のテストの準備環境をrsyncを、IPを変更し、ホスト名を変更し、カラーテーマのパラメータを変更し、メインのバックアップ構成ファイル

クライアントのエラー

エラー:

[root@lamp01:/tmp]# rsync -avz /tmp/ [email protected]::backup --password-file=rsync.password
rsync: failed to connect to 192.168.105.136: No route to host (113)
rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]  

トラブルシューティング:サーバーのファイアウォールがオンになって

エラー2:

[root@lamp01:/tmp]# rsync -avz /tmp/ [email protected]::backup --password-file=rsync.password
rsync: could not open password file "rsync.password": No such file or directory (2)  
Password:  
@ERROR: auth failed on module backup
rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]  

最初のエラーが間違ったパス--password-ファイルです=の/ etc / rsync.password
2番目のエラーは、サーバーのパスワードファイルと逆方向に書き込み、クライアント、サーバー書かれたアカウントとパスワード、クライアントの書き込み専用のパスワードです。問題は、検証が失敗に単語がつながっているスペルミスがあり、passwodファイルサーバのルートがあり、バックアップは、ユーザーがrsyncのあるファイル

おすすめ

転載: www.cnblogs.com/hejian2836/p/11110469.html