戴尔XPS 13 (9350) 兼容性

戴尔XPS 13(9350)笔记本电脑与Ubuntu操作系统兼容吗?

我对Linux和Ubuntu都是新手,但在对继续使用Windows失去兴趣后,我倾向于成为开源软件的拥护者。 我已经阅读了很多关于Linux无法识别硬盘和Wi-Fi存在问题的故事。

这台笔记本电脑将预装Windows 10,但我打算擦除它并安装Ubuntu作为我的唯一操作系统。我会先尝试Ubuntu演示版,但我也想在这里确认一下。


这可能会有所帮助:http://digitaltopo.net/o/?p=243 看起来你需要更换无线网卡并调整固态硬盘的设置,这将导致Windows系统崩溃... - Limecat
目前稳定的Linux内核(4.2)存在一些问题,因此您需要安装和编译一个预编译的内核。更多信息和讨论请参考:http://sul.ccfink.de/?p=11(完整安装指南)https://wiki.archlinux.org/index.php/Dell_XPS_13_(2016)(关于蓝牙等的附加信息)还有一个链接到戴尔论坛的页面(由于声望不够,我无法发布)。 - user2295555
1如果你想要一台XPS13,你应该等待"开发者版",它将预装Ubuntu,并由戴尔提供支持。 - dobey
太晚了,抓到一个并消灭它 :-D - Tim Abell
请看我的帖子。在使用它时遇到了问题,最终找到了一个临时的解决办法来绕过这个问题。 - Dean Chen
6个回答

目前,使用默认的Ubuntu安装仍然存在一些兼容性问题。
以下是您需要做的步骤,以获得一个正常运行的Ubuntu系统安装...

准备工作

首先,你无法直接从Ubuntu 15.10上连接到互联网,因为当前不支持WiFi卡 - 在安装过程中,你需要以下两种方式之一:

  • 一个USB WiFi或以太网适配器
  • 一个包含以下内容的USB闪存驱动器 内核,由Cephyr编译(该内核包含一个额外的补丁,用于使用这个WiFi卡)。

Ubuntu 一开始无法立即检测到您的磁盘,因为 SATA 控制器被设置为 RAID 模式。在启动时进入 BIOS(按下 F12 键),将 SATA 控制器设置为关闭或 AHCI 模式。
注意:如果您想保留与 Windows 的双引导,请按照此 步骤 进行操作。

安装

创建一个可启动的USB/DVD Ubuntu 15.10安装介质。
在BIOS菜单中选择它进行引导。 按照通常的方式安装Ubuntu。

解决问题

WiFi

安装完成后,打开终端(Ctrl+Alt+T)并安装修补过的内核:

#Only if you have a USB WiFi/Ethernet adapter
wget http://secretundergroundla.ir/?ddownload=15

tar jxf xps13_9350_kernel.tar.bz2
sudo chown root:root brcmfmac4350-pcie.bin BCM-0a5c-6412.hcd
sudo mv -t /lib/firmware/brcm/ BCM-0a5c-6412.hcd brcmfmac4350-pcie.bin
sudo dpkg -i linux-headers-4.3.0-wifitest-custom_4.3.0-wifitest-custom-10.00.Custom_amd64.deb linux-image-4.3.0-wifitest-custom_4.3.0-wifitest-custom-10.00.Custom_amd64.deb

重新启动,WiFi现在应该正常工作。
更新系统:
sudo apt-get update
sudo apt-get upgrade

蓝牙

要使蓝牙正常工作,您需要安装Broadcom固件。

wget http://downloads.dell.com/FOLDER03272920M/1/9350_Network_Driver_XMJK7_WN32_12.0.1.720_A00.EXE
unzip 9350_Network_Driver_XMJK7_WN32_12.0.1.720_A00.EXE
cp Win64/BCM4350C5_003.006.007.0095.1703.hex ./
hex2hcd BCM4350C5_003.006.007.0095.1703.hex
mv BCM4350C5_003.006.007.0095.1703.hcd /lib/firmware/brcm/BCM-0a5c-6412.hcd

重新加载模块,蓝牙应该可以正常工作。
sudo modprobe -r btusb   
sudo modprobe btusb

戴尔XPS 13 9350是一台很好但仍然相当新的机器...所以请给它一些时间, 在默认的Ubuntu安装中,一切都将由Canonical和社区修复;-)


来源: Arch Linux Wiki, XPS 13 (9350) WiFi with Ubuntu 15.10, Install Ubuntu 15.10 on the Dell XPS 13 9343 (2015) : A complete guide.

