aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sos/plugins/libraries.py19
1 files changed, 18 insertions, 1 deletions
diff --git a/sos/plugins/libraries.py b/sos/plugins/libraries.py
index 4acdeb57..03f79dab 100644
--- a/sos/plugins/libraries.py
+++ b/sos/plugins/libraries.py
@@ -24,6 +24,23 @@ class Libraries(Plugin, RedHatPlugin, UbuntuPlugin):
self.add_copy_spec(["/etc/ld.so.conf", "/etc/ld.so.conf.d"])
if self.get_option("ldconfigv"):
self.add_cmd_output("ldconfig -v -N -X")
- self.add_cmd_output("ldconfig -p -N -X")
+
+ ldconfig_file = self.get_cmd_output_now("ldconfig -p -N -X")
+
+ if not ldconfig_file:
+ return
+
+ # Collect library directories from ldconfig's cache
+ dirs = set()
+ with open(ldconfig_file) as f:
+ for l in f.read().splitlines():
+ s = l.split(" => ", 2)
+ if len(s) != 2:
+ continue
+ dirs.add(s[1].rsplit('/', 1)[0])
+
+ if dirs:
+ self.add_cmd_output("ls -lanH %s" % " ".join(dirs),
+ suggest_filename="ld_so_cache")
# vim: set et ts=4 sw=4 :