ubuntu16.04误删高于当前版本内核,开机黑屏,只显示/dev/sda9:clean...files,...blocks,更换内核后卡在开机界面,解决安装包依赖,重新安装ubuntu桌面解决问题

news/2024/11/25 19:20:42/

1 背景介绍

1 起因

我使用的Ubuntu16.04在安装的过程中/boot只分了200M空间,导致后续更新的过程中被新内核占满了空间,当时boot中所包含的内核有*linux-image-4.15.0-28-generic,linux-image-4.15.0-43-generic,linux-image-4.15.0-45-generic,linux-image-4.15.0-46-generic,linux-image-4.15.0-47-generic,linux-image-4.15.0-50-generic,linux-image-4.15.0-51-generic,linux-image-4.15.0-54-generic,*终端输入df查询硬盘空间利用情况显示boot已用100%,而且系统一直提示boot空间已满。实在受不了系统的提示了,再加上后期安装package时提示boot空间已满,无法安装,于是上网搜索释放boot空间的方法。

2 释放boot空间

网上方法大都一致,首先在终端中输入uname -a查看当前使用内核,我的显示为4.15.0-43,然后输入sudo dpkg --get-selections | grep linux-image查看boot中所有的内核,我的查完显示为上述一堆内核。然后网上的教程就教你把非当前使用的所有内核使用sudo apt-get purge linux-image-X.XX.X-XX-generic 删除,然后再输入sudo update-grub更新grub。我当时还有些犹豫,因为我的当前使用版本内核低于大部分boot中已有的内核,但考虑到要释放boot空间,安装急需的package,所以就把除4.15.0-43的内核全部删除了。删除完当时并没有出现什么问题,而且boot空间被释放了好多,心情一下子舒畅了。可是后来重启的时候,我的心情一下子跌到了谷底。开机界面一直黑屏,只有两行提示信息:
/dev/sda9:clean, 55902/1458176 files, 1276898/5827584 blocks
/dev/sda8:clean, 241703/2445984 files, 1649892/9764864 blocks
因为安装有重要软件,不能重装系统,只能在网上一步步寻找答案解决问题,最后花费了好几天时间才把问题解决。

2 解决问题的过程

2.1 显卡

首先上网搜删除内核后开机黑屏的问题,网上一堆解释,有的说是升级内核后显卡不兼容,启动的时候不要加载显卡,要修改开机启动时的grub选项,将ro改为rw,详情参见这篇文章 https://blog.csdn.net/gavinmiaoc/article/details/82968853 ,这种方法可能对一些人有用,但是对于我来说并不适用。也有人说要更新显卡驱动,给出了一堆代码更新显卡驱动,但是都是nVidia的显卡,我的是amd的显卡,对于我来说也不适用。

2.2 重装内核

