2016-12-16 10 views
-1

Я не могу создать каталог с помощью sudo priveleges от пользователя root. Если я вхожу в систему для пользователя, я могу создать каталог под/root, используя sudo. Кроме того, я добавил, чтобы все команды в файле /etc/sudoers и детали ниже:Не удалось создать каталог с использованием sudo -u username mkdir/var/log/test

[[email protected] home]# cat /etc/sudoers | grep tes 
test ALL= NOPASSWD: ALL 

Ошибка

[корень @ Linux домой] # Суд -u тест MkDir/вар/Журнал/test3

MkDir: не может создать каталог '/ вар/журнал/tEST3': Permission Denied

Любые идеи?

Благодаря

+0

Спасибо за ваш ответ. Но я могу создать каталог, если логин как пользователь, использующий sudo. Пожалуйста, дайте мне знать достаточное разрешение для пользователя создавать каталог с помощью commads (sudo -u username mkdir/var/log/test) – Mohammed

ответ

0

Выполнив «SUDO -u тест», вы даете себе более низкие привилегии, чем пользователь Roor, потому что вы запускаете команду, как «тест» пользователя, а не «корень». Из корневого пользователя, вы можете просто запустить:

mkdir /var/log/test3

Читать man sudo для получения дополнительной информации.

Или:

Run visudo и раскомментируйте группу колеса, затем добавьте тест пользователя в группу колеса.

Если вы не возражаете, я спрашиваю, зачем вам нужно создать каталог как определенного пользователя от пользователя root? Тем более, что каталог, который вы создаете, не зависит от пользователя?

Кроме того, в файле sudoers, вы должны, что добавили test ALL=(ALL) NOPASSWD: ALL, не test ALL= NOPASSWD: ALL

+0

У меня есть двоичный файл, который создает несколько каталогов и файлов, которые находятся под/root. При выполнении двоичного файла папки не создаются из-за проблемы с разрешением, но двоичный файл работает с правами пользователя. Все идеи? – Mohammed

+0

Я не могу комментировать любую публикацию самостоятельно, поэтому я обновляю свой оригинальный пост. Но это звучит как проблема собственности, а не –

+0

Но это звучит как проблема с владением, а не проблема эскалации системных привилегий. Посмотрите на это: https://wiki.archlinux.org/index.php?title=File_permissions_and_attributes&redirect=no#Changing_ownership –

0

sudo является мощным инструментом для управления разрешением для не пользователей корня. Если вы root, вы можете вместо этого использовать команду su.

См. man su.

su - username -c 'mkdir /tmp/testfile' 

Тогда

ls -l /tmp/testfile 

, чтобы увидеть, кто принадлежит этот файл.