В Thu, 4 Sep 2014 18:32:20 -0400 wor...@alum.mit.edu (Dale R. Worley) пишет:
> > From: Andrei Borzenkov <arvidj...@gmail.com> > > > bor@opensuse:~/src/systemd> systemctl show boot.mount -p WantedBy > > --no-pager > > WantedBy=dev-sda1.device > > > > Which has the effect that if device was not present at boot but appears > > later, the very appearance of device triggers start of mount unit - > > filesystem gets mounted. > > > > And yes, this makes semantic very different from > > traditional /etc/fstab. And I'm not sure it has to do it by default ... > > honestly, I'm not sure it has to do it at all. I think about situation > > where I have persistent device names (SAN, iSCSI, LVM) and need to do > > maintenance which causes device nodes disappear and appear again. I > > definitely do not want any filesystem to be suddenly mounted in this > > case until I have finished my tasks. > > > > And of course it is not documented anywhere. > > I admit that I haven't studied systemd enough to understand the > significance of WantedBy. My understanding is that systemd performs a > series of units, with dependencies showing which units must finish > before other units start. There are several types of dependencies; ordering is just one of them. Please see "man systemd.unit" for full list. In this case WantedBy means that when dev-sda1.device is started, systemd automatically starts boot.mount. For a device unit "started" means systemd was notified by udev that device had appeared (a bit simplified). > But it appears that boot.mount does not > represent a particular task, but some sort of generic task that is > executed multiple times, one for each ".device" unit. -- Or is "boot" > the name of the mountpoint, and "boot.mount" only represents the work > for mounting /dev/sd1 as /boot? > Correct. boot.mount represents /boot mountpoint which in my case resides on /dev/sda1. So above dependency means that when /dev/sda1 appears systemd tries to start boot.mount; and starting mount unit means mounting it ... > However, if I wanted to add an option that means "give up on > attempting to mount this device after xx seconds", what would be a > good way to organize it, given the architecture of systemd? And once again - systemd *does* give up after xx seconds once it initiated start of mount unit. Even without any explicit option (90 seconds is default timeout). > It > appears that there is a general mechanism for inserting information > for systemd into the "options" part of an /etc/fstab line, so > presumably the indication for the option would be placed there. > > In my "Store.mount" file, I see no indication of an executable which > implements the unit. What is the code which implements it? systemd binary, like any other unit. Code is in git on fdo. > Would it > be possible for that code to determine how long it has been? > You have too many "it"s in this sentence; could you rephrase? But systemd already has default timeout for any unit. You are looking in the wrong place. > Dale _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel