Linux與Windows文件同步


Linux與Windows文件同步

本次采用的同步方式是rsync,Rsync是一款免費且強大的同步軟件,可以鏡像保存整個目錄樹和文件系統,同時保持原來文件的權限、時間、軟硬鏈接。第一次同步時會復制全部內容,下次只傳輸修改過的文件部分。傳輸數據過程中可以實行壓縮及解壓縮操作,減少帶寬流量。支持scp、ssh及直接socket等方式連接,支持匿名傳輸。支持Linux,Window全平台。下面我將我的部署步驟與一些相關設置記錄一下,網上也有很多差不多的步驟,主要是一些配置沒有講明白與清楚,所我特記錄一下。

一 、 Windows服務端部署

  1. 下載安裝包

    因為Windows服務端最新版本的已經收費了,所以我們采用4.1版本,這里的安裝包是由Bulut0907提供,點這里下載

    下載完解壓哦

  2. 安裝

    • 雙擊cwRsyncServer_4.1.0_Installer.exe進行安裝
    • 選擇安裝路徑
    • 設置賬號密碼(用戶名與密碼要記住,后面會有用。如果安裝的電腦有登錄密碼,則必須為登錄密碼)
      image-20210809150940174
      image-20210809150940174
    • Install安裝
  3. 配置

    • 找到你剛安裝路徑中的rsyncd.conf,修改相對應的配置,配置如下

      use chroot = false
      strict modes = false
      hosts allow = *
      log file = rsyncd.log
      # Module definitions
      # Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
      #
      # 配置模塊,這個模塊名在同步的時候會用到
      [test]
      # 配置同步的存儲路徑,這里的路徑需要注意一下,比如我的路徑其實是我的D盤下的file目錄下的share文件夾。謹記謹記謹記,我就卡在這上面卡了好久。
      path = /cygdrive/d/file/share
      # 忽略一些io錯誤
      ignore errors
      # 用於設置是否允許上載。默認false,代表允許上載。
      read only = no
      #允許連接的ip段或個別ip,默認任何人都可以連接
      #hosts allow = *
      # 指定的用戶,這里的用戶在Windows中就是你剛剛安裝的時候創建的用戶名
      auth users = rsync
      #指定用戶名和密碼文件 格式: 用戶名:密碼,這里的賬號與密碼就是你安裝時設置的賬號密碼,這里的路徑格式與上面一同,謹記
      secrets file = /cygdrive/d/1/rsyncd.password
      #設置進行數據傳輸時所使用的帳戶名或ID號,默認使用nobody
      uid = 0
      #設置進行數據傳輸時所使用的組名或GID號,默認使用nobody
      gid = 0
      # 上面都ID值都設置成0,不然的話在傳輸的時候會有報錯 @ERROR: invalid uid nobody 
      
    • 創建rsyncd.password文件,注意路徑,例如我的路徑是在 D:\1下,那么你就在這目錄下創建

      image-20210809153250909
      image-20210809153250909

    • 密碼文件授權

      C:\Program Files (x86)\ICW> .\bin\chmod.exe 600 /cygdrive/d/1/rsyncd.password
      

      image-20210809153625069
      image-20210809153625069

    • 文件存儲文件夾授權

      image-20210809153844920
      image-20210809153844920

  4. 啟動服務,win+r 輸入 services.msc ,如下圖操作

image-20210809154246550
image-20210809154246550

二 、Linux端客戶端部署

因之前有相關詳細的部署步驟,所就不再重復描述了。

lsyncd+rsync同步方案

inotify+rsync同步方案

三、 遇到的一些問題

  • 同步的時候提示無目錄

    Windows目錄需注意,看下是不是配錯了

  • 提示無權限

    查看Windows那個目錄是否授權

    哦對了,還有一個問題:使用lsyncd方案的時候Linux無法與加域的Windows同步,傳輸不過去,也無任何報錯,但改為非加域的機器就可同步了,有沒有大神解答一下,在線求!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM