[Mageia-dev] [343016] provide need /var/run/ nscd in nscd package otherwise nscd failed to start

Colin Guthrie mageia at colin.guthr.ie
Wed Jan 9 11:11:30 CET 2013


'Twas brillig, and Olivier Thauvin at 08/01/13 18:32 did gyre and gimble:
> * Thomas Backlund (tmb at mageia.org) wrote:
>> root-odJJhXpcy38dnm+yROfE0A at public.gmane.org skrev 8.1.2013 20:06:
>>> Revision
>>>    343016
>>> Author
>>>    nanardon
>>> Date
>>>    2013-01-08 19:06:55 +0100 (Tue, 08 Jan 2013)
>>>
>>>
>>>      Log Message
>>>
>>> provide need /var/run/nscd in nscd package otherwise nscd failed to start
>>
>> Nope, wrong fix...
>>
>> if there is something wrong, it must be fixed in SOURCE9 (nscd.conf)
>> as /run (to wich  /var/run point at) is a tmpfs
> 
> There is no /var/run/nscd in nscd.conf but:
> 
> -- Logs begin at Thu, 2012-11-08 21:13:36 CET, end at Thu, 2012-11-08
> 21:15:11 CET. --
> Jan 08 19:23:30 localhost.localdomain nscd[2063]: 2063
> /var/run/nscd/socket: No such file or directory
> Jan 08 19:23:30 localhost.localdomain systemd[1]: nscd.service never
> wrote its PID file. Failing.
> 
> Indeed it's a tmpfs. Obviously this directory exists on my laptop, don't
> know how but on my freshly installed cauldron it does not.
> 
> I suspect /var/run/nscd/ is the path also used by glibc to find the nsdc
> socket.
> There is no option in nscd.conf to change it according man page.
> 
> I just revert my changes, feel free to fix.

There isn't any fix needed as far as I can tell. It was fixed a long,
long time ago by adding /usr/lib/tmpfiles.d/nscd.conf to the package
which is what Thomas was referring to I believe and it very much does
refer to /var/run/nscd directory.

Not also that as mentioned to you previously on this list, you should no
longer package any files in /var/run, /var/lock and /run and instead use
tmpfiles for this. rpmlint should even reject any such packages with
such files. Unless I've messed up the rpmlint. Did glibc get through the
build system like this or was it never submitted?

In order to debug this specific problem, can you check "systemctl status
systemd-tmpfiles-setup.service" Has this run correctly at boot?

Perhaps the main problem is actually that nscd was installed and then
you tried to start it immediately without rebooting? It seems that nscd
package is missing a call to the necessary tmpfiles macro in it's %post
to ensure that "systemd-tmpfiles --create nscd.conf" is run such that
this is supported. Can you confirm if you rebooted after installing nscd
or not so I can put my mind at rest as to what the actual problem is?

More info about the tmpfiles calls and macros here:
https://wiki.mageia.org/en/System_Service_policy

as you can see the missing call in %post nscd is simply:
%_tmpfilescreate %{name}

Cheers

Col



-- 

Colin Guthrie
colin(at)mageia.org
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/


More information about the Mageia-dev mailing list