Skip to main content
Topic solved
This topic has been marked as solved and requires no further attention.
Topic: service root-ro command failed with exit code 1 (Read 541 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

service root-ro command failed with exit code 1

Code: [Select]
Service root-ro command failed with exit code 1
Service random-seed stop command failed with exit code 20
All services have stopped with no shutdown issued; boot failure?
When I choose "restart boot sequence" it boots with no errors. Using custom kernel with EFIstub.

Re: service root-ro command failed with exit code 1

Reply #1
You can copy /lib/dinit.d/root-ro in /etc/dinit.d and add logfile:
Code: [Select]
type    = scripted
command = /bin/mount -o remount,ro,rshared /
restart = false
logfile = /var/log/dinit/root-ro.log
Or directly in /lib.
So that you get the complete error.

Re: service root-ro command failed with exit code 1

Reply #2
You can copy /lib/dinit.d/root-ro in /etc/dinit.d and add logfile:
Code: [Select]
type    = scripted
command = /bin/mount -o remount,ro,rshared /
restart = false
logfile = /var/log/dinit/root-ro.log
Or directly in /lib.
So that you get the complete error.
Now it shows
Code: [Select]
root-ro: execution failed - opening log file: Read-only file system

Re: service root-ro command failed with exit code 1

Reply #3
You can copy /lib/dinit.d/root-ro in /etc/dinit.d and add logfile:

That typically doesn't work for very early services where the filesystem is still read-only, because the logfile can't be opened for writing in that case.

Options are:

Code: [Select]
log-type = buffer

OR

Code: [Select]
options = starts-on-console

In the first case you need to use
Code: [Select]
dinitctl catlog root-ro
to see the log (so it requires that you do manage to boot successfully, which I gather is the case). The 2nd one will hopefully show the error on the console (and hopefully it won't scroll off before you can read it).

These options are documented in the manual so check that for more information.

Re: service root-ro command failed with exit code 1

Reply #4
It outputs
Code: [Select]
mount: /: can't find UUID=62d1f155-...
I double checked UUID and it matches with the one from blkid. So I've put '/dev/sda2' instead of UUID in /etc/fstab and now it boots with no errors. But is there any way to check why it can't find UUID and PARTUUID of the disk? I am testing this on the qemu vm so maybe it's a vm thing.
Thank you.

Re: service root-ro command failed with exit code 1

Reply #5
I double checked UUID and it matches with the one from blkid. So I've put '/dev/sda2' instead of UUID in /etc/fstab and now it boots with no errors. But is there any way to check why it can't find UUID and PARTUUID of the disk? I am testing this on the qemu vm so maybe it's a vm thing.
Thank you.

You'd have to look into what the mount utility is actually doing to figure that out. I don't think I can help any further, sorry. Good that you have a workaround solution anyway.

(My guess is that it's some kind of race where the UUID/PARTUUID isn't available yet. Maybe the kernel is still reading the partition table at that point. You could try wrapping the mount command in a script and insert a small delay before "mount" via "sleep", but that's not a very satisfactory solution either.)