Fedora atomic 系统扩容最佳实践
环境介绍
系统安装在pve虚拟机中,系统fedora atomic xfce 43. 在使用一段时间后,硬盘只剩下3G,需要增加硬盘容量。 需要准备一个atomic系统镜像,需要用到btrfs。
Step 1 增加虚拟机硬盘容量
先将虚拟机关机,在虚拟机管理页面Hardware + HardDisk + Disk Action + Resize 在弹窗中填入希望增加的容量,这次是增加64G。
Step 2 在系统中增加容量
检查当前系统容量情况
$ df -h
Filesystem Size Used Avail Use% Mounted on
composefs 38M 38M 0 100% /
/dev/sda3 62G 58G 3.1G 95% /etc
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 128G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 61.4G 0 part /var/home
/var
/sysroot/ostree/deploy/fedora/var
/sysroot
/etc
sr0 11:0 1 1024M 0 rom
zram0 251:0 0 7.7G 0 disk [SWAP]
安装分区软件
$ sudo rpm-ostree install cloud-utils-growpart
# 安装后重启生效
$ sudo systemctl reboot
对分区进行扩容
# 注意这里/sda 3,有个空格
$ sudo growpart /dev/sda 3
CHANGED: partition=3 start=5425152 old: size=128790528 end=134215679 new: size=263010271 end=268435422
查询当前容量情况
$ sudo lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 128G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 125.4G 0 part /var/home
/var
/sysroot/ostree/deploy/fedora/var
/sysroot
/etc
sr0 11:0 1 1024M 0 rom
zram0 251:0 0 7.7G 0 disk [SWAP]
$ df -h
Filesystem Size Used Avail Use% Mounted on
composefs 38M 38M 0 100% /
/dev/sda3 62G 56G 4.7G 93% /etc
分区已经扩容,文件系统还未扩容。
Step 3 扩容系统容量
因为ostree系统的不可变特性,需要在外部更新系统容量。
使用live OS启动镜像
在pve配置镜像启动,如果是进入镜像就出现安装界面,按ctrl + alt + f2切换字符界面。
创建挂载文件夹并挂载
$ mkdir /opt
# 查询分区
$ lsblk
sda3 8:3 0 125.4G 0 part
# 挂载分区
$ mount /dev/sda3 /opt
更新系统容量
挂载后可对系统进行操作
$ btrfs filesystem resize max /opt
确认系统容量
$ df -h
Filesystem Size Used Avail Use% Mounted on
composefs 38M 38M 0 100% /
/dev/sda3 126G 55G 70G 45% /etc
Step 4 总结
通过上面的流程可以看出来,理论上,可以将扩容分区和扩容系统都放在live镜像中执行,只要镜像中有growpard和btrfs软件。即 pve增加容量 + 关机添加live cd + 从cd启动 + 扩容指定分区 +扩容文件系统。