From 5f40365c453128f2ee7f0a22f11eb3434fedd64a Mon Sep 17 00:00:00 2001 From: Pavel Moravec Date: Sun, 14 Oct 2018 14:41:34 +0200 Subject: [PATCH] [block] proper parsing of luks partition on self device Simplify identification of LUKS partitions by collecting lsblk with option -l, such that the device name is the very first string every time. That is required for LUKS partition located on the device itself where standard lsblk output does not contain '|-' before the device name. Resolves: #1449 Signed-off-by: Pavel Moravec --- sos/plugins/block.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sos/plugins/block.py b/sos/plugins/block.py index 059686c5..e7e25bba 100644 --- a/sos/plugins/block.py +++ b/sos/plugins/block.py @@ -27,11 +27,11 @@ class Block(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin): return out for line in lsblk_out.splitlines(): # find in output lines like - # |-sda2 crypto_LUKS - # and separate device name - it will be 1st string on the line - # after first '-' + # sda2 crypto_LUKS + # loop0 crypto_LUKS + # and separate device name - it will be the 1st string on the line if 'crypto_LUKS' in line: - dev = line.split()[0].split('-', 1)[1] + dev = line.split()[0] out.append(dev) return out @@ -67,7 +67,7 @@ class Block(Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin): "fdisk -l %s" % disk_path ]) - lsblk_file = self.get_cmd_output_now("lsblk -f -a") + lsblk_file = self.get_cmd_output_now("lsblk -f -a -l") # for LUKS devices, collect cryptsetup luksDump if lsblk_file: for dev in self.get_luks_devices(lsblk_file): -- 2.17.2