虚拟机扩容最新踩坑记录

一共两次,第一次踩的坑比较多,如果碰到问题可以看看
顺利的话可以直接看第二次!


第二次

这次在VMware扩展完磁盘可以正常开机诶,好神奇
那就直接用parted改分区大小吧

sudo parted /dev/sda

执行print

print          # 查看当前分区表,确认分区号和结束位置

在这里插入图片描述
调整分区

(parted) resizepart 3   # 输入要调整的分区号(例如3)
End? [旧结束位置]       # 输入磁盘最大可用值(例如100%或具体数值,如100GB对应21474836480s)
(parted) quit

在这里插入图片描述
退出 parted 后,强制刷新分区表:

sudo partprobe /dev/sda

扩展文件系统(ext4的情况)

sudo resize2fs /dev/sda3

在这里插入图片描述

验证扩展结果

df -h           # 查看根分区容量是否扩展
lsblk           # 确认分区大小已更新

在这里插入图片描述在这里插入图片描述


第一次

一次虚拟机扩容踩坑记录,搞完是25.3.10了
方法很脚踩香蕉皮,不太建议参考

参考:VMware虚拟机解决空间不足,增加磁盘空间(磁盘扩容)
开头是参考这个,后面出问题了就问ds去了(大半篇都是一边踩坑一边问ds)
感觉也可以结合这个看VMware扩展硬盘后无法正常开机的解决方法,就不要像我一样到处踩了

磁盘扩展

关闭虚拟机,点击编辑虚拟机设置-硬盘-扩展
在这里插入图片描述在这里插入图片描述

分区

启动虚拟机,发现一直停在这个页面
查了下应该是现在系统要正确分区才能启动了
在这里插入图片描述强制重启并进入恢复模式
重新启动虚拟机,在启动时按住 Shift 键进入GRUB菜单(这里注意要先Ctrl + G定向输入到虚拟机再按shift,鼠标点好像没用
选择 Advanced options for Ubuntu → 选择带有 (recovery mode) 的内核。
在这里插入图片描述

选择 root(进入root shell)。
在这里插入图片描述
执行以下命令挂载根分区为可读写:

mount -o remount,rw /

查看扩展后的磁盘容量是否被识别:

fdisk -l /dev/sda

磁盘总量是25GB,但是因为没分区,分区容量还是20GB的
在这里插入图片描述

使用 growpart 工具扩展分区(分区为 /dev/sda3)

apt update && apt install cloud-guest-utils
growpart /dev/sda 3

没有足够空间!
在这里插入图片描述尝试清理APT缓存和临时文件

# 清理APT下载的软件包缓存
apt clean

# 删除不再需要的旧版本软件包
apt autoremove

# 可选:清理旧的日志文件(谨慎操作)
# 这个我没搞
rm -rf /var/log/*.gz

清完尝试安装growpart,还是空间不足,于是尝试用parted手动分区
执行以下命令查看分区情况:

lsblk
fdisk -l /dev/sda

在这里插入图片描述记录需要扩展的分区(这里是/dev/sda3),确认 VMware 扩展后的磁盘总大小(是25GB啦)
运行parted

parted /dev/sda

执行print

print          # 查看当前分区表,确认分区号和结束位置

这里也能看到sda3是ext4文件系统
在这里插入图片描述调整分区

(parted) resizepart 3   # 输入要调整的分区号(例如3)
End? [旧结束位置]       # 输入磁盘最大可用值(例如100%或具体数值,如100GB对应21474836480s)
(parted) quit

end我输入了25GB,最安全的方法应该是输入100%

在这里插入图片描述
退出 parted 后,强制刷新分区表:

partprobe /dev/sda

扩展文件系统(ext4的情况)

resize2fs /dev/sda3

在这里插入图片描述

验证扩展结果

df -h /         # 查看根分区容量是否扩展
lsblk           # 确认分区大小已更新

看到sda3已经扩展了
在这里插入图片描述

修复文件系统

运行文件系统检查,防止潜在错误:

fsck -f /dev/sda3

提示sda3正挂载着(之前看到根目录/就是挂载到sda3下的),fsck无法安全地进行检查,所以退出了

在这里插入图片描述
需要先卸载分区
重启虚拟机,在启动时按住 Shift 键进入 GRUB 菜单,选择 Advanced options for Ubuntu → 选择带有 (recovery mode) 的内核,选择 root

以只读模式重新挂载根分区

mount -o remount,ro /

卸载sda3分区

umount /dev/sda3

在这里插入图片描述
提示target is busy,说明仍然有进程在占用分区(这是当然的吧!)
尝试延迟卸载

umount -l /dev/sda3  # -l 表示“lazy unmount”,解除挂载后让进程逐渐退出

报了一大堆错捏,大意是说这些东西找不到,应该是因为一些关键目录标记成了未挂载,需要重新挂载
在这里插入图片描述
这样也没法fsck,很麻烦啊很麻烦
在这里插入图片描述

Live ISO

后面问ds回答又滚回去了,所以总结了一下问他,于是他终于拿出了终极解决方案——Live ISO

关机
编辑虚拟机设置 → CD/DVD 驱动器 → 选择 Ubuntu 安装镜像(如 ubuntu-22.04.3-desktop-amd64.iso),勾选 Connect at power on。
不知道为什么我这有两个…?随便选了一个
在这里插入图片描述
启动时快按Esc进入启动菜单,选择 CD/DVD Drive 启动,在 Live 启动界面选择 Try Ubuntu(无需安装系统)
(此处重启了三四次(怒
在这里插入图片描述
选择try!在这里插入图片描述
打开终端,获取用户权限

sudo -i  # 切换至 root 用户

确认根分区设备名(根据容量和挂载点判断)…没有根目录是什么情况啊!但是应该没问题
在这里插入图片描述果然是没挂载,如果挂载了的话用umount卸载

umount /dev/sda3  # 如果系统自动挂载了分区,先卸载

在这里插入图片描述执行文件系统检查与修复

fsck -y /dev/sda3

看起来应该是sda3没问题(太好了我去兜这么大一圈子早知道就不fsck了)
在这里插入图片描述卸载Live ISO并重启,先关机,然后取消CD/DVD的启动时连接
这里我之前都是勾选的,但是查了下平时还是不要勾选为好,防止平时使用时不小心从CD/DVD驱动器启动了,这个选项通常用于安装操作系统、运行启动盘工具或进行系统恢复等操作。所以取消勾选!
然后正常启动虚拟机,已经能正常显示桌面了,再检查一下分区容量

df -h

在这里插入图片描述查看启动日志

journalctl -b -p 3  # 检查本次启动的错误信息

嗯也看不太懂


后续

要关注磁盘空间状况啊!
定期清理系统

sudo apt autoremove && sudo apt clean  # 删除无用软件包和缓存

监控磁盘空间

watch df -h /  # 实时查看根分区使用情况
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值