Read-only FS after setting up extroot

So I set up extroot with a 64gig card on my AR750.
extroot setup should be good:

root@GL-AR750:~# block info
/dev/mtdblock5: UUID="9e3223c6-92747156-b874c1c5-8a35dc7a" VERSION="4.0" MOUNT="                                                                                                                                                             /rom" TYPE="squashfs"
/dev/mtdblock6: TYPE="jffs2"
/dev/sda1: UUID="3f7b9cbf-74e3-42b6-aeb6-5adf869dd91f" VERSION="1.0" MOUNT="/overlay" TYPE="ext4"                                                                                                                                                 
root@GL-AR750:~# df -kh
Filesystem                Size      Used Available Use% Mounted on
/dev/root                10.5M     10.5M         0 100% /rom
tmpfs                    60.4M    956.0K     59.4M   2% /tmp
/dev/sda1                58.4G     53.2M     55.4G   0% /overlay
overlayfs:/overlay       58.4G     53.2M     55.4G   0% /
tmpfs                   512.0K         0    512.0K   0% /dev
root@GL-AR750:~# cat /etc/config/fstab
config 'global'
        option  anon_swap       '0'
        option  anon_mount      '0'
        option  auto_swap       '1'
        option  auto_mount      '1'
        option  delay_root      '5'
        option  check_fs        '0'

config 'mount'
        option  target  '/overlay'
        option  uuid    '3f7b9cbf-74e3-42b6-aeb6-5adf869dd91f'
        option  enabled '0'

However, when I try to install packages, either through the webinterface or via opkg it fails with Read-only file system error.

Also can’t create files in home directory:

root@GL-AR750:~# touch test
touch: test: Read-only file system

Please advise.

1 Like

Can you describe please how to do ?

On follow you find what I tryed to find about:

Nevermind, I fixed it myself. Here is the proper fstab that works for me. I thought rw was the default. Apparently you have to explicitly option rw.

root@GL-AR750:~# block info
/dev/mtdblock5: UUID=“9e3223c6-92747156-b874c1c5-8a35dc7a” VERSION=“4.0” MOUNT="/rom" TYPE=“squashfs”
/dev/mtdblock6: MOUNT="/overlay" TYPE=“jffs2”
/dev/sda1: UUID=“3f7b9cbf-74e3-42b6-aeb6-5adf869dd91f” VERSION=“1.0” MOUNT="/mnt/sda1" TYPE=“ext4”
root@GL-AR750:~# cat /etc/config/fstab

config global
option anon_swap ‘0’
option anon_mount ‘0’
option auto_swap ‘1’
option auto_mount ‘0’
option delay_root ‘5’
option check_fs ‘0’

config mount ‘rwm’
option device ‘/dev/mtdblock6’
option target ‘/rwm’

config mount ‘overlay’
option uuid ‘3f7b9cbf-74e3-42b6-aeb6-5adf869dd91f’
option target ‘/overlay’
option options ‘rw,relatime,barrier=1,data=ordered’
option enabled ‘1’
option is_rootfs ‘1’

2 Likes

You need to install several packages to create an ext4 filesystem on the overlay partition!

the new 3.xxx has all the files already. (our smart devs knew the 19.x size increase was going to be a headache for everyone.

once you get good with configuring extroot I like part1 exfat and part2 ext4 and set extroot to second partiion so microsd card first part is still legible in windows. dont try this out the gate, format the whole card like it ask in the openwrt guide.

1 Like