tags = lv.getTags() for t in tags: #Remove tag lv.removeTag(t) lv.deactivate() #Try to rename lv.rename("python_lvm_renamed") print('LV name= ', lv.getName()) lv.remove() vg.close() else: print('No free space available to create demo lv!') if __name__ == '__main__': #What version print('lvm version=', lvm.getVersion()) #Get a list of volume group names vg_names = lvm.listVgNames() #For each volume group display some information about each of them for vg_i in vg_names: print_vg(vg_i) #Demo creating a logical volume create_delete_logical_volume()
import os import fnmatch import time from datetime import datetime import subprocess try: import lvm # Check that lvm2 is at least 2.2.99... In theory hacked versions of # .98 work, but meh. _ver = lvm.getVersion() # Looks liks: 2.02.84(2) (2011-02-09) _ver = _ver.split()[0] _ver = _ver.split('(')[0] _ver = tuple(map(int, _ver.split('.'))) if _ver < (2, 2, 99): lvm = None except: lvm = None _ver = None def _is_origin(lv): snap = lv.getAttr() # snap=(<value>, <is settable>) if not snap[0]: # Broken??
def test_version(self): version = lvm.getVersion() self.assertNotEquals(version, None) self.assertEquals(type(version), str) self.assertTrue(len(version) > 0)
import os import fnmatch import time import subprocess try: import lvm # Check that lvm2 is at least 2.2.99... In theory hacked versions of # .98 work, but meh. _ver = lvm.getVersion() # Looks liks: 2.02.84(2) (2011-02-09) _ver = _ver.split()[0] _ver = _ver.split('(')[0] _ver = tuple(map(int, _ver.split('.'))) if _ver < (2, 2, 99): lvm = None except: lvm = None _ver = None def _is_origin(lv): snap = lv.getProperty("lv_attr") # snap=(<value>, <is settable>) if not snap[0]: # Broken?? return None return snap[0][0] in ('o', 'O')