Re: [systemd-devel] Question about systemd-firstboot

2017-03-09 Thread Francis Moreau
On Thu, Mar 9, 2017 at 5:49 PM, Zbigniew Jędrzejewski-Szmek
 wrote:
>> So if 'ro' is used, systemd-firstboot is not working. If it's expected
>> I think it would worth a note in the documentation.
> It's supposed to work, I think. Please open an issue, it'll be better
> tracked there.
>

https://github.com/systemd/systemd/issues/5562

Thank you.
-- 
Francis
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Question about systemd-firstboot

2017-03-09 Thread Zbigniew Jędrzejewski-Szmek
On Thu, Mar 09, 2017 at 05:31:46PM +0100, Francis Moreau wrote:
> On Thu, Mar 9, 2017 at 5:19 PM, Zbigniew Jędrzejewski-Szmek
>  wrote:
> > It depends on the command-line parameters: 'ro' and 'rw' both work.
> > 'rw' is actually recommended if you're using an initramfs.
> who is recommending 'rw' ?
That's how I remember the result of the discussions on systemd-devel
when we were trying to get systemd-fsck to work properly on all
combinations of ro/rw and fs type. I don't think there's any official
recommendation, just the general agreement that fsck is done better
in the initramfs (if at all needed, since most filesystems don't
really need it), and then there's no point in having the root temporarilly
read-only in the real system.

> > Otherwise, an empty /etc/machine-id may be present, if /etc is read-only
> > at boot, in which case systemd will do a temporary mount.
> >
> > So 'ro' is supported, but you either need an /etc/machine-id file or
> > a place to mount one temporarily.
> 
> So if 'ro' is used, systemd-firstboot is not working. If it's expected
> I think it would worth a note in the documentation.
It's supposed to work, I think. Please open an issue, it'll be better
tracked there.

Zbyszek

> On my setup, neither 'rw' nor 'ro' is passed so I assume 'ro' is the default.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Question about systemd-firstboot

2017-03-09 Thread Francis Moreau
On Thu, Mar 9, 2017 at 5:19 PM, Zbigniew Jędrzejewski-Szmek
 wrote:
> It depends on the command-line parameters: 'ro' and 'rw' both work.
> 'rw' is actually recommended if you're using an initramfs.
>

who is recommending 'rw' ?

do you have any pointers ?

> Otherwise, an empty /etc/machine-id may be present, if /etc is read-only
> at boot, in which case systemd will do a temporary mount.
>
> So 'ro' is supported, but you either need an /etc/machine-id file or
> a place to mount one temporarily.

So if 'ro' is used, systemd-firstboot is not working. If it's expected
I think it would worth a note in the documentation.

On my setup, neither 'rw' nor 'ro' is passed so I assume 'ro' is the default.

Thanks for your help
-- 
Francis
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Question about systemd-firstboot

2017-03-09 Thread Zbigniew Jędrzejewski-Szmek
On Thu, Mar 09, 2017 at 03:49:51PM +0100, Francis Moreau wrote:
> On Thu, Mar 9, 2017 at 3:10 PM, Zbigniew Jędrzejewski-Szmek
>  wrote:
> > On Thu, Mar 09, 2017 at 10:48:03AM +0100, Francis Moreau wrote:
> >> Hello,
> >>
> >> I'm puzzled about systemd-firstboot service.
> >>
> >> In my understanding this service is ran only during the firstboot. The
> >> firstboot condition is detected with the presence of /etc/machine-id
> >> file.
> >>
> >> If this file is not present then it's assumed to be a first boot and
> >> systemd-firstboot.service is ran and will create the machine-id file.
> >>
> >> Now the thing is that I dont see how systemd-firstboot.service can
> >> have a chance to be started because if /etc/machine-id is missing the
> >> whole boot is failing due to journald requiring /etc/machine-id.
> >>
> >> Could anybody give me some clues ?
> >
> > machine_id_setup() is called from main(). So pid1 should set up
> > /etc/machine-id if possible (/etc is wriable) before it starts the
> > firstboot services.
> >
> 
> For regular boots /etc is always RO when systemd is started, at least
> in my understanding.
It depends on the command-line parameters: 'ro' and 'rw' both work.
'rw' is actually recommended if you're using an initramfs.

Otherwise, an empty /etc/machine-id may be present, if /etc is read-only
at boot, in which case systemd will do a temporary mount.

So 'ro' is supported, but you either need an /etc/machine-id file or
a place to mount one temporarily.

Zbyszek
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Question about systemd-firstboot

2017-03-09 Thread Francis Moreau
On Thu, Mar 9, 2017 at 3:10 PM, Zbigniew Jędrzejewski-Szmek
 wrote:
> On Thu, Mar 09, 2017 at 10:48:03AM +0100, Francis Moreau wrote:
>> Hello,
>>
>> I'm puzzled about systemd-firstboot service.
>>
>> In my understanding this service is ran only during the firstboot. The
>> firstboot condition is detected with the presence of /etc/machine-id
>> file.
>>
>> If this file is not present then it's assumed to be a first boot and
>> systemd-firstboot.service is ran and will create the machine-id file.
>>
>> Now the thing is that I dont see how systemd-firstboot.service can
>> have a chance to be started because if /etc/machine-id is missing the
>> whole boot is failing due to journald requiring /etc/machine-id.
>>
>> Could anybody give me some clues ?
>
> machine_id_setup() is called from main(). So pid1 should set up
> /etc/machine-id if possible (/etc is wriable) before it starts the
> firstboot services.
>

For regular boots /etc is always RO when systemd is started, at least
in my understanding.

Just give it a try, remove /etc/machine-id and reboots, you'll see
that journald will fail.

Cheers.
-- 
Francis
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Question about systemd-firstboot

2017-03-09 Thread Zbigniew Jędrzejewski-Szmek
On Thu, Mar 09, 2017 at 10:48:03AM +0100, Francis Moreau wrote:
> Hello,
> 
> I'm puzzled about systemd-firstboot service.
> 
> In my understanding this service is ran only during the firstboot. The
> firstboot condition is detected with the presence of /etc/machine-id
> file.
> 
> If this file is not present then it's assumed to be a first boot and
> systemd-firstboot.service is ran and will create the machine-id file.
> 
> Now the thing is that I dont see how systemd-firstboot.service can
> have a chance to be started because if /etc/machine-id is missing the
> whole boot is failing due to journald requiring /etc/machine-id.
> 
> Could anybody give me some clues ?

machine_id_setup() is called from main(). So pid1 should set up
/etc/machine-id if possible (/etc is wriable) before it starts the
firstboot services.

Zbyszek
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel