![grub 加载后出现 RCU 停顿错误](https://linux22.com/image/922505/grub%20%E5%8A%A0%E8%BD%BD%E5%90%8E%E5%87%BA%E7%8E%B0%20RCU%20%E5%81%9C%E9%A1%BF%E9%94%99%E8%AF%AF.png)
这是我第一次遇到这个问题,我一直找不到解决办法。我读到过一个家伙的服务器也遇到了类似的问题,他编辑了 grub,nosmp
在配置文件中添加了命令(但我无法访问 linux,所以我不知道该怎么做。)
问题是,我安装了 Windows 7 和 Ubuntu 18.04(4 天前),一切都运行正常,直到 2 天前我在 GRUB 中选择了 Ubuntu 选项,它没有加载任何东西。屏幕变黑,过了一段时间出现一条错误消息,内容如下
rcu_sched detected stalls on cpus/tasks
和
rcu_sched kthread starved
它在行尾提到了有关 CPU #0 的信息以及有关时间流逝变化的信息,但是错误消息是相同的。
我的电脑是一台笔记本电脑(POSITIVO BGH J430)/奔腾双核 T4500/英特尔芯片组。
正如我所说,以前从未发生过这种情况,自从 Ubuntu 14.xx 以来,我一直在使用 Windows 和 Linux(仅此而已)。但这次我在 Ubuntu 旁边安装了 Win7。如果有人处理过这个问题并解决了它,请告诉我你做了什么来解决这个问题。
如果没有,我的最终解决方案是重新安装没有 Win7 的 Ubuntu。谢谢!
$ sudo dmidecode -s bios-version
1.21
$ sudo dmidecode -t 1,2**
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 2.6 present.
Handle 0x0001, DMI type 1, 27 bytes
System Information
Manufacturer: POSITIVO BGH
Product Name: POSITIVO BGH
Version: To Be Filled By O.E.M.
Serial Number: To Be Filled By O.E.M.
UUID: 0A73EE80-D2AA-0000-0000-000000000000
Wake-up Type: Power Switch
SKU Number: To Be Filled By O.E.M.
Family: To Be Filled By O.E.M.
Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
Manufacturer: POSITIVO
Product Name: J14
Version: To be filled by O.E.M.
Serial Number: To be filled by O.E.M.
Asset Tag: To Be Filled By O.E.M.
Features:
Board is a hosting board
Board is replaceable
Location In Chassis: To Be Filled By O.E.M.
Chassis Handle: 0x0003
Type: Motherboard
Contained Object Handles: 0
ls -al /boot
drwxr-xr-x 3 root root 4096 Mar 26 12:15 .
drwxr-xr-x 24 root root 4096 Mar 26 12:12 ..
-rw-r--r-- 1 root root 224446 Jul 29 2019 config-5.0.0-23-generic
-rw-r--r-- 1 root root 235831 Feb 28 07:40 config-5.3.0-42-generic
drwxr-xr-x 5 root root 4096 Mar 26 12:16 grub
-rw-r--r-- 1 root root 40771504 Mar 25 23:08 initrd.img-5.0.0-23-generic
-rw-r--r-- 1 root root 41457066 Mar 26 12:15 initrd.img-5.3.0-42-generic
-rw-r--r-- 1 root root 182704 Jan 28 2016 memtest86+.bin
-rw-r--r-- 1 root root 184380 Jan 28 2016 memtest86+.elf
-rw-r--r-- 1 root root 184840 Jan 28 2016 memtest86+_multiboot.bin
-rw------- 1 root root 4289273 Jul 29 2019 System.map-5.0.0-23-generic
-rw------- 1 root root 4485514 Feb 28 07:40 System.map-5.3.0-42-generic
-rw-r--r-- 1 root root 8707832 Aug 5 2019 vmlinuz-5.0.0-23-generic
-rw------- 1 root root 9142520 Feb 28 07:41 vmlinuz-5.3.0-42-generic `
答案1
文件系统检查
首先我们检查/修复您的文件系统...
- 以“试用 Ubuntu”模式启动 Ubuntu Live DVD/USB
terminal
按Ctrl+ Alt+打开窗口T- 类型
sudo fdisk -l
- 识别“Linux 文件系统”的 /dev/sdXX 设备名称
- 输入
sudo fsck -f /dev/sdXX
,替换sdXX
为您之前找到的数字sudo fsck -f /dev/sda5
fsck
如果有错误则重复命令- 类型
reboot
initrd.img-5.3.0-42-通用
系统在内核上运行良好5.0.0-23-generic
。
Software Updater
更新内核后5.3.0-42-generic
,一切都变得很糟糕。现在无法加载 ramdisk,这表明文件可能有问题/boot/initrd.img-5.3.0-42-generic
,因此我们将创建一个新的副本。
当启动到 -23 内核时...
在terminal
...
sudo update-initramfs -c -k 5.3.0-42-generic
# 创建新的 initrd.img
reboot
# 到 -42 内核
BIOS
POSITIVO BGH J430 (or J14), current BIOS is version 1.21
您需要检查是否有较新的 BIOS。从本网站。
更新#1:
似乎 -23 内核运行良好,而 -42 内核则不行。我们将修改 GRUB,使其始终引导至 -23 内核。(即:它将引导至最后选择的选项)。然后等待下一次系统软件更新,希望他们能为您的机器提供更好的内核。
sudo -H gedit /etc/default/grub
在文件顶部附近,编辑/更改/添加以下行...
GRUB_DEFAULT=saved # change existing line
GRUB_SAVEDEFAULT=true # add this line
sudo update-grub
reboot
在 GRUB 菜单上,选择“附加选项”,然后选择 -23 内核。启动完成后,重新启动,看看它是否会自行返回到 -23 内核。