Linux btrfs 檔案系統

2021-09-25 04:34:41 字數 2447 閱讀 1116

(1)多物理卷支援(類似於捲組):btrfs 可由多個底層物理卷組成;支援 raid,以及聯機「新增」、「移除」、「修改」

(2)寫時複製更新機制(cow):複製、更新及替換指標,而非「就地」更新,非常有利於快速檔案恢復的場景

(3)資料及元資料校驗碼:checksum

(4)支援子捲:sub_volume

(5)支援快照:支援快照的快照

(6)透明壓縮機制

# mkfs.btrfs

-l 「label」

-d :raid0,raid1,raid5,raid6,raid10,single

-m :raid0,raid1,raid5,raid6,raid10,single,dup

-o -o list-all:列出支援的所有feature

如:mkfs.btrfs -l "mydata" -f /dev/sdb /dev/sdc

mount -t btrfs device mount_point
mount -o compress= device mount_point
btrfs filesystem resize -10g mount_point
btrfs filesystem resize +5g mount_point

btrfs filesystem resize max mount_point (使用全部空間)

7.檢視指定btrfs檔案系統的使用詳情

btrfs filesystem df mount_point (等同於使用 df -lh)
btrfs device add device mount_point
btrfs device delete device mount_point
btrfs banlance status mount_point(檢視當前資料的平衡狀態)

btrfs banlance start mount_point(開始平衡資料)

btrfs banlance pause mount_point(暫停平衡資料)

btrfs banlance cancel mount_point(取消平衡資料)

btrfs banlance resume mount_point(檢視資料平衡的摘要)

btrfs balance start -mconvert=raid1|raid0|raid5 mount_point

btrfs balance start -dconvert=raid0|raid1|raid5 mount_point

btrfs subvolume list mount_point(檢視子捲資訊)

btrfs subvolume create mount_point/subv1(在當前捲下建立子捲)

mount -o subvol=subv1 /dev/sdb mount_point(掛載子捲)

mount device mount_point(掛父捲,子捲自動掛載)

mount -o subvolid=### deivce mount_point(使用子捲id掛載子捲)

btrfs subvolume delete mount_point/subv1(刪除子捲)

btrfs subvolume snapshot [-r] mount_point/subv1 mount_point/snapshot_subv1

注意:快照卷需要和其原卷在同乙個檔案系統上

btrfs subvolume delete mount_ponit/snapshot_subv1
umount device

fsck -f device

btrfs convert /dev/device

btrfs filesystem show

mount device mount_point

umount

fsck -f device

btrfs convert -r /dev/device

mount device mount_point

17.對檔案啟用cow(寫時複製)需要系統核心支援

cp --reflink testfile testfile2

檔案系統 why檔案系統

為什麼需要檔案系統,可否由作業系統直接寫裸裝置?裸裝置是一種沒有經過格式化的磁碟或分割槽,即讓作業系統直接管理操作磁碟設定,進行資料讀寫等。通過檔案系統的方式組織磁碟儲存和資料管理有很多好處,比如 1.資料讀取 管理等操作變得簡單便捷 檔案系統給使用者提供了乙個簡單的操作介面,只需簡單的操作就能實現...

檔案系統 檔案系統的架構

vfs是具體檔案系統的抽象,依靠超級塊 inode dentry以及檔案這些結構來發揮作用,檔案系統的架構就體現在這些結構的使用方式中。1 超級塊作用分析 1 2 所有的dentry都指向乙個dentry hashtable dentry hashtable是乙個樹組,每乙個樹組成員都是hash鍊錶...

檔案系統 編寫檔案系統

8.5 編寫乙個檔案系統 如果寫乙個實際檔案系統,但是涉及的東西太多,不容易簡明扼要的理解檔案系統的實現。linux核心中提供的romfs檔案系統是個非常理想的例子,既有實際應用架構,也清晰明了,故以romfs為例項分析檔案系統的實現。一 linux檔案系統的實現要素 編寫新檔案系統涉及一些基本物件...