[Bug 1024475] Re: libnss-ldap causes boot hang on Ubuntu 12.04 Precise
Graham Eames
1024475 at bugs.launchpad.net
Tue Sep 9 11:04:20 UTC 2014
Having recently run into this and spent some time debugging it would
appear that one potential cause is if you have edited /etc/ldap.conf and
do not have a new line at the end of the file (so in our case copying a
standard config in as part of a deployment script)
When the libnss-ldap init script is run on shutdown it updates ldap.conf
with the nss_initgroups_ignoreusers directive, but appends it to the end
of the last line in the file rather than putting it on a new line
As such the last line which did read
ldap_version 3
ended up reading
ldap_version 3nss_initgroups_ignoreusers.........
rather than
ldap_version 3
nss_initgroups_ignoreusers..........
By ensuring we have a new line character at the end of the config file,
when the init script runs we end up with the correct content in the file
and the boot completes as expected rather than hanging
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to libnss-ldap in Ubuntu.
https://bugs.launchpad.net/bugs/1024475
Title:
libnss-ldap causes boot hang on Ubuntu 12.04 Precise
Status in “libnss-ldap” package in Ubuntu:
Confirmed
Bug description:
A configuration that works perfectly after setup prevents an Ubuntu
12.04 Precise client from booting.
Checks before rebooting:
1. winbind authentication is working (console login, xrdp, etc)
2. libnss-ldap name resolution is working (getent passwd)
(this is the intended setup)
After booting the default Grub option we see the machine hung without
printing anything.
Booting in recovery mode allows us to see that the last printed
message is:
Begin: Running /scrips/init-bottom ... done.
The problem IS related to libnss-ldap because if we boot via cdrom and
change nsswitch.conf to use local authentication the machine boots
again perfectly. We can then change it back to use local
authentication + ldap (compat ldap) and verify that it works. However
the system won't come up after rebooting.
Even though the nss_initgroups_ignoreusers is correctly setup there is
provavly some service that is trying to use ldap before networking is
available. The extra options (see below) intended to lower timeouts
seem to have no effect.
Configuration details:
/etc/ldap.conf
-----------------------------------
base dc=DOMAIN,dc=COM
binddn uid=ldapuser,ou=users,dc=DOMAIN,dc=COM
bindpw XXXXXYYYYZZZZ
ldap_version 3
uri ldap://192.168.1.8
nss_initgroups_ignoreusers avahi,avahi-autoipd,backup,bin,colord,daemon,games,gnats,hplip,irc,kernoops,libuuid,lightdm,list,lp,mail,man,messagebus,news,ntp,proxy,pulse,root,rtkit,saned,speech-dispatcher,sshd,sync,sys,syslog,usbmux,uucp,whoopsie,www-data,xrdp
/etc/nsswitch.conf
-----------------------------------
passwd: compat ldap
group: compat ldap
shadow: compat ldap
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 wins
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
extra options tried on /etc/ldap.conf
-----------------------------------
timelimit 2
bind_timelimit 1
nss_reconnect_sleeptime 1
nss_reconnect_maxsleeptime 1
bind_policy soft
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libnss-ldap/+bug/1024475/+subscriptions
More information about the foundations-bugs
mailing list