[[サーバーTips]]

** rsync [#b6780873]

*** 実行 [#n19048d5]
rsync -av --delete rsync://192.168.0.7/dsk1/ /mnt/dsk1

*** 設定 [#o5744de8]
vi /etc/rsyncd.conf

 
 ## Rsync logging Settings
 #syslog facility = local5
 #transfer logging = yes
 
 ## Global Settings
 uid = root
 gid = root
 log file      = /var/log/rsyncd.log
 pid file      = /var/run/rsyncd.pid
 
 dont compress = *.gz *.tgz *.zip *.pdf *.sit *.sitx *.lzh *.bz2 *.jpg *.jpeg  *.gif *.png
 
 [dsk0]
        path = /mnt/dsk0
        comment = comic files
        hosts allow = 192.168.0.7
        hosts deny = *
        read only = no
 
 [dsk1]
        path = /mnt/dsk1
        comment = media files
        hosts allow = 192.168.0.7
        hosts deny = *
        read only = no
 
 [books]
        path = /mnt/dsk1/books
        comment = media files
        hosts allow = 192.168.0.7
        hosts deny = *
        read only = no
 

vi /etc/xinetd.d/rsync

 
 # default: off
 # description: The rsync server is a good addition to an ftp server, as it \
 #       allows crc checksumming etc.
 service rsync
 {
        disable = no
        flags           = IPv6
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
 }
 

/etc/rc.d/init.d/xinetd restart

**Centos7 [#l4b801b7]

 [root@lyon sekigawa]# systemctl start rsyncd
 [root@lyon sekigawa]# systemctl enable rsyncd


**スクリプト [#l4b801b7]

 #!/bin/bash
 
 rsync -av --delete rsync://192.168.0.7/dsk0/ /mnt/dsk0
 rsync -av --delete rsync://192.168.0.7/dsk1/ /mnt/dsk1
 rsync -av --delete rsync://192.168.0.7/dsk2/ /mnt/dsk2

**マシン内コピー [#l4b801b7]

 rsync -av --delete /mnt/dsk0/ /mnt/new_hdd/

**WAN経由 [#l4b801b7]

 rsync -avz --delete --bwlimit=8000 --partial --progress rsync://192.168.0.10/dsk0/ /mnt/dsk0

**ログ [#l4b801b7]

- ログファイルの保存先を決める

/var/log/mirror.log を使用

- logrotate 設定ファイルを作成

/etc/logrotate.d/mirror を作成

 /var/log/mirror.log {
    weekly                 # 週ごとにローテート(daily や monthly も可)
    rotate 4               # 4つ前まで保存(mirror.log.1〜mirror.log.4)
    compress               # gzipで圧縮(mirror.log.1.gz など)
    missingok              # ファイルがなくてもエラーにしない
    notifempty             # 中身が空ならローテートしない
    copytruncate           # ローテート時にファイルをコピーして元を truncate(rsync の出力中でも安全)
 }

- テストと確認

 sudo logrotate -d /etc/logrotate.d/mirror

**スクリプト(2) [#l4b801b7]

開始と終了時間を出す

 [root@multi mnt]# cat /mnt/mirror.sh
 #!/bin/bash
 
 
 LOGFILE="/var/log/mirror.log"
 
 {
   echo "========== START: $(date) =========="
 
   rsync -av --delete rsync://192.168.0.10/dsk0/ /mnt/dsk0
   rsync -av --delete rsync://192.168.0.10/dsk1/ /mnt/dsk1
   rsync -av --delete rsync://192.168.0.10/dsk2/ /mnt/dsk2
 
   echo "========== END: $(date) =========="
 } >> "$LOGFILE" 2>&1
 
 [root@multi mnt]#




トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS