Когда задание cron выполняется с какой привилегией оно выполняется?
Я не уверен в этом. Это с теми же привилегиями пользователя, который добавил его через crontab -e
?
Когда задание cron выполняется с какой привилегией оно выполняется?
Я не уверен в этом. Это с теми же привилегиями пользователя, который добавил его через crontab -e
?
Ответы:
Вы можете указать пользователя в системных записях crontab следующим образом:
# For details see man 4 crontabs
# Example of job definition:
.---------------- minute (0 - 59)
| .------------- hour (0 - 23)
| | .---------- day of month (1 - 31)
| | | .------- month (1 - 12) OR jan,feb,mar,apr ...
| | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
| | | | |
* * * * * user-name command to be executed
6-й аргумент может быть именем пользователя. Дополнительно вы можете поместить скрипты в /etc/cron.d
каталог. Сценарии принимают ту же форму, что и записи в crontab, описанные выше, например:
# /etc/cron.d/clamav-update
## Adjust this line...
MAILTO=root
## It is ok to execute it as root; freshclam drops privileges and becomes
## user 'clamav' as soon as possible
0 */3 * * * root /usr/share/clamav/freshclam-sleep
Вы можете поместить сценарии в эти каталоги, но они предназначены для запуска от имени пользователя root:
Наконец, вы можете создать пользовательские записи в crontab, выполнив эту команду от имени данного пользователя:
$ crontab -e
Эти записи хранятся в файлах с тем же именем, что и пользователь в этом каталоге /var/spool/cron/
:
$ sudo ls -l /var/spool/cron/
-rw------- 1 saml root 0 Jun 6 06:43 saml
Да , однако, задания, которые добавляются вручную в системный crontab (edit / etc / crontab), будут выполняться с абсолютными разрешениями (т.е. запускаться с правами root), если вы не укажете другого пользователя.
cronjob
параметр