SD card doesn't show as /dev/sda in exroot

Help I am trying to do exroot in mikrotik hrx gr3
I cannot proceed because the sd card is detected as /dev/mmcblk0p1 instead of /dev/sda. Also there is an error command which says Error: Could not stat device /dev/mmcblk0pl - No such file or directory.

root@OpenWrt:~# block info
/dev/mtdblock8: UUID="2205fb43-0a348ff7-3071c95d-af1bb7d4" VERSION="4.0" MOUNT="/rom" TYPE="squashfs"
/dev/mtdblock9: MOUNT="/overlay" TYPE="jffs2"
/dev/mmcblk0p1: UUID="B424-210C" LABEL="NEW" VERSION="FAT32" TYPE="vfat"
root@OpenWrt:~# DISK="/dev/mmcblk0pl"
root@OpenWrt:~# parted -s ${DISK} -- mklabel gpt mkpart extroot 2048s -2048s
Error: Could not stat device /dev/mmcblk0pl - No such file or directory.
root@OpenWrt:~#

/dev/mmcblk0p1 <> /dev/mmcblk0pl

and what does it have to do with /dev/sda ?

I thought sd card must be recognized as /dev/sda for me to able to proceed with the next command for exroot. Also there is an error command that cannot stat the device and no such file or directory.

It looks like a typo here... the last character appears to be an I or an L, but it should be a numeral (1).

Not if you can't C&P properly, which's been pointed out twice already.

Nobody here ever made a c&p error? Be nicer.

dev/mmcblk0p1 refers to the sd-card -specific device driver.

/dev/sda uses the more generic scsi disk driver, usually with companion drivers mapping sata, usb block devs (...) to that interface. I have built openwrt to support usb -connected drives, mapping to /dev/sda (b,c,...)

I need to identify/document the specific config packages needed for this support, - it's always a guess-whats-missing process until the drive is recognized; I don't need to re-invent that wheel every time i update that router.

Mmmv,
M.

1 Like

Just to verify that the SD card is showing up as /dev/mmcblk0p1 -- pull the card out and run block info and then put it back in and run block info again. If it enumerates as mmcblk0p1 that would suggest that the card reader is working as expected and the device isn't being treated as a USB storage medium. That's fine, of course.

Fixing the typo should allow the extroot process to complete, but if it doesn't boot take a look at this from the extroot guide:

  • If you are putting the extroot on a non-USB device such as a mmc card all modules needed acccess the device should be in appropriate file in /etc/modules-boot.d. For example using a sdhci card on a mt7688/mt7628 device /etc/modules-boot.d/mmc needs have two lines added:
mmc_core
mmc_block
sdhci
mtk_sd
1 Like
root@OpenWrt:~# block info
/dev/mtdblock8: UUID="2205fb43-0a348ff7-3071c95d-af1bb7d4" VERSION="4.0" MOUNT="/rom" TYPE="squashfs"
/dev/mtdblock9: MOUNT="/overlay" TYPE="jffs2"
root@OpenWrt:~# root@OpenWrt:~# DISK="/dev/mmcblk0p1"
Error: Partition(s) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64 on /dev/mmcblk0p1 have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes.

Continue with the exroot this error happened

Did you follow the recommendation ?

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.