Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#35081 - [mkinitcpio] reboot system instead of "interactive shell"

Attached to Project: Arch Linux
Opened by Peter Kraus (PetoKraus) - Friday, 03 May 2013, 14:07 GMT
Last edited by Dave Reisner (falconindy) - Friday, 03 May 2013, 15:40 GMT
Task Type Support Request
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Hello,
I'm using the nfsroot option for some nodes on my cluster. Sometimes, the NFS root is not available, and the machine ends up in the "interactive shell" waiting for a miracle (or me physically re-starting it).

Is there / would it be possible to have an option to be a bit less graceful about this situation, and instead of requiring user interaction, force a system reboot (or kernel panic)?

Thanks,
Peter
This task depends upon

Closed by  Dave Reisner (falconindy)
Friday, 03 May 2013, 15:40 GMT
Reason for closing:  Won't implement
Comment by Dave Reisner (falconindy) - Friday, 03 May 2013, 14:42 GMT
This really seems like a management task which is more suited to DRAC/IPMI or some other out of band console. Alternatively, if you expect that the nfsroot might be available at some point in the future, I suggest setting a rather long rootdelay.
Comment by Peter Kraus (PetoKraus) - Friday, 03 May 2013, 14:50 GMT
I believe you're right - it's probably the wrong tool to do this, and there may be cleaner, out-of-band solutions.

In any case, I do expect the nfsroot to become available at some point, but a simple rootdelay won't help, unfortunately.

Is there any way to pass a command to the busybox shell? A simple logout + panic=n on the kernel line will do what I want.
Comment by Dave Reisner (falconindy) - Friday, 03 May 2013, 15:02 GMT
> Is there any way to pass a command to the busybox shell? A simple logout + panic=n on the kernel line will do what I want
No, not currently.

As a dirty hack, you could provide your own hook which either:

- removes the sh binary, causing a panic on root not being found
- provide something in place of sh (a script with a #!/usr/bin/ash shebang) which reboots.
Comment by Peter Kraus (PetoKraus) - Friday, 03 May 2013, 15:34 GMT
Oh man, thanks, that's perfect. Got it working by a combination of the two (script which logs out, meaning the machine panics, and reboots).
Comment by Dave Reisner (falconindy) - Friday, 03 May 2013, 15:40 GMT
Cool, glad to hear it was a useful suggestion. I'm marking this as wont implement, because I think this is probably an edge case worth dealing with on your own.

Loading...