Я хочу разрешить одному пользователю запускать 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 необходимо указать полный путь к двоичному файлу, даже если вы вызываете его без полного пути.