Ubuntu

使用 cygwin 和 rsync –“密碼文件不能被其他人訪問”

  • November 30, 2017

我終於有一台舊電腦作為 Ubuntu 11.10 的備份伺服器執行。我計劃使用它每週使用 rsync 備份我的 Windows 7 機器。我已經安裝了 cygwin,並且 rsync 執行良好。不過,我正在按照本指南將其創建為計劃任務:

http://justinsomnia.org/2007/02/how-to-regularly-backup-windows-xp-to-ubuntu-using-rsync/

我在 C:\ 中有一個 rsync.bat 腳本,如果我直接從 Cygwin 的命令行執行它,我可以讓腳本正確執行。但是,當我嘗試執行 rsync.bat 腳本時,我得到了這個:

ERROR: password file must not be other-accessible

所以一定是秘密文件的權限問題……我按照該指南將權限設置為 600,並將其授予 Nate

$$ the administrator $$:系統。 關於可能導致問題的任何想法?

編輯:有問題的文件實際上是在 Windows 7 機器上。我想我應該在這裡問,因為我專門處理 Cygwin 和 Rsync。

經過一番Google搜尋,我發現有一個“嚴格模式”選項告訴 rsync 不要檢查機密文件的權限,並且添加該選項是為了適應 Windows 系統。但是,在添加它並重新啟動 rsyn 守護程序後,我似乎仍然遇到同樣的錯誤。這是我的 rysncd.conf 文件:

[rsync]

path = /home/nate/backups
comment = My backups
uid = nate
gid = nate
read only = false
auth users = nate
secrets file = /etc/rsyncd.secrets
strict modes = false

根據cygwin的說法,秘密文件的權限:

-rw-------  1 Nate SYSTEM   11 Dec  9 18:48 secret

我覺得我一定錯過了一些非常明顯的東西。

我可以通過將行更改為以下內容來解決此問題password-file

–password-file=/cygdrive/c/cygwin/secret

確保執行以下操作:

  1. 將密碼文件的模式更改為 -rw——– ,例如在 Windows 上有一個密碼文件 C:/Custom/syncjob/pwfile,使用 Cygwin,轉到密碼文件位置:

cd /cygdrive/c/自定義/同步作業

然後

chmod 600 ./pwfile

  1. 還將密碼文件的所有權更改為正在執行 rsync 作業的使用者,例如“Dave”:

chown 戴夫 ./pw

  1. 將密碼文件稱為 -password-file=/cygdrive/c/… 可能會有所幫助,就像 Nate 所寫的那樣。

我認為沒有必要更改 rsync 配置。

Windows 的一個已知解決方法是追加

< pw文件

到 rsync 命令的末尾。

祝你好運。

引用自:https://unix.stackexchange.com/questions/26846