AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1204648
Accepted
Demurgos
Demurgos
Asked: 2020-01-22 04:53:13 +0800 CST2020-01-22 04:53:13 +0800 CST 2020-01-22 04:53:13 +0800 CST

在戴尔 Inspiron 灵越 14 7490 上安装 Ubuntu

  • 772

如何在Dell Inspiron 14 7490笔记本电脑上安装 Kubuntu?

我的一个朋友在圣诞节收到了这台笔记本电脑,想在 Linux 上使用它。更具体地说,我们想安装 Kubuntu 19.10,但在这一点上,我们越来越绝望,愿意接受任何发行版。主要问题是笔记本电脑只有一个 SSD,但 Linux 无法检测到它,因此我们无法在安装程序中选择它。

到目前为止我们所做的

编辑:我们的最后一次尝试日期为 2020-02-02

编辑(2020-04-09):BIOS v1.4.1 的问题仍然存在。

  1. 从戴尔网站下载并安装所有最新的驱动程序。特别是,我们更新了 BIOS 驱动程序:初始版本是,我们安装了版本。(该版本甚至无法启动到 Kubuntu 的 live USB 中)1.1.11.3.01.1.1
  2. kubuntu-19.10-desktop-amd64.iso从官网下载。我们检查了校验和是否正常。
  3. 使用 Rufus 创建一个可启动的 USB 驱动器。我们将分区方案设置为MBR,目标系统设置为BIOS or UEFI,文件系统设置为FAT32。
  4. 重新启动到固件 (UEFI)
  5. 将 POST 时间设置为 5 秒
  6. 将“UEFI 引导路径安全”设置为Never
  7. 禁用安全启动(或者我们得到一个Initramfs unpacking failed错误)。
  8. 应用更改
  9. 进入引导菜单(在引导过程中使用 F12)
  10. 选择 USB 驱动器。
  11. USB 驱动器启动到 grub。选择“启动 Kubuntu(安全图形)”,默认选项(“启动 Kubuntu”)导致黑屏。
  12. 选择“试用 Ubuntu”,它会启动一个实时 USB 桌面会话。我们可以连接WiFi,使用火狐,打开终端。此时我们可以运行一些命令来更好地了解系统。以下是一些结果:

    ls -alR /dev
    

    输出

    lshw
    

    输出

    lsblk
    

    输出

    cat /var/log/syslog
    

    输出

  13. 运行“安装 Kubuntu”程序。在我们应该选择硬盘驱动器的步骤时它会崩溃。

我们被困在哪里

主要问题是未检测到笔记本电脑的 SSD。它可以防止安装程序格式化硬盘驱动器和安装 Linux。有多个关于人们遇到此问题的报告(请参阅下面的链接)。我将总结我对这个问题的情况的理解,并希望如果我们找到一个可行的解决方案。

首字母缩略词

首先,一些缩写词:

  • SATA是连接硬盘的技术。它可以在多种模式下运行,例如 AHCI 或 Intel RST。
  • AHCI是 Intel 标准化的 SATA 模式。它充当硬件和操作系统之间的接口:所有操作系统都可以使用它与硬盘驱动器进行通信。
  • RAID是一种将多个物理硬盘驱动器用作单个逻辑(“虚拟”)硬盘驱动器的技术。通过在多个物理驱动器上复制数据,它更能抵抗硬盘驱动器故障。
  • 英特尔快速存储技术 (Intel RST)是一种 Windows 应用程序,“可为配备 SATA 磁盘的系统提供改进的性能和可靠性”。它有一个称为“RAID”的功能,它是一种使用单个驱动器的软件解决方案。在英特尔之外,它通常被称为“假 RAID”,因为它需要特殊的软件支持,而不是使用多个物理驱动器并对操作系统透明。Linux 不支持此功能。

戴尔灵越 14 7490 BIOS

BIOS 菜单有一个“系统配置”部分,允许配置硬盘驱动器如何暴露给操作系统:“SATA 操作”。以下是这台笔记本电脑(Bios 版本 1.2.1)上的部分内容:

