當前位置:編程學習大全網 - 源碼下載 - Linux btrfs文件系統及其管理

Linux btrfs文件系統及其管理

Linux btrfs文件系統及其管理

Linux文件系統,帶寫時復制,改進了ext3文件系統的單個文件大小限制,增加了其他特性,如可寫快照、快照的快照、內置RAID、subvloume,註重容錯、修復和易管理。我們來看看什麽是linux btrfs文件系統及其管理關系!

什麽是btrfs?

Btrfs(B-tree file system,通常讀作Butter FS、Better FS或B-tree FS)Linux文件系統,具有COW(copy-on-write)功能,改進了ext3文件系統的單個文件大小限制,並增加了其他功能,如可寫快照、快照、內置RAID和subvloume,側重於容錯和修復。單個文件可達16EB,最大文件數2 64,最大卷容量16EB等。

btrfs的功能特性

1,牛:寫時復制。每次寫入數據時,都會先寫入新的數據塊。成功寫入後,舊塊的指針會更改為新塊的指針,而不是指針本身。

2、多物理卷支持,btrfs內置raid,在線添加刪除磁盤設備,在線擴展減少磁盤空間。

3、數據和元數據校驗碼、校驗和

4.子卷,可以單獨安裝。

5.可寫快照、快照的快照、單個文件的快照。

6、透明壓縮

7、ext3/4和btrfs互不痛苦。

btrfs的基本用法:

Bash/shell代碼將內容復制到剪貼板

