class Freydis::Disk
Public Class Methods
new(dev)
click to toggle source
# File lib/freydis/disk.rb, line 5 def initialize(dev) @disk = Freydis::Guard.disk(dev) @dev = "/dev/#{@disk}" end
Public Instance Methods
complete_info()
click to toggle source
# File lib/freydis/disk.rb, line 14 def complete_info `lsblk -dno "NAME,LABEL,FSTYPE,SIZE" #{@dev}`.chomp end
encrypt(data)
click to toggle source
# File lib/freydis/disk.rb, line 25 def encrypt(data) search_id(data) puts "id -> #{data.options[:disk_id]}" data.save cryptsetup = Freydis::Cryptsetup.new(data) cryptsetup.close cryptsetup.encrypt cryptsetup.open cryptsetup.format populate_data(data) puts "uuid -> #{data.options[:disk_uuid]}" puts "partuuid -> #{data.options[:disk_partuuid]}" data.save cryptsetup.close end
populate_data(data)
click to toggle source
# File lib/freydis/disk.rb, line 18 def populate_data(data) puts "Checking IDs on #{@disk}..." data.options[:disk_uuid] = search_uuid data.options[:disk_id] = search_id data.options[:disk_partuuid] = search_partuuid end
search_id()
click to toggle source
# File lib/freydis/disk.rb, line 61 def search_id Dir.glob("/dev/disk/by-id/*").each { |f| if File.readlink(f).match(/#{@disk}/) return f.delete_prefix("/dev/disk/by-id/") end } end
search_partuuid()
click to toggle source
# File lib/freydis/disk.rb, line 45 def search_partuuid Dir.glob("/dev/disk/by-partuuid/*").each { |f| if File.readlink(f).match(/#{@disk}/) return f.delete_prefix("/dev/disk/by-partuuid/") end } end
search_uuid()
click to toggle source
# File lib/freydis/disk.rb, line 53 def search_uuid Dir.glob("/dev/disk/by-uuid/*").each { |f| if File.readlink(f).match(/#{@disk}/) return f.delete_prefix("/dev/disk/by-uuid/") end } end
size()
click to toggle source
# File lib/freydis/disk.rb, line 10 def size `lsblk -dno SIZE #{@dev}`.chomp end