Module: OSwitch::OS::Linux

Defined in:
lib/oswitch/os/linux.rb

Overview

Linux specific code.

Constant Summary collapse

BLACKLIST =
%r{
^/$|
^/(bin|boot|dev|etc|home|lib|lib64|lost\+found|opt|proc|
  run(?!/media)|sbin|srv|sys|tmp|usr|var|
  initrd.img|initrd.img.old|vmlinuz|vmlinuz.old)
}x

Instance Method Summary collapse

Instance Method Details

#gidObject



17
18
19
# File 'lib/oswitch/os/linux.rb', line 17

def gid
  Process.gid
end

#mountpointsObject



21
22
23
24
25
26
27
28
29
30
31
32
# 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

#uidObject



13
14
15
# File 'lib/oswitch/os/linux.rb', line 13

def uid
  Process.uid
end