谢谢。对于LTS版本的Ubuntu 14.04是否适用相同? - 9Cleggy2
1这个答案现在有点过时了,因为4.4版本已经普遍可用。你不需要使用上面的修补过的4.3内核。相反,按照相同的指示安装4.4内核。如果你在Wi-Fi掉线方面遇到问题,可能还需要禁用IPv6。 - jarv
1非常感谢@hg8提供的答案。我有一台装有Ubuntu 15.10的XPS 13 9350,为了使用WiFi驱动和从linux-firmware存储库获取固件,我安装了自定义的4.3内核。但我的蓝牙非常不稳定,幸好有了你从戴尔官网下载的驱动和你提供的命令,现在它完美运作了。(以前,使用蓝牙音频时,其范围大约只有30厘米...) - Dolanor
遇到了NVMe磁盘的问题,但从Raid切换到AHCI对我有帮助(Ubuntu 16.04.1)。谢谢。 - knocte

以下是有效的工作:
首先,我们将Linux内核升级到4.4版本。
下载http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-rc7-wily/linux-image-4.4.0-040400rc7-generic_4.4.0-040400rc7.201512272230_amd64.deb,然后:
$ sudo dpkg -i linux-image-4.4.0-040400rc7-generic_4.4.0-040400rc7.201512272230_amd64.deb

$ sudo apt-get update
$ sudo apt-get upgrade

接下来安装一些更新的固件工具:
$ sudo apt-get install firmware-b43-installer

然后下载并安装以下固件:http://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.154_all.deb

$ sudo dpkg -i linux-firmware_1.154_all.deb

重新启动你的设备,然后你应该就能连上wifi了!