[root @[root @ localhost ~]# Bt rfs-help #查看幫助。可以看到btrfs有很多子命令和很多用法。這裏只是壹些常見選項的例子。

用法:btrfs [ - help] [ - version] [...] []

Btrfs子卷創建[-i] [/] #創建子卷。

創建子卷

Bt RFS子卷刪除[選項] [...] #刪除子卷

刪除子卷

Bt RFS子卷列表[選項] [-g [+|-]值] [-c [+|-]值] [-sort = gen,ogen,rootid,path] #顯示子卷列表。

列出子卷(和快照)

Bt RFS子卷快照[-r] [-i] | [/] #創建子卷快照。

創建子卷的快照

Btrfs subvolume get-default #獲取子卷的默認文件系統。

獲取文件系統的默認子卷

Btrfs subvolume set-default #為子卷設置默認系統。

設置文件系統的默認子卷

Btrfs子卷find-new #列出了btrfs文件系統中最近修改的文件,並與find命令結合使用。

列出文件系統中最近修改的文件

Btrfs subvolume show #顯示更多子卷信息。

顯示子卷的更多信息

Btrfs子卷同步[...] #子卷同步,類似掛載同步模式,內存數據同步到磁盤,需要驗證。

等待,直到給定子卷完全從文件系統中刪除。

Btrfs filesystem df [options] #顯示掛載的文件系統的詳細信息。

顯示裝載點的空間使用信息

Bt RFS file system show[options][| | | label]#顯示用於創建文件系統的磁盤信息。

顯示文件系統的結構

Btrfs文件系統同步#強制文件系統同步。

在文件系統上強制同步

btrfs文件系統碎片整理[選項] |

[| ...] #碎片整理

整理文件或目錄碎片

BT RFS文件系統resize[devid:][+/-][kkmmggttppee]|[devid:]Max # BT RFS文件系統在線擴展和收縮空間。

調整文件系統的大小

Btrfs文件系統標簽[|] [] #更改btrfs文件系統卷標。

獲取或更改文件系統的標簽

Bt RFS文件系統使用[選項] [...] #顯示文件系統的當前使用信息。

顯示內部文件系統使用的詳細信息。

Btrfs balance start [options] #將磁盤區塊、在線數據和元數據存儲模式、單個磁盤改為raid,前提是滿足raid的要求。

跨設備平衡區塊

Btrfs平衡暫停#暫停塊更改。當數據量較大,轉換時間較長時,先暫停。

暫停運行平衡

Btrfs balance cancel #取消塊更改,如上所述。

取消運行或暫停的平衡

Btrfs balance resume #中斷平衡操作,如上所述。

恢復中斷的平衡

Btrfs平衡狀態[-v] #如上所示顯示平衡操作狀態。

顯示正在運行或暫停的天平的狀態

Btrfs設備添加[選項] [...] #文件系統添加磁盤。

向文件系統添加設備

Btrfs設備刪除[...] #文件系統刪除磁盤

從文件系統中刪除設備

Bt RFS設備掃描[(-d |-所有設備)| [...]] #文件系統磁盤掃描

掃描btrfs文件系統的設備

Btrfs設備就緒# guess是檢查添加的設備是否已掛載。

檢查設備,查看其緩存中是否有所有要裝載的設備

Btrfs設備統計[-z] | #顯示文件系統的設備狀態。

顯示當前設備IO統計。-z以在之後重置統計信息。

Bt RFS設備使用[選項] [...] #顯示文件系統內設備的詳細使用信息。

顯示設備內部分配的詳細信息。

Btrfs文件系統管理

為分區創建btrfs文件系統。

Bash/shell代碼將內容復制到剪貼板

[root @ localhost ~]# fdisk-l | grep " disk/dev/SD[a-z]" #準備SD {b,c,d,e}四個20G的磁盤,不帶任何分區。

Disk /dev/sda: 107.4 GB,107374182400字節,209715200扇區

Disk /dev/sdb: 21.5 GB,21474836480字節,41943040扇區

Disk /dev/sdc: 21.5 GB,21474836480字節,41943040扇區

Disk /dev/sde: 21.5 GB,21474836480字節,41943040扇區

Disk /dev/sdd: 21.5 GB,21474836480字節,41943040扇區

創建壹個單獨的分區btrfs並查看它

Bash/shell代碼將內容復制到剪貼板

[root @ localhost ~]# mkfs . Bt rfs-L ' Bt rfs '/dev/sdb

btrfs-progs v3.19.1

參見pat特性“extref”:將每個文件的硬鏈接限制增加到65536

打開不兼容功能“skinny-metadata”:縮減大小的元數據範圍引用

fs在/dev/sdb上創建了標簽btrfs

節點大小16384葉大小16384扇區大小4096大小20.00GiB

[root@localhost ~]# btrfs文件系統顯示

標簽:' Bt rfs ' uuid:2a 9 F0 d3d-f8a 0-4757-9f4e-d 1 EFA 04 a 683 a

總設備數1 FS字節已用112.00KiB

devid 1大小20.00GiB使用2.04GiB路徑/dev/sdb

btrfs-progs v3.19.1

[root @ localhost ~]# mount-o compress = lzo-l Bt rfs/Bt rfs/掛載時可以設置透明壓縮機制。

[root@localhost ~]# btrfs文件系統df /btrfs

數據,單個:總計= 8.00千磅,已用= 256.00千磅

系統,DUP:總計= 8.00磅,已用= 16.00磅

系統,單個:總容量= 4.00兆字節,已用容量= 0.00兆字節

元數據,DUP:總計= 1.00吉蔔,已用= 112.00吉蔔

元數據,單個:總計= 8.00兆字節,已用= 0.00兆字節

GlobalReserve,single:total = 16.00 MB,used=0.00B

添加另壹個磁盤

Bash/shell代碼將內容復制到剪貼板

[root @ localhost ~]# btrfsdevice Add/dev/SDC/Bt rfs #添加壹個磁盤,用Bt rfs device delete/dev/SDC/Bt rfs刪除。

[root@localhost ~]# btrfs fi sh

標簽:' Bt rfs ' uuid:2a 9 F0 d3d-f8a 0-4757-9f4e-d 1 EFA 04 a 683 a

總設備2 FS字節已用384.00KiB

devid 1大小20.00GiB使用2.04GiB路徑/dev/sdb

devid 2大小20.00GiB使用0.00B路徑/開發/sdc

btrfs-progs v3.19.1

[root@localhost ~]#

在線增減空間,在線換空間,可以讓lvm坐冷板凳。

Bash/shell代碼將內容復制到剪貼板

[root @ localhost ~]# btrfsfiresize-10g/btrfs/#在線空間縮減

將“/btrfs/”的大小調整為“-10G”

[root@localhost ~]# btrfs fi sh

標簽:' Bt rfs ' uuid:2a 9 F0 d3d-f8a 0-4757-9f4e-d 1 EFA 04 a 683 a

總設備2 FS字節已用384.00KiB

devid 1大小10.00GiB已用2.04GiB路徑/dev/sdb

devid 2大小20.00GiB使用0.00B路徑/開發/sdc

btrfs-progs v3.19.1

[root @ localhost ~]# btrfsfiresize+7g/Bt rfs/#在線添加空間。

調整“+7G”的“/btrfs/”的大小

[root@localhost ~]# btrfs fi sh

標簽:' Bt rfs ' uuid:2a 9 F0 d3d-f8a 0-4757-9f4e-d 1 EFA 04 a 683 a

總設備2 FS字節已用384.00KiB

devid 1大小17.00GiB已用2.04GiB路徑/dev/sdb

devid 2大小20.00GiB使用0.00B路徑/開發/sdc

btrfs-progs v3.19.1

[root@localhost ~]#

在線更改數據和元數據的結構

Bash/shell代碼將內容復制到剪貼板

[root @ localhost ~]# Bt rfs fi df/Bt rfs/

數據,單個:總計= 8.00千磅,已用= 256.00千磅

系統,DUP:總計= 8.00磅,已用= 16.00磅

系統,單個:總容量= 4.00兆字節,已用容量= 0.00兆字節

元數據,DUP:總計= 1.00吉蔔,已用= 112.00吉蔔

元數據,單個:總計= 8.00兆字節,已用= 0.00兆字節

GlobalReserve,single:total = 16.00 MB,used=0.00B

[root @ localhost ~]# Bt rfs balance start-mconvert = raid 1/Bt rfs/#-mconvert是改變元數據區域的存儲結構。

完成,必須重新定位5個區塊中的4個

[root@localhost ~]# btrfs fi sh

標簽:' Bt rfs ' uuid:2a 9 F0 d3d-f8a 0-4757-9f4e-d 1 EFA 04 a 683 a

總設備2 FS字節已用192.00KiB

devid 1大小17.00GiB已用296.00MiB路徑/dev/sdb

devid 2大小20.00GiB使用288.00MiB路徑/dev/sdc

btrfs-progs v3.19.1

[root @ localhost ~]# Bt rfs fi df/Bt rfs/

數據,單個:總計= 8.00千磅,已用= 64.00千磅

系統,RAID1:總容量= 32.00磅,已用容量= 16.00磅

元數據,raid1: total = 256.00 MIB,used = 112.00 kib #更改為raid1。

GlobalReserve,single:total = 16.00 MB,used=0.00B

[root @ localhost ~]# Bt rfs balance start-dconvert = raid 1/Bt rfs/#-dconvert是改變數據區的存儲結構。

完成,必須從3個區塊中重新定位1

  • 上一篇:只承認質變否認量變在馬哲的專業術語叫什麽?
  • 下一篇:什麽是每周KDJ指標?尋找短線炒股技巧的周KDJ指標有哪些?
  • copyright 2024編程學習大全網