日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Btrfs入门(一)

發布時間:2025/5/22 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Btrfs入门(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、LVS和btrfs
?? ?btrfs自己就支持動態擴展,所以不必建立lvm
?? ?1.LVS
?? ??? ?pv-->vg--->lv
?? ??? ??? ?PE:由PE指定,劃分為lv后,變為LE
?? ??? ??? ?LV中的PE叫做LE
?? ??? ?快照卷的大小:取決于快照要存活多長時間
?? ??? ?dd:復制
?? ?2.Btrfs (B-tree,Butter FS,Better FS),GPL //oracle 2007年后開始研發,最主要的特性:支持寫時復制
?? ??? ??? ?//BTREE穩定性不夠,支持快照,可以對快照進行快照
?? ??? ??? ?//可以對單個文件進行快照
?? ??? ?//主要是用來取代ext3,4,Centos上出現了另外一種方案,xfs
?? ??? ?//xfs以前是unix上使用的,后期開源了,支持
?? ??? ?//ext文件系統的反刪除功能不是特別好
?? ??? ?//可以實現組織多個硬盤為一個
?? ??? ?
?? ??? ?核心特性:
?? ??? ??? ?1.支持將多個物理設備組織成一個設備來使用,多物理卷支持,支持raid。以聯機“添加”,“移除”,“修改“
?? ??? ??? ?2.寫時復制更新機制(coW)
?? ??? ??? ??? ?//對文件進行修改的時候,復制一份,對附件進行操作,完成后,把文件名的指針指向附件,原有數據還在,便于恢復
?? ??? ??? ??? ?//復制更新,及替換指針,而非就地更新源文件
?? ??? ??? ?3.數據和元數據校驗機制;//是否修復,以及自動修復,保證數據的安全性
?? ??? ??? ?4.子卷:sub_volume,每個子卷可以單獨使用和掛載
?? ??? ??? ?5.快照:子卷的一個副本而已,非完全復制,基于coW機制,
?? ??? ??? ??? ?支持快照的快照:類似于增量的快照
?? ??? ??? ?6.透明壓縮,存儲的數據自動壓縮,在使用的時候,自動解壓縮
?? ??? ??? ??? ?但是會消耗更多的cpu時鐘周期 //用時間換取空間
?? ??? ??? ??? ?
二、使用
?? ?btrfs//現在大多的命令都使用,很多子命令,和主命令結合使用
?? ??? ?//例如lvcreate,lvdisplay 等
?? ?btrfs-convert :將ext動態轉換為btrfs,也能降級為ext
?? ?btrfsck :自動檢測
?? ?btrfs --help //幫助
?? ?
?? ?1.mkfs.btrfs
?? ??? ?-L 卷標
?? ??? ?-m {raid0,1,5,6,10,single}元數據如何存放
?? ??? ??? ?//元數據是如何跨多設備存放的
?? ??? ?-d data數據是如何跨多設備存放的
?? ??? ??? ?//raid0,1,5,6,10,single
?? ??? ?-O 指定特性,在格式化時啟用的特性?? ?
?? ??? ??? ?mkfs.btrfs -O list-all //查看所有特性
?? ??? ?-U 指定uuid
?? ?//可以使用多塊硬盤直接組織成btrfs文件系統
?? ?關閉虛擬機,添加3塊硬盤,都是20G,sdb,c,d
?? ?mkfs.btrfs -L mydata /dev/sdb /dev/sdc
?? ?btrfs filesystem show //
?? ?blkid /dev/sd{b,c} //UUID是一樣的,但是UUID_SUB子卷UUID是不一樣的
?? ?man btrfs //btrfs有很多子命令,
?? ?
?? ?btrfs filesystem show --all-device
?? ?btrfs filesystem show --mounted?? ?
?? ??? ?
?? ?2.btrfs filesystem :
?? ??? ??? ??? ??? ?df? //查看空間掛載空間使用情況,-k,m,g,h
?? ??? ??? ??? ??? ?show --mounted/--all-devices
?? ??? ??? ??? ??? ?sync //同步到磁盤
?? ??? ??? ??? ??? ?defragment //碎片整理,為...整理碎片
?? ??? ??? ??? ??? ?resize //調整代銷
?? ??? ??? ??? ??? ?label //指定或者顯示卷標
?? ??? ??? ??? ??? ??? ?btrfs filesystem?? label /dev/sdb
?? ??? ?//創建btrfs之后,就可以直接掛載
?? ??? ?//mount -t btrfs /dev/sdb /test ,可以不指定fs,只需要指定其中一個成員即可
?? ??? ?//umount /dev/sdb
?? ??? ?
?? ??? ?2.1 resize
?? ??? ??? ?btrfs filesystem resize -10G /mydata/? //直接減小,聯機進行,已經掛載,df 查看
?? ??? ??? ?btrfs filesystem resize +5G /mydata
?? ??? ??? ?btrfs filesystem df -h /mydata //查看
?? ??? ??? ?btrfs filesystem resize max /mydata/?? //使用所有可用空間
?? ??? ??? ?
?? ?3.透明壓縮機制
?? ??? ?mount -o compress={lzo|zlib} DEVICE MOUNT_POINT
?? ??? ?mount -o compress=lzo /dev/sdb /mydata
?? ?4.btrfs device
?? ??? ?add //自動執行擴展,此前的數據不會存儲到新加的硬盤
?? ??? ??? ? btrfs device add /dev/sdd /mydata
?? ??? ?delete?? ?//拆除一個屋里設備,在線執行,他可以自動移動數據,然后拆除
?? ??? ??? ??? ?//btrfs device delete /dev/sdd /mydata
?? ??? ?ready 轉為備用狀態
?? ??? ?scan
?? ??? ?stats? IO統計數據
?? ??? ?usage
?? ?5.balance //實現均衡操作,均衡數據在多塊硬盤上
?? ??? ?cancel //取消
?? ??? ?pause //暫停
?? ??? ?start
?? ??? ?status
?? ??? ?resume 重新開始,pause之后
?? ??? ?btrfs balance status /mydata
?? ??? ?btrfs balance start /mydata
?? ??? ?//修改meta data和data的級別,也是在balance中修改
?? ??? ?
?? ??? ?start
?? ??? ??? ?-d 修改data chunks
?? ??? ??? ?-m 修改medata chunks
?? ??? ??? ?-s 修改system chunks
?? ??? ??? ??? ?convert {raid0,1,5,6,single}
?? ??? ??? ??? ?
?? ??? ??? ??? ?btrfs balance start -dconvert=raid5 /mydata
?? ??? ??? ??? ?//設備如果不夠的話,raid級別是不支持的,兩塊硬盤是不能做raid5的
?? ??? ?
三、創建子卷
?? ?man btrfs-subvolume
?? ??? ?create ?? ?
?? ??? ??? ?//只需要指定名字即可,其實就是在父卷上創建一個子卷目錄名而已
?? ??? ??? ?//btrfs subvolume create /mydata/logs
?? ??? ??? ?btrfs subvolume create /mydata/catch //創建2個子卷
?? ??? ??? ?// btrfs subvolume list /mydata/?? 查看子卷
?? ??? ??? ?//掛載的話,假如掛載了頂級卷,他的所有的卷都會自動掛載,也可以指定掛載單個子卷
?? ??? ??? ?//mount -o subvol=logs /dev/sdb /mydata/ 只掛載子卷
?? ??? ??? ?cp /var/log/messages /mydata //復制文件到子目錄
?? ??? ??? ?btrfs subvolume show /mydata/? //查看子卷詳細信息
?? ??? ??? ?卸載logs子卷,然后掛載父卷
?? ??? ??? ?ls /mydata/messages 可以查看
?? ??? ??? ?btrfs subvolume delete /mydata/logs //刪除子卷
?? ??? ?delete
?? ??? ?list
?? ??? ?snapshot //子卷的快照必須與子卷在同一個父卷中
?? ??? ??? ??? ?btrfs subvolume snapshot /mydata/catch /mydata/catch_snapshot
?? ??? ??? ??? ?//修改/mydata/catchs/messages原有的文件的數據,校驗快照是否起作用
?? ??? ??? ??? ?//查看/mydata/catchs_snapshot 中的文件沒有發生改變
?? ??? ??? ??? ?btrfs subvolume delete /mydata/catch_snapshot/
?? ??? ?get-default
?? ??? ?set-default
?? ??? ?list
?? ??? ?show? //查看子卷相信信息
?? ??? ??? ?btrfs subvolume list /mydata/? 查看subvolid ,
四、對文件進行快照
?? ?cp --reflink grub2.cfg grub2.cfg_snapshot //另外一個地方最好在當前卷上的一個目錄上
?? ?是因為寫時復制機制導致的
五、轉換ext為btrfs
?? ?btrfs balance start -dconvert=single /mydata
?? ?btrfs balance start -mconvert=raid1 /mydata
?? ?btrfs device delete /dev/sdd /mydata?? //拆除sdd
?? ??? ?//sdd新建一個分區,5G,mkfs.ext4
?? ??? ?//mount /dev/sdd1 /mnt
?? ??? ?//cp /etc/fstab /mnt/
?? ?轉換格式:
?? ??? ?umount /mnt
?? ??? ?fsck /dev/sdd1 -f //強制檢測,為了安全起見
?? ??? ?btrfs-convert /dev/sdd1
?? ??? ??? ?btrfs-convert -r /dev/sdd1 回滾
?? ??? ?umount /mnt
?? ??? ?blkid /dev/sdd1 //查看類型

六、ext&xfs&btrfs對比?? ??? ?
?? ?ext3,ext4,xfs和btrfs文件系統性能對比
?? ?參考網址:http://www.cnblogs.com/tommyli/archive/2013/07/19/3201047.html

????Btrfs文件系統的趨勢:https://www.chiphell.com/thread-1431457-1-1.html


???? raid:level
?? ??? ?能夠保證,硬件損壞時,業務不會終止
?? ??? ?建議以后做存儲,放在有容錯級別的raid上
?? ?LVM:volume //多個物理設備組織成一個邏輯設備
?? ??? ?需要內核中的驅動模塊支持
?? ??? ?|_______lv______|__lv2__|.....|
?? ??? ?|_________________vg__________|
?? ??? ?|disk1? | disk2, | ....?? ??? ?? |
?? ??? ?//假如底層硬件設備損壞,會影響上層的數據?? ?
?? ??? ?snapshot:主要是為了讓備份操作更流暢
?? ??? ??? ?因為直接進行復制的話,很有可能數據會不一致//在復制的時候,也在發生改變
?? ??? ??? ?//在復制的過程中,是不允許file的最近一次修改的時間戳不一致的
?? ?btrfs:了解即可?

轉載于:https://blog.51cto.com/hmtk520/1950137

總結

以上是生活随笔為你收集整理的Btrfs入门(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。