在Ubuntu 16.04上冻结屏幕

我最近安装了Ubuntu 16.04,它似乎随机冻结。 我试着查看Ubuntu 15.10和16.04的解决方案随机冻结但是在安装这些内核时,我在启动时遇到了内核恐慌,所以我更倾向于寻找Ubuntu 16.04的解决方案, 不断冻结导致内核恐慌,但无法想象如何解决问题。 任何人都可以告诉我要安装哪些确切的内核,以便解决这两个问题(内核恐慌和随机冻结)? 预装了16.04的内核是4.4.0-21-generic ,这些是一些额外的细节:

Distributor ID: Ubuntu Description: Ubuntu 16.04 LTS Release: 16.04 Codename: xenial Processor: Intel® Pentium(R) CPU N3540 @ 2.16GHz × 4 Graphics: Gallium 0.4 on llvmpipe (LLVM 3.8, 128 bits) Ram : 4Gb Os type - 64 bit architecture 

请告诉我是否需要提供任何其他细节。

编辑 – 1)

 saisumit@saisumit-Inspiron-3551:~$ sudo dpkg -l | grep linux-headers-4.7*.deb [sudo] password for saisumit: saisumit@saisumit-Inspiron-3551:~$ sudo dpkg -l |grep linux-image-4.7*.deb saisumit@saisumit-Inspiron-3551:~$ sudo update-grub Generating grub configuration file ... Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported. Found linux image: /boot/vmlinuz-4.7.0-040700rc3-generic Found initrd image: /boot/initrd.img-4.7.0-040700rc3-generic Found linux image: /boot/vmlinuz-4.4.0-21-generic Found initrd image: /boot/initrd.img-4.4.0-21-generic Adding boot menu entry for EFI firmware configuration done saisumit@saisumit-Inspiron-3551:~$ 

我使用这种方法安装

  wget kernel.ubuntu.com/~kernel-ppa/mainline/v4.7-rc3-yakkety/linux-headers-4.7.0-040700rc3_4.7.0-040700rc3.201606121131_all.deb wget kernel.ubuntu.com/~kernel-ppa/mainline/v4.7-rc3-yakkety/linux-headers-4.7.0-040700rc3-generic_4.7.0-040700rc3.201606121131_i386.deb wget kernel.ubuntu.com/~kernel-ppa/mainline/v4.7-rc3-yakkety/linux-image-4.7.0-040700rc3-generic_4.7.0-040700rc3.201606121131_i386.deb sudo dpkg -i linux-headers-4.7*.deb linux-image-4.7*.deb 

编辑 – 2( 安装grub定制器 )

  sudo add-apt-repository ppa:danielrichter2007/grub-customizer sudo apt-get update sudo apt-get install grub-customizer 

您的处理器受到c状态错误的影响,当CPU尝试进入不支持的睡眠状态时会导致完全冻结。 这对许多Bay Trail设备来说都是一个问题,特别是对于更新的(4. *)内核。

有一个简单的解决方法,直到上游正确修复。 您只需要传递内核启动参数 ,随机冻结就会完全停止。

您可以通过编辑GRUB的配置文件来执行此操作:

启动Ubuntu并按ctrl + alt + t然后键入打开终端

 sudo nano /etc/default/grub 

找到GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"这一行

这需要更改为包括intel_idle.max_cstate=1

因此,在您编辑后,它会读取

 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle.max_cstate=1" 

如果除了安静和飞溅之外你还有其他启动参数,那就别管它们吧。

现在按ctrl + o保存文件,然后按ctrl + x 进入和退出

现在输入

 sudo update-grub 

然后重启


要从手动安装的较高版本恢复到较旧的内核,请重新启动系统并按shift键进入GRUB菜单。 在GRUB屏幕上选择Ubuntu的Advanced Options并选择要引导的内核(在您的情况下为4.4.0-21-generic

系统启动后, 在删除任何内容之前,请检查uname -r以确保已启动正确的内核,以确保您不会通过删除正在运行的内核来自我修复。

系统默认会启动最高内核,因此您需要自己删除较新的内核。 您需要做的就是删除与其相关的文件,因此找到要删除的内核的版本字符串…如果您通过debian方法安装:

 dpkg -l | grep linux-image 

如果您使用make install安装, make install执行ls /boot以查看已安装的内核版本

假设您要删除的内核具有发布字符串4.7.0-040700rc3-generic 。 您可以找到与此内核相关的所有文件:

 sudo updatedb && locate -b -e 4.7.0-040700rc3-generic 

删除它们你可以使用xargs (假设你已经运行了sudo updatedb

 locate -b -e 4.7.0-040700rc3-generic | xargs -p sudo rm -r 

-p使xargs在找到定位文件的rm -r之前要求确认。 它会为不是目录的文件抛出错误,因为你试图递归地删除它们,但它仍然可以工作。 终于跑了

 sudo update-grub