gpt4 book ai didi

ios - Cydia 包 preinst/postinst 无法重新加载启动守护进程

转载 作者:行者123 更新时间:2023-11-29 13:14:51 38 4
gpt4 key购买 nike

我正在为越狱的 iOS 编写一个应用程序,其中包括一个 UI 应用程序和一个启动守护程序。我将启动守护进程设置为 UI 应用程序项目的子项目。

一切正常,除了我无法卸载软件包,然后在安装过程中重新加载启动守护程序,或者 chown 启动守护程序 plist 文件到 根:轮子

mainproject/subproject/layout/DEBIAN/preinst 中,我有以下代码:

#!/bin/sh
chown root:wheel /Library/LaunchDaemons/com.plistname.plist
launchctl unload /Library/LaunchDaemons/com.plistname.plist 2>&1 > /dev/null

mainproject/subproject/layout/DEBIAN/postinst 中:

#!/bin/sh
chown root /Library/LaunchDaemons/com.plistname.plist
launchctl load /Library/LaunchDaemons/com.plistname.plist

如果我卸载并重新安装该包,则会创建 plist,但它归 502:staff 所有,而且我在 syslog 中看不到消息> 如果我手动运行 launchctl unloadlaunchctl load

知道哪里出了问题吗?

最佳答案

原来我的问题是子项目中的preinstpostinst 脚本没有运行。我不知道这是否是 debian 包应该如何运行,或者这是否只是 theos 处理子项目的方式中的一个错误,但我能够通过简单地将这些命令移动到 preinst 来解决它> 和主要项目的 postinst 脚本。

这并不理想,因为从逻辑上讲,它们属于子项目,但它有效。

关于ios - Cydia 包 preinst/postinst 无法重新加载启动守护进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16111175/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com