相关疑难解决方法(0)

codesigned kext但为什么不加入约塞米蒂(10.10)

我在优胜美地的kext上签了代码.但是kextload失败了.
这是版本2的代码签名.codesign --verify是真的.
但是kextload失败了.为什么不加入约塞米蒂?

这是我的日志.

我已经检查过codesign -dvvv ./myKext.kext它没问题.

codesign -dvvv ./myKext.kext 返回以下:

Executable=/Path/to/myKext
Identifier=com.myKext.kext.Firewall
Format=bundle with Mach-O thin (x86_64)
CodeDirectory v=20100 size=317 flags=0x0(none) hashes=9+3 location=embedded
Hash type=sha1 size=20
CDHash=d0ff68bd8b49c650f45349c2d1570d45a8c1f148
Signature size=8544
Authority=Developer ID Application: My Kext Co., Ltd. (R2PBZJ465V)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=2014. 10. 31. ?? 11:09:35
Info.plist entries=18
TeamIdentifier=not set
Sealed Resources version=2 rules=12 files=1
Internal requirements count=1 size=188
Run Code Online (Sandbox Code Playgroud)

它显示版本2.
但是sudo kextload ./myKext.kext返回以下内容:

/Path/to/myKext.kext加载失败 - (libkern/kext)无法加载(原因未指定); 检查系统/内核日志是否有错误或尝试kextutil(8).

cat /var/log/system.log …

macos codesign kernel-extension

9
推荐指数
1
解决办法
1万
查看次数

在小牛队/优胜美地队无法签下kext?

目标:签署我自己的包和我自己的内核扩展.上下文中的"我自己的"意味着"我写的,或者我在其他地方选择的,从他们的来源重新编译自己,并希望在我的机器上安装.

问题:小牛队不接受我的签名Code Signing Failure: code signature is invalid(但加载了kext),Yosemite甚至不会加载它.

我有自己的CA和代码签名证书.我已经能够成功登录密码和设置,将允许安装由给定的证书签名的代码并执行的政策-无论是协同设计SPCTL喜欢它,因为你在下面的输出中看到.但是,这似乎不适用于kext(内核扩展) - kextutil坚持签名无效.这是我得到的输出:

$ codesign --verify -vvvv /opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext
/opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext: valid on disk
/opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext: satisfies its Designated Requirement

$ spctl -a -vvv -t exec /opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext
/opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext: accepted
source=XXXXXCode
origin=XXXXXCoder
$ spctl -a -vvv -t install /opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext
/opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext: accepted
source=XXXXXInstall
origin=XXXXXCoder

$ kextutil -tn /opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext
Diagnostics for /opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext:
Code Signing Failure: code signature is invalid
/opt/local/Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext appears to be loadable (including linkage for on-disk libraries).
Run Code Online (Sandbox Code Playgroud)

在小牛队,这个kext加载了警告信息,在优胜美地上它不会.

我注意到 …

macos code-signing kernel-extension osx-mavericks

6
推荐指数
2
解决办法
4542
查看次数