尝试的第二种方法就是重新装回删除的内核。由于我删除的内核较多,全部装回来boot还是会满,所以我只尝试装了50,51,54这几个版本,具体方法入下:

  1. 使用ubuntu的U盘安装盘启动,并进入“Try ubuntu”模式

  2. 打开终端并输入sudo parted -l,从获得的信息中判断“/” 和“boot”所在的盘符,比如我的分别是/dev/sda9 和/dev/sda7。

  3. 输入sudo mount /dev/sda9 /mnt (这里的“9”是我“/”所在的盘符)和 sudo mount --bind /dev /mnt/dev将“/”挂载在/mnt 下,并挂载其/dev文件。

  4. 输入sudo mount /dev/sda7 /mnt/boot将“boot” (这里的“7”是我boot所在的盘符)挂载到/mnt/boot 下。

  5. chroot到损坏的系统,挂载剩余的重要文件系统,并设置一些重要的环境变量。

    sudo chroot /mnt
    mount -t proc none /proc
    mount -t sysfs none /sys
    mount -t devpts none /dev/pts
    export HOME=/root
    export LC_ALL=C
    
  6. 检查网络:输入ping -c 5 www.google.com
    应该到类似下面的一些反馈:
    PING www.l.google.com (74.125.131.147) 56(84) bytes of data.
    64 bytes from vc-in-f147.1e100.net (74.125.131.147): icmp_req=1 ttl=44 time=61.3 ms
    64 bytes from vc-in-f147.1e100.net (74.125.131.147): icmp_req=2 ttl=44 time=62.3 ms
    64 bytes from vc-in-f147.1e100.net (74.125.131.147): icmp_req=3 ttl=44 time=61.8 ms
    64 bytes from vc-in-f147.1e100.net (74.125.131.147): icmp_req=4 ttl=44 time=63.8 ms
    64 bytes from vc-in-f147.1e100.net (74.125.131.147): icmp_req=5 ttl=44 time=66.6 ms
    — www.l.google.com ping statistics —
    5 packets transmitted, 5 received, 0% packet loss, time 4006ms
    rtt min/avg/max/mdev = 61.367/63.212/66.608/1.897 ms
    如果得到的是上述结果则跳到8,如果得到 ping: unknown host www.google.com 则执行 7

  7. 打开新的终端,输入

     sudo cp /mnt/etc/hosts /mnt/etc/hosts.oldsudo cp /etc/hosts /mnt/etc/hostssudo cp /etc/resolv.conf /mnt/etc/resolv.confexit
    

    再次输入 ping -c 5 www.google.com检查能否联网

  8. 安装所需的内核

    apt-get update
    apt-get -y install linux-image-generic

  9. 如果执行了7 则输入 cp /etc/hosts.old /etc/hosts存储就版本的host, 如果没有执行7 则跳过此步执行10

  10. 解除挂载:

    umount /proc || umount -lf /proc
    umount /sys /dev/pts
    exit
    sudo umount /mnt/dev /mnt
    

    如果最后一步报错则先解除/mnt/boot 再解除/mnt

  11. 重启后拔掉u盘应该能开机了。

详情请参考这篇文章:https://askubuntu.com/questions/28099/how-to-restore-a-system-after-accidentally-removing-all-kernels/166010#166010

如果到这我的问题解决了的话就不会花费好几天的时间了,我发现我用这种方法装完内核后,内核是装在了u盘启动的boot中,没有装到我原来系统的boot中。于是我直接把原来boot中的所有文件全部删除,然后把u盘boot中的所有文件拷贝到了我的boot中。重启之后只有桌面背景,什么都不能动,然后我又进行了下一步尝试

2.3 安装桌面环境

我搜了很多资料,确定是没有图形界面的原因,所以要重新安装桌面环境。ubuntu有很多桌面环境,在这里我只尝试了以下几种。

2.3.1 安装unity

开机黑屏的情况下按Ctrl+Alt+F1或者F2,F3,F4,F5,F6到tty的文本编辑界面,输入用户名和密码登录后输入以下代码:

sudo apt-get update
sudo apt-get install ubuntu-desktop --reinstall
sudo apt-get install unity

如果在执行的过程中报错,说存在依赖问题,则先安装aptitude: sudo apt-get install aptitude然后执行sudo aptitude install unity ,系统会在安装软件的过程中自动解决依赖的问题。

重启后不可以的话在登录tty后输入sudo apt-get install compizconfig-settings-manager安装compizconfig-settings-manager,然后再输入DISPLAY=:0 ccsm启动compizconfig-settings-manager,按Ctrl+Alt+F7回到图形界面,在compizconfig-settings-manager中的desktop栏中选择“Ubuntu unity Plugin”,重启后问题就修复了。详情参看 https://blog.csdn.net/lb838315586/article/details/82821842

1. 如果桌面异常卡顿且cpu占用率很高,则在开机的过程中的grub界面选择“Advanced options for Ubuntu”,然后选择低版本内核启动。这是内核兼容问题导致的桌面卡顿问题。详情参看 http://www.mintos.org/hardware/kernel-stuck.html

2. 如果正常显示菜单栏和任务栏,但屏幕是黑的,则在终端输入 gsettings set org.gnome.settings-daemon.plugins.background active true详情参看 https://ubuntuqa.com/article/1156.html

3. 如果鼠标右键不能使用,则安装gnome-tweak-tool工具 sudo apt install gnome-tweak-tool,然后在终端输入gnome-tweak-tool ,将“Icons on Desktop”打开。详情参看 https://blog.csdn.net/weixin_38103350/article/details/75931010

2.3.2 安装gnome桌面

安装gnome桌面较为简单,只需要输入sudo apt-get install gnome,但在弹出的界面中尽量选择lightdm而不选择gdm3
如果要卸载gnome则输入

