Xcode打包工具PackageMaker 自动装载驱动
来源:互联网 发布:linux的trace命令 编辑:程序博客网 时间:2024/05/14 09:10
随系统启动kext驱动安装注意问题:
驱动放到/System/Library/Extensions/目录下,安装时候选中权限为root:wheel,这个还不够,因为kext目录下的其他文件如Info.plist等权限为775,而该目录下的驱动是不允许group组修改的,所以必须将权限改为755,但是打包工具的复制功能很弱,所以必须写脚本来完成这个功能。
例如脚本叫chmod.sh,内容为:
#!/bin/sh
chmod 755 /System/Library/Extensions/xxxx.kext
然后在驱动的scripts标签下,Postinstall:填入该脚本chmod.sh,意思是驱动安装之后将执行这个脚本。
如果kext驱动能够正常随系统启动,恭喜,你成功了。
如果不能(非常不幸,我碰上了),继续下面的办法。
写一个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>KeepAlive</key>
<false/>
<key>Label</key>
<string>com.apple.test</string>
<key>ProgramArguments</key>
<array>
<string>/sbin/kextload</string>
<string>/System/Library/Extensions/xxxxx.kext</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>UserName</key>
<string>root</string>
</dict>
</plist>
保存为随便的名字,例如com.xxxx.xxxx.plist,一并拖入PackageMaker中,安装到/System/Library/LaunchDaemons或者/Library/LaunchDaemons/目录下(建议前者),注意权限设置为755。
最后在写一个sh脚本(也可以放到设置驱动权限的那个脚本里,不过脚本需要最后执行),内如如下:
#!/bin/sin
launchctl load -w /System/Library/LaunchDaemons/com.xxxx.xxxx.plist
OK,驱动在启动的时候就可以被这个plist调用起来了。
驱动放到/System/Library/Extensions/目录下,安装时候选中权限为root:wheel,这个还不够,因为kext目录下的其他文件如Info.plist等权限为775,而该目录下的驱动是不允许group组修改的,所以必须将权限改为755,但是打包工具的复制功能很弱,所以必须写脚本来完成这个功能。
例如脚本叫chmod.sh,内容为:
#!/bin/sh
chmod 755 /System/Library/Extensions/xxxx.kext
然后在驱动的scripts标签下,Postinstall:填入该脚本chmod.sh,意思是驱动安装之后将执行这个脚本。
如果kext驱动能够正常随系统启动,恭喜,你成功了。
如果不能(非常不幸,我碰上了),继续下面的办法。
写一个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>KeepAlive</key>
<false/>
<key>Label</key>
<string>com.apple.test</string>
<key>ProgramArguments</key>
<array>
<string>/sbin/kextload</string>
<string>/System/Library/Extensions/xxxxx.kext</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>UserName</key>
<string>root</string>
</dict>
</plist>
保存为随便的名字,例如com.xxxx.xxxx.plist,一并拖入PackageMaker中,安装到/System/Library/LaunchDaemons或者/Library/LaunchDaemons/目录下(建议前者),注意权限设置为755。
最后在写一个sh脚本(也可以放到设置驱动权限的那个脚本里,不过脚本需要最后执行),内如如下:
#!/bin/sin
launchctl load -w /System/Library/LaunchDaemons/com.xxxx.xxxx.plist
OK,驱动在启动的时候就可以被这个plist调用起来了。
- Xcode打包工具PackageMaker 自动装载驱动
- Xcode打包工具PackageMaker制作安装包
- xcode自动打包
- 不要再使用Mac自带的坑爹PackageMaker打包了,使用iceberg 让你省心省力,iceberg 打包工具使用说明
- Unity自动打包工具
- Unity自动打包工具
- 自动打包工具--xctool
- AssetBundle自动打包工具
- Xcode 5.1 & iOS7.1 自动打包问题解决
- xcode工程用命令自动打包
- IOS:使用jenkins实现xcode自动打包
- Xcode 5.1 & iOS7.1 自动打包问题解决
- Xcode 8的xcodebuild自动打包代码
- iOS的自动打包 【 Xcode + git + jenkins 】
- Unity3D自动打包工具1
- iOS 本地自动打包工具
- 宝宝的自动打包工具
- Unity导出xcode自动配置工具
- java中获取输入的几种方式
- JAVA程序员面试题集合
- AIX下cut命令简介及使用
- 精度与不确定度
- serv-u防本地提权
- Xcode打包工具PackageMaker 自动装载驱动
- AIX下paste命令简介及使用
- struts1学习之--5、Struts1的工作原理和开发流程
- 直流电机参数的测试和估计
- sql 2008性能计数器注册表配置单元一致性 安装失败
- ubuntu下Eclipse的tooltip 背景色调整
- CSS兼容性的调整问题总结
- 【百度之星邀请月赛12月11号竞赛题目一】du熊学斐波那契I
- oracle模糊查询效率提高