From: Chuck H. <n2...@am...> - 2003-10-26 19:04:25
|
On Sun, 26 Oct 2003 10:17:37 +0100 Kern Sibbald <ke...@si...> wrote: > On Sat, 2003-10-25 at 23:14, Dan Langille wrote: > > On Sat, 25 Oct 2003, Dan Langille wrote: > > > My theory: The daemons should write their PID before they change > > > their GID/UID. > > > > To test my theory, I moved the drop(uid, gid) call to be after the > > call which sets PID. I did this for both SD and DIR. I can now > > start the daemons. > > The above is an interesting idea. I was in the process of moving > the drop() as you suggested, but I stopped, because it seems to > me that at the end of the job, Bacula will not be able to delete > the pid file. Though that is not critical, it is messy. > > Does anyone know how other programs handle this? Excerpt from Debian "Filesystem Hierarchy Standard": 5.10 /var/run : Run-time variable data This directory contains system information data describing the system since it was booted. Files under this directory should be cleared (removed or truncated as appropriate) at the beginning of the boot process. Programs may have a subdirectory of /var/run; this is encouraged for programs that use more than one run-time file. Note: programs that run as non-root users may be unable to create files under /var/run and therefore need a subdirectory owned by the appropriate user. So, before the drop, create /var/run/bacula (if it doesn't exist) and chown it to bacula and put the files there. PS I had solved the problem myself by creating a run directory in the same place I put all the rest of the bacula installation. I also didn't notice the -u and -g options and had just used su in the bacula script. |