Questions tagged «launchd»

launchd是一个开源守护程序,旨在简化和加速* nix OS上进程的启动和停止。


5
如何以root用户身份运行启动命令
我有以下launchctl命令作为.plist文件。它已加载并设置为每天运行一次,但是它需要以root身份运行,我不确定如何进行验证。 另外,此cron作业基本上会CD到目录中并运行命令。我敢肯定,launchd有一个更好的方法来指定应该在其中运行命令的目录。 我怎么知道它是以root身份运行的,是否有更好的方式编写它? <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>dev.project.frontpage.feedparser</string> <key>ProgramArguments</key> <array> <string>cd</string> <string>/Users/eman/src/project/trunk/includes/;</string> <string>./feed-parser.php</string> <string>-c</string> <string>./feed-parser-config.xml</string> </array> <key>QueueDirectories</key> <array/> <key>StartCalendarInterval</key> <dict> <key>Hour</key> <integer>12</integer> <key>Minute</key> <integer>0</integer> </dict> <key>WatchPaths</key> <array/> </dict> </plist>
32 macos  mac  cron  root  launchd 

8
如何在Mac OS X中终止进程而不自行重启
此问题是从Stack Overflow 迁移而来的,因为可以在Super User上回答。 迁移 9年前。 当我sudo kill -9 [PID]使用正确的进程ID 运行时,该进程将停止,但随后将重新启动并具有新的PID。我正试图终止这一mysqld过程。 在终止进程时如何模仿活动监视器?在活动监视器中,当您按“退出进程”时,该进程将永久停止运行,并完全终止。我认为kill这样做会正确吗? 我使活动监视器和终端彼此相邻,以查看命令是否有效,但是每次执行此操作时sudo kill -9 [PID],活动监视器中的进程都不会消失,它只会刷新一个新的PID。 那么...如何mysqld通过终端取消进程?

7
无法在Yosemite中使用launchctl启动守护程序
我在其中放置了一个启动的守护进程,~/Library/LaunchAgents该守护进程在Mavericks中运行良好。但这不会在优胜美地公开测试版中开始。守护程序plist就像这样(我的用户名darksair使用UID 501) <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd > <plist version="1.0"> <dict> <key>Label</key> <string>org.darksair.retrmail</string> <key>ProgramArguments</key> <array> <string>/Users/darksair/bin/retrmail.py</string> </array> <key>KeepAlive</key> <false/> <key>StartInterval</key> <integer>300</integer> <key>LaunchOnlyOnce</key> <false/> <key>UserName</key> <string>darksair</string> <key>ProcessType</key> <string>Standard</string> <key>EnvironmentVariables</key> <dict> <key>PATH</key> <string>/Users/darksair/Python/bin:/Users/darksair/Python3/bin:/Users/darksair/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string> </dict> <key>StandardOutPath</key> <string>/Users/darksair/logs/retrmail.log</string> <key>StandardErrorPath</key> <string>/Users/darksair/logs/retrmail.log</string> </dict> </plist> 基本上应该~/bin/retrmail.py每5分钟运行一次。 我注意到在Yosemite中,launchd已升级到2.0,并且launchctl具有新命令。我试过了 sudo launchctl kickstart user/501/org.darksair.retrmail …



2
如何在不重新启动的情况下重新启动已启动的OS X?
当我运行Zotero / Firefox时,它们经常崩溃,并且我留下了僵尸进程。之后,我无法打开Zotero或Firefox的新实例。我想摆脱这些僵尸进程而不是重新启动,因此对于<pid>僵尸进程, $ ps -p <pid> -o ppid= 给我<parent_pid>和 ps aux | awk -v PID=<parent_pid> '$2 == PID {print $0}' 告诉我父进程是/sbin/launchd针对user的crippledlambda。 有没有办法在不终止我的系统的情况下重新启动它? sudo kill -1 <parent_pid> 什么也没做。我试过用脚本编写此代码并使用来运行它sudo: for i in `launchctl list | grep launchd | awk -v PID=<parent_pid> '$1==PID { print $NF }'`; do `launchctl stop $i && …

6
如何使用launchd注册代理
我无法安排与定期发布launchctl/ launchd在OS X(豹)。基本上,我无法在网络上找到逐步的说明列表,直观的方法不起作用。 该sync.plist文件中: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>net.madrat.utils.sync</string> <key>Program</key> <string>rsync</string> <key>ProgramArguments</key> <array> <string>-ar</string> <string>/path/to/folder/</string> <string>/path/to/backup/</string> </array> <key>StartInterval</key> <integer>7200</integer> </dict> </plist> 我把这个脚本放在路径中~/Library/LaunchAgents。 接下来,我已经使用了注册脚本 launchctl load ~/Library/LaunchAgents/sync.plist 最后,为了测试它是否有效,我开始了这项工作: launchctl start net.madrat.utils.sync - 没啥事儿。rsync在终端中手动执行命令会产生预期结果。 我很确定该作业已正确注册,因为如果我尝试启动一个不存在的作业,我会收到一条错误消息(我在上面的命令中没有得到)。 我做错了什么?
13 macos  launchd 

1
com.apple.launchd:com.apple.launchd.peruser错误
我已经读了几天系统日志文件中的这些错误。 25/11/11 21:31:43,373 com.apple.launchd: (com.apple.launchd.peruser.32697[92747]) getpwuid("32697") failed 25/11/11 21:31:43,374 com.apple.launchd: (com.apple.launchd.peruser.32697[92747]) Exited with code: 1 25/11/11 21:31:43,374 com.apple.launchd: (com.apple.launchd.peruser.32697) Throttling respawn: Will start in 10 seconds 我有OSX Lion 10.7.2。 这些消息每隔几秒钟就会遍历一次,我已经对getpwuid()进行了监视,这似乎是系统调用。 我还阅读了一些有关此问题的超级用户文章: https : //superuser.com/search?q=com.apple.launchd.peruser, 但在控制台中运行报告的命令并没有给我任何有关如何解决此问题的提示。 我已将此错误的首次出现追溯到11月20日,这是system.log文件的前几行: Nov 20 17:22:10 MacBook-Pro com.apple.backupd[45360]: Deleted /Volumes/Time Machine/Backups.backupdb/MacBook Pro/2011-11-18-215307 (64.9 MB) Nov 20 17:22:26 …


2
常见的Mac OS文件夹/设置要检查(尝试摆脱讨厌的自启动应用程序时)
如果有一个可以自行启动的应用程序,那么寻找它的最有效途径是什么?是否有人在哪里提供检查启动项,登录项,登录挂钩,Cron,内核扩展等的完整清单? 此时,我忘记了这些文件夹/ p​​list文件的一半在哪里。我希望有人可以分享一份备忘单。 基本上,我正在寻找Mac OS自动启动应用程序或脚本的最常见位置的列表(例如:在登录时或按计划执行等)

1
发射似乎忽略了优胜美地上的StartCalendarInterval
我尝试按启动时间及时更新Homebrew。我的plist文件显示在这里: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>ms.liu.homebrew.update</string> <key>UserName</key> <string>LiuMS</string> <key>ProcessType</key> <string>Background</string> <key>EnvironmentVariables</key> <key>ProgramArguments</key> <array> <string>/usr/local/bin/brew</string> <string>update</string> </array> <key>StartCalendarInterval</key> <dict> <key>Hour</key> <integer>20</integer> <key>Minute</key> <integer>0</integer> </dict> <key>StandardOutPath</key> <string>/usr/local/logs/ms.liu.homebrew.update.out</string> <key>StandardErrorPath</key> <string>/usr/local/logs/ms.liu.homebrew.update.err</string> </dict> </plist> 它确实以某种方式起作用:我可以launchctl start ms.liu.homebrew.update手动执行以更新我的Homebrew。但是,launchd不会定期执行此服务:stdout重定向到的文件的最后更改是在两天前。 我试图获取有关此服务的信息,但一无所获: > launchctl print user/%MyPID%/ms.liu.homebrew.update`` Could not find …

3
从com.apple.launchd中删除启动项
几个月前,我安装了一个程序,它具有我确实安装的启动选项。后来,我决定删除该程序,但是即使我卸载了该程序,它似乎也离开了启动脚本或项目...,并且尝试每隔几秒钟启动一次。 如何删除该物品? 这是从控制台来的 $ com.apple.launchd[1] (com.jft.PdaNetMac[24476]): Exited with exit code: 1 $ com.apple.launchd[1] (com.jft.PdaNetMac): Throttling respawn: Will start in 10 second
9 macos  launchd 

1
在OS X Leopard上停止失控的启动过程
我创建了一个启动的.plist文件,以便每小时运行一次python脚本。我结束了编辑工作,后来又删除了.plist文件(在/ Library / LaunchDaemons中)...,但是以某种方式启动后仍在尝试运行脚本。在/ usr / bin中)。现在,每10秒钟启动一次仍在尝试运行脚本,失败并重新生成... 我尝试使用Lingon修复此问题。...无济于事。是否有办法永久终止此过程?我尝试注销并重新启动... 机器正在运行10.5.8

1
无法使用launchctl setenv更改SSH_AUTH_SOCK
我想SSH_AUTH_SOCK在OSX El Capitan系统上将值设置为不同的位置。我尝试通过执行以下命令来执行此操作: $ launchctl setenv SSH_AUTH_SOCK ~/.gnupg/S.gpg-agent.ssh 但是,SSH_AUTH_SOCK即使重新启动终端后仍然保持默认值: $ echo $SSH_AUTH_SOCK /private/tmp/com.apple.launchd.XXXXXXXXXX/Listeners 但有趣的是,当我查询的值SSH_AUTH_SOCK使用launchctl,我得到了想要的结果: $ launchctl getenv SSH_AUTH_SOCK /Users/sora/.gnupg/S.gpg-agent.ssh 如何正确设置SSH_AUTH_SOCK系统范围的值? 编辑:SSH_AUTH_SOCK没有任何shell启动文件的设置(例如~/.zshrc,/etc/zshrc,/etc/zprofile)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.