On Fri, 15.01.16 11:40, Frank Steiner ([email protected]) wrote:
> In case someone else steps in this; > > Frank Steiner wrote > > > Hi, > > > > on one of my serves I have a LVM that, due to an error in my lvm.conf, > > couldn't be mounted on boot. But I didn't get a maintenance shell as > > I usually got on other servers, the output just stopped after complaining > > with > > [ TIME ] Timed out waiting for device > > dev-mapper-exportraidcu...tcurry2.device. > > [DEPEND] Dependency failed for /export. > > [DEPEND] Dependency failed for Local File Systems. > > ... > > > > So I debugged this and could grep the output from a serial console. > > It seem that the rootfs vanishes at some point, because I see such > > messages: > > > > About to execute: /bin/echo -e 'Welcome to emergency mode! After logging > > in, type "journalctl -xb" to view\nsystem logs, "systemctl reboot" to > > reboot, "systemctl default" to try again\nto boot into default mode.' > > Forked /bin/echo as 4290 > > Failed at step CHDIR spawning /bin/echo: No such file or directory > > ... > > This didn't mean that /bin/echo was not found, but the CHDIR failed! > That was caused by /root being a symbolic link to /local/home/root > (we strictly separate any user data including root from the system, so > that we can reformat / on reinstalling or upgrading the system). > But /usr/lib/systemd/system/emergency.service contains: Well, it's a really bad idea to move the root user's home directory out of the root dir, and we don't really support that. /root is hard-coded as the root user's home directory at a veriety of places in systemd and other packages, hence you'll run into problems with this not just here but at many other places too. Having /root on an external partition in particular is doomed, precisely because it creates the problems you just ran into. There's a reason why Linux distributions place root's home directory at /root, rather than /home/root, after all... That said, we probably shouldn't choke on this in this case, hence I'll prep a patch that changes WorkingDirectory=/root for those services to WorkingDirectory=-/root, i.e. make the non-existence of the specified working directory non-fatal. Lennart -- Lennart Poettering, Red Hat _______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
