扩展文件系统的方法取决于存储架构(传统分区/LVM),以下是常见场景的具体步骤:
适用于未使用LVM的普通分区(如/dev/sda1),需先确保磁盘有未分配空间或缩小其他分区释放空间。
lsblk确认分区路径(如/dev/sda1),df -Th确认文件系统类型(如ext4/XFS)。sudo umount /dev/sdXN卸载。fdisk(命令行):sudo fdisk /dev/sdX # 替换为磁盘设备(如/dev/sda)
# 输入'd'删除原分区(不会立即删除数据),再输入'n'创建新分区
# 选择原分区号,起始扇区保持默认,结束扇区输入'+新大小'(如+10G)
# 输入'w'保存并退出(需重启系统使分区表生效)
GParted(图形界面):sudo apt install gparted;运行后选择分区,右键点击“Resize/Move”,拖动边界调整大小,点击“Apply”。sudo resize2fs /dev/sdXN(自动扩展至分区大小);sudo xfs_growfs /mount/point(需挂载,如/)。适用于使用逻辑卷管理(LVM)的系统(如Ubuntu默认安装),扩展更灵活。
sudo lvdisplay(查看逻辑卷)、sudo vgdisplay(查看卷组)、sudo pvdisplay(查看物理卷)确认空间使用情况。pvcreate将其添加为物理卷:sudo pvcreate /dev/sdXN # 如/dev/sdb1
ubuntu-vg):sudo vgextend ubuntu-vg /dev/sdXN
ubuntu-lv)大小,+10G表示增加10GB,100%FREE表示使用所有剩余空间:sudo lvextend -L +10G /dev/ubuntu-vg/ubuntu-lv # 增加指定大小
# 或
sudo lvextend -l 100%FREE /dev/ubuntu-vg/ubuntu-lv # 使用所有剩余空间
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv;sudo xfs_growfs /dev/ubuntu-vg/ubuntu-lv(需挂载)。使用GParted工具(支持传统分区与LVM):
sudo apt install gparted;sudo gparted;注意:XFS文件系统不支持缩小(仅能扩展),若需缩小必须备份后重新格式化。以下步骤仅适用于ext4等支持缩小的文件系统。
e2fsck修复错误(ext4):sudo umount /dev/sdXN
sudo e2fsck -f /dev/sdXN # 强制检查
resize2fs将文件系统缩小至目标大小(如10GB):sudo resize2fs /dev/sdXN 10G
fdisk或GParted缩小分区边界,确保分区大小不小于文件系统大小。sudo mount /dev/sdXN /mount/point
适用于LVM架构,步骤更安全(可在线操作部分步骤)。
lvdisplay、vgdisplay确认空间使用情况。resize2fs缩小文件系统:sudo umount /dev/mapper/vg-name-lv-name
sudo e2fsck -f /dev/mapper/vg-name-lv-name
sudo resize2fs /dev/mapper/vg-name-lv-name 10G # 缩小至10GB
lvreduce将逻辑卷缩小至目标大小:sudo lvreduce -L 10G /dev/mapper/vg-name-lv-name # 缩小至10GB
sudo mount /dev/mapper/vg-name-lv-name /mount/point
通过以上步骤,可根据需求扩展或缩减Ubuntu文件系统。建议优先使用LVM架构(Ubuntu默认支持),其灵活的空间管理功能可降低扩展/缩减的风险。