高级文件系统管理
本章内容:
设定文件系统配额
设定和管理软RAID设备
配置逻辑卷
设定LVM快照
btrfs文件系统
一、配置配额系统:
综述:
磁盘配额的作用范围:
quota软件设置的磁盘配额功能,只在指定的文件系统分区中有效,用户使用其他未设置配额的文件系统时,将不会受到限制;
磁盘配额的限制对象:
quota主要针对系统中指定的用户账号、组账号进行限制,没有被设置限额的用户或组将不受影响。对组账号设置配额后,组内所有用户使用的磁盘容量、文件数量的总和不能超过限制。
磁盘配额的限制类型:
硬盘容量:限制用户能够使用的磁盘数据块(block)大小,也就是限制磁盘空间大小,默认单位为KB。
文件数量:限制用户能够拥有的文件个数。quota通过限制i节点的数量来实现对文件数量的限制。
磁盘配额的限制方法:
软限制:制定一个软性的配额数值(如 480MB、180个文件),在固定的宽限期内(默认为七天)允许用户暂时超过这个限制,但系统会给出警告信息。
硬限制:指定一个硬性的配额数值(如 500MB、200个文件),时绝对禁止用户超过这个限制值得,当达到硬限制值时,系统也会给出警告并禁止继续写入数据。硬限制的配额值应大于相应的软限制的值,否则软限制将失效。
1、以支持磁盘配额功能的方式挂载文件系统:
除了内核和quota软件支持外,实施磁盘配额功能还有一个前提条件,即指定的分区必须已经挂载且支持磁盘配额功能。
让分区支持磁盘配额选项:
usrquota选项:支持对用户的磁盘配额;
grpquota选项:支持对组的磁盘配额;
示例:
在配置磁盘配额过程中,可以使用带”-o usrquota grpquota” 选项的mount命令重新挂载指定的分区以便增加对用户、组配额功能。
mount -o usrquot,grpquota /dev/sdb1 /home
若需要在每次系统开机后自动以支持磁盘配额的功能方式挂载该分区,可以将usrquot和grpquota选项参数写到/etc/fstab配置文件中。
[root@centos7 home]# vim /etc/fstab
/dev/sdb1 /home ext4 defaults,usrquota,grpquota 0 0
[root@centos7 home]#mount -a
2、检测磁盘配额并生成配额文件:
quotacheck命令:
-a:表示扫描所有分区,查看是否有较早版本的配额文件;
-c:常与u,g选项配合使用,创建用户、组的配额文件;
示例:
[root@centos7 home]# quotacheck -cug /home
查看在/home目录下生成的用户配额文件和组配额文件:
[root@centos7 home]# file aquota.*
aquota.group: data
aquota.user: data
[root@centos7 home]#
开启或者取消磁盘配额功能:
quotaon :开启磁盘配额
quotaon -p 查看是否开启磁盘配额;
quotaoff :关闭磁盘配额
示例:
查看是否开启磁盘配额:
[root@centos7 home]# quotaon -p /home
group quota on /home (/dev/sdb1) is off
user quota on /home (/dev/sdb1) is off
[root@centos7 home]#
开启磁盘配额:
[root@centos7 home]# quotaon /home
关闭磁盘配额:
[root@centos7 home]# quotaoff /home
3、编辑用户和组的账号的配额设置:
edquota命令:结合-u和-g选项可用于编辑用户或组的配额设置;
(1)edquota -u username
(2)直接在shell命令行编写(适合编写shell脚本使用)
setquota username 500000 600000 1500 2000 /filesystem
示例:
root@centos7 home]# setquota yibo 500000 600000 1500 2000 /home
(3)定义标准的用户 (相当于copy user1的磁盘配额给user2)
edquota -p user1 user2
示例:
[root@centos7 home]# edquota -p zheng mage
示例:
为用户zheng编辑磁盘配额:
[root@centos7 home]# edquota -u zheng
Disk quotas for user zheng (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 0 500000 600000 0 1500 2000
在edquota的编辑界面中,各字段分别代表的含义如下:
Filesystem:表示本行配置记录对应的文件系统,即配额的作用范围;
blocks:表示用户已经使用的磁盘容量,单位为KB,该值由edquota自动计算;
soft:第3列的soft对应为磁盘容量的软限制数值;
hard:第4列的hard对应为磁盘容量的硬限制数值;
inodes:表示用户当前已经拥有的文件数量,(i节点数)有edquota自动计算;
soft:第6列的soft对应为文件数量的软限制数值;
hard:第7列的hard对应为文件数量的硬限制数值;
测试磁盘配额:
综上可知我们为用户zheng设置的磁盘硬限制是600MB,这是我们dd一个650MB的文件,这时我们已经看到拒绝写入数据了。
[zheng@centos7 ~]$ dd if=/dev/zero of=/home/zheng/bb bs=1M count=650
sdb1: warning, user block quota exceeded.
sdb1: write failed, user block limit reached. (写入失败,磁盘配额空间已满)
dd: error writing ‘/home/zheng/bb’: Disk quota exceeded
586+0 records in
585+0 records out
614371328 bytes (614 MB) copied, 0.800515 s, 767 MB/s
[zheng@centos7 ~]$ du -sh /home/zheng/bb
586M /home/zheng/bb
[zheng@centos7 ~]$
使用quota命令查看用户zheng的磁盘使用情况:
[root@centos7 ~]# quota zheng
Disk quotas for user zheng (uid 1000):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 600000* 500000 600000 7days 15 1500 2000
[root@centos7 ~]#
使用repquota命令查看/home文件系统的配额使用情况报告:
[root@centos7 home]# repquota /home
*** Report for user quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
———————————————————————-
root — 14 0 0 7 0 0
zheng +- 600000 500000 600000 6days 15 1500 2000
yibo — 14 500000 600000 7 1500 2000
mage — 14 500000 600000 7 1500 2000
[root@centos7 home]#
配置磁盘配额使用的命令总结:
usrquota、grpquota
quotacheck
quotaon quotaoff
edquota setquota
quota repquota
warnquota (磁盘配额报警软件,可以邮件通知)
RAID:磁盘阵列
什么是RAID?
多个磁盘合成一个“阵列”来提供更好的性能、冗余或者两者都提供;提高I/O能力,磁盘并行读写,实现磁盘冗余。
RAID实现方式:
外接式RAID:通过扩展卡提供适配能力
内接式RAID:主板集成RAID控制器
硬件RAID在安装OS时在BLOS中配置
software RAID:软件RAID
RAID级别:
RAID-0:条带卷
读写速度 提升;可使用100%空间;无容错能力;最少磁盘数2个;
RAID-1:镜像卷
读性能提升,写性能下降;可用空间50%有冗余能力;最少磁盘数2个;
RAID-4:
多块数据盘异或运算值,存于专用校验盘;
RAID-5:
读写性能提升;可用空间(N-1);有容错能力,允许最多损坏1块磁盘;最少磁盘数3块;
RAID-6:
读写性能提升;可用空间(N-2);有容错能力,允许最多损坏2块硬盘,最少磁盘数2块;
RAID-10:
读写性能提升;可用空间50%;有容错能力,每组镜像最多只能坏一块磁盘,最少磁盘数4块;
RAID-01:RAID-50:
RAID-7:可以理解为一个独立存储计算机,自身带有操作系统和管理工具,可以独立运行,理论上性能最高的RAID模式
JBOD:just bunch of disks将多块磁盘的空间合并一个大的连续空间使用;可用空间sum;
配置software RAID (软RAID):
mdadm命令为RAID提供管理界面
RAID设备可命名为:/dev/md0 、/dev/md1 、/dev/md2 、/dev/md3 等等;
支持的RAID级别:LINEAR、RAID0、RAID1、RAID4、RAID5、RAID6、RAID10;
mdadm命令的语法格式:
mdadm [mode] <raiddevice> [options] <component-devices>
-C:创建模式:
-n#:使用#个磁盘设备来创建此RAID;
-l#:指明要创建的RAID的级别;
-a{yes|no}:自动创建目标RAID设备的设备文件
-c CHUNK_SIZE:指明块大小;
-x#:指明空闲盘的个数;
-G:增加设备分区到RAID中;
mdadm -G /dev/md# -n# -a /filesystem
-D:显示RAID的详细信息;
(1)mdadm -D /dev/md#
(2)cat /proc/mdstat
-S:停止指定的RAID;
mdadm -S /dev/md#
-A:启动RAID
mdadm -A /dev/md#
-F:监控RAID;
管理选项:
-f:标记指定磁盘为损坏;
-a:添加磁盘
-r:移除磁盘
示例:
模拟硬盘故障:
mdadm /dev/md0 -f /dev/sda1
模拟移除磁盘:
mdadm /dev/md0 -r /dev/sda1
模拟添加磁盘:
mdadm /dev/md0 -a /dev/sda1
生成RAID配置文件:
mdadm -Ds >> /etc/mdadm.conf
删除RAID信息:
mdadm -zero-superblock /dev/sdb1
软RAID配置实例:
使用mdadm命令创建/dev/md0
[root@centos7 Desktop]# mdadm -C /dev/md0 -a yes -n 4 -l 5 -x 1 /dev/sd{c,d,e,f,g}1
查看 RAID /dev/md0的详细信息:
[root@centos7 Desktop]# mdadm -D /dev/md0
………………………………………………………..
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
5 8 81 3 active sync /dev/sdf1
4 8 97 – spare /dev/sdg1
[root@centos7 Desktop]#
使用cat /proc/mdstat也可以查看RAID详细信息;
[root@centos7 Desktop]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdf1[5] sdg1[4](S) sde1[2] sdd1[1] sdc1[0]
31432704 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
unused devices: <none>
[root@centos7 Desktop]#
使用mkfs工具格式化RAID /dev/md0
root@centos7 Desktop]# mkfs.ext4 /dev/md0
挂载RAID /dev/md0到/etc/fstab文件实现开机自动挂载
为RAID /dev/md0创建挂载目录
[root@centos7 ~]# mkdir /mnt/raid
编辑/etc/fstab配置文件
[root@centos7 Desktop]# vim /etc/fstab (使用UUID代替/dev/md0)
UUID="63d8a215-b6dc-4de0-96b1-26da2425f988" /mnt/raid ext4 defaults 0 0
执行mount -a (-a选项:自动挂载所有支持自动挂载的设备)
[root@centos7 Desktop]# mount -a
查看RAID /dev/md0挂载情况:
[root@centos7 Desktop]# df -TH
………………………………….
/dev/md0 ext4 32G 47M 30G 1% /mnt/raid
生成RAID /dev/md0配置文件:
[root@centos7 Desktop]# mdadm -Ds /dev/md0 >> /etc/mdadm.conf
查看RAID /dev/md0配置文件:
[root@centos7 Desktop]# vim /etc/mdadm.conf
ARRAY /dev/md0 metadata=1.2 spares=1 name=centos7:0 UUID=4ef759d4:8d56c48d:bacbe2c1:7108b708
软RAID测试和修复
模拟磁盘故障:
[root@centos7 Desktop]# mdadm /dev/md0 -f /dev/sdc1
这时我们查看RAID /dev/md0的状态:
[root@centos7 Desktop]# mdadm -D /dev/md0
Number Major Minor RaidDevice State
4 8 97 0 spare rebuilding /dev/sdg1
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
5 8 81 3 active sync /dev/sdf1
0 8 33 – faulty /dev/sdc1
[root@centos7 Desktop]#
这时我们发现备用磁盘/dev/sdg1已经开始重建顶替/dev/sdc1了;而/dev/sdc1已经是显示有错误的磁盘了。
从RAID /dev/md0中移除损坏的/dev/sdc1
[root@centos7 Desktop]# mdadm /dev/md0 -r /dev/sdc1
mdadm: hot removed /dev/sdc1 from /dev/md0
[root@centos7 Desktop]#
这时我们在查看RAID /dev/md0的状态
[root@centos7 Desktop]# mdadm -D /dev/md0
Number Major Minor RaidDevice State
4 8 97 0 active sync /dev/sdg1
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
5 8 81 3 active sync /dev/sdf1
[root@centos7 Desktop]#
这时我们发现RAID /dev/md0中有错误的磁盘/dev/sdc1已经不见了;
添加/dev/sdc1到RAID /dev/md0中
[root@centos7 Desktop]# mdadm /dev/md0 -a /dev/sdc1
这时我们在查看RAID /dev/md0的状态
[root@centos7 Desktop]# mdadm -D /dev/md0
Number Major Minor RaidDevice State
4 8 97 0 active sync /dev/sdg1
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
5 8 81 3 active sync /dev/sdf1
6 8 33 – spare /dev/sdc1
[root@centos7 Desktop]#
这时我们发现RAID /dev/md0中的/dev/sdc1,又成为备份磁盘了;
向RAID /dev/md0中增加新的成员
[root@centos7 Desktop]# mdadm -G /dev/md0 -n 5 -a /dev/sdh1
这时我们在查看RAID /dev/md0的状态
[root@centos7 Desktop]# mdadm -D /dev/md0
Number Major Minor RaidDevice State
4 8 97 0 active sync /dev/sdg1
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
5 8 81 3 active sync /dev/sdf1
7 8 113 4 active sync /dev/sdh1
6 8 33 – spare /dev/sdc1
[root@centos7 Desktop]#
这时我们发现RAID /dev/md0中的成员已经变成5个了;
停止RAID/dev/md0服务:
停止软RAID服务需要先卸载RAID
root@centos7 Desktop]# umount /dev/md0
然后在停止软RAID:
[root@centos7 Desktop]# mdadm -S /dev/md0
mdadm: stopped /dev/md0
[root@centos7 Desktop]#
激活RAID/dev/md0服务:
[root@centos7 Desktop]# mdadm -A /dev/md0
然后在执行mount -a 挂载/dev/md0到指定目录下;(-a选项:自动挂载所有支持自动挂载的设备)
[root@centos7 Desktop]# mount -a
删软RAID步骤:
(1)[root@centos7 Desktop]# umount /dev/md0
(2)[root@centos7 Desktop]# mdadm -S /dev/md0
(3)[root@centos7 Desktop]# rm -rf /etc/mdadm.conf
(4)[root@centos7 Desktop]# vim /etc/fstab (删除自动挂载配置行信息)
(5)[root@centos7 Desktop]# fdisk /dev/sdc (删除里面的分区信息)
[root@centos7 Desktop]# fdisk /dev/sdd (删除里面的分区信息)
[root@centos7 Desktop]# fdisk /dev/sde (删除里面的分区信息)
[root@centos7 Desktop]# fdisk /dev/sdf (删除里面的分区信息)
[root@centos7 Desktop]# fdisk /dev/sdg (删除里面的分区信息)
[root@centos7 Desktop]# fdisk /dev/sdh (删除里面的分区信息)
(6)可以使用blkid命令查看一下看是否还有未删干净的分区信息;
如果删除不干净分区信息可以使用:
例: mdadm -zero-supperblock /dev/sdc1
LVM逻辑卷管理器:
LVM是Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高了磁盘管理的灵活性。
/boot分区不能基于LVM逻辑卷创建,必须独立出来。
LVM逻辑卷的几个基本术语:
PV物理卷:物理卷是lvm机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录lvm的属性,并把存储空间分割成默认大小为4MB的基本单元PE,从而构成物理卷。
VG卷组:有一个或多个物理卷组成,在卷组中可以动态的添加或移除物理卷。
LV逻辑卷:逻辑卷是建立在卷组之上的,与物理卷没有直接管理。对于逻辑卷来说,每个卷组就是一个整体,从这个整体中“切出”一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。
PV物理卷管理工具:
pvscan:用于扫描系统中的所有物理卷。
pvdisplay:用于显示物理卷的详细信息。
pvcreate:用于将分区或整个磁盘转化为物理卷。
pvremove:用于将物理卷还原成普通分区或磁盘。
pvmove:用于在物理卷间的迁移;
示例:
创建物理卷:
[root@centos7 Desktop]# pvcreate /dev/sd{c,d,e}
扫描系统中的物理卷:
[root@centos7 Desktop]# pvscan
PV /dev/sdc lvm2 [20,00 GiB]
PV /dev/sdd lvm2 [20,00 GiB]
PV /dev/sde lvm2 [20,00 GiB]
Total: 3 [60,00 GiB] / in use: 0 [0 ] / in no VG: 3 [60,00 GiB]
[root@centos7 Desktop]#
显示物理卷信息:
[root@centos7 Desktop]# pvdisplay
移除/dev/sde物理卷:
[root@centos7 Desktop]# pvremove /dev/sde
Labels on physical volume "/dev/sde" successfully wiped
[root@centos7 Desktop]#
迁移/dev/sdc 到/dev/sde
[root@centos7 Desktop]# pvmove /dev/sdc /dev/sde (迁移时时间有点长,需等待)
VG卷组管理工具:
vgscan:扫描系统中建立的lvm卷组;
vgcreate:用于将一个或多个物理卷创建为一个卷组;
vgdisplay:用于显示系统中各卷组的详细信息;
vgremove:用于删除指定的组;
vgextend:用于扩展卷组的磁盘空间;
vgreduce:用于删除组中的物理卷
示例:
创建卷组vg0
[root@centos7 Desktop]# vgcreate vg0 /dev/sd{c,d,e}
Volume group "vg0" successfully created
[root@centos7 Desktop]#
扫描系统中的卷组:
[root@centos7 Desktop]# vgscan
Reading all physical volumes. This may take a while…
Found volume group "vg0" using metadata type lvm2
[root@centos7 Desktop]#
显示系统中卷组的详细信息:
[root@centos7 Desktop]# vgdisplay vg0
删除卷组:
[root@centos7 Desktop]# vgremove vg0
Volume group "vg0" successfully removed
[root@centos7 Desktop]#
扩展卷组:
[root@centos7 Desktop]# vgextend vg0 /dev/sde
Volume group "vg0" successfully extended
[root@centos7 Desktop]#
删除卷组中的物理卷:
[root@centos7 Desktop]# vgreduce vg0 /dev/sde
Removed "/dev/sde" from volume group "vg0"
[root@centos7 Desktop]#
LV管理工具:
lvscan:扫描当前系统中建立的逻辑卷;
lvcreate:用于从指定的卷组中分隔空间,以创建逻辑卷;
lvdisplay:用于显示逻辑卷的详细信息;
lvextend:用于动态扩展逻辑卷空间;
lvremove:用于删除指定的逻辑卷;
lvreduce:用于缩减逻辑卷的大小;
示例:
创建逻辑卷:
[root@centos7 Desktop]# lvcreate -L 20G -n lv0 vg0
Logical volume "lv0" created.
[root@centos7 Desktop]#
格式化并挂载lvm逻辑卷:
[root@centos7 Desktop]# mkfs.ext4 /dev/vg0/lv0
[root@centos7 Desktop]# mkdir /mnt/lvm
[root@centos7 Desktop]# vim /etc/fstab (挂载/dev/vg0/lv0使用UUID代替)
UUID="7d4a3e54-3bd1-4d2c-97a8-13ed36231521" /mnt/lvm ext4 defaults 0 0
[root@centos7 Desktop]# mount -a
扫描当前系统中建立的逻辑卷;
[root@centos7 Desktop]# lvscan
显示逻辑卷的详细信息;
[root@centos7 Desktop]# lvdisplay
扩展lv0的逻辑卷空间
[root@centos7 Desktop]# lvextend -L +10 /dev/vg0/lv0
[root@centos7 Desktop]# resize2fs /dev/vg0/lv0 (扩展完了同步文件系统)
[root@centos7 Desktop]# lvextend -l +100%FREE /dev/vg0/lv0 (扩展卷组中剩余的所有空间到逻辑卷中)
删除指定的lv逻辑卷:
[root@centos7 Desktop]# lvremove /dev/vg0/lv0
缩减lvm逻辑卷的大小:
缩减lvm逻辑卷需要5步操作:
(1)[root@centos7 Desktop]# umount /dev/vg0/lv0
(2)[root@centos7 Desktop]# e2fsck -f /dev/vg0/lv0(检测lvm逻辑卷)
(3)[root@centos7 Desktop]# resize2fs /dev/vg0/lv0 20G(缩小文件系统)
(4)[root@centos7 Desktop]# lvreduce -L 20G /dev/vg0/lv0 (缩小lvm逻辑卷)
(5)[root@centos7 Desktop]# mount -a
(6)使用df -TH命令查看缩减后逻辑卷大小
逻辑卷管理器快照:
快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝
对于需要备份或者复制的现有数据集临时拷贝以及其它操作来说,快照是最合适的选择;
快照只有在他们和原来的逻辑卷不同时才消耗空间。
在生成快照时会分配给他一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间。
当原来的逻辑卷中有所改变,会将旧的数据复制到快照中去。
快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据。
建立快照的卷大小只需要原始逻辑卷的15%~20%就够了,也可以使用lvextend放大快照。
使用LVM快照:
为现有的逻辑卷创建快照
lvcreate -l 64 -s -n snap-data -p -r /dev/vg0/lv0
挂载快照:
mkdir -p /mmt/snap
mount -o ro /dev/vg0/snap-data /mnt/snap
删除快照:
umount /mnt/snap
lvremove /dev/vg0/snnap-data
btrfs文件系统:
btrfs文件系统为技术预览版
核心特征:
多物理卷支持:btrfs由多个底层物理卷组成:支持RAID,联机添加、移除、修改;
写时复制更新机制:复制、更新及替换指针,而非就地更新;
数据及元数据校验码:checksum
子卷:sub_volume
快照:支持快照的快照
透明压缩;
文件系统创建:
mkfs.btrfs
-L:’LABEL’
-d:<type> raid0 raid1 raid5 raid6 raid10 single
-m:<profile> raid0 raid1 raid5 raid6 raid10 single
例: mkfs.btrfs -L mydata -f /dev/sdb /dev/sdc
文件系统属性查看:
btrfs filesystem show ;blkid
挂载文件系统:
mount -t btrfs /dev/sdb MOUNT_POINT
透明压缩机制:
mount -o compress={lzo|zlib} DEVICE MOUNT_POINT
在线修改文件系统大小:
btrfs filesystem resize -10G /mydata
btrfs filesystem resize +10G /mydata
btrfs filesystem resize max /mydata
查看文件系统:
df -lh ;btrfs filesystem df /mydata
添加设备:
btrfs device add /dev/sdd /mydata
平衡数据:
btrfs banlance status /mydata
btrfs banlance stat /mydata
btrfs banlance pause /mydata
btrfs banlance cancel /mydata
btrfs banlance resume /mydata
删除设备:
btrfs device delete /dev/sdb /mydata
修改raid级别:注意raid对成员数量的要求
btrfs balance start -mconvert=raid1|raid0|raid5 /mydata
btrfs balance start -dconvert=raid1|raid0|raid5 /mydata
子卷管理:
btrfs subvolume list /mydata
btrfs subvolume create /mydata/subv1
umount /mydata
mount -o subvol=subv1 /dev/sdd /mnt/subv1
btrfs subvolume show /mnt/subv1
mount /dev/sdb /mydata 挂载父卷,子卷自动挂载
mount -o subvolid=### /dev/sdd /mnt/subv1
btrfs subvolume show /mnt/subv1
btrfs subvolume delete /mydata/subv1
创建快照:
btrfs subvolume snapshot /mydatasubv1
/mydata/snapshot_subv1
btrfs subvolume llist /mydata
删除快照:
btrfs subvolume delete /mydata/snapshot_subv1
对一个文件做快照
cd /mydata/subv1
cp –reflik testfile snapshot_testfile
实验ext4和btrfs互换
btrfs balance stat -dconvert=single /mydata
btrfs balance stat -mconvert=raid1 /mydata
btrfs device delete /dev/sdd /mydata
fdisk /dev/sdd
mkfs.ext4 /dev/sdd1
mount /dev/sdd1 /mnt
cp /etc/fstab /mnt
umount /mnt
fsck -f /dev/sdd1
btrfs-convert /dev/sdd1 转化ext4为btrfs
btrfs filesystem show
mount /dev/sdd1 /mnt
btrfs 转化ext4文件系统
umount /mnt
btrfs-convert -r /dev/sdd1
blkid /dev/sdd1
在转化成btrfs
btrfs-convert /dev/sdd1
原创文章,作者:zhengyibo,如若转载,请注明出处:http://www.178linux.com/43922