我能够以root权限运行shell脚本。但是因为我需要从crontab运行它,所以我不能一直使用root权限。所以如何在不手动进入root的情况下运行它。
答案 0 :(得分:2)
您可以更改sudoers文件以接受在没有密码的情况下运行脚本
所以,你会添加这样的东西:
用户名ALL = NOPASSWD:/ path / to / script
请注意,如果这对您来说是新手,我建议您阅读sudoers文件和命令的格式,而不是盲目地复制该行,这样您就能真正理解这里发生了什么。
答案 1 :(得分:2)
Cron Jobs在Mac OS X中已经过时,你应该使用LaunchDaemons。
这是LaunchDaemons指南 https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/Introduction.html#//apple_ref/doc/uid/10000172i-SW1-SW1
并将其引用以在Mac OS X中创建定时作业 https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/ScheduledJobs.html#//apple_ref/doc/uid/10000172i-CH1-SW2
LaunchDaemons以root用户权限运行。