在Dell XPS 13 9360(Q&A)上使用最新出厂的Ubuntu 16.04修复的问题


10

Dell工厂在16.04上安装了Ubuntu,它有一些缺陷,需要加以纠正才能完全有用。以下是我必须修复的问题。请随时添加您的。

[NB]根据管理员的建议,我在Ubuntu论坛上建立了一个线程https://ubuntuforums.org/showthread.php?t=2357424


2
AskUbuntu不是论坛,也不适合像这样的自以为是的讨论。这将更适合Ubuntu论坛。

感谢您的建议,该问题可能会重写为“如何使Dell XPS 13完全按设计的功能运行?” 答案的某些部分可能是有根据的,但其他部分则完全是事实。如果您查看下面的实际答案,将会看到。
迭戈

它在出厂时就“完全按设计功能运行”。是否“实际”,有99.999%的人不需要这些“修复程序”就可以拥有“功能正常”的笔记本电脑。其中一些是错误的解决方法。而且AskUbuntu(SE)并非设计用于具有多个答案的广泛问题,也不是为了引起讨论。

1
好吧,戴尔为其预装的XPS笔记本电脑提供了官方支持。我已经有3年多了,没有您提到的问题。这些解决方法/黑客中的大多数也不是Ubuntu特有的,并且在Arch Wiki和其他地方也有记录。否。迁移到论坛是一项手动任务。

1
请至少添加确切的型号(应为XPS 13 9360),以便以后在出现新的XPS型号并引起混乱时,此问题对人们有用。
sola

Answers:


8

这是我的列表,基于Dell XPS 13(9360)上Arch Linux Wiki的建议

更新linux-firmware以获取i915 guc和huc blob

手动安装最新的Linux固件(至少在20170217之后发布)。

  1. 转到zestyUbuntu linux-firmware软件包站点
  2. 单击“ linux-firmware 1. amd64中的xyz(发布)”,其中xyz是您在页面上看到的最新版本。(假设您需要64位软件包)
  3. 在“可下载文件”下,单击以下载.deb文件。
  4. 双击下载的文件进行安装。

更新到最新内核以节省NVMe功耗

手动安装内核4.11rc1或更高版本以获取NVMe节能补丁程序(下载所选择版本的linux-image-generic,linux-headers和linux-headers-generic)。仅此一项就可以为您节省30%的空闲功率。

  1. 转到Ubuntu主线内核站点
  2. 滚动到页面底部,然后单击底部链接。
  3. 单击以下载amd64 .deb文件:
    • linux-headers-*。deb
    • linux-headers-*-generic.deb
    • linux-image-*-generic.deb
  4. 双击下载的文件进行安装。
  5. 运行sudo update-grub

提高图形性能和节能

首先需要以上两个更新!

之后编辑/etc/default/grub并包括以下选项,GRUB_CMDLINE_LINUX_DEFAULT="quiet splash以提高视频驱动程序的功耗和性能:

i915.modeset=1 i915.enable_rc6=1 i915.enable_fbc=1 i915.enable_guc_loading=1 i915.enable_guc_submission=1 i915.enable_huc=1 i915.enable_psr=1 i915.disable_power_well=0 i915.semaphores=1

运行sudo update-grub

请注意,您应该能够将它们添加到i915模块的.conf文件中,但是在我创建文件时Ubuntu似乎并没有查看该文件,这就是为什么我推荐此方法的原因。另外,目前尚不支持所有选项(例如enable_huc和sempahores,但将来可能会在更高版本的内核或Linux固件发行版中使用)。

我已经用它测试了《无主之地2》,并且看到了大约5 FPS的改进(原来是26 FPS)。我还发现用电量略有减少。

确保您获得最佳的无线速度

/etc/default/crda在REGDOMAIN行的末尾编辑并设置您的国家代码。

例如。 REGDOMAIN=US

将手掌检测固定在触摸板上

安装xserver-xorg-input-libinput

创建/usr/share/X11/xorg.conf.d/90-libinput.conf包含:

Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "Tapping" "True"
        Option "PalmDetection" "True"
        Option "TappingDragLock" "True"
EndSection

修复了一些屏幕撕裂问题

创建/usr/share/X11/xorg.conf.d/20-intel.conf包含:

Section "Device"
        Identifier  "Intel Graphics"
        Driver      "intel"
        Option      "AccelMethod" "sna"
        Option      "TearFree"    "true"
EndSection

