命令中有重大的错误和误导:
1. 备份内核扩展, 忽略了root权限和保留kext权限, 这样备份出来的kext导致的后果就是所有的内核扩展因为权限变动签名失败, 这个对白苹果有多大的影响呢? 简而言之就是从10.9引入kext sign之后, 你恢复回去连系统都进不去, 更别提10.10的kext-dev-mode=1和10.11的SIP保护了.
2. 重建缓存: Apple官方在kext开发中写的很清楚了重建缓存的命令. 从10.9之后的系统也没有了/System/Library/Extensions下面的kernel cache. 正确的命令应该是:
sudo touch /System/Library/Extensions
sudo /bin/kill -1 `ps -ax | awk '{print $1" "$5}' | grep kextd | awk '{print $1}'`
sudo kextcache -u /
3. 在bash终端下并不完全严格区分大小写, 至少touch出来的文件就是大小写不敏感的.
4. Kshell不是OS X默认的shell, 随意改用会导致sh执行失败.
5. rm -rf命令不建议新手使用. 除非CsrActiveConfig(SIP)=0x0.
6. 看到natti文件, 如果我没有猜错楼主用的是hackintosh(黑苹果). 现在Nvidia的显卡基本上是原生驱动, 只要注入正确的DSDT或者显卡信息就可以了, 再不济也是使用Nvidia官方开发Webdriver来驱动.
7. 想要参考更多常用的OS X命令大家可以参考https://github.com/syscl/M3800/blob/M3800/Deploy.sh, 如果觉得有帮助可以在那个M3800的项目下面点一颗star ;)