[systemd-devel] moving from SysV to systemd - issue with / being ro
Zbigniew Jędrzejewski-Szmek
zbyszek at in.waw.pl
Wed Oct 16 10:40:10 PDT 2013
On Wed, Oct 16, 2013 at 07:22:28PM +0200, Warpme wrote:
> On 10/16/13 7:02 PM, Zbigniew Jędrzejewski-Szmek wrote:
> >On Wed, Oct 16, 2013 at 06:18:12PM +0200, Warpme wrote:
> >>Hi,
> >>I want to switch init system from SysV to systemd-196.
> >>Sys is PXE booted disk-less appliance with rootfs based on overlayfs.
> >>
> >>Currently I can PXEboot, successfully switch root from initrd to
> >>overlayfs based root, systemd starts and executes many of it's
> >>units.
> >>Unfortunately user units are failing due / is read-only.
> >>When I issue "mount -o remount,rw /" - root becomes rw - so it
> >>looks like systemd for some reason isn't remounting root to rw.
> >>Interesting is that exactly the same initrd->overlayfs script (see
> >>below) works OK for SysV - so I think issue isn't in my pivot_root
> >>procedure but rather systemd receives / in rw but leaves in ro (as
> >>"mount -o remount,rw /" allows to write to /).
> >>
> >>Script switching initrd to overlayfs root looks following:
> >>
> >>/bin/mount -n -t tmpfs none /rw
> >>/bin/mkdir -p /rw/rootfs
> >>/bin/mount -n -t overlayfs -o
> >>lowerdir=/rootfs-ro,upperdir=/rw/rootfs none /rootfs
> >>cd /rootfs
> >>/bin/mkdir -p initrd proc sys
> >>/sbin/pivot_root . initrd
> >>exec /usr/sbin/chroot . /usr/lib/systemd/systemd
> >>
> >>Where issue might be?
> >What's in /etc/fstab?
> >
> >Zbyszek
> >
> Zbyszku,
>
> Here is my fstab:
>
> none / auto remount,rw 0 0
OK, so fstab-generator will ignore the mount point becuase of the 'none'.
This means that systemd will not remount it.
Actually, I don't understand why / is mounted read-only: -w is the default
for mount, and you don't specify -r anywhere. Maybe it's specific to overlayfs.
I think that your best option is to add
/bin/mount -o remount,rw /
in the script.
The other option — modifying systemd — is also possible, but it won't
happen without a good reason. Your usecase should be trivially solved
by modifying the script, so it's not good enough.
Zbyszek
More information about the systemd-devel
mailing list