版權所有 © 2008-2024 Oprea Dan、Bart de Koning、Richard Bailey、Germar Reitze、Taylor Raack
版權所有 © 2022 Christian Buhtz、Michael Büker、Jürgen Altfeld
Back In Time是一款易於使用的檔案和資料夾備份工具。它在 GNU/Linux 上運行(而不是在 Windows 或 OS X/macOS 上),並提供命令列工具backintime
和 GUI backintime-qt
兩者都是用 Python3 編寫的。它使用rsync
來手動或計劃快照並透過 SSH 將其儲存在本地或遠端。每個快照都位於其自己的資料夾中,其中包含原始文件的副本,但未更改的文件在快照之間硬連結以節省存儲空間。它的靈感來自於 FlyBack。
自 2022 年夏季新團隊加入以來,該專案一直在積極開發中。堅持我們,我們大家
目前的重點是解決主要問題,而不是實現新功能。閱讀策略大綱以了解詳細資訊。如果您對開發感興趣並查看未解決的問題,尤其是那些標記為良好的首要問題和需要幫助的問題,請參閱貢獻。
目前的團隊於 2022 年夏天開始(#1232),構成該專案的第三代維護者。該團隊由三名具有不同背景的成員(@aryoda、@buhtz、@emtiu)組成,受益於前維護者 @Germar 的幫助,他在幕後做出了貢獻。
所有團隊成員都參與專案的各個方面,包括程式碼分析、文件記錄、解決問題和新功能的實現。這項工作是他們利用有限的業餘時間自願進行的。
Back In Time包含在許多 GNU/Linux 發行版中。使用他們的儲存庫來安裝它。如果您想貢獻或使用Back In Time的最新開發版本,請參閱CONTRIBUTING.md
中的建置和安裝部分。那裡也描述了依賴關係。
除了官方 GNU/Linux 發行版的儲存庫之外,還有第三方提供和維護的其他替代安裝選項。
ppa:bit-team/stable
作為穩定版本,提供ppa:bit-team/testing
作為測試 PPA。在最新的穩定版本:
cron
以root
執行 BiT 時, qt_probing.py
可能會因 CPU 使用率過高而掛起在舊版本中:
此常見問題解答部分描述了更多問題。
所有版本都可以在版本清單中找到。
在版本 1.2.0 中,檔案權限的處理發生了變化。在版本 <= 1.1.24(直到 2017 年)中,備份目標中的所有檔案權限均設定為-rw-r--r--
。在版本 >= 1.2.0(自 2019 年起)中, rsync
使用--perms
選項執行,該選項告訴rsync
保留原始檔權限。
因此,備份可能會更大且更慢,尤其是升級到版本 >= 1.2.0 後的第一次備份。
如果您不喜歡新行為,可以使用「專家選項」 -> 「將其他選項貼到 rsync」來新增--no-perms --no-group --no-owner
。請注意,確切的檔案權限仍然可以在fileinfo.bz2
中找到,並且在恢復檔案時也會考慮到。
cron
以root
執行 BiT 時, qt_probing.py
可能會因 CPU 使用率過高而掛起請參閱相關問題#1592。
唯一可靠的解決方法是刪除(或移至另一個資料夾)檔案/usr/share/backintime/common/qt_probing.py
:
mv /usr/share/backintime/common/qt_probing.py /usr/share/backintime/
重命名不行!
狀態:在 v1.4.0 中修復
缺少安裝 Qt 支援的主題和圖示可能會導致這種情況。在這種情況下, 「回到過去」可能會啟動錯誤的主題,導致一些圖示遺失。下一版的修復正在準備中。
作為乾淨的解決方案,請檢查您的 Linux 設定(外觀、樣式、圖示)並透過套件管理器安裝您喜歡的樣式的所有主題和圖示套件。
請參閱問題 #1306 和 #1364。
狀態:已在 v1.3.3(大部分)和 v1.4.0 中修復
Back in Time僅支援選定的「已知良好」後端使用keyring
環庫從使用者會話密碼保險箱設定和查詢密碼。
啟用受支援的密鑰環需要手動配置配置文件,直到有用於此目的的設定 GUI。
症狀是密鑰環問題的 DEBUG 日誌輸出(使用命令列參數--debug
)可以透過以下輸出識別:
DEBUG: [common/tools.py:829 keyringSupported] No appropriate keyring found. 'keyring.backends...' can't be used with BackInTime
DEBUG: [common/tools.py:829 keyringSupported] No appropriate keyring found. 'keyring.backends.chainer' can't be used with BackInTime
若要診斷並解決此問題,請在終端機中執行下列步驟:
# Show default backend
python3 -c "import keyring.util.platform_; print(keyring.get_keyring().__module__)"
# List available backends:
keyring --list-backends
# Find out the config file folder:
python3 -c "import keyring.util.platform_; print(keyring.util.platform_.config_root())"
# Create a config file named "keyringrc.cfg" in this folder with one of the available backends (listed above)
[backend]
default-keyring=keyring.backends.kwallet.DBusKeyring
另請參閱問題#1321
狀態:在 v1.3.3 中修復
Back In Time的發行版 ( 1.3.2
) 和早期版本與rsync >= 3.2.4
(#1247) 不相容。
如果您使用rsync >= 3.2.4
且backintime <= 1.3.2
則有解決方法。在專家選項/附加選項中新增--old-args
到 rsync 。請注意,某些 GNU/Linux 發行版(例如 Manjaro)在其發行版特定套件中使用環境變數RSYNC_OLD_ARGS
的解決方法來實作Back In Time 。在這種情況下,您可能看不到任何問題。
有關專案工作流程和策略的概述,請參閱貢獻文件。
2024 年 7 月