Sha256: 3c46773e8d11246ac626b9f378f4addad915dc7212ea41188eef949fa1c072fc
Contents?: true
Size: 1.66 KB
Versions: 1
Compression:
Stored size: 1.66 KB
Contents
# LinuxAdmin Logical Volume Representation # # Copyright (C) 2013 Red Hat Inc. # Licensed under the MIT License class LinuxAdmin class LogicalVolume < Volume # logical volume name attr_accessor :name # volume group name attr_accessor :volume_group # logical volume size in sectors attr_accessor :sectors # other fields available: # logical volume access # logical volume status # internal logical volume number # open count of logical volume # current logical extents associated to logical volume # allocated logical extents of logical volume # allocation policy of logical volume # read ahead sectors of logical volume # major device number of logical volume # minor device number of logical volume def initialize(args = {}) @name = args[:name] @volume_group = args[:volume_group] @sectors = args[:sectors] end def extend_with(vg) run!(cmd(:lvextend), :params => [self.name, vg.name]) self end def self.create(name, vg, size) self.scan # initialize local logical volumes run!(cmd(:lvcreate), :params => { '-n' => name, nil => vg.name, '-L' => size}) lv = LogicalVolume.new :name => name, :volume_group => vg, :sectors => size @lvs << lv lv end def self.scan @lvs ||= begin scan_volumes(cmd(:lvdisplay)) do |fields, vg| LogicalVolume.new(:name => fields[0], :volume_group => vg, :sectors => fields[6].to_i) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
linux_admin-0.2.1 | lib/linux_admin/logical_volume.rb |