On Unix, find if user who executed the program is root?

前端 未结 2 597
别那么骄傲
别那么骄傲 2021-02-18 13:54

I\'m writing a rake script and would like to detect (using Ruby rather than bash if possible) if the user who executed the rake script has root privileges.

If it is not

相关标签:
2条回答
  • 2021-02-18 14:05

    I don't know Ruby, but what you want to check for is if the user ID is 0. In C, you would do this by checking getuid(). From the Unix command line, you could also check the output of id -u.

    0 讨论(0)
  • 2021-02-18 14:14

    Use uid or euid in the Process class:

    raise 'Must run as root' unless Process.uid == 0
    
    0 讨论(0)
提交回复
热议问题