[SOLVED] Extroot not working on 18.06?

I'm trying to get a USB extroot setup working on my TL-MR3020 on the 18.06 branch (was working fine under 17.01.4). I have created a custom image that adds the required USB modules (adding the required block-mount kmod-fs-f2fs kmod-usb-storage-extras and dependencies, and removing ppp, odhcpd, etc. to make it fit).

With my /etc/config/fstab below, the swap partition works, but the /overlay partition stays on the internal /dev/mtdblock3 rather than /dev/sda1 (USB), no matter how long or short I make the root delay (tried up to 25 seconds -- 8 seconds worked under 17.01.4):

# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root                 2304      2304         0 100% /rom
tmpfs                    13872        80     13792   1% /tmp
/dev/mtdblock3             384       252       132  66% /overlay
overlayfs:/overlay         384       252       132  66% /
tmpfs                      512         0       512   0% /dev

I can manually mount /dev/sda1 /mnt (and yes, I have copied over the contents of the /overlay partition from the image first), but it never auto-mounts. Any ideas?

Here is my /etc/config/fstab:

config 'global'
	option	anon_swap	'0'
	option	anon_mount	'0'
	option	auto_swap	'1'
	option	auto_mount	'1'
	option	delay_root	'15'
	option	check_fs	'0'

config 'mount'
	option	target	'/overlay'
	option	uuid	'c9327adf-61e2-1362-8b88-2666395d3da0'
	option	enabled	'1'

config 'swap'
	option	device	'/dev/sda2'
	option	enabled	'1'

Found the culprit: logread showed me

block: extroot: UUID mismatch (root: 8f4630a4-71edb3bc-22793c7c-4d016c77, overlay: c9327adf-61e2-1362-8b88-2666395d3da0

Not sure why a sysupgrade would change this, but doing

mount /dev/sda1 /mnt
rm /mnt/etc/.extroot-uuid
umount /mnt
reboot

fixed it for me.

3 Likes

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