From 82ff72f827b9bd7f91d30a09d35e42b25d2a7344 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 14 Jun 2013 12:10:49 -0700 Subject: [PATCH] ceph-disk: work around buggy rhel/centos parted parted on RHEL/Centos prefixes the *machine readable output* with 1b 5b 3f 31 30 33 34 68 Note that the same thing happens when you 'import readline' in python. Work around it! Signed-off-by: Sage Weil --- src/ceph-disk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/ceph-disk b/src/ceph-disk index 13d9f8203cef1..1d1a1501e79e0 100755 --- a/src/ceph-disk +++ b/src/ceph-disk @@ -637,6 +637,11 @@ def get_free_partition_index(dev): raise Error('parted failed to output anything') lines = str(lines).splitlines(True) + # work around buggy libreadline(?) library in rhel/centos. + idiot_prefix = '\x1b\x5b\x3f\x31\x30\x33\x34\x68'; + if lines[0].startswith(idiot_prefix): + lines[0] = lines[0][8:] + if lines[0] not in ['CHS;\n', 'CYL;\n', 'BYT;\n']: raise Error('weird parted units', lines[0]) del lines[0] -- 2.39.5