btrfs(一般念成Butter FS),由Oracle於2007年開發的遵循GPL協定的開源文件系統。Btrfs 支持建立快照 (snapshot)以及支持遞歸的快照(即支持快照的快照),內建磁盤陣列(RAID)支援,支持子卷,支持寫時複製更新機制,即cow機制,支持數據及元數據的效驗碼機制,自動壓縮和解壓縮的透明壓縮機制。btrfs 文件系統能夠單獨使用於一個設備,如硬盤、分區等,也能夠應用於整個系統。
ide
一 btrfs文件系統的建立spa
btrfs --help:獲取相關幫助3d
mkfs.btrfs [option] DEVICE 建立btrfs文件系統blog
-L:指定卷標遞歸
-d <type>:指明數據如何存放,指定raid級別開發
-m<procfile>:指明元數據如何存放get
-O <feature>: 指明特性虛擬機
mkfs.btrfs - o list-all 顯示支持的全部特性it
下面演示如何建立btrfs文件系統:首先再虛擬機中加入三塊大小均爲20G的磁盤,在這三塊磁盤建立btrfs文件系統io
btrfs filesystem show :顯示btrfs文件系統屬性,它的經常使用子命令以下:
--mounted:顯示已經掛載的btrfs文件系統屬性
--all-devices:顯示全部btrfs文件系統屬性
resize {+|-}{Gg|Mm|Bb} 掛載點 :增長或者減少掛載點的btrfs文件系統的大小
使用blkid命令也能夠查看,以下所示:
sdb與sdc的卷標爲mydate,兩塊磁盤建立爲一個btrfs系統,故二者UUID相同,但兩者爲一個btrfs系統下的兩個子卷,故子卷UUID_SUB不一樣
掛載btrfs文件系統: mount -t btrfs /dev/DEVICE MOUNT_POINT
btrfs的透明壓縮機制介紹:
mount -o compress={lzo|zlib} 掛載設備 掛載點
使用了透明壓縮機制後,再向此設備寫入文件時會自動啓用壓縮機制存放。
減少btrfs文件系統的容量:
增長5G容量:增長減少的是邏輯邊界,最大不能超過其物理邊界,此處爲40G,要想大於40G,須要添加物理設備,才能繼續擴大容量
下面說明如何添加物理設備:
btrfs device
add 設備 掛載點:添加物理設備
delete 設備 掛載點:移除物理設備
拆除一個物理設備
子卷
子卷至關於一個獨立的文件系統,能夠單獨掛載和分配大小等。而且子卷能夠方便管理員在文件系統上建立不一樣用途的子文件系統,並對其進行一些特殊 的配置,好比有些目錄下的文件關注節約磁盤空間,所以須要打開壓縮,或者配置不一樣的 RAID 策略等。
建立子卷:btrfs subvolume create <name>
列出子卷:btrfs subvolumelist [-p] <path>
刪除子卷:btrfs subvolume delete <subvolume>
掛載子卷:mount -t btrfs -osubvol=/path/subvolume /dev/sd* /path
單獨掛載子卷則只能訪問子卷內容,若掛載父卷,則其子卷中的內容也可訪問
快照
快照能夠理解爲文件系統某一瞬間的影像,其最大的好處就是能夠用最小
的空間起到備份整個文件系統的做用。快照在系統中會被識別爲子卷。所以要
列出和刪除快照可使用子卷相同的操做。快照必須與原卷在同一個卷組中。
建立快照:btrfs subvolume snapshot [-r] <source> [<dest>/]<name>
注:添加-r 將建立只讀快照
刪除快照:btrfs subvolume delete <snapshot>