Как я могу проверить наличие root, когда пользователь запускает Perl-скрипт - PullRequest
9 голосов
/ 12 марта 2011

Я работаю над сценарием для создания файла конфигурации, который я хочу сохранить в / etc / solignis. Когда я запускаю скрипт как пользователь с ограниченными правами, он не позволяет мне создавать каталог или записывать файл. Таким образом, сценарий должен запускаться от имени sudo или пользователя root, как я могу проверить, является ли пользователь root или, по крайней мере, пользователем sudo?

Ответы [ 4 ]

24 голосов
/ 12 марта 2011

Если $> (он же $EFFECTIVE_USER_ID если вы use English) не равен нулю, то пользователь не является пользователем root.

4 голосов
/ 29 июля 2012

XAppSoftware: как проверить пользователя root имеет решение:

my $login = (getpwuid $>);
die "must run as root" if $login ne 'root';
0 голосов
/ 14 июля 2015

У меня был тот же вопрос, и я использовал результаты всех трех предыдущих ответов:

die "Must run as root\n" if $> != 0;
0 голосов
/ 01 мая 2013
if ( $< != 0 ) {
print "This script must be run as root\n"; 
exit (0);
}
...