无论如何,您都需要访问 root 用户帐户。
- 您可以按照建议将其添加到根 crontab
- 您可以按照建议使用 sudo
- 您可以使用 setuid 位。setuid 位的问题是它需要是一个已编译的程序。如果已编译,您可以“chmod 4755”并将文件的所有者设置为root,它将以root身份运行。如果它没有被编译,你可以用 C(或任何其他编译的编程语言)编写一个小型包装器,它只调用你的脚本,并在包装器上设置 setuid,并确保包装器归 root 所有。
我的建议?使用根 crontab。这就是它的目的。
此外,在 crontab 中没有用户条目,正如 sth 所建议的那样......语法是:
# .---------------- 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
# | | | | |
# * * * * * command to be executed
如果您想以 root 身份在 crontab 中输入某些内容,只需登录到您的 root 帐户,“crontab -e”,然后瞧……root crontab。