module OSwitch::OS::Linux

Linux specific code.

Constants

BLACKLIST

Public Instance Methods

gid() click to toggle source
# File lib/oswitch/os/linux.rb, line 17
def gid
  Process.gid
end
mountpoints() click to toggle source
# File lib/oswitch/os/linux.rb, line 21
def mountpoints
  volumes = IO.readlines('/proc/mounts')
    .map { |line| line.split(/\s+/)[1] }
    .map { |path| unescape(path)       }
  volumes = volumes | Dir['/*']

  volumes.reject! do |path|
    (path =~ BLACKLIST) || !File.readable?(path) || !File.directory?(path)
  end

  volumes << home
end
uid() click to toggle source
# File lib/oswitch/os/linux.rb, line 13
def uid
  Process.uid
end

Private Instance Methods

unescape(mount) click to toggle source
# File lib/oswitch/os/linux.rb, line 36
def unescape(mount)
  mount
    .gsub(/\\040/, " ")
    .gsub(/\\012/, "\n")
    .gsub(/\\134/, "\\")
    .gsub(/\\011/, "\t")
end