ubuntu更换内核后鼠标用不了 无法进入到桌面的解决方法
一、Ubuntu内核升级成功后***无法进入到桌面的解决方法
由于项目需要,需要对Ubuntu的内核进行升级,但是升级成功后,却无法进入到桌面。我用的是Ubuntu18.04,内核版本为4.15.0,需要将其升级为4.17,升级方法可以参照我之前的一篇文章: Ubuntu内核升级方法
当我升级成功后,发现会Ubuntu系统会停留在以下启动界面很久很久,依然无法进入到桌面。
我搜索各种解决方案,有人说可能是显卡驱动不兼容问题,需要重新安装显卡驱动。但是问题真的是在这里吗?到底启动过程卡在什么地方了?带着这个问题,我决定采用控制台输出方式启动Ubuntu,看看到底发生了什么事情。你可能会问,这里都进入不了Ubuntu系统,如何才能修改为控制台方式呢?因为我这里是升级内核,在Grub引导界面里,是可以看到旧内核版本(4.15)的,因此选择旧的内核启动Ubuntu便可。
进入到系统后,修改grub配置文件,具体可参照如下:
修改完毕后,如下所示
修改完毕后,保存,然后不要忘记执行非常重要的一步: update_grub。执行成功后,reboot系统,然后选择4.17内核,将会在控制台下看到如下启动过程。我发现,后系统停留在"Started Update UTMP about System Runlevel changes."。等了许久,依然没有任何动作。
再一次,前进的脚步不得不停下来...经过各种找原因后,执行Alt+F2后,神奇的事情发生了,系统又打开一个控制台窗口,将会提示你输入到用户名和密码,然后就可以进入到系统桌面了。执行uname-r后,发现系统内核也变成了4.17.0.
虽然能够暂时解决项目的需要,但是依旧不太好,每次都需要alt+f2,太麻烦了。我再次修改配置文件,修改为以图形用户界面方式进入到Ubuntu系统。问题依旧,停留在系统加载界面。然后输入Alt+F2后,问题出来了,报告“A start job is running for Hold until boot process finishes up(***/ no limit)”. Oh no,怪不得等很久都无法进入到桌面。在下面窗口后,我输入N,然后Enter,终于又进入到久违的桌面了。
无法进入桌面的这个问题终究是需要解决的。查询一些网上的解决方案后,发现以下方法甚是有效(Root用户):
到此,终于在上电后,可以自动进入到桌面了。OH Yeah.那么什么是GDM呢?
GDM(GNOME Desktop Manager)是一种 GNOME显示环境的管理器,它是一个运行在后台的小程序(脚本),用于运行你的 X会话,显示一个登录界面并在你正确输入密码后才允许登录。
不知为何GDM出现了兼容性问题,换个其他的界面登录器(LightDM)就可以解决问题了。如果有其他高见,欢迎一起讨论。
二、如何删除 Ubuntu 上不再使用的旧内核
在删除旧内核之前,记住好留有2个近的内核(新的和上一个版本),以防主要的版本出错。现在就让我们看看如何在Ubuntu上清理旧内核。在Ubuntu内核镜像包含了以下的包。
linux-image-:内核镜像
linux-image-extra-:额外的内核模块
linux-headers-:内核头文件
首先检查系统中安装的内核镜像。
$ dpkg--list| grep linux-image
$ dpkg--list| grep linux-headers
在列出的内核镜像中,你可以移除一个特定的版本(比如3.19.0-15)。
$ sudo apt-get purge linux-image-3.19.0-15
$ sudo apt-get purge linux-headers-3.19.0-15
上面的命令会删除内核镜像和它相关联的内核模块和头文件。
注意如果你还没有升级内核那么删除旧内核会自动触发安装新内核。这样在删除旧内核之后,GRUB配置会自动升级来移除GRUB菜单中相关GRUB入口。
如果你有很多没用的内核,你可以用shell表达式来一次性地删除多个内核。注意这个括号表达式只在bash或者兼容的shell中才有效。
$ sudo apt-get purge linux-image-3.19.0-{18,20,21,25}
$ sudo apt-get purge linux-headers-3.19.0-{18,20,21,25}
上面的命令会删除4个内核镜像:3.19.0-18、3.19.0-20、3.19.0-21和 3.19.0-25。
如果GRUB配置由于任何原因在删除旧内核后没有正确升级,你可以尝试手动用update-grub2命令来更新配置。
$ sudo update-grub2
现在就重启来验证GRUB菜单是否已经正确清理了。
三、ubuntu 卸载不了内核 求助
方法/步骤
打开“应用程序”,然后在弹出菜单中点击“附件”,选择并打开“终端”,打开终端命令窗口
在终端命令窗口中输入并执行下面的命令:uname-a,查看我们当前使用的内核,不要删除错误了,或者当我们使用的是旧内核进入系统,想删除这个内核启动项,这样也是不能删除的。只能在开机时选择别的内核启动项进入系统才能删除
输入下面的命令,查看当前我们系统中有哪些内核启动项,同时也可以方便我们**的*作,具体命令是:
dpkg--get-selections| grep linux
下面就开始删除内核启动项,先选择内核启动项,然后**,这样方便*作,然后输入下面的命令:
sudo apt-get remove linux-image-2.6.32.21-generic
执行过程中会警告我们确实要执行这个*作,输入字母y,然后回车,就开始卸载旧内核了
之后就是一些具体的卸载过程的提示,已经更新系统启动项的信息
我们再次使用命令:dpkg--get-selections| grep linux来查看当前的内核情况:
在 linux-image-2.6.32.21-generic后面显示deinstall,表示已经卸载了
linux-headers-2.6.32.21和 linux-headers-2.6.32.21-generic是之前我们卸载的内核相关联的头文件,现在对于我们也没有用,也可以卸载了,卸载了可以帮我们清理出不少磁盘空间,具体命令是:
sudo apt-get remove linux-headers-2.6.32-21
sudo apt-get remove linux-headers-2.6.32-21-generic
删除完后,再用命令:dpkg--get-selections| grep linux查看当前内核启动选项相关信息:
linux-headers-2.6.32-21已经没有了,被删除了
linux-headers-2.6.32-21-generic已经没有了,被删除了
linux-image-2.6.32-21-generic显示为deinstall,表示被卸载删除了
虽然在卸载旧内核的时候提示信息说已经帮我们更新了系统启动项,但为了保险起见我们执行sudo update-grub更新开机启动控制文件。
四、ubuntu 为什么更新内核无效
我用过自动更新里面的升级ubuntu系统,确实不会升级内核,不过我们可以选择手动升级安装新内核.
1首先在命令行搜索目前有哪些内核可以升级,比如我们要搜索3.19版本的内核,使用如下的命令:
apt-cache search 3.19.0
2然后在结果列表里找到要升级的内核版本名,比如 linux-image-3.19.0-21-generic内核是新的,我们可以升级使用以下命令安装升级 linux内核:
sudo apt-get install linux-headers-3.19.0-21 linux-headers-3.19.0-21-generic linux-image-3.19.0-21-generic linux-image-extra-3.19.0-21-generic
安装成功后重启,系统会默认使用新的内核,使用命令, uname-a查看正在使用的linux内核信息