0

I created a CentOS 8 live USB stick in order to install CentOS on an Intel NUC. The target disk for the installation is a 32GB SD card which is plugged into the NUC.

Unfortunately the installer does not detect the SD card. lsblk does not list the device.

However, if I boot into an Ubuntu 19 live USB stick on the same machine lsblk does list the SD card just fine.

Does anyone know what I can do to make the CentOS 8 installer detect the SD card so that I can use it as an installation target?

2
  • I'm going to guess that whatever is controlling the card is too new a device for CentOS. That's one of the drawbacks of enterprise-level - it's more stable but therefore not cutting edge. Feb 7 '20 at 22:34
  • The machine is a new NUC5PPYH, but the launch date of such was Q3'15.
    – Rotareti
    Feb 7 '20 at 22:59
2

Intel has stated in Intel Support Document #000024603 that they don't enable firmware support for booting from SD cards on any of the NUC line of devices.

There is an exception though, provided that you are willing to switch off UEFI bootloader support and rely on the Compatibility Support Module (CSM) for "Legacy Boot" mode emulation. Having adjusted those settings (by pressing the F2 key at startup to enter the BIOS Setup menu) you can then boot from the SD card slot, provided you format the card to identify itself as bootable like a flash drive would.


To be doubly-certain that the device is, in fact, bootable under Legacy Boot mode, you can use the DISKPART utility to format it and the bootsect command to verify the MBR flags before writing the install image to it (as outlined by Microsoft).

  • From an elevated Command Prompt window (right-click on the Start button and select "Command Prompt (Admin)"), enter the following sequence of directives (replacing any instance of the letter X with the numeric entry that corresponds to your SD card in the list shown by the preceding command):
C:\> diskpart

DISKPART> list disk

DISKPART> select disk X

DISKPART> clean

DISKPART> convert mbr noerr

DISKPART> create partition primary

DISKPART> select partition 1

DISKPART> format fs=ntfs quick

DISKPART> active

DISKPART> assign noerr

DISKPART> list partition

DISKPART> exit

At the list partition step just before exit, you should see the new partition with a * in the Active column as well as its drive letter in the column listing those assignments. Armed with that drive letter, you can then set the bootable flag in the Master Boot Record (MBR) manually, exactly as would be found on a USB flash drive by whatever utility was used to write the image to it.

  • Again from an elevated Command Prompt, issue the command:
C:\> bootsect /nt60 E:

replacing the letter E with the drive letter assigned to your SD card (which can be confirmed from the File Explorer or the Disk Management app located in the Administrative Tools folder of the Control Panel, if not using the same Command Prompt window).

Now it's only a matter of mounting the install image (right-click the image file and select Mount from the File Explorer) and copying the contents to the SD card.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.