Inspiron SATA 操作

有两种模式:

  • “已禁用”:SSD 已完全禁用,您根本无法访问它。
  • “RAID”:这不会启用真正的 RAID(显然,这台笔记本电脑中只有一个 SSD),但会启用 Intel RST(又名假 RAID)。也称为“AHCI+RAID”,因为它使用“重新映射的 AHCI”。

以前的戴尔笔记本电脑有不同的 BIOS。在我的戴尔 XPS 15 9560 上,我有以下菜单: XPS SATA 操作

它有一个额外的“AHCI”选项,在 Dell Inspiron 14 7490 (BIOS v1.2.1) 上不可用。

Linux 目前不支持 Intel RST,需要 SATA 模式为 AHCI。否则无法与 SSD 通信。由于 Inspiron 笔记本电脑上不提供直接的“AHCI”,因此它会阻止 Linux 的安装。

潜在的解决方案

BIOS 更新以再次提供 AHCI 选项

很长一段时间以来,我一直在使用带有 Linux 的戴尔笔记本电脑,因为它们享有“可以正常工作”的声誉。当我帮助我的朋友选择一台笔记本电脑时,这个名声起了作用:我预计安装会顺利进行。他们发布带有新 BIOS 甚至无法安装 Linux 的笔记本电脑的整个情况严重损害了他们的形象。戴尔论坛上有多个帖子抱怨这个问题(这里是评论最多的)。

一个可能的解决方案是戴尔只需发布解锁“AHCI”SATA 模式的 BIOS 更新。它将允许选择此模式并安装 Linux,而不会出现其他问题。这将是理想的解决方案,但我不知道戴尔对这些问题的反应如何。我什至不知道他们是否会发布这种补丁。打开有关此问题的支持请求可能会提高 BIOS 更新的优先级。

将 Intel RST 支持添加到 Linux 内核

另一种解决方案是使 Linux 能够在 Intel RST 模式下工作。我在 Linux Kernel Mailing List 上可以找到的最新讨论可以追溯到 2019 年 6 月。该讨论中提议的补丁被拒绝了。

据我了解,在 Linux 内核中支持 Intel RST 很困难,原因有两个:一个复杂的协议和缺乏文档。启用“Intel RST”时,BIOS 实际上会通过“重新映射的 AHCI”公开 SSD,该 AHCI 看起来像 AHCI,但行为不像 AHCI。内核可以检测到 SSD 处于重新映射模式,但不能使用它。它不能使用它,因为该技术目前没有得到充分的记录,从而阻止他们正确实施它。在上面发布的系统日志中,我们可以看到警告驱动器已重新映射的步骤:

Feb  2 18:21:34 kubuntu kernel: [    1.082521] ahci 0000:00:17.0: version 3.0
Feb  2 18:21:34 kubuntu kernel: [    1.083006] ahci 0000:00:17.0: Found 1 remapped NVMe devices.
Feb  2 18:21:34 kubuntu kernel: [    1.083007] ahci 0000:00:17.0: Switch your BIOS from RAID to AHCI mode to use them.
Feb  2 18:21:34 kubuntu kernel: [    1.083096] ahci 0000:00:17.0: AHCI 0001.0301 32 slots 16 ports 3 Gbps 0x0 impl RAID mode
Feb  2 18:21:34 kubuntu kernel: [    1.083098] ahci 0000:00:17.0: flags: 64bit ncq sntf pm clo only pio slum part deso sadm sds apst 

我不知道内核何时甚至是否会添加对 AHCI 重新映射 SSD 的支持。如果发布更多笔记本电脑,而“Intel RST”是唯一选择,他们可能别无选择。

我还没有尝试过内核补丁。如上所述,我正在帮助一个想要使用 Ubuntu 的朋友:因为它不是我的笔记本电脑,所以我宁愿避免尝试自定义补丁。

使用 dmraid

