14.04 经常无法启动(死机,不仅仅是黑屏)

14.04 经常无法启动(死机,不仅仅是黑屏)

我现在正为此而抓狂:我的电脑经常反复自升级到 14.04LTS 后无法启动,顺序如下:

  • 打开
  • 邮政
  • GRUB 启动
  • Grub 倒计时,调用 Ubuntu
  • 空白屏幕,然后加载文本、内容等......
  • 然后就黑了,死机了。显示器因没有视频信号而断电。

键盘和鼠标也坏了,没有数字锁定灯,鼠标传感器没有光,大写锁定键没有任何反应(大写锁定灯不切换)。

我必须强制关闭电脑电源才能重新启动。尝试几次后,电脑可能最终会完全启动。

当它最终启动时,我没有收到任何错误消息。

我不想在这篇文章中到处散布随机日志文件和调试等内容,所以请询问我能提供的任何信息,我会将其粘贴进去。同样,任何要运行的命令/要尝试的实验我都会尝试并报告。

系统是相当普通的单启动 PC:双 Xeon X5660 64 位 / 48G RAM / 256G SSD 启动驱动器 / 4TB 硬盘(用于我的垃圾)/ ATI 3650 显卡 / 双 DVI 显示器。除了 LAN 电缆外,没有插入任何其他设备。

即使是模糊的提示,比如在哪里查看、日志文件要挖掘等,也会受到欢迎——我对命令行和其他东西相当熟悉,只是不熟悉足够的了解 Ubuntu 的内部工作原理,知道从哪里开始!

编辑:终于从日志中裁剪出一些东西了!

日志中大部分内容如下:

Dec 18 23:01:27 Puter kernel: [ 8571.122775] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:27 Puter kernel: [ 8571.122781] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:27 Puter kernel: [ 8571.122794] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:27 Puter kernel: [ 8571.667217] [drm:drm_mode_addfb], [FB:50]
Dec 18 23:01:27 Puter kernel: [ 8571.667224] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:27 Puter kernel: [ 8571.667236] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:28 Puter kernel: [ 8572.488325] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:28 Puter kernel: [ 8572.488332] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:28 Puter kernel: [ 8572.488344] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800

但无论在顺境还是逆境,这都是一样的,我在谷歌上搜索过,似乎没有人真正关心。但是,实际上有大约 200Mb 的内容不停地发送到 kern.log 中。

这是显示上次(重新)启动的日志,不幸的是我看不到任何确凿的证据:

Dec 18 23:01:26 Puter kernel: [ 8570.170086] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:26 Puter kernel: [ 8570.170093] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.170105] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.187846] [drm:drm_mode_addfb], [FB:50]
Dec 18 23:01:26 Puter kernel: [ 8570.187853] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:26 Puter kernel: [ 8570.187865] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:26 Puter kernel: [ 8570.217859] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:26 Puter kernel: [ 8570.217866] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.217878] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.242266] [drm:drm_mode_addfb], [FB:50]
Dec 18 23:01:26 Puter kernel: [ 8570.242273] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:26 Puter kernel: [ 8570.242286] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:26 Puter kernel: [ 8570.466341] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:26 Puter kernel: [ 8570.466348] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.466360] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.506137] [drm:drm_mode_addfb], [FB:50]
Dec 18 23:01:26 Puter kernel: [ 8570.506143] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:26 Puter kernel: [ 8570.506156] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:26 Puter kernel: [ 8570.754652] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:26 Puter kernel: [ 8570.754659] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.754671] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:26 Puter kernel: [ 8570.786391] [drm:drm_mode_addfb], [FB:50]
Dec 18 23:01:26 Puter kernel: [ 8570.786398] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:26 Puter kernel: [ 8570.786410] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:27 Puter kernel: [ 8571.122775] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:27 Puter kernel: [ 8571.122781] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:27 Puter kernel: [ 8571.122794] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:27 Puter kernel: [ 8571.667217] [drm:drm_mode_addfb], [FB:50]
Dec 18 23:01:27 Puter kernel: [ 8571.667224] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:27 Puter kernel: [ 8571.667236] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff880bff782800, cur_bbo = ffff8805fe615400
Dec 18 23:01:28 Puter kernel: [ 8572.488325] [drm:drm_mode_addfb], [FB:51]
Dec 18 23:01:28 Puter kernel: [ 8572.488332] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 18 23:01:28 Puter kernel: [ 8572.488344] [drm:radeon_crtc_page_flip], flip-ioctl() cur_fbo = ffff8805fe615400, cur_bbo = ffff880bff782800
Dec 20 20:59:56 Puter kernel: [    0.000000] Initializing cgroup subsys cpuset
Dec 20 20:59:56 Puter kernel: [    0.000000] Initializing cgroup subsys cpu
Dec 20 20:59:56 Puter kernel: [    0.000000] Initializing cgroup subsys cpuacct
Dec 20 20:59:56 Puter kernel: [    0.000000] Linux version 3.13.0-74-generic (buildd@lcy01-07) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #118-Ubuntu SMP Thu Dec 17 22:52:10 UTC 2015 (Ubuntu 3.13.0-74.118-generic 3.13.11-ckt30)
Dec 20 20:59:56 Puter kernel: [    0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.13.0-74-generic root=/dev/mapper/ubuntu--vg-root ro recovery nomodeset
Dec 20 20:59:56 Puter kernel: [    0.000000] KERNEL supported cpus:
Dec 20 20:59:56 Puter kernel: [    0.000000]   Intel GenuineIntel
Dec 20 20:59:56 Puter kernel: [    0.000000]   AMD AuthenticAMD
Dec 20 20:59:56 Puter kernel: [    0.000000]   Centaur CentaurHauls
Dec 20 20:59:56 Puter kernel: [    0.000000] e820: BIOS-provided physical RAM map:
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009e3ff] usable
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000dbdf9bff] usable
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000dbdf9c00-0x00000000dbe4bbff] ACPI NVS
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000dbe4bc00-0x00000000dbe4dbff] ACPI data
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000dbe4dc00-0x00000000dbffffff] reserved
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000f8000000-0x00000000fcffffff] reserved
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000fe000000-0x00000000fed003ff] reserved
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000feefffff] reserved
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x00000000ffb00000-0x00000000ffffffff] reserved
Dec 20 20:59:56 Puter kernel: [    0.000000] BIOS-e820: [mem 0x0000000100000000-0x0000000c23ffffff] usable
Dec 20 20:59:56 Puter kernel: [    0.000000] NX (Execute Disable) protection: active
Dec 20 20:59:56 Puter kernel: [    0.000000] SMBIOS 2.5 present.
Dec 20 20:59:56 Puter kernel: [    0.000000] DMI: Dell Inc. Precision WorkStation T7500  /0D881F, BIOS A14 07/06/2012
Dec 20 20:59:56 Puter kernel: [    0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
Dec 20 20:59:56 Puter kernel: [    0.000000] e820: remove [mem 0x000a0000-0x000fffff] usable
Dec 20 20:59:56 Puter kernel: [    0.000000] No AGP bridge found
Dec 20 20:59:56 Puter kernel: [    0.000000] e820: last_pfn = 0xc24000 max_arch_pfn = 0x400000000
Dec 20 20:59:56 Puter kernel: [    0.000000] MTRR default type: write-back

任何想法都非常感谢!

进一步编辑

在谷歌上进一步搜索后,我偶然发现了此错误报告建议进行编辑etc/default/grub以删除 DRM 调试标记。我现在已经这样做了,只有时间才能证明它是否有效果。

另一处编辑:

经过长时间的稳定后,这种情况又发生了 - 我不能 100% 确定,但似乎每次 Ubuntu 运行 Ubuntu Core(我认为这是内核的另一种说法)的更新时都会发生这种情况。完全死机了,必须硬重置它,但如果我从 Grub 选择正常启动选项(它只会在系统上次启动失败时弹出)它就会正常工作,就像什么都没发生一样。

我不禁怀疑内核更新是否会在 Grub 配置中设置一些从旧安装中遗留的参数(例如,当我有不同的 gfx 卡时),并且只有当启动失败时,grub 才会因为失败而设置一些略有不同的参数,然后它才能顺利通过。

按照建议的做法egrep -B75 '\[ 0.000000\] Linux version' /var/log/kern.log*却没有任何效果!

我将看看是否有办法在系统上进行全新 Ubuntu 安装而不会丢失已安装的程序/设置,看看是否能解决问题 - 同时欢迎提出任何建议!

答案1

好吧,我不确定这算不算一个很好的答案,而且这肯定不是一个明确的解决方案/根本原因,但我已经受够了,转而使用 Linux Mint,现在它似乎更可靠了。也许安装程序将 grub 更新为更可靠的版本或类似的东西。

至少它对我有用。

相关内容