$sudo apt-get remove gnome-shell
$sudo apt-get remove gnome
$sudo apt-get autoremove
$sudo apt-get purge gnome$sudo apt-get autoclean
$sudo apt-get clean

详情参看 https://blog.csdn.net/mjl960108/article/details/51965434

2.3.3 安装xubuntu

在尝试的过程中无意安装了xubuntu sudo apt-get install xubunu,但是当时并不知道怎么调用xubuntu界面。后来发现,安装完xubuntu后按Ctrl+Alt+F1或者F2,F3,F4,F5,F6到tty的文本编辑界面,输入用户名和密码登录,再输入startx就可以直接打开xubuntu界面,这样就没有必要安装untiy和gnome了,但是每次重启都要经历打开tty和输入startx的过程,比较麻烦。

3 总结

我也是个Ubuntu新手,需要用到特定的软件才开始接触Ubuntu,有很多方面认识还是不到位,只是在学习的过程中把自己的一些理解记录下来,如果有大佬能帮忙指明上述内容中一些不当的地方,将不胜感激。其实我现在还有些地方想不通,删除完内核后不用再修复内核,而是直接重装桌面环境是否同样能解决问题。还有就是越来越想不明白删除内核后为什么开不了机。希望大佬们不吝赐教!


http://www.ppmy.cn/news/507293.html

相关文章

基于循环特征位移聚合器的车道线检测(RESA: Recurrent Feature-Shift Aggregator for Lane Detection)

2021年的车道线检测新方法。 官方公开视频、论文、源码: https://www.bilibili.com/video/BV1664y1o7wg https://arxiv.org/abs/2008.13719 https://github.com/ZJULearning/resa (该视频对现有车道线检测方法进行了分类、归纳总结,很完善。…

学习日记1

目录 Goolge Colab学习 colab简单教程 stackoverflow 卷积神经网络 深度学习迭代次数 python (),[], {} pd.DataFrame()函数解析(最清晰的解释) 欧式距离 马氏距离 深度学习 模型训练超参数调整 rnn学习 损…

37、测试Yolox+TensorRT Yolox+NCNN Yolox+Tengine

觉基本思想:最近yolox刚被放出来,因为之前很多项目都是基于TensorRT部署nano,突然想使用Tengine部署一下nano,随手记录一下 分了四步走:1)先测试一下Yolovx在PC端的性能,源码来自官方的demo和网上相关资料 …

Win10+Torch1.9+CUDA11.1成功配置YOLOX预测环境

因为windows使用较多,所以想在上面装一个pytorch环境进行学习,之前我根据个人笔记本电脑显卡型号已成功安装了显卡驱动和CUDA,安装最新版pytorch(1.9)也可以调用GPU,后面直接拿YOLOX跑了一下,发…

产品经理必备的专业术语

沟通是产品经理日常工作中很重要的一部分,作为项目的发动机,需要和团队各个角色打交道,免不了要理解一些对方的专业词汇。 今天就来给大家分享一下产品经理需要了解的一些专业术语,方便广大产品经理在日常工作中更好的和团队交流。…

一加7pro 鸿蒙,屏幕亮了!一加7 Pro海外版发布:2K分辨率 90Hz刷新率

【TechWeb】北京时间5月15日凌晨,一加在海外推出旗舰定位新机一加7 Pro,售价699美元起。在发布会之前,配置及渲染图已经有多轮曝光,此次新品与之前曝光信息大体一致:搭载骁龙855处理器,拥有最高12GB DDR4X内…

一加7Tpro刷鸿蒙,稀缺全面屏旗舰手机一加7T Pro 再不买真就没了

采用弹出式摄像头设计的全面屏手机,因其屏幕无“缺口”的设计受到了广大消费者的喜爱。目前市面上采用这种设计的机型可谓是寥寥无几,而采用了这种设计并搭载高刷新率屏幕的机型更是稀少,而一加7T Pro便是其中之一。目前一加7T Pro的货源已经…

opporeno7pro和一加9rt哪个好

OPPO Reno7 Pro不仅比一加9RT更漂亮,而且如果我们考虑设计,OPPO Reno7 Pro也是目前最华丽的设备之一,它非常轻薄,并且像最新的iPhone手机一样带有扁平边框。此外,在背面,它有一个由优质材料制成的摄像头模块…