对此问题的评论之一提到英特尔 RST 通过dmraid. 该线程要求启动到 live USB 并在启动安装程序之前运行以下命令:“dmraid --erase_metadata --raid_devices /dev/XdY其中 X 和 Y 表示您正在使用的 SSD”。

这个解决方案的问题是Linux根本看不到SSD。lsblk只显示loop0和/dev/sda(对应于pendrive)。在查看时/dev,没有/dev/sdb或/dev/nvmeX驱动器。

结论

最终我的问题是“如何在这台笔记本电脑上安装 Kubuntu(或 Ubuntu)? ”。

我的结论是,目前无法在这台笔记本电脑上安装 Linux。我们必须等待戴尔或 Linux 的更新。如果有人找到解决方案,请回答这个问题。我也对戴尔的笔记本电脑感到失望,并且将来会更加谨慎地推荐它们。

参考

  • 戴尔支持线程
    • Inspiron 7490 BIOS:如何关闭英特尔“RAID on”,并将磁盘模式切换为 AHCI?
    • SSD NVME non reconnu lors de l'installation (DELL 7490) Ubuntu 19.4 DUAL BOOT
    • 无法在 BIOS 中将 SATA 操作设置为 AHCI (Inspiron 7490)
    • 无法在 Inspiron 7490 上安装 Ubuntu/Linux
  • 其他线程
    • AskUbuntu - 在 ubuntu 19.04 安装期间未检测到硬盘驱动器
    • AskUbuntu - 我没有看到 Ubuntu 中的 ssd 安装在带有 RST 的戴尔 Latitude 7400 上
    • UbuntuFR - 安装戴尔 Inspiron 灵越 7490
    • UbuntuFR - SSD NVME non reconnu lors de l'installation (DELL 7490) Ubuntu 19.4
    • ArchLinux - 无法在 Dell Inspiron 7490 中使用 NVMe SSD 和 Intel RST
  • LKML 讨论
  • 内核补丁来检测 AHCI 重新映射的设备(但不使用它们)
system-installation dell intel rst
  • 3 3 个回答
  • 6345 Views

