• 使用rsync同步数据(by quqi99)


    作者:张华  发表于:2015-12-28
    版权声明:能够随意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明

    ( http://blog.csdn.net/quqi99 )

    急需使用rsync在家里的多台机器上同步相片。

    sudo apt-get  install  rsync
    sudo update-rc.d -f rsync remove
    sudo update-rc.d rsync start 20 2 3 4 5 . stop 20 0 1 6 .
    sudo update-rc.d rsync enable
    hua@node1:~$ sudo sysv-rc-conf --list rsync
    rsync        0:off    1:off    2:on    3:on    4:on    5:on    6:off


    这时候就能够在一台机器上同步文件夹了(rsync server执行在qnap上,统一在qnap上改动,rsync client定时执行下列命令就可以让客户端的文件夹与服务端同步,以服务端为准):

    rsync -avzur --progress --delete /bak/tmp/qnap/ /qnap/

    rsync -avzur --progress --delete --password-file=/etc/rsync.secret  /bak/tmp/qnap/ /qnap/


    在多台机器上同步文件夹:

    rsync -rave "ssh -p 22 -l hua" -avzur --progress --delete 192.168.99.124:/qnap/ /qnap/
    等价于:rsync -avzur --progress --delete hua@192.168.99.124:/qnap/ /qnap/


    也能够配置使用::qnap使用下列配置文件/etc/rsyncd.conf中的[qnap]模块:

    sudo rsync -avrzP hua@192.168.99.124::qnap qnap

    hua@node1:~$ sudo rsync --list-only hua@192.168.99.124::
    ++++++++++++++++++++++++++++++++++++++++++++++
    Welcome to use quqi rsync services!
    ++++++++++++++++++++++++++++++++++++++++++++++

    qnap               This is qnap backup data


    配置[qnap]模块的过程例如以下:

    sudo touch /etc/rsyncd.conf
    sudo touch /etc/rsyncd.motd
    hua@node1:~$ sudo cat /etc/rsyncd.motd
    ++++++++++++++++++++++++++++++++++++++++++++++
    Welcome to use quqi rsync services!
    ++++++++++++++++++++++++++++++++++++++++++++++
    sudo touch /etc/rsyncd.secrets
    hua@node1:~$ sudo cat /etc/rsyncd.secrets
    hua:Passw0rd
    sudo chmod 600 /etc/rsyncd.secrets
    sudo chown root:root /etc/rsyncd.secrets
    hua@node1:~$ sudo cat /etc/default/rsync |grep 'RSYNC_ENABLE'
    RSYNC_ENABLE=true

    sudo /etc/init.d/rsync restart
    sudo iptables -A INPUT -p tcp -m state --state NEW  -m tcp --dport 873 -j ACCEPT
    vi /etc/rsyncd.conf
    pid file = /var/run/rsyncd.pid
    port = 873
    address = 192.168.99.124
    #usermod -g root hua
    uid = hua
    gid = root
    use chroot = yes
    read only = yes
    hosts allow=192.168.99.0/255.255.255.0 10.0.1.0/255.255.255.0
    hosts deny=*
    max connections = 5
    motd file = /etc/rsyncd.motd
    log file = /var/log/rsync.log
    #transfer logging = yes
    log format = %t %a %m %f %b
    syslog facility = local3
    timeout = 300

    [qnap]

    path = /qnap
    list=yes             # 能够使用rsync --list-only hua@192.168.99.124::命令列出文件夹
    ignore errors
    auth users = hua,root
    secrets file = /etc/rsyncd.secrets
    comment = This is qnap backup data
    exclude = tmp/  test/


    最后。我实际上是这样处理的,我有一个qnap,一个台式机。一个笔记本,对于一些相片啥的想多存储几份别一个机器哪天坏了丢了。

    1, 由于iscsi上一个bug。一个client对qnap上的iscsi server写了之后,没法实时更新在还有一个client上(必须先umount再mount一下才行)。 而且qnap的iscsi採用一个大的虚拟文件存储的,这都不是我想要的。所以最后仅仅使用了qnap上的nfs将相片存储了一份

    2, 台式机由于IP固定开机自己主动mount (sudo mount -t nfs -o vers=3 192.168.99.122:/Public /bak/qnap), 另外直接复制了一份到/bak/qnap_local文件夹防止rsync操作失误毁坏数据。

    3, 笔记本由于常常外出IP不固定。外出时使用/bak/qnap_local文件夹的内容,在家须要同步时手工同步:

       sudo mount -t nfs -o vers=3 192.168.99.122:/Public /bak/qnap
       cd ~ && rsync -avzurP --exclude 'doc' --exclude 'photo' --exclude 'media'  --progress --delete /bak/qnap/ /bak/qnap_local

    4, 平时在家办公统一从台式机上写/bak/qnap文件夹将数据直接写到qnap上。手机等移动设备通过qnap ftp訪问数据。


  • 相关阅读:
    work two year[转]
    知名技术博客内容聚合网站
    VS2010注册码
    某公司的一个题面试题(wfcfan)
    asp.net控件开发基础系列
    .NET (C#) Internals: Delegates1
    可空类型细微见真知!
    C#中操作XML Node节点细节操作
    sql server数据库性能的优化
    字符串精确匹配算法改进的探讨
  • 原文地址:https://www.cnblogs.com/yangykaifa/p/7084610.html
Copyright © 2020-2023  润新知