I applied commit 628c89cc68ab96fce2de7ebba5933725d147aecc - core: rework device state logic, but now I'm left with a random chance to boot or not.
Some boots it comes up with "/var mounted" and lots of nice colored "[ OK ]"s. Some boots it comes up with "Unit var.mount is bound to inactive unit /dev/mapper/<name>. Stopping, too." and no colored "[ OK ]"s and about half the logs; only the "systemd[1]" messages, and it just hangs at some point; it never reaches the default target. I create /dev/mapper/<name> in initrd with cryptsetup, and then mount it to /newroot/var before switching root to /newroot and running systemd. I don't use systemd in initrd. Am I going about this wrong? What am I doing wrong here? What is the best way to mount /var in initrd and make systemd happy? PS - I also added a commit to log what the inactive unit was. "Aaron Wright" <aaron_wri...@selinc.com> wrote on 03/12/2015 08:42:15 AM: > Andrei Borzenkov <arvidj...@gmail.com> wrote on 03/11/2015 08:44:28 PM: > > aaron_wri...@selinc.com пишет: > > > > > I'm working with an embedded device that mounts / and /var in initrd. It > > > then switches root and fires up systemd. Early in the boot, after paths > > > target, /var gets unmounted. I want systemd to not do that, but I can't > > > figure out how to stop it. > > > I would like systemd to leave /var mounted, but still unmount it during > > > shutdown. I would rather not move the mounting of /var out of initrd. Is > > > this possible? > > > I'm trying to use a very stripped down systemd. As minimal as possible. > > > > Do you use udev in initrd? > > > > No. initrd is a custom script I wrote, and it mounts devtmpfs for its devices. > > > > I'm using systemd-219. The logs say that var.mount is bound to > an inactive > > > unit, and it is stopping too. I assume that is why /var gets unmounted, > > > but I don't know what to do to stop it. There is no /etc/fstab > file. There > > > is no var.mount file. > > > I assume I'm either missing something simple, or it is not possible. > > > > Did you try this commit? > > > > > > commit 628c89cc68ab96fce2de7ebba5933725d147aecc > > ...snip... > > > > I was finally able to get /var to stay mounted when I included the > local-fs.target and local-fs-pre.target units on the device. > Apparently they are used magically by systemd. I'm not sure why or > how, but it does finally work, so I'm happy. This leads to my other > question about what units are required. I'll continue on that > discussion on that thread.
_______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel