Skip to contentSkip to conversation

rootfs mounted read-only on Live USB (x86-64)

DISCUSSION Dan O'Donovan 3 participants 5 messages Jun 3, 2016

lore
Share & tools
lore
#0 lore raw

Hi all

Has anyone else noticed that the root file-system appears to be mounted read-only when booting a Live USB image from Yocto 2.1.

This is on a sato build from the krogoth branch of poky and meta-intel, for a generic x86-64 machine (4.4 kernel).

I'm transferring the resulting .iso image to a usb stick using 'dd', and then picking the 'boot' option at startup.

As well as a bunch of errors about the read-only filesystem (e.g. failing to create files in /var and other locations), the desktop UI fails to load.

This worked fine with Yocto 2.0.

I have a hunch that it might be caused by a lack of aufs support. Is it possible that aufs patches were omitted from the x86 kernels in Yocto 2.1?

Thanks,
-Dan

P.S. It works fine if I just install it directly, or if I use the .hddimg, instead of trying to boot the live image from the .iso.

#1 lore raw

Hi,

Check if "read-only-rootfs" feature is added to any of these variables either in your local.conf or your image bitbake recipe:

Something like that:

IMAGE_FEATURES = "read-only-rootfs"

EXTRA_IMAGE_FEATURES += "read-only-rootfs"

Thanks,
Oleksandr Poznyak!

Quoted 30 lines · Dan O'Donovan

Hi all

Has anyone else noticed that the root file-system appears to be mounted read-only when booting a Live USB image from Yocto 2.1.

This is on a sato build from the krogoth branch of poky and meta-intel, for a generic x86-64 machine (4.4 kernel).

I'm transferring the resulting .iso image to a usb stick using 'dd', and then picking the 'boot' option at startup.

As well as a bunch of errors about the read-only filesystem (e.g. failing to create files in /var and other locations), the desktop UI fails to load.

This worked fine with Yocto 2.0.

I have a hunch that it might be caused by a lack of aufs support. Is it possible that aufs patches were omitted from the x86 kernels in Yocto 2.1?

Thanks,
-Dan

P.S. It works fine if I just install it directly, or if I use the .hddimg, instead of trying to boot the live image from the .iso.
--
_______________________________________________
yocto mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/yocto

#2 lore raw
Quoted 1 line · Oleksandr Poznyak

Hi,

Hi Oleksandr

Quoted 7 lines

Check if "read-only-rootfs" feature is added to any of these variables either in your local.conf or your image bitbake recipe:

Something like that:

IMAGE_FEATURES = "read-only-rootfs"

EXTRA_IMAGE_FEATURES += "read-only-rootfs"

Thanks for your suggestion. I didn't find "read-only-rootfs" specified in the IMAGE_FEATURES in local.conf or elsewhere. I suspect it might be a different issue because it only affects the live-boot of the .iso image. If I install the .hddimage directly to the storage device instead, then it boots fine and the rootfs is read/write.

[update]
It looks like the problem was indeed the lack of aufs. I added this in conf/local.conf
DISTRO_FEATURES_append = " aufs"
and this in the kernel recipe

    KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES', 'aufs', ' features/aufs/aufs-enable.scc', '', d)}"

and now the live USB image boots correctly with a read-write filesystem.

Considering that the default images built for a generic x86-64 machine include a live-boot image (.iso) which is effectively broken, I assume the aufs feature (or another solution for the live-boot use case) should really be added by default for those builds as well.

Quoted 31 lines

Thanks,
Oleksandr Poznyak!

On Fri, Jun 3, 2016 at 12:06 PM, Dan O'Donovan <[email protected] <mailto:[email protected]>> wrote:

Hi all

Has anyone else noticed that the root file-system appears to be mounted read-only when booting a Live USB image from Yocto 2.1.

This is on a sato build from the krogoth branch of poky and meta-intel, for a generic x86-64 machine (4.4 kernel).

I'm transferring the resulting .iso image to a usb stick using 'dd', and then picking the 'boot' option at startup.

As well as a bunch of errors about the read-only filesystem (e.g. failing to create files in /var and other locations), the desktop UI fails to load.

This worked fine with Yocto 2.0.

I have a hunch that it might be caused by a lack of aufs support. Is it possible that aufs patches were omitted from the x86 kernels in Yocto 2.1?

Thanks,
-Dan

P.S. It works fine if I just install it directly, or if I use the .hddimg, instead of trying to boot the live image from the .iso. --
_______________________________________________
yocto mailing list
[email protected] <mailto:[email protected]>
https://lists.yoctoproject.org/listinfo/yocto

#3 lore raw
Quoted 22 lines · Dan O'Donovan
Quoted 1 line · Oleksandr Poznyak

Hi,

Hi Oleksandr

Quoted 8 lines

Check if "read-only-rootfs" feature is added to any of these variables either in your local.conf or your image bitbake recipe:

Something like that:

IMAGE_FEATURES = "read-only-rootfs"

EXTRA_IMAGE_FEATURES += "read-only-rootfs"

Thanks for your suggestion. I didn't find "read-only-rootfs" specified in the IMAGE_FEATURES in local.conf or elsewhere. I suspect it might be a different issue because it only affects the live-boot of the .iso image. If I install the .hddimage directly to the storage device instead, then it boots fine and the rootfs is read/write.

