Module: Process

Defined in:
lib/workety/extensions/process.rb

Class Method Summary collapse

Class Method Details

.change_privilegies(user, group) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
# File 'lib/workety/extensions/process.rb', line 26

def self.change_privilegies user, group
  user = user ? Etc.getpwnam(user) : Etc.getpwuid(Process.euid)
  group = group ? Etc.getgrnam(group) : Etc.getgrgid(user.gid)
  
  Rails.logger.chown_logfile(user.uid, group.gid) if Rails.logger.respond_to?(:chown_logfile)
  
  Process.initgroups(user.name, group.gid)
  
  Process::GID.change_privilege(group.gid) 
  Process::UID.change_privilege(user.uid)
end