最強大跨平臺備份工具 Restic 的使用

為什么選擇 restic,主要基于以下幾點考慮:

  • rclone sync 只支持本地向遠程無條件的同步,遠程的永遠會被覆蓋
  • Brog是純 C 開發(fā)的,只在*nix系統(tǒng)下運行,而 restic 可以在任何 CPU架構(gòu),任何系統(tǒng)上運行,因為是由 go 開發(fā)的,運行效率接近于 C 。
  • rsync 對于新手并不友好,而且只有 *nix 版本,雖然也有 windows 版本,但似乎不是官方出品。

首先,創(chuàng)建一個備份倉庫,如果結(jié)合 rclone 使用,可以指定一個掛在為遠程服務器的位置,沒有的話,可以使用本地路徑作為備份倉庫。

restic init --repo ./backup

執(zhí)行此命令后,會讓你輸入備份倉庫密碼,注意如它所說,記住此密碼不要丟失。這個命令的執(zhí)行可能需要等待1分鐘左右,對于 NFS 文件系統(tǒng),可能需要的時間更長,等就是了。

enter password for new repository:
enter password again:
created restic repository a6801fab57 at ./backup

Please note that knowledge of your password is required to access
the repository. Losing your password means that your data is
irrecoverably lost.

添加一個本地文件夾到備份倉庫,你也可以繼續(xù)添加其它的文件夾。

restic --repo ./backup backup ./mywork

同樣,對于訪問備份倉庫,需要密碼訪問,然后這個過程也會比較長,因為都是基于文件哈希值作為備份版本的依據(jù),此時命令會提示:

enter password for repository:
repository a6801fab opened successfully, password is correct

Files:           1 new,     0 changed,     0 unmodified
Dirs:            0 new,     0 changed,     0 unmodified
Added to the repo: 319 B

processed 1 files, 19 B in 0:08
snapshot 8c4b2b4a saved

最后的一行,snapshot 8c4b2b4a saved 中的8位字符就是本次的備份版本號,這和 Git 十分類似,用過的大家都知道,以后無論是刪除備份還是還原備份,都是基于這個版本號。

查看備份庫中的所有備份快照:

restic -r ./backup snapshots

在恢復備份之前,我們都會查看一下快照,防止恢復了錯誤的版本,可以使用上面的命令。

enter password for repository:
repository a6801fab opened successfully, password is correct
ID        Date                 Host        Tags        Directory
----------------------------------------------------------------------
8c4b2b4a  2018-10-15 16:59:48  DELL-PC               E:\Temps\mywork
----------------------------------------------------------------------
1 snapshots

在以上的表格中,ID 就是備份的版本號,Date 是備份快照創(chuàng)建日期, HOST 是備份客戶端的主機名,Tags 是標簽,在我們這個演示中沒有用到,Directory 是客戶端原始備份目錄,這是因為它可以支持多個客戶端,多個倉庫的備份, restic 更像是一個集中式的版本備份系統(tǒng)。

接下來是如何還原一個備份,十分簡單,指定 restore 哪一個版本號,以及 target 指向一個恢復路徑,就會完成備份的還原。

restic -r ./backup restore 8c4b2b4a --target ./mywork_restore
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 聲明:這篇文章來源于廖雪峰老師的官方網(wǎng)站,我僅僅是作為學習之用 Git簡介 Git是什么? Git是目前世界上最先...
    橫渡閱讀 4,111評論 3 27
  • ORA-00001: 違反唯一約束條件 (.) 錯誤說明:當在唯一索引所對應的列上鍵入重復值時,會觸發(fā)此異常。 O...
    我想起個好名字閱讀 5,950評論 0 9
  • feisky云計算、虛擬化與Linux技術筆記posts - 1014, comments - 298, trac...
    不排版閱讀 4,314評論 0 5
  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,848評論 9 163
  • 一 Git配置和倉庫初始化 下面會介紹Git的使用,每個小節(jié)里會講解各個功能在命令行中的實現(xiàn)方式,并在每小節(jié)的最后...
    Happioo閱讀 3,647評論 0 5

友情鏈接更多精彩內(nèi)容