[update]
It looks like the problem was indeed the lack of aufs. I added this in conf/local.conf
DISTRO_FEATURES_append = " aufs"
and this in the kernel recipe

Quoted 8 lines
     KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES',

'aufs', ' features/aufs/aufs-enable.scc', '', d)}"
and now the live USB image boots correctly with a read-write filesystem.

Considering that the default images built for a generic x86-64 machine include a live-boot image (.iso) which is effectively broken, I assume the aufs feature (or another solution for the live-boot use case) should really be added by default for those builds as well.

aufs is in the linux-yocto-4.1 and 4.4 kernels. It may be that the SRCREVs for older branches haven't been updated yet.

commit ed2314d234ff26ed50342264e432392c8908c66b

Author: Bruce Ashfield <[email protected]>
Date:   Wed Jul 8 15:46:25 2015 -0400

aufs4: core support

Integrating the core aufs4 support from:

git://github.com/sfjro/aufs4-standalone.git

Bruce

Quoted 43 lines
Quoted 40 lines

Thanks,
Oleksandr Poznyak!

On Fri, Jun 3, 2016 at 12:06 PM, Dan O'Donovan <[email protected] <mailto:[email protected]>> wrote:

Hi all

Has anyone else noticed that the root file-system appears to be mounted read-only when booting a Live USB image from Yocto 2.1.

This is on a sato build from the krogoth branch of poky and meta-intel, for a generic x86-64 machine (4.4 kernel).

I'm transferring the resulting .iso image to a usb stick using 'dd', and then picking the 'boot' option at startup.

As well as a bunch of errors about the read-only filesystem (e.g. failing to create files in /var and other locations), the desktop UI fails to load.

This worked fine with Yocto 2.0.

I have a hunch that it might be caused by a lack of aufs support. Is it possible that aufs patches were omitted from the x86 kernels in Yocto 2.1?

Thanks,
-Dan

P.S. It works fine if I just install it directly, or if I use the .hddimg, instead of trying to boot the live image from the .iso. --
_______________________________________________
yocto mailing list
[email protected] <mailto:[email protected]>
https://lists.yoctoproject.org/listinfo/yocto

#4 lore raw
Quoted 27 lines · Bruce Ashfield
Quoted 26 lines · Dan O'Donovan
Quoted 1 line · Oleksandr Poznyak

Hi,

Hi Oleksandr

Quoted 8 lines

Check if "read-only-rootfs" feature is added to any of these variables either in your local.conf or your image bitbake recipe:

Something like that:

IMAGE_FEATURES = "read-only-rootfs"

EXTRA_IMAGE_FEATURES += "read-only-rootfs"

Thanks for your suggestion. I didn't find "read-only-rootfs" specified in the IMAGE_FEATURES in local.conf or elsewhere. I suspect it might be a different issue because it only affects the live-boot of the .iso image. If I install the .hddimage directly to the storage device instead, then it boots fine and the rootfs is read/write.

[update]
It looks like the problem was indeed the lack of aufs. I added this in conf/local.conf
DISTRO_FEATURES_append = " aufs"
and this in the kernel recipe

     KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES',

'aufs', ' features/aufs/aufs-enable.scc', '', d)}"
and now the live USB image boots correctly with a read-write filesystem.

Quoted 7 lines
Quoted 4 lines

Considering that the default images built for a generic x86-64 machine include a live-boot image (.iso) which is effectively broken, I assume the aufs feature (or another solution for the live-boot use case) should really be added by default for those builds as well.

aufs is in the linux-yocto-4.1 and 4.4 kernels. It may be that the SRCREVs for older branches haven't been updated yet.

ah crap. I see you did find the aufs support, just that it wasn't enabled by the right images.

Bruce

Quoted 62 lines

commit ed2314d234ff26ed50342264e432392c8908c66b

Author: Bruce Ashfield <[email protected]>
Date:   Wed Jul 8 15:46:25 2015 -0400

aufs4: core support

Integrating the core aufs4 support from:

git://github.com/sfjro/aufs4-standalone.git

Bruce

Quoted 43 lines
Quoted 40 lines

Thanks,
Oleksandr Poznyak!

On Fri, Jun 3, 2016 at 12:06 PM, Dan O'Donovan <[email protected] <mailto:[email protected]>> wrote:

Hi all

Has anyone else noticed that the root file-system appears to be mounted read-only when booting a Live USB image from Yocto 2.1.

This is on a sato build from the krogoth branch of poky and meta-intel, for a generic x86-64 machine (4.4 kernel).

I'm transferring the resulting .iso image to a usb stick using 'dd', and then picking the 'boot' option at startup.

As well as a bunch of errors about the read-only filesystem (e.g. failing to create files in /var and other locations), the desktop UI fails to load.

This worked fine with Yocto 2.0.

I have a hunch that it might be caused by a lack of aufs support. Is it possible that aufs patches were omitted from the x86 kernels in Yocto 2.1?

Thanks,
-Dan

P.S. It works fine if I just install it directly, or if I use the .hddimg, instead of trying to boot the live image from the .iso. --
_______________________________________________
yocto mailing list
[email protected] <mailto:[email protected]>
https://lists.yoctoproject.org/listinfo/yocto