在调整 LVM 卷大小时,遵循 derobert 调整底层文件系统大小的技巧:
lvm> lvextend -r -l +100%FREE /dev/VolGroup00/lvolhome
fsck from util-linux 2.25.2
/sbin/fsck.btrfs: BTRFS file system.
Size of logical volume VolGroup00/lvolhome changed from 3.04 GiB (777 extents) to 14.94 GiB (3824 extents).
Logical volume lvolhome successfully resized
fsadm: Filesystem "btrfs" on device "/dev/mapper/VolGroup00-lvolhome" is not supported by this tool
fsadm failed: 1
Run Code Online (Sandbox Code Playgroud)
“问题”是 fsadm 工具不支持 btrfs 调整大小。心灰意冷,我决定用艰难的方式(也就是手动)来做:
sudo btrfs filesystem resize max /dev/mapper/VolGroup00-lvolhome
ERROR: can't access '/dev/mapper/VolGroup00-lvolhome'
Run Code Online (Sandbox Code Playgroud)
好吧,btrfs 无法“访问”设备,但它可以检测到它:
> sudo btrfs filesystem show
Label: none uuid: 53330630-9670-4110-8f04-5a39bfa86478
Total devices 1 FS bytes used 2.75GiB
devid 1 size 3.04GiB used 3.03GiB path /dev/mapper/VolGroup00-lvolhome
Run Code Online (Sandbox Code Playgroud)
那么,什么给?如何在逻辑卷内调整我的 btrfs 分区的大小?
Bra*_*iam 18
嗯,那很尴尬。需要挂载 BTRFS才能调整分区大小。
如何调整分区大小?(缩小/增长)
为了演示和测试反向引用,Btrfs 开发团队添加了一个在线调整器,它可以通过 btrfs 命令增大和缩小文件系统。
首先,确保您的文件系统已挂载。
所以,我使用的是 LVM 卷并不重要,只要它被挂载即可。
BTRFS 将文件系统挂载点作为参数,而不是设备路径。
换句话说,而不是这个:
btrfs filesystem resize max /dev/vg/lvhome
Run Code Online (Sandbox Code Playgroud)
您应该使用安装所述卷的实际路径:
btrfs filesystem resize max /home
Run Code Online (Sandbox Code Playgroud)