89b86368f8
Update sos in rawhide to the upstream 3.2 release and additional patches including the fix for CVE-2015-7529.
480 lines
15 KiB
Diff
480 lines
15 KiB
Diff
From b502b9f51b4d314ed6fa76d66a6db8aea7d32c12 Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Sun, 31 May 2015 16:00:16 +0200
|
|
Subject: [PATCH 1/8] [startup] rename plugin to 'services'
|
|
|
|
The plugin is supposed to collect information about services
|
|
rather than about their startup.
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
---
|
|
sos/plugins/services.py | 56 +++++++++++++++++++++++++++++++++++++++++++++++++
|
|
sos/plugins/startup.py | 56 -------------------------------------------------
|
|
2 files changed, 56 insertions(+), 56 deletions(-)
|
|
create mode 100644 sos/plugins/services.py
|
|
delete mode 100644 sos/plugins/startup.py
|
|
|
|
diff --git a/sos/plugins/services.py b/sos/plugins/services.py
|
|
new file mode 100644
|
|
index 0000000..606a135
|
|
--- /dev/null
|
|
+++ b/sos/plugins/services.py
|
|
@@ -0,0 +1,56 @@
|
|
+# This program is free software; you can redistribute it and/or modify
|
|
+# it under the terms of the GNU General Public License as published by
|
|
+# the Free Software Foundation; either version 2 of the License, or
|
|
+# (at your option) any later version.
|
|
+
|
|
+# This program is distributed in the hope that it will be useful,
|
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
+# GNU General Public License for more details.
|
|
+
|
|
+# You should have received a copy of the GNU General Public License
|
|
+# along with this program; if not, write to the Free Software
|
|
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
+
|
|
+from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin
|
|
+
|
|
+
|
|
+class Services(Plugin):
|
|
+ """System services
|
|
+ """
|
|
+
|
|
+ plugin_name = "services"
|
|
+ profiles = ('system', 'boot')
|
|
+
|
|
+ option_list = [("servicestatus", "get a status of all running services",
|
|
+ "slow", False)]
|
|
+
|
|
+ def setup(self):
|
|
+ self.add_copy_spec([
|
|
+ "/etc/inittab",
|
|
+ "/etc/rc.d"
|
|
+ ])
|
|
+ if self.get_option('servicestatus'):
|
|
+ self.add_cmd_output("/sbin/service --status-all")
|
|
+ self.add_cmd_output("/sbin/runlevel")
|
|
+
|
|
+
|
|
+class RedHatServices(Services, RedHatPlugin):
|
|
+
|
|
+ def setup(self):
|
|
+ super(RedHatServices, self).setup()
|
|
+ self.add_cmd_output("/sbin/chkconfig --list", root_symlink="chkconfig")
|
|
+
|
|
+
|
|
+class DebianServices(Services, DebianPlugin, UbuntuPlugin):
|
|
+
|
|
+ def setup(self):
|
|
+ super(DebianServices, self).setup()
|
|
+ self.add_copy_spec("/etc/rc*.d")
|
|
+
|
|
+ self.add_cmd_output("/sbin/initctl show-config",
|
|
+ root_symlink="initctl")
|
|
+ if self.get_option('servicestatus'):
|
|
+ self.add_cmd_output("/sbin/initctl list")
|
|
+
|
|
+# vim: et ts=4 sw=4
|
|
diff --git a/sos/plugins/startup.py b/sos/plugins/startup.py
|
|
deleted file mode 100644
|
|
index 9d92370..0000000
|
|
--- a/sos/plugins/startup.py
|
|
+++ /dev/null
|
|
@@ -1,56 +0,0 @@
|
|
-# This program is free software; you can redistribute it and/or modify
|
|
-# it under the terms of the GNU General Public License as published by
|
|
-# the Free Software Foundation; either version 2 of the License, or
|
|
-# (at your option) any later version.
|
|
-
|
|
-# This program is distributed in the hope that it will be useful,
|
|
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
-# GNU General Public License for more details.
|
|
-
|
|
-# You should have received a copy of the GNU General Public License
|
|
-# along with this program; if not, write to the Free Software
|
|
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
-
|
|
-from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin
|
|
-
|
|
-
|
|
-class Startup(Plugin):
|
|
- """System startup
|
|
- """
|
|
-
|
|
- plugin_name = "startup"
|
|
- profiles = ('system', 'boot')
|
|
-
|
|
- option_list = [("servicestatus", "get a status of all running services",
|
|
- "slow", False)]
|
|
-
|
|
- def setup(self):
|
|
- self.add_copy_spec([
|
|
- "/etc/inittab",
|
|
- "/etc/rc.d"
|
|
- ])
|
|
- if self.get_option('servicestatus'):
|
|
- self.add_cmd_output("/sbin/service --status-all")
|
|
- self.add_cmd_output("/sbin/runlevel")
|
|
-
|
|
-
|
|
-class RedHatStartup(Startup, RedHatPlugin):
|
|
-
|
|
- def setup(self):
|
|
- super(RedHatStartup, self).setup()
|
|
- self.add_cmd_output("/sbin/chkconfig --list", root_symlink="chkconfig")
|
|
-
|
|
-
|
|
-class DebianStartup(Startup, DebianPlugin, UbuntuPlugin):
|
|
-
|
|
- def setup(self):
|
|
- super(DebianStartup, self).setup()
|
|
- self.add_copy_spec("/etc/rc*.d")
|
|
-
|
|
- self.add_cmd_output("/sbin/initctl show-config",
|
|
- root_symlink="initctl")
|
|
- if self.get_option('servicestatus'):
|
|
- self.add_cmd_output("/sbin/initctl list")
|
|
-
|
|
-# vim: et ts=4 sw=4
|
|
--
|
|
1.8.3.1
|
|
|
|
|
|
From 5204d62fdb362fb5cc4a897c90faa9539715fc74 Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Tue, 7 Jul 2015 13:03:14 +0200
|
|
Subject: [PATCH 2/8] [services] add "ls /var/lock/subsys"
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
---
|
|
sos/plugins/services.py | 5 ++++-
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/sos/plugins/services.py b/sos/plugins/services.py
|
|
index 606a135..ab9f8ce 100644
|
|
--- a/sos/plugins/services.py
|
|
+++ b/sos/plugins/services.py
|
|
@@ -32,7 +32,10 @@ class Services(Plugin):
|
|
])
|
|
if self.get_option('servicestatus'):
|
|
self.add_cmd_output("/sbin/service --status-all")
|
|
- self.add_cmd_output("/sbin/runlevel")
|
|
+ self.add_cmd_output([
|
|
+ "/sbin/runlevel",
|
|
+ "ls /var/lock/subsys"
|
|
+ ])
|
|
|
|
|
|
class RedHatServices(Services, RedHatPlugin):
|
|
--
|
|
1.8.3.1
|
|
|
|
|
|
From e00447e7ee346aa3be685a91ebba7cf208c4f205 Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Sun, 31 May 2015 16:04:19 +0200
|
|
Subject: [PATCH 3/8] [ntp] Collect "ntpq -p" output
|
|
|
|
Partially solves #570
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
---
|
|
sos/plugins/ntp.py | 5 ++++-
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/sos/plugins/ntp.py b/sos/plugins/ntp.py
|
|
index 0e39b9d..c0f731d 100644
|
|
--- a/sos/plugins/ntp.py
|
|
+++ b/sos/plugins/ntp.py
|
|
@@ -30,7 +30,10 @@ class Ntp(Plugin):
|
|
"/etc/ntp/step-tickers",
|
|
"/etc/ntp/ntpservers"
|
|
])
|
|
- self.add_cmd_output("ntptime")
|
|
+ self.add_cmd_output([
|
|
+ "ntptime",
|
|
+ "ntpq -p"
|
|
+ ])
|
|
|
|
|
|
class RedHatNtp(Ntp, RedHatPlugin):
|
|
--
|
|
1.8.3.1
|
|
|
|
|
|
From 83ef3aff955a33bb58c578479ac6b63a615b4521 Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Sun, 31 May 2015 16:07:06 +0200
|
|
Subject: [PATCH 4/8] [networking] Collect "ethtool -T $NIC"
|
|
|
|
Partially solves #570
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
---
|
|
sos/plugins/networking.py | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
diff --git a/sos/plugins/networking.py b/sos/plugins/networking.py
|
|
index f2b06a6..b2c74c1 100644
|
|
--- a/sos/plugins/networking.py
|
|
+++ b/sos/plugins/networking.py
|
|
@@ -184,6 +184,7 @@ class Networking(Plugin):
|
|
"ethtool -i "+eth,
|
|
"ethtool -k "+eth,
|
|
"ethtool -S "+eth,
|
|
+ "ethtool -T "+eth,
|
|
"ethtool -a "+eth,
|
|
"ethtool -c "+eth,
|
|
"ethtool -g "+eth
|
|
--
|
|
1.8.3.1
|
|
|
|
|
|
From 002cef3eddc288352d0b92f6272fbd2e85280e6e Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Sun, 31 May 2015 16:17:40 +0200
|
|
Subject: [PATCH 5/8] [ptp] Add new plugin for Precision time protocol
|
|
|
|
Partially resolves #570
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
---
|
|
sos/plugins/ptp.py | 36 ++++++++++++++++++++++++++++++++++++
|
|
1 file changed, 36 insertions(+)
|
|
create mode 100644 sos/plugins/ptp.py
|
|
|
|
diff --git a/sos/plugins/ptp.py b/sos/plugins/ptp.py
|
|
new file mode 100644
|
|
index 0000000..a6ac648
|
|
--- /dev/null
|
|
+++ b/sos/plugins/ptp.py
|
|
@@ -0,0 +1,36 @@
|
|
+# Copyright (C) 2015 Pavel Moravec <pmoravec@redhat.com>
|
|
+
|
|
+# This program is free software; you can redistribute it and/or modify
|
|
+# it under the terms of the GNU General Public License as published by
|
|
+# the Free Software Foundation; either version 2 of the License, or
|
|
+# (at your option) any later version.
|
|
+
|
|
+# This program is distributed in the hope that it will be useful,
|
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
+# GNU General Public License for more details.
|
|
+
|
|
+# You should have received a copy of the GNU General Public License
|
|
+# along with this program; if not, write to the Free Software
|
|
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
+
|
|
+from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin
|
|
+
|
|
+
|
|
+class Ptp(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin):
|
|
+ """Precision time protocol
|
|
+ """
|
|
+
|
|
+ plugin_name = "ptp"
|
|
+ profiles = ('system', 'services')
|
|
+
|
|
+ packages = ('linuxptp',)
|
|
+
|
|
+ def setup(self):
|
|
+ self.add_copy_spec([
|
|
+ "/etc/ptp4l.conf",
|
|
+ "/etc/timemaster.conf",
|
|
+ "/sys/class/ptp"
|
|
+ ])
|
|
+
|
|
+# vim: et ts=4 sw=4
|
|
--
|
|
1.8.3.1
|
|
|
|
|
|
From 72e2e32eaa97c6c76b61635dd0fafeb4dcc1aa7d Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Sun, 31 May 2015 16:19:29 +0200
|
|
Subject: [PATCH 6/8] [process] Collect few "ps" outputs
|
|
|
|
Partially solves $570
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
(edits for readability & line length)
|
|
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
---
|
|
sos/plugins/process.py | 9 ++++++++-
|
|
1 file changed, 8 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/sos/plugins/process.py b/sos/plugins/process.py
|
|
index 6ae189b..a643844 100644
|
|
--- a/sos/plugins/process.py
|
|
+++ b/sos/plugins/process.py
|
|
@@ -23,13 +23,20 @@ class Process(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin):
|
|
profiles = ('system',)
|
|
|
|
def setup(self):
|
|
+ ps_axo = "ps axo"
|
|
+ # process group and thread options
|
|
+ ps_group_opts = "pid,ppid,user,group,lwp,nlwp,start_time,comm,cgroup"
|
|
+ ps_sched_opts = "flags,state,uid,pid,ppid,pgid,sid,cls,pri,addr,sz,"
|
|
+ ps_sched_opts += "wchan,stime,tty,time,cmd"
|
|
self.add_copy_spec("/proc/sched_debug")
|
|
self.add_cmd_output("ps auxwww", root_symlink="ps")
|
|
self.add_cmd_output("pstree", root_symlink="pstree")
|
|
self.add_cmd_output("lsof -b +M -n -l", root_symlink="lsof")
|
|
self.add_cmd_output([
|
|
"ps auxwwwm",
|
|
- "ps alxwww"
|
|
+ "ps alxwww",
|
|
+ "%s %s" % (ps_axo, ps_group_opts),
|
|
+ "%s %s" % (ps_axo, ps_sched_opts)
|
|
])
|
|
|
|
# vim: et ts=4 sw=4
|
|
--
|
|
1.8.3.1
|
|
|
|
|
|
From 0b9a4c545582ed73f89ee4a7572ecb631633819e Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Sun, 31 May 2015 16:21:28 +0200
|
|
Subject: [PATCH 7/8] [sysvipc] Collect "ipcs -u"
|
|
|
|
Partially solves #570
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
---
|
|
sos/plugins/sysvipc.py | 5 ++++-
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/sos/plugins/sysvipc.py b/sos/plugins/sysvipc.py
|
|
index a0732e7..a98abf9 100644
|
|
--- a/sos/plugins/sysvipc.py
|
|
+++ b/sos/plugins/sysvipc.py
|
|
@@ -29,6 +29,9 @@ class SysVIPC(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin):
|
|
"/proc/sysvipc/sem",
|
|
"/proc/sysvipc/shm"
|
|
])
|
|
- self.add_cmd_output("ipcs")
|
|
+ self.add_cmd_output([
|
|
+ "ipcs",
|
|
+ "ipcs -u"
|
|
+ ])
|
|
|
|
# vim: et ts=4 sw=4
|
|
--
|
|
1.8.3.1
|
|
|
|
|
|
From fb7bbcf9e60002d75db383fac08244a7fa06a1d6 Mon Sep 17 00:00:00 2001
|
|
From: Pavel Moravec <pmoravec@redhat.com>
|
|
Date: Sun, 31 May 2015 16:24:23 +0200
|
|
Subject: [PATCH 8/8] [devices] New plugin to collect "udevadm info
|
|
--export-db"
|
|
|
|
Partially resolves #570
|
|
|
|
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
---
|
|
sos/plugins/devices.py | 28 ++++++++++++++++++++++++++++
|
|
1 file changed, 28 insertions(+)
|
|
create mode 100644 sos/plugins/devices.py
|
|
|
|
diff --git a/sos/plugins/devices.py b/sos/plugins/devices.py
|
|
new file mode 100644
|
|
index 0000000..5e0283a
|
|
--- /dev/null
|
|
+++ b/sos/plugins/devices.py
|
|
@@ -0,0 +1,28 @@
|
|
+# This program is free software; you can redistribute it and/or modify
|
|
+# it under the terms of the GNU General Public License as published by
|
|
+# the Free Software Foundation; either version 2 of the License, or
|
|
+# (at your option) any later version.
|
|
+
|
|
+# This program is distributed in the hope that it will be useful,
|
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
+# GNU General Public License for more details.
|
|
+
|
|
+# You should have received a copy of the GNU General Public License
|
|
+# along with this program; if not, write to the Free Software
|
|
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
+
|
|
+from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin
|
|
+
|
|
+
|
|
+class Devices(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin):
|
|
+ """ devices specific commands
|
|
+ """
|
|
+
|
|
+ plugin_name = 'devices'
|
|
+ profiles = ('system', 'hardware', 'boot')
|
|
+
|
|
+ def setup(self):
|
|
+ self.add_cmd_output("udevadm info --export-db")
|
|
+
|
|
+# vim: et ts=4 sw=4
|
|
--
|
|
1.8.3.1
|
|
|
|
From c05fa2947937a5adc3496c4e66b649633de054e9 Mon Sep 17 00:00:00 2001
|
|
From: Alexandru Juncu <alexj@linux.com>
|
|
Date: Tue, 24 Feb 2015 18:28:04 +0100
|
|
Subject: [PATCH] [last] information about login actions
|
|
|
|
This is useful information to be correlated with shutdown/reboot
|
|
events in /var/log/messages to identify graceful shutdowns/reboots
|
|
and lower false positives about system crashes.
|
|
|
|
Resolves #572.
|
|
|
|
Signed-off-by: Alexandru Juncu <alexj@linux.com>
|
|
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
---
|
|
sos/plugins/last.py | 33 +++++++++++++++++++++++++++++++++
|
|
1 file changed, 33 insertions(+)
|
|
create mode 100644 sos/plugins/last.py
|
|
|
|
diff --git a/sos/plugins/last.py b/sos/plugins/last.py
|
|
new file mode 100644
|
|
index 0000000..d6b791d
|
|
--- /dev/null
|
|
+++ b/sos/plugins/last.py
|
|
@@ -0,0 +1,33 @@
|
|
+# This program is free software; you can redistribute it and/or modify
|
|
+# it under the terms of the GNU General Public License as published by
|
|
+# the Free Software Foundation; either version 2 of the License, or
|
|
+# (at your option) any later version.
|
|
+
|
|
+# This program is distributed in the hope that it will be useful,
|
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
+# GNU General Public License for more details.
|
|
+
|
|
+# You should have received a copy of the GNU General Public License
|
|
+# along with this program; if not, write to the Free Software
|
|
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
+
|
|
+from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin
|
|
+
|
|
+
|
|
+class Last(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin):
|
|
+ """login information
|
|
+ """
|
|
+
|
|
+ plugin_name = 'last'
|
|
+ profiles = ('system',)
|
|
+
|
|
+ def setup(self):
|
|
+ self.add_cmd_output("last", root_symlink="last")
|
|
+ self.add_cmd_output([
|
|
+ "last reboot",
|
|
+ "last shutdown",
|
|
+ "lastlog"
|
|
+ ])
|
|
+
|
|
+# vim: et ts=4 sw=4
|
|
--
|
|
1.8.3.1
|
|
|