When an installer says “No hard drives have been found,” it does not mean the disk is empty or that you should immediately switch it to IDE mode. A modern computer may use SATA/AHCI, NVMe, Intel VMD/RST, motherboard or hardware RAID, an HBA, or a VirtIO/SCSI/NVMe controller in a virtual machine. First identify the layer at which the disk disappears; then make one reversible change.
Data-safety boundary: This guide performs read-only identification and diagnosis. It provides no command to partition, format, clear RAID metadata, or write to a disk. Do not choose “Erase disk,” create a partition table, or initialize RAID until you can see the correct model, capacity, and serial number and have a tested, recoverable backup.
Table of Contents
Identify the Layer Where the Disk Disappears
| Layer | Evidence you should see | If it is absent | Next step |
|---|---|---|---|
| UEFI/BIOS or RAID manager | Physical disk, or a logical disk exported by the RAID controller | Power, slot, cable, firmware setting, disk, or array problem | Stop installation; consult the device vendor’s manual and hardware status |
| PCI/platform controller | SATA, AHCI, NVMe, VMD, RAID, SCSI, or VirtIO controller | Firmware has hidden/disabled it, virtual hardware is not attached, or the platform has a problem | Check firmware/VM inventory without changing disk contents |
| Linux kernel block device | /dev/sdX, /dev/nvmeXnY, /dev/mapper/..., or similar | Unsupported kernel/driver, unloaded module, blocked signature, or incompatible firmware/controller mode | Inspect kernel logs, driver binding, and installer-image support |
| Installer storage page | The same target disk or logical volume the kernel sees | Installer filtering, multipath/RAID assembly, encryption, or installer defect | Preserve logs and consult distribution-specific storage guidance |
| Partitions and filesystems | Existing partitions can be identified | Encryption, damage, or unsupported metadata | This is not “disk not detected”; do not format to diagnose it |
Changing the installer image usually cannot help if firmware cannot see the disk. If the kernel already sees the correct block device, blindly switching AHCI, IDE, or VMD adds risk.
Stop Lines Before Changing Settings
- Make a tested, recoverable backup of every item you need to retain; RAID is not a backup.
- Record disk model, capacity, serial number, current controller mode, RAID/VMD configuration, and boot mode; photograph the original firmware settings.
- On a Windows dual-boot system, check BitLocker status in Windows and store the recovery key securely away from that computer. Microsoft says BitLocker should be suspended before certain firmware changes to avoid recovery at the next boot; resume protection after verification.
- Schedule a maintenance window and have recovery media, vendor instructions, and a route back to the original settings.
- Change only one item at a time. If the existing system does not boot, immediately restore the original setting instead of stacking more changes.
These are not detection steps: mkfs, wipefs, creating a partition table, initializing a disk, deleting/rebuilding an array, or clearing controller metadata. This guide deliberately provides none of those commands.
Collect Read-Only Evidence
Use a current installer image from a still-supported distribution and verify it as the distribution documents with signatures/checksums. Enter a Live, Rescue, or installer shell without starting installation. These commands do not intentionally format a disk:
uname -a
cat /proc/cmdline
mokutil --sb-state
sudo lspci -nnk
sudo lsblk --paths --output NAME,TYPE,SIZE,MODEL,SERIAL,TRAN,FSTYPE,MOUNTPOINTS
cat /proc/partitions
lsmod
sudo dmesg --level=err,warn
sudo dmesg | grep -i -E 'ahci|ata|nvme|vmd|raid|scsi|virtio|firmware|module|signature|secure'
Some minimal installer environments omit mokutil or restrict dmesg; that alone is not a disk failure. Record the commands, distribution and ISO checksum, kernel version, machine/mainboard model, and time. Before sharing logs, redact serial numbers, WWIDs, hostnames, usernames, network addresses, and other asset identifiers.
Interpret the evidence in order:
- No relevant controller in
lspci -nnk: return to the firmware or VM-configuration layer. - Controller present but
Kernel driver in useis empty, or logs report unsupported hardware/missing firmware: check distribution and hardware-vendor support for the exact model, release, and architecture. - Module-signature, key, or lockdown error in the logs: follow the Secure Boot branch; do not download arbitrary
.kofiles. - Correct disk in
lsblkbut absent from the installer: inspect installer logs, specialized storage/multipath/RAID pages, and known issues; do not change controller mode as a guess. - Only the installer USB in
lsblk: confirm by model and transport so it is not mistaken for the target disk.
If the image includes nvme-cli, you can also run:
sudo nvme list
If the command is absent, you do not need to install unknown software into the installer environment; lsblk, PCI binding, and kernel logs provide the main evidence.
Diagnose by Storage Topology
SATA and AHCI
Modern Linux normally uses SATA disks through AHCI. The 2011-era advice to select Compatibility/IDE applies only to particular old hardware and installers; it is not a current default. Try a newer supported installer image first. Consider compatibility mode only when the device vendor or distribution explicitly requires it for the exact model.
Changing SATA mode changes how an existing operating system sees its boot disk. A dual-boot system must first pass the backup and BitLocker gates and prepare the Windows-side controller transition. If Windows reports INACCESSIBLE_BOOT_DEVICE, restore the original controller mode and stop the installation diagnosis.
NVMe
An NVMe disk may be exposed directly or sit behind VMD, RAID, or another platform controller. If firmware shows the NVMe model but Linux sees only a VMD/RAID controller, check platform and distribution support for that topology. The absence of /dev/nvme0n1 alone does not prove a failed disk.
First move to current installation media for the distribution or to a vendor-supported firmware version, and record evidence before and after. Firmware updates carry power-loss and BitLocker-recovery risks; follow the vendor’s procedure and do not use an update as an evidence-free first step.
Intel VMD/RST and Firmware RAID
VMD/RST can present a single disk or an array through a controller. Canonical’s current documentation explicitly warns that disabling RST or changing RST to AHCI can make an array inaccessible and can prevent an existing Windows installation from booting.
Use this safe order:
- Identify whether this is a plain disk, cache/Optane setup, firmware RAID, or an enterprise-managed array.
- Check whether a supported newer installer image recognizes it directly.
- If dual boot is required, follow the distribution’s and device vendor’s model-specific RST-to-AHCI procedure exactly; back up first, prepare the recovery key, and test rollback.
- After changing one setting, verify that Windows/the existing OS still boots before returning to the Linux installer.
- For real RAID, do not disable the controller, split member disks, or create a logical disk; have the array administrator act under a backup and recovery plan.
With hardware RAID, a healthy logical disk normally has to exist in the controller before the OS can see an installation target. Creating or rebuilding that logical disk can erase data, so it is outside this guide’s safe diagnostic boundary.
Virtual Machines
Confirm that the virtual disk is attached, is not reserved for another snapshot/VM, and record the virtual controller type. Modern virtualization commonly uses VirtIO, SCSI, SATA, or NVMe; “switch it to IDE” is not a general repair.
Do not delete an existing virtual disk. To distinguish a driver problem from an original-disk problem, after shutdown and snapshot/backup you may add a clearly empty test disk that is easy to identify by capacity. Remove it after testing without changing the original disk chain or snapshot relationship.
Installer Image, Kernel, and Drivers
Prefer the distribution’s current supported point-release image and verify its signature/checksum. An old ISO’s kernel may predate the controller. “Visible in the new Live image, absent in the old image” is strong evidence, but it still does not authorize writing to the disk.
Load an official driver-update medium only when the distribution, hardware vendor, or trusted controller vendor says it is required and it matches the exact distribution, release, kernel, architecture, and controller ID. Current Red Hat installation documentation likewise describes driver updates as optional and only for demonstrated need.
With Secure Boot enabled, an additional kernel module can be rejected when its signature is not trusted. Keeping Secure Boot enabled is the default. Obtain a matching distribution/vendor-signed driver and inspect the logs. Do not treat permanent Secure Boot disablement or forced loading of an unknown module as the preferred repair.
BitLocker, Encryption, and “Disk Present but Contents Hidden”
BitLocker makes locked content unreadable to a Linux installer; that differs from firmware or the kernel not seeing the disk at all. Canonical notes that some side-by-side installation flows cannot safely map Windows data while BitLocker is enabled.
- To retain Windows: stop installation and follow current Ubuntu/Microsoft guidance for your Windows version; verify the backup and recovery key first.
- To replace all of Windows: choose a destructive installer path only after the data owner explicitly accepts irrecoverable deletion and you re-identify the target disk.
- Enterprise device: BitLocker, Secure Boot, VMD/RST, and firmware policies may be managed. Contact the administrator rather than bypassing policy.
- LUKS, self-encrypting disks, and other encryption have the same boundary: seeing the block device but not its contents is not a reason to load a storage driver.
One Change, One Verification, One Rollback Point
| Attempt | Success evidence | Failure/stop condition | Rollback |
|---|---|---|---|
| Use a verified current installer image | Correct disk appears with the same firmware settings | Still no controller/block device | Return to the original medium; retain logs for comparison |
| Use an official matching driver update | Controller binds to the expected driver; model/capacity match | Signature failure, version mismatch, abnormal I/O | Remove driver medium and reboot a clean environment |
| Follow the official RST/VMD-to-AHCI path | Existing OS and Linux both identify disks correctly | Windows fails to boot, array/cache warning, disk count changes | Immediately restore the recorded original firmware setting |
| Adjust a virtual controller | Test and target disk mappings are unambiguous | Snapshot chain, disk path, or boot disk is ambiguous | Shut down and restore the VM snapshot/original controller |
| Update firmware | Vendor release notes cover the issue and evidence improves | Model/version mismatch or inadequate power/recovery conditions | Use the vendor-supported recovery route; never force-flash |
After the disk appears, apply one final gate: compare model, serial number, capacity, existing partitions, and intended installation target; a second-person review is better. Leave this guide’s read-only phase only after backup completion and explicit acceptance of writes.
When to Stop and Escalate
- Firmware cannot see the disk, or there are media errors, disconnects, repeated controller resets, or I/O errors.
- RAID is degraded, foreign, has unwritten cache, or has the wrong member count.
- The device belongs to a company/school and firmware, BitLocker, or Secure Boot is managed.
- The target holds the only data copy, or the recovery key/backup has not been tested.
- Continuing requires an untrusted driver, bypassing a security policy, removing a disk, or writing metadata.
Preserve redacted evidence and contact the device vendor, distribution support, storage administrator, or a professional data-recovery service.
Current Official References
- Ubuntu installation-image integrity verification
- Install Ubuntu Desktop
- Ubuntu: Intel RST during installation
- Ubuntu: Reconfigure Windows to use AHCI
- Ubuntu: BitLocker during installation
- Microsoft: BitLocker recovery process
- Red Hat Enterprise Linux 10: Updating drivers during installation
- Red Hat Enterprise Linux 10: Installer storage devices and hardware RAID
- Linux kernel: Module signing facility
Historical Source Archive (2011, for Provenance Only)
Archive note: The following is the complete visible
source_exportbody with trailing whitespace normalized only; nothing was omitted or redacted for safety/privacy. It preserves the period’s IDE-compatibility recommendation, old distribution examples, and wording and is not the maintained procedure. Links are inside a plain-text code block and are not operational entry points.
解决:安装linux时出现:No hard drives have been found
Table of Contents
Toggle
- [问题描述](https://blog.lazying.art/en/html/computer_internet/unix_linux/429/%e5%ae%89%e8%a3%85linux%e6%97%b6%e5%87%ba%e7%8e%b0%ef%bc%9ano-hard-drives-have-been-found.html/#%E9%97%AE%E9%A2%98%E6%8F%8F%E8%BF%B0)
- [原因分析](https://blog.lazying.art/en/html/computer_internet/unix_linux/429/%e5%ae%89%e8%a3%85linux%e6%97%b6%e5%87%ba%e7%8e%b0%ef%bc%9ano-hard-drives-have-been-found.html/#%E5%8E%9F%E5%9B%A0%E5%88%86%E6%9E%90)
- [解决方案](https://blog.lazying.art/en/html/computer_internet/unix_linux/429/%e5%ae%89%e8%a3%85linux%e6%97%b6%e5%87%ba%e7%8e%b0%ef%bc%9ano-hard-drives-have-been-found.html/#%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88)
- [虚拟机](https://blog.lazying.art/en/html/computer_internet/unix_linux/429/%e5%ae%89%e8%a3%85linux%e6%97%b6%e5%87%ba%e7%8e%b0%ef%bc%9ano-hard-drives-have-been-found.html/#%E8%99%9A%E6%8B%9F%E6%9C%BA)
- [实体机](https://blog.lazying.art/en/html/computer_internet/unix_linux/429/%e5%ae%89%e8%a3%85linux%e6%97%b6%e5%87%ba%e7%8e%b0%ef%bc%9ano-hard-drives-have-been-found.html/#%E5%AE%9E%E4%BD%93%E6%9C%BA)
- [方案1](https://blog.lazying.art/en/html/computer_internet/unix_linux/429/%e5%ae%89%e8%a3%85linux%e6%97%b6%e5%87%ba%e7%8e%b0%ef%bc%9ano-hard-drives-have-been-found.html/#%E6%96%B9%E6%A1%881)
- [方案2](https://blog.lazying.art/en/html/computer_internet/unix_linux/429/%e5%ae%89%e8%a3%85linux%e6%97%b6%e5%87%ba%e7%8e%b0%ef%bc%9ano-hard-drives-have-been-found.html/#%E6%96%B9%E6%A1%882)
## 问题描述
安装linux时出现:
No hard drives have been found.
You probably need to manually choose device drives for the installation to succeed.
Would you like to select drives now?
## 原因分析
如果你是在本身机器上安装,需要把硬盘接口设置成IDE的;如果你是用虚拟机的话必须创建一个IDE硬盘。
## 解决方案
### 虚拟机
虚拟机默认创建的硬盘是SCSI的。
具体操作:
在虚拟机里把现在的scsi硬盘删除,然后再添加一个ide硬盘就可以了。
### 实体机
#### 方案1
找你的 SATA 驱动,在安装时载入 SCSI 的地方载入 SATA 驱动。不过前提是你的 Linux 系统是特殊的一些版本,基本都是服务器专用版本,因为新版本的内核自带 SATA 驱动,所以一把厂家只提供特殊需要的一些系统版本,一般都只有 RHEL 4/5 系列,SUSE 企业版两个。另外还需要你的主板是特殊的主板,一般都是服务器专用主板(就是一个主板价格顶上一台家用机的那种)。
#### 方案2
打开主板 SATA 的兼容模式(有的叫传统模式),但这样如果你的 Windows 系统是 SATA 状态下面安装的,它会变得不能使用,听说需要重装,但也不绝对。但这样 SATA 的性能优势全无,听说也不能打开 DMA 来加速硬盘的读写。但性能损失多少不知道。
具体操作
按F1(或F2、ESC)进入BIOS,Config–>SATA–>Compatibility[或IDE]
