launchd

使用 Launchd 调用 Python 脚本?
launchd

使用 Launchd 调用 Python 脚本?

作为我最初的问题的延续...... 在 OSX 中定期备份日志文件? 我正在尝试备份 OSX 计算机和越狱 iPhone 上的日志文件。有人推荐使用 LaunchD 作为解决方案,后来在 Google 上搜索后发现 LingOn 是可以使用的工具。 输出(在我填写字段之后)给了我这个 PList: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/...

Admin

在 Snow Leopard 上自动启动 svnserve
launchd

在 Snow Leopard 上自动启动 svnserve

注意:我最初在 Server Fault 上提出了这个问题(https://serverfault.com/questions/148052/automatically-starting-svnserve-on-snow-leopard),但我认为这里可能是更适合提问的地方。 我已经在运行 Snow Leopard 的 iMac 上安装了 Subversion,但无法让 svnserve 自动启动。据我所知(我对 OSX 还不是很熟悉),最好的方法是使用 launchd。为此,我在 /Library/LaunchDaemons 文件夹中创建了以下 .pli...

Admin

为什么这个 LaunchAgent plist 根本无法运行?
launchd

为什么这个 LaunchAgent plist 根本无法运行?

我有以下 plist 文件,即 ~/Library/LaunchAgents/wealthychef.obsidian-daily.plist。我想知道为什么它在加载后不执行。我觉得它应该按照书写的方式从 18:00 到 18:59 每分钟运行一次,如果计算机在这段时间处于睡眠状态,那么它应该在计算机唤醒时运行……但它没有。它根本不运行,即使我始终登录在机器上。有人能帮我理解我做错了什么吗?谢谢。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple/...

Admin

在 MacOS 上通过 launchD 使用 atrun
launchd

在 MacOS 上通过 launchD 使用 atrun

我正在尝试使用 launchDeamon 调用的脚本中的 at 命令来安排作业。这似乎不起作用。atrun 的 launchD 正在运行。Atrun、cron 和终端都具有完全磁盘访问权限。 我正在创建自己的 .plist / launchD 来调用安排作业的脚本。 launchD 正在运行并执行脚本,但作业尚未​​创建。 使用 sudo 在终端中运行脚本就可以了。 使用 .plist 中的 stdout/stderror,我发现它无法打开位于 /usr/lib/cron/jobs 中的 .lockfile。列出路径的内容时,无论出于何种原因,都没有 .lo...

Admin

在 MacOS 中,launchd 运行的 Shell 脚本无法创建作业
launchd

在 MacOS 中,launchd 运行的 Shell 脚本无法创建作业

我正在使用privileges.app授予用户临时管理员权限。因为我需要通过配置启用密码验证和验证,所以我无法使用内置功能将给定权限的持续时间限制为15分钟。 因此,我创建了一个 launchd 来调用一个脚本,该脚本定期(每分钟一次)检查用户是否已添加到管理员组,如果检测到新成员,则创建一个作业以使用 atrun 降级用户。终端和 atrun 的完全磁盘访问已启用。 launchD 已正确创建,脚本也已创建并正常运行。它成功检测到管理员组中的更改并尝试为 atrun 创建作业,但不起作用。不通过 launchd 而是在终端中使用 sudo 运行相同的脚本,...

Admin

“允许在后台”登录项 OS X Ventura 问题(与通知无关)
launchd

“允许在后台”登录项 OS X Ventura 问题(与通知无关)

Mac OS 13.3.1 我在我创建的 LauchAgent plist 中有一个相对简单的 shell 脚本作为程序参数;它可以解析、加载并正常工作。 问题是,在“允许在后台运行”对话框中切换相应的程序实际上有什么作用?我发现关闭脚本实际上并没有卸载或停止服务,并且当满足 plist 中的条件(WatchPaths)时脚本仍会运行。 保持该项目处于关闭状态并重新启动系统会导致相同的行为,就好像服务仍在运行(RunAtLoad 也为 False)。如果我手动卸载服务,那么它最终会停止执行脚本。 我是否误解了关闭后台项目的作用(如果是,那么它起什么作用?)或...

Admin

macOS 启动代理可以以非“活跃”用户的身份运行吗?
launchd

macOS 启动代理可以以非“活跃”用户的身份运行吗?

我在一台 iMac 上有多个用户。他们保持登录状态,但完成后会通过热角将显示器置于睡眠状态。短暂一段时间后,需要输入密码,这样他们就可以在必要时切换用户。 我有一些通过脚本运行的代码,用于访问用户的库(邮件)。它设置为通过文件~/Library/LaunchAgents夹中的启动代理为每个用户每晚(不同时间)运行。 问题是“非活跃”用户的启动代理不会触发。即使显示器(而非计算机)处于睡眠状态,它仍会为“活跃”用户触发。 我知道代理不会为已注销的用户运行。 有没有什么方法可以让两个代理都触发? ...

Admin

如何安排脚本即使 Mac 处于睡眠状态也自动运行?
launchd

如何安排脚本即使 Mac 处于睡眠状态也自动运行?

我对此确实很苦恼。 基本上,我希望每 3 小时在我的 Mac 上运行一次 Python 脚本。即使我不在使用 Mac。因此,即使 Mac 处于睡眠状态,我也希望它能够被唤醒并运行脚本。 我的攻击方法如下: 我下载了一个名为“scenario”的第三方应用程序,它会在 Mac 唤醒时运行脚本。 我已经在场景中放置了一个将调用 Python 文件的 Apple 脚本。 Python 文件运行我需要它运行的几个命令,然后设置pmset wake up call当前时间后 3 小时的计划。 现在整个系统很笨重,而且是拼凑起来的。说实话,它工作得不太好,因为...

Admin

launchd 无法访问外部驱动器
launchd

launchd 无法访问外部驱动器

我正在尝试自动执行一个脚本来备份我的 Mac mini(macOS 11.4)上的几个目录。我想要备份的一些文件存储在安装到 /Volumes/SHASTA 的外部驱动器上。我编写了一个快速启动脚本,只是为了看看它是否可以访问该目录,但它似乎出错了。以下是我写的内容: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dt...

Admin

如何查找并删除没有 .plist 的 LaunchAgent
launchd

如何查找并删除没有 .plist 的 LaunchAgent

我的 macOS (v11.2.1) 有许多不需要的 LaunchAgent 随系统一起加载,导致系统臃肿。其中一些我能够成功删除(只需找到它们的 .plist)。但是,对于其他一些,我无法简单地识别它们在启动过程中的加载方式,因为它们没有可识别的 .plist。 这篇文章专门针对 VoxAgent(由 Vox 音乐播放器推出,www.vox.rocks),但这种烦恼也发生在其他应用程序中(CleanMyMac X,Hazel......) 我可以使用 终止该服务launchctl remove com.coppertino.VOXAgent,但每次系统启动...

Admin

如何在mac上安排py程序每60分钟运行一次(在特定文件夹下)
launchd

如何在mac上安排py程序每60分钟运行一次(在特定文件夹下)

我是 Python 新手,我编写了我的第一个程序,并在一天中运行几次。该文件名为 quran_review_scheduler.py,位于我的用户目录“usr/dev/python/learning_python”下的文件夹中。当我想运行此文件时,我打开终端并将目录更改为 learning_python 并运行 python3 quran_review_scheduler.py,它运行良好。现在我想让这个脚本每小时运行一次。 我做了一些研究并发现 launchd - 我读过的 2 个教程是: https://nathangrigg.com/2012/07...

Admin

如何在 MacOS Catalina 启动时运行命令?
launchd

如何在 MacOS Catalina 启动时运行命令?

我已经在 Mac 上安装了 SoftEther VPNMacOS Catalina在我手动启动它之后,它运行良好。但是重新启动后 VPN 不会出现。 我目前必须打开一个终端窗口并输入命令./下载/vpnserver/vpnserver 启动 我不太喜欢把它放在文件夹中下载。 我应该将它移到哪里?我已作为用户登录。 如何让它在 Mac 启动时自动启动? ...

Admin

MacOS:在 USB 启动之前使用 Launchctl 启动虚拟机
launchd

MacOS:在 USB 启动之前使用 Launchctl 启动虚拟机

我在 /Library/LaunchDaemons 中有一个 plist 文件,它启动了一个无头且装有 Ubuntu 的虚拟机。 但问题是 USB 可能在 VM 启动之前尚未初始化,因此位于 COM 端口 /dev/ttyACM0(在 VM 上)的 USB 记忆棒不可用。 运行正常启动时“VBoxManage showvminfo userver”的输出: Currently Attached USB Devices: UUID:                 ...

Admin

尝试在运行时扩展 launchdaemon 的参数
launchd

尝试在运行时扩展 launchdaemon 的参数

我每天都会在中午启动一个 shell 脚本。我尝试将前一天的日期作为该脚本的参数传入启动守护进程的 .plist 中,但根据 stdout 和 stderr 日志,它无法运行。 我现在在 zshell 中手动运行我的脚本(并且运行良好):./my_script.sh --optionone $(date -v -1d +"%m/%d/%y") --optiontwo <key>ProgramArguments</key> <array> <string>/Users/kanejm/scripts/m...

Admin

MacOS Mojave - LaunchAgent plist 并非对所有用户运行
launchd

MacOS Mojave - LaunchAgent plist 并非对所有用户运行

我有一个 plist,放在 /Library/LaunchAgents 中,旨在为所有用户运行启动 Parallels 的脚本。(由于我运行的是网络用户环境,因此我无法简单地将其设置为启动项。)launchd 如下: <?xml version="1.0" encodings="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1....

Admin