nighty

          折騰的年華
          posts - 37, comments - 143, trackbacks - 0, articles - 0

          rsync同步文件的安裝筆記

          Posted on 2013-04-12 12:23 寒武紀 閱讀(1347) 評論(0)  編輯  收藏 所屬分類: 服務器部署
          系統為ubuntu server,二臺機器A和B,IP為A 192.168.1.111,B 192.168.1.222
          A為rsync server,啟動為守護進程,B為備份機,做為rsync client,最后用crontab做一個簡單的作業,定時在B上執行同步文件的功能
          A的安裝和配置如下:
          1.  apt-get install rsync   可能提示系統已經安裝有了
          2. 配置文件/etc/rsyncd.conf
              默認安裝時是不會有這個配置文件的,但是可以 cp /usr/share/doc/rsync/examples/rsyncd.conf /etc  把它示例中的配置文件拷貝過來
              vi /etc/rsyncd.conf    這里參數有點多,但是有些可以先不管,關注重點的
              [ftp]  這里是模塊,可以配置多個,這個是系統默認給出的一個配置,下面給一個本機上的配置示例:
          --------------------------------------------------------------------------------------------------
          # so omit the "pid file" line completely in that case.
          pid file=/var/run/rsyncd.pid
          #syslog facility=daemon
          #socket options=
          # MODULE OPTIONS
          [share]
          comment = public archive
          path = /var/www/pub
          use chroot = no
          max connections=2
          # lock file = /var/lock/rsyncd
          # the default for read only is yes...
          read only = no
          list = yes
          uid = nobody
          gid = nogroup
          # exclude = 
          # exclude from = 
          # include =
          # include from =
          auth users = rsync
          secrets file = /etc/rsyncd.secrets
          strict modes = yes
          hosts allow = 192.168.1.222
          # hosts deny =
          ignore errors = yes
          ignore nonreadable = yes
          transfer logging = yes
          log format = %t: host %h (%a) %o %f (%l bytes). Total %b bytes.
          timeout = 600
          refuse options = checksum dry-run
          dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz
          ---------------------------------------------------------------------------------------------
          這里,最上面的是pid文件位置。然后配置了一個模塊名叫做share,最大連接數是2,read only = no,指定為非只讀(不然同步時會有權限問題)
          而后面的auth users = rsync 是指定一個同步的賬戶名叫做rsync,這個賬戶的認證文件是/etc/rsyncd.secrets,當然我們要創建這個文件

          3.  創建 /etc/rsyncd.secrets文件,內容為: rsync:123  表示rsync這個用戶的密碼是123 然后修改文件的權限 chmod 600 /etc/rsyncd.secrets

          4.  rsync server做為守護進程
               vi /etc/default/rsync
               可以看到開頭處這樣聲明:
          ------------------------------------
          # start rsync in daemon mode from init.d script?
          #  only allowed values are "true", "false", and "inetd"
          #  Use "inetd" if you want to start the rsyncd from inetd,
          #  all this does is prevent the init.d script from printing a message
          #  about not starting rsyncd (you still need to modify inetd's config yourself).
          RSYNC_ENABLE=inetd
          -------------------------------------------
             做為守護進程,可以設置為true或是xinetd方式來啟動。于是我們安裝inetd   sudo apt-get install xinetd
             安裝好后配置inetd的配置文件  vi /etc/xinetd.d/rsync ,輸入如下內容:
          ---------------------------------------------------
          service rsync
          {
              disable = no
              socket_type = stream
              wait = no
              user = root
              server = /usr/bin/rsync
              server_args = --daemon
              log_on_failure += USERID
          }
          -------------------------------------------------------
          然后啟動xinetd,/etc/init.d/xinetd restart,A服務器的rsyncd server就完成了!

          5.  B服務器由于是client,不需要配置,也不需要安裝xinetd,直接可以通過命令行執行
          rsync --delete -azvv rsync@192.168.1.111::share /var/www/pub/
          這個命令就可以直接連接到192.168.111的rsync賬戶,它會提示你輸入密碼,就是A中的secrets文件中的密碼,然后同步share模塊到本機的/var/www/pub目錄,你可以事前在A機器上創建一個文件如test.txt,隨便寫點內容,然后執行些命令,看是不是B上多了這樣一個文件?如果是,則表示已經連接成功。你接下來就可以做crontab了!


          剛進場的時候戲就落幕
          主站蜘蛛池模板: 洪雅县| 怀安县| 万荣县| 永吉县| 通山县| 华亭县| 乐亭县| 喀喇沁旗| 常熟市| 华容县| 永嘉县| 伊宁县| 高邑县| 贵州省| 苏州市| 岳池县| 依兰县| 双柏县| 马鞍山市| 杂多县| 武义县| 田阳县| 长治市| 姜堰市| 信阳市| 嘉黎县| 景东| 磐石市| 长乐市| 光泽县| 静安区| 宝丰县| 文成县| 汪清县| 万全县| 荔波县| 长丰县| 西贡区| 河南省| 寿阳县| 稻城县|