touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #29809
[Bug 1382510] Re: systemd-logind upstart script breaks if libpam-systemd is installed for more than one arch
** Description changed:
/etc/init/systemd-logind.conf contains the following:
- # only start if PAM module is actually available, not if libpam-systemd is
- # removed but not purged
- [ -e /lib/*/security/pam_systemd.so ] || { stop; exit 0; }
+ # only start if PAM module is actually available, not if libpam-systemd is
+ # removed but not purged
+ [ -e /lib/*/security/pam_systemd.so ] || { stop; exit 0; }
Which is a wrongly written script. It assumes that there is at most one file matching the wildcard. It is not true in my system.
If your system have both libpam-systemd:amd64 and libpam-systemd:i386 then:
# ls /lib/*/security/pam_systemd.so
/lib/i386-linux-gnu/security/pam_systemd.so /lib/x86_64-linux-gnu/security/pam_systemd.so
and you get the following:
- # cat /var/log/upstart/systemd-logind.log
+ # cat /var/log/upstart/systemd-logind.log
/proc/self/fd/9: 4: [: /lib/i386-linux-gnu/security/pam_systemd.so: unexpected operator
systemd-logind stop/pre-start, process 2462
systemd-logind does not start at all. This causes many bad things to
happen later.
There are many ways to fix this. For my purposes I removed the faulty
line from the file. I don't know what is the expected behaviour. Maybe
this one:
ls /lib/*/security/pam_systemd.so &> /dev/null || { stop; exit 0; }
+ This bug might be the root cause of other bugs. Like this one: #1372187
+ (and #1377727)
- This bug might be the root cause of other bugs. Like this one: #1372187 (and #1377727)
+
+ SRU TEST CASE
+ =============
+ - On an amd64 system, run "sudo apt-get install libpam-systemd:i386"
+ - Then run "sudo restart systemd-logind"
+ - On current trusty this will result in stop/waiting, with the error in /var/log/upstart/systemd-logind.log as above.
+ - With this fix this will result in start/running and no error.
My system info:
# lsb_release -rd
Description: Ubuntu 14.04.1 LTS
Release: 14.04
# apt-cache policy libpam-systemd
libpam-systemd:
- Installed: 204-5ubuntu20.7
- Candidate: 204-5ubuntu20.7
+ Installed: 204-5ubuntu20.7
+ Candidate: 204-5ubuntu20.7
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1382510
Title:
systemd-logind upstart script breaks if libpam-systemd is installed
for more than one arch
Status in “systemd” package in Ubuntu:
Fix Released
Status in “systemd” source package in Trusty:
In Progress
Bug description:
/etc/init/systemd-logind.conf contains the following:
# only start if PAM module is actually available, not if libpam-systemd is
# removed but not purged
[ -e /lib/*/security/pam_systemd.so ] || { stop; exit 0; }
Which is a wrongly written script. It assumes that there is at most one file matching the wildcard. It is not true in my system.
If your system have both libpam-systemd:amd64 and libpam-systemd:i386 then:
# ls /lib/*/security/pam_systemd.so
/lib/i386-linux-gnu/security/pam_systemd.so /lib/x86_64-linux-gnu/security/pam_systemd.so
and you get the following:
# cat /var/log/upstart/systemd-logind.log
/proc/self/fd/9: 4: [: /lib/i386-linux-gnu/security/pam_systemd.so: unexpected operator
systemd-logind stop/pre-start, process 2462
systemd-logind does not start at all. This causes many bad things to
happen later.
There are many ways to fix this. For my purposes I removed the faulty
line from the file. I don't know what is the expected behaviour. Maybe
this one:
ls /lib/*/security/pam_systemd.so &> /dev/null || { stop; exit 0; }
This bug might be the root cause of other bugs. Like this one:
#1372187 (and #1377727)
SRU TEST CASE
=============
- On an amd64 system, run "sudo apt-get install libpam-systemd:i386"
- Then run "sudo restart systemd-logind"
- On current trusty this will result in stop/waiting, with the error in /var/log/upstart/systemd-logind.log as above.
- With this fix this will result in start/running and no error.
My system info:
# lsb_release -rd
Description: Ubuntu 14.04.1 LTS
Release: 14.04
# apt-cache policy libpam-systemd
libpam-systemd:
Installed: 204-5ubuntu20.7
Candidate: 204-5ubuntu20.7
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1382510/+subscriptions
References