[Opendnssec-user] segfault error 6 in libc-2.23.so
PGNet Dev
pgnet.dev at gmail.com
Sun Jan 8 20:58:35 UTC 2017
Missed the early part of this particular discussion, but just an fyi, in case it's of help :
With self-built ODS2/head, I'd seen segfaults in libc on launch as well, for both signerd/enforcerd.
I never got as far as GDB -- logs showed my issue, wrong/changed perms on the PID dir, e.g.
...
Jan 08 10:55:16 test.int systemd[1]: Starting OpenDNSSEC v2 Signer daemon...
Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: PID file /var/run/opendnssec/signerd.pid not readable (yet?) after start: No such file or directory
Jan 08 10:55:16 test.int ods-signerd[11212]: [cmdhandler] unable to create cmdhandler: bind() failed: No such file or directory
Jan 08 10:55:16 test.int ods-signerd[11212]: [engine] setup failed: Command handler error
Jan 08 10:55:16 test.int ods-signerd[11212]: Segmentation fault
Jan 08 10:55:16 test.int ods-signerd[11212]: :
Jan 08 10:55:16 test.int ods-signerd[11212]: unknown
Jan 08 10:55:16 test.int ods-signerd[11212]: unknown
Jan 08 10:55:16 test.int ods-signerd[11212]: unknown
Jan 08 10:55:16 test.int ods-signerd[11212]: unknown
Jan 08 10:55:16 test.int ods-signerd[11212]: __libc_start_main
Jan 08 10:55:16 test.int ods-signerd[11212]: unknown
Jan 08 10:55:16 test.int sh[11211]: Segmentation fault:
Jan 08 10:55:16 test.int sh[11211]: unknown
Jan 08 10:55:16 test.int sh[11211]: unknown
Jan 08 10:55:16 test.int sh[11211]: unknown
Jan 08 10:55:16 test.int sh[11211]: unknown
Jan 08 10:55:16 test.int sh[11211]: __libc_start_main
Jan 08 10:55:16 test.int sh[11211]: unknown
Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: Daemon never wrote its PID file. Failing.
Jan 08 10:55:16 test.int systemd[1]: Failed to start OpenDNSSEC v2 Signer daemon.
Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: Unit entered failed state.
Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: Failed with result 'resources'.
Jan 08 10:55:18 test.int systemd-coredump[11213]: Process 11212 (ods-signerd) of user 0 dumped core.
...
and similar for enforcerd.
For my
cat /etc/systemd/system/ods-signer.service
...
[Service]
Type=forking
PIDFile=/var/run/opendnssec/signerd.pid
...
cat /etc/systemd/system/ods-enforcer.service
...
[Service]
Type=forking
PIDFile=/var/run/opendnssec/enforcerd.pid
...
I'd manually created, chmod'd & chown'd the pid dir, but at some point something (maybe me, inadvertently?) had changed the perms :-/
Simple fix
cat /etc/tmpfiles.d/opendnssec.conf
...
+ D /var/run/opendnssec 0755 opendnssec opendnssec -
...
systemd-tmpfiles --create /etc/tmpfiles.d/opendnssec.conf
worked around the problem here.
I say workaround, rather than fix, as, of course, segfault-ing for lack of a PID file/dir is not a sane exit ...
More information about the Opendnssec-user
mailing list