Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展

Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展,见招拆招完美解决

  • 事情起因
  • 我的环境
  • Q&A
    • Q1:怎样不启动虚拟机ubuntu,删除ubuntu内的一些文件?
      • A1:使用DiskGenius加载.vmdk文件,对ubuntu内部文件进行操作
    • Q2: 怎样扩展ubuntu现有sda设备的磁盘容量,且不用挂载新的sda设备
      • A2: 使用VMware + GParted 两步,扩展ubuntu磁盘空间
    • Q3:dev/sda1和扩展空间不连续,GParted不能进行扩展
      • A3: 把dev/sda1换到后面,dev/sda5换到前面,不要怂,乾坤大挪移
    • Q4: 磁盘设备号/dev/sda被更改,开机出现 grub rescue
      • A4: 重建grub引导记录
  • 大功告成,Ubuntu终于起死回生、扩容成功!

事情起因

今天要用ubuntu下载一个工程的源码,并编译。我虚拟机空间只给分配了20G,当我用git checkout代码的时候,代码有50G,我大意了啊,系统提示空间不足,于是乎为了给ubuntu磁盘扩容,我重启了。这倒好,ubuntu起不来了,一直黑屏。有没有和我类似情况的,先别哭啊,跟着我一步一步来,我带你见招拆招。
Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第1张图片
如上图,This computer has only 0bytes disk space remaining. 然后重启ubuntu就起不来了。我也是新手刚接触ubuntu不久,这个事情折腾了一下午,特意记录下来给大家分享。

我的环境

VMware workstation + Ubuntu 20.04 LTS

Q&A

Q1:怎样不启动虚拟机ubuntu,删除ubuntu内的一些文件?

A1:使用DiskGenius加载.vmdk文件,对ubuntu内部文件进行操作

(如果是虚拟机空间不足,建议直接磁盘扩容,请移步Q2,你不需要Q1的操作)
Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第2张图片

打开DiskGenius,磁盘 - 打开虚拟磁盘文件 - 加载Ubuntu 16.04.vmdk,选定要删除的文件 强制删除 - 删除即可。
这里我删除了 git checkout下来的大量代码,留给ubuntu空间用于启动系统。
注意:这时候在ubuntu系统中还有该文件的索引记录,此时ubuntu不会认为存储空间被释放。
需要使用GParted的iso文件,把它挂载为启动盘,设置bios为iso启动。
启动盘启动完成后,进入terminal,然后使用e2fsck命令检查并修复被删除区域的文件索引,如下所示。GParted的使用后面也有介绍。

sudo su
e2fsck -f -y /dev/sda2

Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第3张图片
尝试重新启动ubuntu,发现剩余空间真的变多了,我的ubuntu又能启动了!

Q2: 怎样扩展ubuntu现有sda设备的磁盘容量,且不用挂载新的sda设备

我想把/dev/sda1原本20G的容量扩展到66G。

A2: 使用VMware + GParted 两步,扩展ubuntu磁盘空间

Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第4张图片
使用VMware 虚拟机设置 扩展虚拟磁盘空间,本次从20G扩展到66G。注意这一步还不会使ubuntu的磁盘容量增加,增加的只是未分配的容量,需要使用GParted对系统重新分区和调整。
Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第5张图片
然后使用gparted的gparted-live-1.1.0-6-i686.iso文件当作启动盘,挂载到虚拟机,并设置bios为iso启动。如上图,成功进入gparted并一路回车启动系统,使用GParted工具对 未分配 的区域在dev/sda上进行扩展。
类似教程很多:
链接: VMware虚拟机中调整Linux分区大小——使用GParted.
链接: VMware虚拟机扩展Ubuntu系统磁盘空间.
附件: GParted官方下载链接.

Q3:dev/sda1和扩展空间不连续,GParted不能进行扩展

我们想扩容,达到19.04G+46G=65.4G大小,下图红框内有个linux-swap分区,所以前后两个分区不能合并到一起进行扩容,怎么办?
Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第6张图片

A3: 把dev/sda1换到后面,dev/sda5换到前面,不要怂,乾坤大挪移

Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第7张图片
具体操作见上图红框内的4个步骤。
Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第8张图片
想不到吧还有4步,按照上图再来4步,就把数据全部挪好位置啦! 看,现在sda3已经从原来的19.04G扩展到了65.05G。(设备号变了,移动之前是sda1)

Q4: 磁盘设备号/dev/sda被更改,开机出现 grub rescue

A4: 重建grub引导记录

grub rescue>ls

会罗列所有的磁盘分区信息,比方说:
(hd0,msods1),(hd0,msdos2),(hd0,msdos3),(hd1,msdos2),…

grub rescue>ls (hd0,msdos1)/boot/grub    # 未单独分出/boot分区;单独进行/boot分区的不加/boot

依次进行所有硬盘的尝试,那个正常列出目录,则为linux,假设为(hd0,msdos2)

grub rescue>set root=(hd0,msdos2)
grub rescue>set prefix=(hd0,msdos2)/boot/grub
grub rescue>insmod /boot/grub/normal.mod

如果上一步提示 /boot/grub/normal.mod未找到,则用下面的命令,原因normal.mod在 i386-pc文件夹内

grub rescue>insmod normal
grub rescue>normal

然后正常进入ubuntu系统后,需要更新和安装启动项配置,在Ubuntu中打开terminal,如下:

sudo update-grub
sudo grub-install /dev/sda            #注意:不要在/dev/sda加任何数字,sda对应上面的hd0,hd1就是sdb

Ubuntu空间不足导致的黑屏无法启动,需要对ubuntu进行磁盘容量扩展_第9张图片
以后进入ubuntu就恢复正常啦!

链接: UBUNTU修改了分区无法启动之后的修复.
链接: ubuntu 安装之后开机显示 grub rescue.

大功告成,Ubuntu终于起死回生、扩容成功!

本次分享有什么不合理的请各路神通指教!

你可能感兴趣的:(ubuntu,linux)