How to set cronjob with non-root user?

匿名 (未验证) 提交于 2019-12-03 00:46:02

问题:

Error : crontab: must be suid to work properly

I want to set cronjob in docker container with non-root user. Is it possible to set a cron without using sudo and without installing cron? I am using alpine docker container.

回答1:

Yes you can run its own, cron in specific user without sudo, As each user will be having the crontab file no need to install it explicitly. to run crontab of any user, use -u option , please note that user must be privileged to use -u

 $ crontab -u <username> -e 


回答2:

/etc/crontab is the system wide crontab.

The format of /etc/crontab is like this:

# m h dom mon dow user      command *   *  *   *   *  someuser  echo 'foo' 

while crontab -e is per user, it's worth mentioning with no -u argument the crontab command goes to the current users crontab. You can do crontab -e -u <username> to edit a specific users crontab.

Notice in a per user crontab there is no 'user' field.

# m h  dom mon dow  command *   *   *   *   *   echo 'foo' 

An aspect of crontabs that may be confusing is that root also has its own crontab. e.g. crontab -e -u root will not edit /etc/crontab

See Configuring cron for more information: https://www.freebsd.org/doc/handbook/configtuning-cron.html

In most Linux distros, per user crontabs are typically stored in: /var/spool/cron/crontabs/<username>



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!