Viewing file: block.py (1.78 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# 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.
import os from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin
class Block(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin): """Block device information """
plugin_name = 'block' profiles = ('storage', 'hardware')
def setup(self): self.add_copy_spec("/proc/partitions")
self.add_cmd_output([ "lsblk", "blkid -c /dev/null", "ls -lanR /dev", "ls -lanR /sys/block" ])
# legacy location for non-/run distributions self.add_copy_spec([ "/etc/blkid.tab", "/run/blkid/blkid.tab" ])
if os.path.isdir("/sys/block"): for disk in os.listdir("/sys/block"): if disk in [".", ".."] or disk.startswith("ram"): continue disk_path = os.path.join('/dev/', disk) self.add_cmd_output([ "udevadm info -ap /sys/block/%s" % (disk), "parted -s %s unit s print" % (disk_path), "fdisk -l %s" % disk_path ])
# vim: et ts=4 sw=4
|