Hello Ludovic! Ludovic Courtès <l...@gnu.org> writes:
> Hi! > > Maxim Cournoyer <maxim.courno...@gmail.com> skribis: > >> I think I've gathered a clue! > > [...] > >> scheme@(shepherd service)> (make-forkexec-constructor >> (list >> "/gnu/store/qyz1bncxlkxv44c03sva2akfsyqzkzh5-nfs-utils-2.4.2/sbin/rpc.mountd" >> "--debug" "all")) >> $5 = #<procedure 7f67f82862a0 at shepherd/service.scm:930:8 args> >> scheme@(shepherd service)> ($5) >> $6 = 816 >> scheme@(shepherd service)> (system "pidof rpc.mountd") >> warning: 'waitpid' -1 failed unexpectedly: No child processes >> 817 > > So that means that rpc.mountd “daemonizes”. Thus, shepherd shouldn’t > look at the PID of the process it spawns, but rather at what > rpc.mountd’s PID file contains (I assume it creates a PID file, > right?). IOW, we need to pass #:pid-file to ‘make-forkexec-constructor’. That process doesn't create a PID file, so that doesn't work. > Does that work for you? > > Thanks for debugging! Thanks for assisting, and for adding a note to the Shepherd manual! :-) I'm closing this issue. Maxim