使用Btrfs對Linux系統進行快照復原方法

來源:互聯網
上載者:User

   Btrfs 又被稱為 Butter FS、Better FS 或 B-Tree FS,是由 Oracle 於 2007 年開始設計、開發的一個現代檔案系統,它於 2009 年開始便被合并入 Linux 2.6.29 核心。Btrfs 基於 GPL 許可,由於不是十分穩定,雖然許多 Linux 發行版都對其進行了整合,但並不作為預設檔案系統進行使用。Btrfs 之所以被廣泛整合,因其支援磁碟快照、支援遞迴快照、對 RAID 的支援,支援子卷(Subvolumes),以及允許線上調整檔案系統大小等優秀特性。雖然目前大多 Linux 發行版都在用 Ext4 作為主要檔案系統,但將來隨時有可能被 Btrfs 所取代。

  Btrfs 主要被設計用於解決當前 Linux 檔案系統各種「弱點」的 COW(copy-on-write)檔案系統, 有望提供更好的可擴充性和可靠性,其主要開發焦點都放在了容錯、修複和易於管理等方面。

  接下來我將主要向大家介紹如何使用 apt-btrfs-snapshot 將 Linux 中的 btrfs 檔案系統快照復原到之前的系統狀態。使用 apt-btrfs-snapshot 建立和管理檔案系統快照就像其它 APT 操作一樣簡單,使用它我們可以輕鬆地恢複 btrfs 檔案系統的狀態。

  先決條件

  為了建立並使用 btrfs 恢複你的 Linux 檔案系統,當然需要使用的是 btrfs 檔案系統,還需要沒有使用 Ext 檔案系統的單獨 /boot分區,不然就沒法玩了。

  安裝Btrfs包

  條件滿足之後,就使用如下命令安裝 apt-btrfs-snapshot 包:

  apt-get install apt-btrfs-snapshot

  安裝完成之後使用如下 apt-btrfs-snapshot 命令檢查是否支援 btrfs 快照的建立:

  apt-btrfs-snapshot supported

  如果滿足 btrfs 檔案系統的先決條件,會輸出 Supported,否則會輸出:

  Sorry, your system lacks support for the snapshot feature

  你可以使用如下命令檢查 Ubuntu 上的 btrfs 子卷的預設布局:

  btrfs subvolume list

  使用ATP操作建立快照

  為了測試復原操作,我們先在當前系統中執行一些 apt 操作,例如 apt-get。

  apt-get update && apt-get upgrade

  按 Y 繼續執行系統升級,你會看到 apt-btrfs-snapshot 已經自動為升級之前的系統狀態建立了快照。

  你也可以使用如下命令查看當前系統中的快照列表:

  btrfs subvolume list /

  apt-btrfs-snapshot list

  還原Btrfs快照

  例如在系統升級過程中遇到了問題,我們需要恢複升級之前的系統狀態,可以將 btrfs 檔案系統 mount 到一個單獨的位置,例如/mnt 下進行操作。

  mount /dev/sda1 /mnt

  查看 /mnt 目錄會輸出子卷:

  ls -l /mnt/

  其中的 @apt-snapshot-2016-05-24_02:18:31 是之前 apt 操作時的 root 檔案系統快照。將當前子卷重新命名為 @ 開頭,再將 @apt-snapshot-2016-05-24_02:18:31 重新命名為為當前子卷後重啟系統,即對快照進行了恢複操作。

  刪除Btrfs快照

  當快照恢複後,或需要騰出部分磁碟空間時,可以使用如下命令來刪除快照:

  mount /dev/sda1 /mnt/

  btrfs subvolume delete /mnt/@_latest-root/

  umount /mnt

  說得直白一點,Btrfs 快照實際上就是與其它子卷進行資料共用的子卷,其使用 Btrfs 的 copy-on-write 能力共用資料和對快照進行修改,原始子卷並不可見。一旦快照建立完成,它就被視為原始檔案系統的可替換版本。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.