我应该将此(我的)条目转换为Wiki格式,以便我们合并建议吗?
迭戈

当然可以。
安德鲁·克鲁索梅尔

安德鲁,请您说明一下手动安装最新的Linux固件(至少在20170217之后发布)的含义。我的意思是,请您写下确切的步骤。您需要从源代码编译吗?
迭戈

1
我已经用一些澄清和步骤更新了我的答案。
安德鲁·克鲁塞梅尔

某些错误消息[drm]完成加载DMC固件i915 / kbl_dmc_ver1_01.bin(v1.1)[1.374516] i915 0000:00:02.0:vgaarb:更改了VGA解码:olddecodes = io + mem,decodes = io + mem:owns = io + mem [1.380968] i915 0000:00:02.0:直接为i915 / kbl_huc_ver02_00_1810.bin加载固件失败,错误为-2 [1.380969] [drm]无法从i915 / kbl_huc_ver02_00_1810.bin中获取有效的uC固件(错误-2) [1.382312] [drm:intel_huc_load [i915]] 错误使用ret -5无法完成HuC uCode加载[1.397931] [drm]在次要0上初始化i915 1.6.0 20170123的0000:00:02.0
迭戈

8

由于错误的桑巴程序,冷却风扇旋转

罪魁祸首是gvfsd-smb-browse进程。

将以下语句添加到/etc/samba/smb.conf的[global]部分

name resolve order = wins lmhosts bcast

https://itsfoss.com/fix-gvfsd-smb-high-cpu-ubuntu/

删除冲突的重复触摸板驱动程序

为了使一切正常运行,我需要禁用第二个触摸板设备“ SynPS / 2 Synaptics TouchPad”。我认为它几乎被忽略了,并且syndaemon附加了它,而不是实际上在管理触摸板的“ DLL0704:01 06CB:76AE触摸板”。

我在Xorg配置文件中禁用了它。我打开了:

/usr/share/X11/xorg.conf.d/51-synaptics-quirks.conf

并添加以下条目:

码:

# Disable generic Synaptics device, as we're using
# "DLL0704:01 06CB:76AE Touchpad"
# Having multiple touchpad devices running confuses syndaemon
Section "InputClass"
        Identifier "SynPS/2 Synaptics TouchPad"
        MatchProduct "SynPS/2 Synaptics TouchPad"
        MatchIsTouchpad "on"
        MatchOS "Linux"
        MatchDevicePath "/dev/input/event*"
        Option "Ignore" "on"
EndSection

https://ubuntuforums.org/showthread.php?t=2316240

激活触摸板手掌检测

在第13行之后添加到/usr/share/X11/xorg.conf.d/50-synaptics.conf中,Option "PalmDetect" "1" 因此本节的总体外观如下:

Section "InputClass"
        Identifier "touchpad catchall"
        Driver "synaptics"
        MatchIsTouchpad "on"
    Option "PalmDetect" "1"
# This option is recommend on all Linux systems using evdev, but cannot be
# enabled by default. See the following link for details:
# http://who-t.blogspot.com/2010/11/how-to-ignore-configuration-errors.html
      MatchDevicePath "/dev/input/event*"
EndSection

https://erik.torgesta.com/2016/11/things-to-improve-ubuntu-16-04-on-dell-xps-13-9630/

sudo add-apt-repository ppa:atareao/atareao
sudo apt-get update
sudo apt-get install touchpad-indicator
/opt/extras.ubuntu.com/touchpad-indicator/bin/touchpad-indicator&

触摸板图标应出现在通知区域中。转到首选项,在键入时设置“常规选项”->“自动启动”和“操作”->“禁用触摸板”。您可能还需要调整延迟(以毫秒为单位)。

更改触摸板上两指滚动的滚动方向:

编辑:下面的文件似乎对滚动没有任何影响,但是破坏了鼠标的功能。我再次删除了它,但不再有滚动问题。

https://askubuntu.com/a/519859/452753的替代方法为我工作:

在您在首选文本编辑器中打开的文件/usr/share/X11/xorg.conf.d/20-natural-scrolling.conf中,粘贴以下内容:

Section "InputClass"
        Identifier "natural scrolling for mouse wheel"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "mouse"
        Option "Device" "/dev/input/mice"
        Option "Protocol" "Auto"
        Option "ZAxisMapping" "5 4"
EndSection

