Я хочу разрешить одному пользователю запускать grep (через sudo) и grep для одной конкретной строки в одном конкретном файле. Я не хочу, чтобы этот пользователь мог запускать grep для всех файлов. Пользователь не имеет доступа для чтения к файлу, поэтому требуется использовать sudo. Я пытаюсь написать проверку nagios, который greps файл журнала другой службы на машине.
Однако это не работает, sudo продолжает спрашивать пароль.
Моя команда: sudo grep "string I want (" /var/log/thefilename.log
(да, есть (
строка и некоторые пробелы в строке, которую я хочу grep)
/etc/sudoers.d/user-can-grep
имеет это содержание:
user ALL=(root) NOPASSWD: /bin/grep "string I want (" /var/log/thefilename.log
Этот файл sudoers принадлежит root:root
и имеет разрешения-r--r-----
Сервер Ubuntu верен 14.04.3 LTS.
Как я могу сделать эту работу?
sudo
.
grep
и which grep
сообщает, что использует /bin/grep
. AFAIK в файле sudo необходимо указать полный путь к двоичному файлу, даже если вы вызываете его без полного пути.