我正在尝试双启动一台全新的计算机 - ASUS ZenBook Flip UX360UAK-BB358R 和 Intel Core i7 7500U Kaby Lake。
预装的 Windows 10 Pro 运行良好。在对笔记本电脑进行了一些小测试后,我将 Windows 分区缩小了一半,并打算将 Ubuntu 放在一边,这样我就可以进行双重启动。
我尝试了以下系统 - Ubuntu 16.04 LTS、Ubuntu 16.10、Ubuntu 17.04 alpha(从 2017 年 2 月 17 日开始每日构建)和 KDE Neon(基于 Ubuntu 16.04 LTS 构建)。对于最后一个(neon),我还尝试安装内核 4.9.10。
所有系统都存在同样的问题。
- 我将系统 / 安装到 ext4 分区,该分区是使用 Windows 收缩工具留下的可用空间创建的,留下 8GB 用于交换。
- 我重新启动了计算机,在 grub 中选择 Ubuntu(或 neon),出现了启动画面并且它冻结了。
- 约 20 分钟后,我关掉了电脑。
- 我尝试再次打开它并且它工作了。
- [当我登录时,我更新整个系统,更新内核,禁用安装 Windows 驱动器
/etc/fstab
] - 我再次重启,它是否能正常工作。大约有 1/10 次启动能正常工作。Windows 每次都能正常工作。
- 在 1/2 情况下,我能够启动实时 USB 并安装驱动器来对其进行分析。
我还关闭了启动画面,以便此输出(抱歉质量不佳,我不知道如何在不使用手机的情况下捕捉它)。有时它会因内核崩溃而终止,有时它会像这样冻结。无论如何,它总是通过 grub,启动带有旋转器的启动画面。然后,在登录屏幕之前,旋转器要么冻结,要么运行直到屏幕无限变黑并且什么也没发生。
我还附上了一些常见的日志(当前运行内核为 4.9.10 的 Neon),但它与标准 ubuntu 非常相似。
我的想法:
- 驱动 Kaby Lake CPU 时出现问题
- 缺少一些其他驱动程序(但
linux-firmware
已安装) - 除了安装 windows 之外还有一个问题
- 这很奇怪,因为我尝试了多个系统(每个系统多次),但行为仍然相同
但是,所有这些都与有时启动良好的事实相矛盾。我看不出它何时能启动、何时不能启动有什么规律。到目前为止,我认为如果之前启动过 Windows,启动的机会就更大(但并不总是有帮助)。
如果您能给我一些建议,我将非常感激,因为经过昨天 12 小时的治疗后,我非常绝望。谢谢
编辑1:
根据 Teyras 的回答,我尝试调试 ACPI (教程)我的结果(如果我写“每次”,我的意思是 5/5 次尝试):
acpi=off
- 每次启动时,TouchAP 和触摸屏均不起作用acpi=ht
- 偶尔启动;如果启动?一切正常pci=noacpi
- 每次启动时,键盘、TouchAP 和触摸屏均不起作用acpi=noirq
- 无法启动pnpacpi=off
- 无法启动noapic
- 每次启动时,键盘、TouchAP 和触摸屏均不起作用nolapic
- 偶尔启动;如果启动:TouchAP 和触摸屏均不起作用
编辑2:
一切都很奇怪,有时acpi=off
会启动到正常模式,甚至触摸板等都能正常工作。
我偶然发现了这篇 Reddit 帖子其中讨论了类似的问题。我尝试按提示在 grub 中关闭 wifi 和蓝牙fn+F2
,但控制二极管没有打开,启动失败,所以我想它根本不起作用。
答案1
有些人似乎也有类似的问题[1] [2]使用最新的 Intel GPU。似乎有帮助的一件事是设置内核启动参数intel_idle.max_cstate=2
(甚至=1
)。为此:
/etc/default/grub
以 root 身份打开- 添加
intel_idle.max_cstate=2
到GRUB_CMDLINE_LINUX_DEFAULT
字符串中。例如,
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_idle.max_cstate=2"
- 运行
sudo update-grub
(或类似命令,取决于你的发行版)
缺点是,即使在空闲时,GPU 也会消耗更多电量。
options i915 semaphores=1
此外,据报道,如果您在文件中添加以下内容,驱动程序的稳定性会提高/etc/modprobe.d/i915.conf
。为此,请运行:
echo "options i915 semaphores=1" >> /etc/modprobe.d/i915.conf
最后但并非最后的一点是,更新您的 BIOS 并使用最新的 Linux 内核。
答案2
首先,尝试使用acpi=off nomodeset xforcevesa
内核参数启动(将它们添加到GRUB_CMDLINE_LINUX_DEFAULT
变量中/etc/default/grub
并运行sudo update-grub
)。如果您的系统启动一致,请尝试删除该nomodeset xforcevesa
部分。如果它停止启动,则说明您的 GPU 驱动程序存在问题。否则,请按照所述调试过程进行操作这里。