一共两次,第一次踩的坑比较多,如果碰到问题可以看看
顺利的话可以直接看第二次!
第二次
这次在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 / # 实时查看根分区使用情况