Linux 空间不足?根分区扩容
引言
在使用 Linux 或者 Unix-like 时候,经常会遇到空间不足,蹦出来个提示 No space left on device. 这时便要进行系统的硬盘扩容,但多数是添加一块硬盘,映射到系统的目录内。这样做会有些不好,因为一般都是在 ~ 下工作,如果要切换到指定磁盘目录,那会过于麻烦,所以要在系统的根分区进行磁盘的扩容。
环境配置
MacOs 下使用 Vmware 搭建的 Ubuntu20.04 Server,在第一次配置中,没有考虑到实际场景,分配了仅 20 GB 的空间,但在实际开发使用中愈发不足。
操作步骤
更改硬盘容量
开机虚拟机,输入命令 fdisk -l
注意需在 root 用户下
查看当前可用空间大小vgdisplay
Free PE / Size 为零,暂时没有可扩展的硬盘
新建数据卷
fdisk /dev/sda
注:之前已生成分区 /dev/sda4,按照自己所生成的填写
添加分区,输入 n
如果需要查看帮助,输入 m
选择分区号,回车默认
接下里一直回车,直到出现 Command (m for help)
输入 p,查看分区情况
输入 w
,保存当前更改;输入 q
退出,不保存
pvcreate /dev/sda4
输入命令:vgextend /dev/ubuntu-vg /dev/sda4
1root@yother:~# vgextend /dev/ubuntu-vg /dev/sda4
2 Volume group "ubuntu-vg" successfully extended
Free PE / Size 表示为空闲的容量
执行 df -l
找到当前根目录分区
分区扩容
1# 增加10G
2lvextend -L +10G /dev/mapper/ubuntu--vg-ubuntu--lv
3
4# 增加到100G
5lvextend -L 100G /dev/mapper/ubuntu--vg-ubuntu--lv
6
7# 减少10G
8lvreduce -L -10G /dev/mapper/ubuntu--vg-ubuntu--lv
9
10# 减少到100G
11lvreduce -L 100G /dev/mapper/ubuntu--vg-ubuntu--lv
刷新调整分配
resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
查看调整后容量详情
再次执行 df -l
总结
在 Linux 上,对容量的调整总是一件繁琐的事情,但在自己实际操作后,按照常规流程下来也并没有那么的困难,动起小手。所谓生命不息,折腾不止。