解决方案:扩展根分区
你需要使用gparted工具来调整分区。以下是详细步骤:
步骤1:安装GParted
bash
sudo apt update sudo apt install gparted
步骤2:使用GParted扩展分区
重要:在操作前最好备份重要数据!
bash
# 启动GParted sudo gparted
在GParted中:
选择
/dev/sda磁盘你会看到当前的分区布局:
sda1- 512MB EFI分区sda2- 扩展分区(可能显示为未分配)sda5- 20GB根分区
右键点击
sda5→ 选择 "Resize/Move"拖动滑块到最右边,使用所有可用空间
点击 "Resize" 按钮
点击绿色对勾应用更改
步骤3:确认扩展成功
bash
# 重启后检查 sudo reboot df -h
你应该看到根分区现在有更大的容量了。
需要注意,gparted是图形化界面,要在虚拟机命令行上直接用,不能在SSH中使用
在 Ubuntu 中,如果想对当前正在运行的根文件系统进行在线扩容,通常只能通过命令行(即我们之前尝试过的growpart)来完成,因为 GParted 对运行中的根分区限制较严。
既然命令行遇到了本地化导致的解析错误,而 GParted 又因为挂载锁定无法操作,我们目前的最佳方案是回到命令行,但在提权前正确地规避系统语言的影响。
请依次严格执行以下命令:
1. 切换到纯净的 root 环境并指定英文区域不要在普通用户下加sudo,而是直接进入带有干净英文环境的 root shell:
Bash
sudo su -l export LC_ALL=C执行后,你的命令行提示符应该会从barry@Ubuntu64...$变成root@Ubuntu64...#。
2. 扩容外层的扩展分区 (sda2)
Bash
growpart /dev/sda 2如果成功,你会看到CHANGED:相关的英文输出。
3. 扩容内层的逻辑分区 (sda5)
Bash
growpart /dev/sda 5同样应该看到CHANGED:的输出。
4. 扩展文件系统
Bash
resize2fs /dev/sda5