内核4.4已发布,并应该修复了大部分问题。(我已经安装了它,目前还没有遇到任何问题。

如果你的XPS 13(和我的一样)配备了NVMe SSD,你需要编译一个自定义的内核,并启用nvme模块。否则,内核将无法找到SSD。

要这样做,请执行以下操作: 首先获取必要的软件包

$ sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils
$ sudo apt-get install kernel-package
$ sudo apt-get install libssl-dev

获取内核4.4。
$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.4.tar.xz

打开它
$ tar xvf linux-4.4.tar.xz
$ cd linux-4.4/

复制您当前的配置文件

$ cp /boot/config-$(uname -r) .config

现在使用您喜欢的编辑器来编辑.config文件,以启用NVMe模块。
nano .config

搜索 CONFIG_BLK_DEV_NVME 并将其设置为 y(从 m)
CONFIG_BLK_DEV_NVME=y

现在是时候编译您的自定义内核了。(最后一条命令可能需要1.5小时左右)
make-kpkg clean
fakeroot make-kpkg --initrd --revision=1.0.NAS kernel_image kernel_headers

并安装!(忽略来自第一个的警告)

$ cd ..
$ sudo dpkg -i linux-headers-4.4.0_1.0.NAS_amd64.deb
$ sudo dpkg -i linux-image-4.4.0_1.0.NAS_amd64.deb

现在只需重新启动,它应该会启动到内核4.4。
另外,在几次重新启动后,我遇到了屏幕一直黑屏的问题。似乎是Skylake和图形驱动程序之间存在问题。
对我来说,通过对grub文件进行更改来解决了这个问题。
sudo nano /etc/default/grub

然后将GRUB_CMDLINE_LINUX_DEFAULT这一行更改为
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.preliminary_hw_support=1"

保存并应用更改使用:

sudo update-grub

自定义内核的来源:http://www.cyberciti.biz/faq/debian-ubuntu-building-installing-a-custom-linux-kernel/ 编辑:事实证明,在几次重启后,我的黑屏问题又出现了...所以这还是一个正在进行中的工作。

无需重新编译,只需修复initramfs-tools。例如,可以参考这里的方法:https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=807000,还可以在launchpad上提交反馈:https://bugs.launchpad.net/ubuntu/+source/initramfs-tools/+bug/1524879。 - tjaalton
如果你像我一样使用了[加密]的LVM,那么在没有安装NVME模块的情况下,你会遇到这个错误信息:正在读取所有物理卷,可能需要一些时间...未找到逻辑卷组。请参考此链接:http://unix.stackexchange.com/questions/145334/no-logical-volume-groups-found-lvm-stuck-at-boot - Tim Abell

截至本周,新发布的4.4主线内核与xps 9350兼容,只需进行一些小的简单额外配置即可。
  1. 创建一个新目录来保存我们将要下载的所有文件

    mkdir v4.4-wily
    cd v4.4-wily
    
  2. 从Ubuntu Mainline下载最新的内核(我只使用了通用版本)

    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-wily/linux-headers-4.4.0-040400-generic_4.4.0-040400.201601101930_amd64.deb
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-wily/linux-headers-4.4.0-040400_4.4.0-040400.201601101930_all.deb
    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-wily/linux-image-4.4.0-040400-generic_4.4.0-040400.201601101930_amd64.deb
    
  3. 安装这些文件

    sudo dpkg -i *.deb
    
  4. 获取最新的Intel i915驱动程序固件

    wget https://01.org/sites/default/files/downloads/intelr-graphics-linux/sklgucver43.tar.bz2
    tar xf sklgucver43.tar.bz2
    cd skl_guc_ver4_3/
    
  5. 编辑以确保属性正确(除非你知道你在做什么,否则使用默认值)

    vim install.sh
    sudo sh install.sh
    
  6. 如果你使用的是NVME固态硬盘,最新的启动镜像默认不加载nvme模块,因此可能会出现无法解决的错误

    ALERT! /dev/disk/by-uuid/##### does not exist.
    

    导致启动进入忙碌状态。 解决方案是为启动镜像加载nvme内核模块:

    sudo vim /etc/initramfs-tools/modules
    

    在最后一行添加

    i915
    nvme
    

    (我添加了i915模块)

  7. 重新构建启动镜像

    sudo update-initramfs -u
    sudo update-grub
    
  8. 按照@yancysmith的步骤进行

    sudo apt-get install firmware-b43-installer

    安装最新的固件deb包

    sudo dpkg -i linux-firmware_####_all.deb

  9. 按照Arch Linux Wiki上的步骤安装蓝牙固件

  10. 重启,并欢庆吧!

注意:您可以按照许多先前的文章来使机器实现Windows 10和Ubuntu的双重启动,而无需重新安装Windows。

我按照Ray的回答(于1月19日18:37回答)进行操作,但重新启动后丢失了WiFi连接。所以我再次按照他的方法使用了来自以下链接的内核:<pre> http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.5-rc2-wily/ </pre> 现在一切都正常了。谢谢Ray。 - user502231
我按照你的出色指南操作,一切似乎都正常。但是当我重新启动Ubuntu时,它只会进入一个黑屏界面。有什么建议吗? - Mellson
我尝试了Linux内核4.5的一个候选版本,然后它成功运行了。感谢你的指南! - Mellson

我已经完成上面提到的大部分工作,除了调整 grub 外,这让我的 Wi-Fi 工作得更好一些,但并不完全。在此期间,我能够通过蓝牙将手机用作热点来获取互联网。

然后我偶然发现了这篇文章http://blog.friimaind.it/03/01/2016/installare-ubuntu-15-10-gnome-su-dell-xps-13-9350/(是意大利文),它提到了这个文件:/etc/modprobe.d/blacklist.conf。请使用 sudo gedit /etc/modprobe.d/blacklist.conf 或者 vi(如果您选择的话)检查哪些模块被列为黑名单。

无论您做什么,请检查此文件以查看哪些内核模块被列为黑名单。请务必执行此操作!

原来 bcmwl-kernel-source 驱动程序被列为黑名单,并改为支持 firmware-b43-installer 和 b43fwcutter。进入 synaptic,卸载 bcmwl-kernel-source 驱动程序,并安装 'firmware-b43-installer' 和 'b43fwcutter',然后重新启动,这对我起效。

注意,这是在我将固件更新到戴尔最新版本(2016年2月2日)之后的情况。你可以在这里找到下载链接:wget http://downloads.dell.com/FOLDER03502638M/1/XPS_9350_1.2.3.exe 然后你需要复制:sudo cp XPS_9350_1.2.3.exe /boot/efi。然后你启动时进入BIOS(对我来说是按F2键),滚动到BIOS闪存更新并进行必要的操作。
然后我升级到了4.4版本以及其他内容,除了grub相关的部分。除非别无选择,否则我不会去碰grub。由于我使用手机作为WiFi,我还将Gnome从3.16升级到了3.18,这解决了拒绝关机的问题,尽管现在又出现了这个问题。
祝好运。

很抱歉,我无法发表评论。对于使用Dell xps 13 9350的Ubuntu 14.04版本,我安装了内核4.4-rc6,使得WiFi、蓝牙、挂起和音频功能正常工作。
我根据在互联网上找到的所有指南制作了一份说明书,链接在这里:https://github.com/awesomebytes/ubuntu14_dell_xps13_9350

1你好awesomebytes,欢迎来到Ask Ubuntu!虽然从理论上讲这个回答可以解决问题,但最好在这里包含回答的关键部分,并提供链接作为参考。**;-)** - hg8