I'm getting more SELinux-related weirdness on my x86_64 rawhide box. I just did a reboot after an update, and init croaked with:
/sbin/init: symbol lookup error: /sbin/init: undefined symbol: selinux_getenforcemode
Needless to say, I didn't get the nice graphical login screen I was hoping for. Tossing an older SysVinit package onto the system made it bootable, but this episode does bring to mind a few questions:
- Why am I getting things failing with weird, missing selinux symbols? And why is nobody else complaining about it?
- Why isn't init staticly linked? As a general rule, I like it better when init actually works regardless of what else might be hosed on the system.
- Any chance you could cram a couple more colons into the error message?
The most pressing question for me is the "why only me?" part. Where is selinux_getenforcemode supposed to be defined? libselinux.so would seem to be a likely one, but I don't find it there...
Thanks,
jon
Jonathan Corbet Executive editor, LWN.net corbet@lwn.net
Jonathan Corbet wrote:
I'm getting more SELinux-related weirdness on my x86_64 rawhide box. I just did a reboot after an update, and init croaked with:
/sbin/init: symbol lookup error: /sbin/init: undefined symbol: selinux_getenforcemode
You need to update you libselinux rpm.
Needless to say, I didn't get the nice graphical login screen I was hoping for. Tossing an older SysVinit package onto the system made it bootable, but this episode does bring to mind a few questions:
- Why am I getting things failing with weird, missing selinux symbols?
And why is nobody else complaining about it?
You must have a partially upgraded system
- Why isn't init staticly linked? As a general rule, I like it better
when init actually works regardless of what else might be hosed on the system.
I know I have read a reason for this, but do not know it off hand.
- Any chance you could cram a couple more colons into the error message?
Yes this does need a colonoscapy.
The most pressing question for me is the "why only me?" part. Where is selinux_getenforcemode supposed to be defined? libselinux.so would seem to be a likely one, but I don't find it there...
Upgrade to the lastest libselinux.
Thanks,
jon
Jonathan Corbet Executive editor, LWN.net corbet@lwn.net
Daniel J Walsh dwalsh@redhat.com wrote:
/sbin/init: symbol lookup error: /sbin/init: undefined symbol: selinux_getenforcemode
You need to update you libselinux rpm.
I'm fully prepared to believe this. According to yum, however, I *am* at the latest libselinux.
Hmm...a quick query shows that my system has:
libselinux-1.6-3 libselinux-1.13.4-1 libselinux-devel-1.13.4-1
Both packages happily claim the same set of binaries in /usr/bin. The 1.6 version has /lib64/libselinux.so.1, while 1.13.4 has a version in /lib. Thus, it *looks* to me like the 32-bit version is at 1.13.4, while the 64-bit version is stuck at 1.6. Could it simply be that nobody has gotten around to putting up a current version for x86_64?
Hmm again...my yum cache currently has:
libselinux-1.13.3-2.i386.rpm libselinux-devel-1.13.3-2.x86_64.rpm libselinux-1.13.4-1.i386.rpm libselinux-devel-1.13.4-1.x86_64.rpm
So the -devel package is there for x86_64, but libselinux is not...?
Thanks,
jon
Jonathan Corbet Executive editor, LWN.net corbet@lwn.net