3 个回答

  • Voted
  1. Best Answer
    Florent Bayle
    2020-04-30T02:18:13+08:002020-04-30T02:18:13+08:00

    我刚刚在这台笔记本电脑上安装了 Lubuntu 20.04。这是可能的,但并不容易。

    Linux 内核中的 Intel RST 支持

    正如您在问题中所说,提出了一些补丁程序以使 Linux 能够在 Intel RST 模式下工作。补丁在官方 Linux 分支中被拒绝,但提出补丁的 Daniel Drake 正在开发基于 Linux 的操作系统Endless OS,并且他们在 GitHub 上提供的 Linux 内核版本中维护了该补丁的更新版本。这个内核基于 Ubuntu 的内核,他们每次更新时都会在其上重新设置一组补丁,包括支持英特尔重新映射的 NVMe 设备的补丁。

    知道了这一点,您现在有两个选择:

    安装无尽的操作系统

    在这一点上,我们越来越绝望,愿意接受任何分配

    如果您不介意,您可以安装 Endless OS,它应该可以开箱即用。转到https://endlessos.com/download/,下载基本多语言映像,然后按照说明从 Linux 创建 U 盘。或按照说明从 Windows 创建 U 盘。

    在 Ubuntu 上使用 Endless OS 的内核

    这个比较难,需要很多技术知识。

    这个想法是从GitHub 上的 Endlessm 存储库中提取和构建内核,并将这些包用作 Ubuntu 上的自定义内核。

    为此,您必须拉取 Git 存储库:

    git pull https://github.com/endlessm/linux/
    

    安装必要的构建依赖项:

    sudo apt install build-essential fakeroot
    sudo apt build-dep linux
    

    构建软件包:

    cd linux/
    fakeroot debian/rules clean
    fakeroot debian/rules binary
    

    很长一段时间后,您将在父目录中创建大量 .deb 文件。

    从那里,您可以使用它们创建自定义 Ubuntu 安装 CD(我没有这样做,但应该可以)。

    或者,您可以使用 Endless OS 实时版本:

    • 启动一个外壳(Alt-F2 并输入 xterm 以获取终端),
    • 使用 cfdisk 和 mkfs.ext4 对 NVME 驱动器进行分区,
    • 在新分区上解压缩 Ubuntu 的最小实例(我使用了 Lubuntu 的 squashfs),
    • mount bind /dev /run /var/run 在里面,
    • 在其中挂载 /proc /sys,
    • chroot 进入它并进行最低配置以获得工作系统(/etc/hosts、/etc/hostname、/etc/resolv.conf、/etc/fstab,安装和配置 grub,配置 tzdata 和键盘配置,添加新用户)
    • 在 chroot 中安装新的内核包。

    您可能必须在内核中关闭安全启动才能在内核上启动。

    我不会详细说明整个过程,因为我不完全记得所有步骤,但我设法获得了一个带有自定义内核的工作系统。nouveau 在挂起/重新启动时出现了一些问题,但是由于我已经安装了 nvidia 驱动程序,所以一切正常。

    Nvme 驱动器被识别为 /dev/nvme0n1。从 dmesg :

    [    0.630319] intel-nvme-remap 0000:00:17.0: Found 1 remapped NVMe devices
    [    0.630357] intel-nvme-remap 0000:00:17.0: PCI host bridge to bus 10000:00
    

    lsblk 输出:

    NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    nvme0n1     259:0    0 953,9G  0 disk 
    ├─nvme0n1p1 259:1    0   680M  0 part /boot/efi
    ├─nvme0n1p2 259:2    0   128M  0 part 
    ├─nvme0n1p3 259:3    0 105,7G  0 part 
    ├─nvme0n1p4 259:4    0   990M  0 part 
    ├─nvme0n1p5 259:5    0    15G  0 part 
    ├─nvme0n1p6 259:6    0   1,3G  0 part 
    ├─nvme0n1p7 259:7    0    30G  0 part /
    └─nvme0n1p8 259:8    0 800,1G  0 part /home
    

    如果您使用自定义内核,您可能还需要固定您正在使用的版本,以避免在升级时将其替换为默认版本。

    在 /etc/apt/preferences.d/linux-image-generic (我还没有测试过):

    Package: linux-image-generic
    Pin: release a=now
    Pin-Priority: 501
    

    警告

    仅当您知道自己在做什么时,才应使用此处描述的方法。Endless OS内核中的内核补丁被官方内核拒绝,我不能保证它的质量。我不能保证它会长期维护并移植到新版本的内核。

    如果您使用自定义内核安装 Ubuntu,您将必须自己管理所有内核更新。我希望这个修复只是暂时的,直到戴尔发布支持 AHCI 模式的 bios 版本,但它可能不会发生。

    内核还包括您可能想要查看的其他补丁。您可能还必须从 Endlessm 存储库构建和安装其他软件包,例如 linux-firmware,因为其中一些补丁是为了添加对当前不受官方 Linux 内核支持的新硬件的支持。

    • 8
  2. Heaveysam
    2020-01-30T05:39:26+08:002020-01-30T05:39:26+08:00

    我订购了相同的笔记本电脑。它还没有到来。不幸的是,情况就是这样。

    只是想我会让你知道,自从你原来的帖子以来,戴尔已经为这台笔记本电脑发布了一个新的驱动程序。

    https://www.dell.com/support/home/uk/en/ukbsdt1/drivers/driversdetails?driverid=2mt79

    我不知道它是否会解决问题并添加 AHCI 支持。它没有被列为一项功能,但可能值得下载以找出答案。

    • 0
  3. Martin
    2020-03-03T11:45:37+08:002020-03-03T11:45:37+08:00

    我认为这看起来很有希望:https ://wiki.debian.org/DebianInstaller/SataRaid 。我对这台笔记本电脑很感兴趣,所以我想知道它是否有效。

    具体来说,它建议您只需将 dmraid=true 添加到内核启动选项,然后它应该能够看到设备

    也可能值得尝试使用 debian 安装程序来查看它是否有效,那么您至少知道它是否受 linux 支持并且应该可以在 ubuntu 中使用

    仅当您希望在同一串行 ATA RAID 上具有 Debian 和其他操作系统的双引导系统时,才使用以下方法:

    1. 在 BIOS 中设置您的假 RAID(请参阅用户手册)。

    2. 从Debian 安装媒体引导。

    3. 将光标移动到Install启动菜单项(不要点击Enter):

      1. 按Tab编辑内核引导行。

      2. 添加dmraid=true到行尾。

      3. 按Enter。

        注意:在 UEFI 安装程序中,您必须按e键Tab并使用箭头键移动到第 4 行的末尾(例如 x86_64 架构):

        • linux /install.amd/vmlinuz video=vesa:ywrap,mtrr vga=788 \ -- quiet

        添加dmraid=true到此行的末尾并按F10或Ctrl+X运行安装程序。

        • linux /install.amd/vmlinuz video=vesa:ywrap,mtrr vga=788 \ -- quiet dmraid=true
    4. 像往常一样安装 Debian,直到进入磁盘分区程序。你会看到你的假 RAID 是一个名称很混乱的磁盘。像使用单个磁盘一样使用它,并以任何您想要的方式配置您的分区,包括 LVM 和朋友。

    5. 完成安装。GRUB 的安装可能会失败,但没关系;无论哪种方式,都需要重新安装 GRUB。如果 GRUB 安装失败,请选择“不使用 bootloader 继续”以完成 Debian 安装。

    6. 按照 Debian 安装程序的指示重新启动。

    7. 再次使用 Debian 安装介质引导。

    8. 在启动菜单中,转到Advanced Options,并将光标移动到“救援系统”(暂时不要点击Enter):

      1. 按Tab编辑内核引导行。
      2. 在行尾添加不带引号的“dmraid=true”。
      3. 按Enter。
    9. 您将看到类似于安装屏幕的屏幕。仔细检查它们,直到您被要求选择要挂载和使用的根文件系统。

    10. 选择第一个 /dev/dm-? (?是一个数字)。你会得到一个命令提示符。

    11. (可选)bash在提示中键入,以便于命令行编辑和命令历史记录。

    12. 修改 /etc/default/grub(例如nano /etc/default/grub)并取消注释 GRUB_DISABLE_LINUX_UUID=true ( 699437 )。保存文件并退出编辑器。

    13. 键入update-grub并按 Enter。这一点非常重要,因为否则之后的 GRUB 引导菜单将无法显示您新安装的内核!

    14. 键入grub-install /dev/mapper/并再次按 Tab 和 Tab,您将获得伪造的 raid 分区的名称。

      1. 填写grub-install /dev/mapper/整个假磁盘的名称。

        例如grub-install /dev/mapper/isw-jggdha7s-SYS(请注意,名称末尾没有数字)。你可能有类似/dev/mapper/isw-jggdha7s-SYSand /dev/mapper/isw-jggdha7s-SYS1, or /dev/mapper/isw-jggdha7s-Volume and的东西/dev/mapper/isw-jggdha7s-Volume1。选择没有分区号的那个,然后回车。

      2. 一切都应该现在安装而不会出现错误。

    15. 键入blkid | grep swap命令的结果更改 /etc/fstab 中的条目。(例如nano /etc/fstab)

      1. 例如: /dev/mapper/isw.. 到交换线上的 UUID="f7d88.."
    16. 键入exit(如果您执行了第 11 步,则键入两次)。现在你应该回​​到救援系统菜单。选择Reboot system选项。现在启动你的假 RAID 并看到 GRUB 开始你的新 Debian 安装。

    • -1

相关问题

  • Wubi 和常规的“Windows 旁边”安装有什么区别?

  • 如何在 Windows 7 中运行 Ubuntu?

  • 您对台式机和家庭服务器的驱动器分区方案有什么建议?[关闭]

  • 安装时,我可以选择加密我的主文件夹——这是做什么的?

  • 在不使用标准升级系统的情况下升级有哪些替代方案?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve