Yosemite 在启动时以 Root 身份运行命令(无需密码)

Yosemite 在启动时以 Root 身份运行命令(无需密码)

我运行的是 OS X Yosemite,并且我想在启动时始终以 root 身份运行该命令:

tcpdump -i en0 'icmp and icmp[icmptype]=icmp-echo' >> /var/vtcakavsmoace/Desktop/ping_information.txt

有没有办法以 root 身份在启动时或登录时执行此操作任何用户?

答案1

找到了答案——它与我预期的有点不同,但是,嘿,它有效。

以下是我按照操作顺序编写的代码。

su
Password:
sh-3.2# crontab -e

这将编辑 root 的 cron 任务。运行此命令时,它将打开 vi 编辑界面。

要使进程在启动时并在后台运行,您需要点击i并输入以下内容:

@reboot <command> & echo Doing the command.

这使得它<command>以 root 身份在后台运行,而不会停止启动过程。我输入了以下内容:

@reboot tcpdump -i en0 'icmp and icmp[icmptype]=icmp-echo' >> /var/vtcakavsmoace/Desktop/ping_queries.txt & echo Now Returning Ping...

然后敲击esc键盘上的 ,然后ZZ(需要大写)。这保存了 cron 作业,并且在启动时,它运行得非常顺畅!

资料来源:

https://stackoverflow.com/questions/15395479/why-ive-got-no-crontab-entry-on-os-x-when-using-vim

http://www.raspberrypi-spy.co.uk/2013/07/running-a-python-script-at-boot-using-cron/

https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/ScheduledJobs.html

相关内容