保存文件并重新启动。如上所述,单个用户可以通过使用Ubuntu-Tweak来“打开”自然滚动来按用户将其关闭(这与按用户范围的系统范围设置相反,但不会影响想要使用自然滚动的其他用户的实际系统设置)。

默认情况下,使F1-F12行代替媒体键发挥作用

如何反转戴尔笔记本电脑上的Fn键? 在POST(开机自检)过程中按F2进入系统设置(BIOS)实用程序。

在“功能键行为”中,选择“多媒体键优先”或“功能键优先”。

功能键优先-这是默认选项。按任意功能键即可执行相关功能。要进行多媒体操作,请按Fn +所需的多媒体键。

缺少专用的上/下翻页,主页/结束按钮。

XPS 13键盘将这些按钮与箭头按钮组合在一起,因此一只手需要两只手才能访问它们(需要按Fn键)。在这里,我将“打印”按钮重新用作“主页”按钮,并重新插入为PgDn:

xmodmap -e "keycode 107 = Home" # using "Print" button
xmodmap -e "keycode 118 = Next" # using "Insert" button

在“系统设置”->“键盘”->“快捷方式”->“屏幕快照”中删除“屏幕截图”的“打印”快捷方式

右Ctrl键(带有列表符号)以及up_arrow / down_arrow功能也可以用作起始/结束。

加密的主目录阻止基于SSH密钥的身份验证和VPN客户端

严格来说,这不是与XPS或16.04相关的问题,但是,了解到您需要将authorized_keys文件移动到加密的主目录之外,这样才能使用基于ssh密钥的身份验证,这对您很有帮助。 https://help.ubuntu.com/community/SSH/OpenSSH/Keys#故障排除

如果您使用的是加密主目录,这是VPN提供商之一提供的有关其软件修补程序的帮助条目。 https://helpdesk.privateinternetaccess.com/hc/en-us/articles/227831828-Installing-the-PIA-app-on-Linux-with-encrypted-home-directories

将默认电源按钮行为从交互式更改为挂起

gsettings set org.gnome.settings-daemon.plugins.power button-power suspend

使用外接显示器时,显示器在挂起后保持空白

此问题似乎与较旧内核中对Thunderbolt协议的支持不佳有关。在更新内核后,插入/拔下监视器后崩溃/挂起的问题似乎消失了-参见下文。

更新到最新的HWE内核

XPS 13附带的4.4.0内核似乎在WiFi中断,从睡眠状态恢复以及外部监控器随内核更新而消失等方面存在一些问题。

有许多更新内核的选项,但是据我所知,最好的方法是安装签名的(因为原始映像已签名,UEFI可能会抱怨没有它)HWE(硬件启用)内核以及附加映像司机。HWE尤其重要,因为4.10和4.13内核更新对Thunderbolt 3支持进行了重大改进-如果使用扩展坞,则非常重要。以下命令可以做到这一点:

sudo apt install linux-signed-generic-hwe-16.04 linux-image-extra-virtual-hwe-16.04

如果您不安装linux-image-extra-virtual-hweWiFi,则触摸板可能无法工作。

此内核更新还可以解决以上问题,恢复/连接到外部显示器后屏幕无法正常工作。


1
挂起后,我的监视器始终保持空白。有麻烦弄清楚如何解决此问题...
cwash

@cwash我也有同样的问题,但是没有解决。您是否考虑过联系Dell官方支持?
迭戈

1
在我的系统(9360)上,我发现了一种更轻松的方法来互换F键的功能。在<Esc>键上,有一个小的“功能锁”符号(锁内有“ Fn”),因此我只需按<Fn> <Esc>即可交换功能。此设置更改已通过多次挂起/恢复/重新启动/关闭操作而持续存在。XPS 13设置和规格指南中记录了此功能。请参阅“键盘快捷键”部分,其中显示“切换Fn键锁定”。
Cerran

2
对于触摸板驱动程序问题,戴尔在此处提供了官方解决方案。基本上,Ubuntu 16.04会尝试在触摸板上同时使用psmousei2c驱动程序,因此您可以简单地禁用psmouse(模拟PS / 2接口)并使用i2c。我已经在我的9360上进行了尝试,并确认它可以工作。在键入时,由于手掌被击中,鼠标光标也不再将焦点更改到其他窗口。
Cerran

1
不需要Ubuntu Tweak来更改两指滚动方向的另一种方法是转到“设置”>“鼠标和触摸板”>“触摸板”。有一个标记为“自然滚动”的复选框。切换此方向即可更改方向。
Cerran
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.