Ubuntu LTS Desktop - 如何設定兩台桌上型電腦之間的完全同步。應用程式、設定、檔案和資料夾?

Ubuntu LTS Desktop - 如何設定兩台桌上型電腦之間的完全同步。應用程式、設定、檔案和資料夾?

我需要在 2 或 3 個 Ubuntu LTS 桌面之間設定即時同步。所有應用程式、所有文件和資料夾、所有設定、所有變更都是即時的。如果有人對其中一台電腦進行更改,則會將其發送並同步到其他電腦......然後返回。

到底是可以還是不行?能分享一些新鮮的想法嗎?

答案1

通常,人們會用來rsync同步兩台電腦。

但是,我認為您要求的可能要複雜得多。你說“所有應用程式”, 但是之後“只有一台電腦可以與具有相同使用者帳戶的其他電腦同步”。大多數應用程式是為所有用戶安裝的,而數據將是每個用戶的,並且配置可能會任何一個

您需要:

  1. 從另一台電腦複製/etc/passwd並將其與 uid >= 1000 的所有帳戶的本機進行比較/etc/passwd,以查找要同步的帳戶,或僅保留要同步的帳戶列表
  2. 從遠端電腦取得所有已安裝的 debian 軟體包的列表,將其與本機電腦上的列表進行比較,並將它們全部安裝在兩台電腦上 ( dpkg --get-selections)
  3. 對 Snap、Flatpaks、Node 等執行相同的操作(這可能很快就會變得非常乏味!)
  4. rsync(雙向)/etc/PACKAGE以及etc/default/PACKAGE步驟 2 中找到的每個包
  5. rsync /home/USER對於步驟 1 中找到的每個用戶
  6. 將所有這些放入僅在一台機器上定期執行的 cron 作業中。

然後你一定會發現你(或我)忘了一些東西!如果沒有備份,就不要考慮這樣做。

相關內容