Как работать, SUDO … управляет в cronjobs в Ubuntu 16.04?

Существуют определенные терминальные команды, которые могут только быть выполнены как пользователь root. Если мы пытаемся выполнить их без sudo ключевое слово, они перестали работать с Permission denied ошибка. Примером была бы команда для создания каталога/папки в определенных местоположениях.

Я должен выполнить одну такую команду как часть задания крона в моей Ubuntu 16.04. Обычно я мог выполнить команду с sudo ключевое слово в терминале и мне предложили бы ввести пароль пользователя root, и затем команда будет выполняться успешно.

Но теперь, когда я должен ввести эту команду как часть задания крона в моем crontab файл, как я делаю это? Как я выполняю такую команду как часть cronjob?

2
задан 20 August 2017 в 14:53

2 ответа

Просто выполненный crontab -e как пользователь root. Это выполнило бы Вашу команду с корневым разрешением и нет никакой потребности добавить sudo перед ним.

Однако Вы не можете войти в систему с пользователем root, и необходимо выполнить задание как задание крона, Вы должны указанный полный путь в файле крона:

 $ * * * * * /usr/bin/sudo /your/command

Также можно добавить NOPASSWD перед Вашей командой в /etc/sudoers файл к команде выполнения как корень, но без пароля.

5
ответ дан 2 December 2019 в 01:29

Другая опция состоит в том, чтобы поместить его в crontab в масштабе всей системы в /etc/crontab (или в файле в /etc/cron.d), где можно указать пользователя, каждая задача выполняется в:

* * * * * root mkdir /foo/bar
4
ответ дан 2 December 2019 в 01:29

Другие вопросы по тегам:

Похожие вопросы: