概述
本文最后更新:2021年11月3日
本文内容主要针对正在迁移到 OpenCore 这个天坑的用户,主要涉及常见的界面调整,-v 跑代码时卡住等问题,本文长期整理更新,遇到文中没有提到的问题欢迎反馈。本文涉及内容较多,可按下 Ctrl + F 或 Command + F 直接查找关键词。
新手常见错误
Q1:OCABC: Incompatible OpenRuntime r10, require r11
OCABC: Incompatible OpenRuntime r10, require r11
Halting on critical error
A:此问题由升级替换文件不完全造成,/EFI/OC 目录下的 OpenCore.efi,/EFI/OC/Drivers 目录下的 OpenRuntime.efi,必须来自同一版本。
OpenCore 的关键文件:BOOTx64.efi、OpenCore.efi、OpenRuntime.efi、OpenCanopy.efi(用于支持官方主题服务)
Q2:This version of Mac OS X is not supported on this platform!
This version of Mac OS X is not supported on this platform!
A:问题原因:使用了较新的机型ID,但是这个机型不支持旧版本系统,例如:MacPro7,1 仅能安装 macOS 10.15 及以上,不支持 macOS 10.13-10.14;另一种可能的原因是反过来,即:使用了太旧的机型ID,但这个机型不支持最新版本的系统。
Q3:configuration requires vault but no vault provided!
configuration requires vault but no vault provided!
A:这是最常见的新手错误了,修改 Config.plist 中:
Misc→Security→Vault→Optional
将 Vault 值设置为 Optional,注意大小写敏感。
Q4:OpenCore 启动界面不显示安装 U 盘,macOS 系统盘,Recovery 等选项。
A:修改 config.plist:
Misc→Security→ScanPolicy→ 0
填写 0 会扫描所有内容并开启所有选项。其它可选值:3870467,默认:983299
Q5:oc:Image Kexts\XXXX.kext\Contents\MacOS\XXXX.kext is missing for kext XXXX.kext ()
oc:Image Kexts\XXXX.kext\Contents\MacOS\XXXX.kext is missing for kext XXXX.kext ()
Halting on critical error
A:上面的代码中,XXXX.kext 可能是任何值,例如 VirtualSMC.kext,CPUFriend.kext,AppleALC.kext 等等,但是问题的原因是一样的:在 /EFI/OC/Kexts/ 目录下没有对应的 kext 文件。解决方法也很简单,添加对应的 kext,或者在 config.plist 中禁用相关的 kext。下载 kext 可以看看 黑苹果星球整理的月度 kext 更新包。除此之外还有 XXX.efi is missing 之类的也是同类型错误,只是 XXX.efi 文件一般位于 /EFI/OC/Drivers/ 目录下。
Q7:Start RandomSeed
Start RandomSeed
End RandomSeed
+++++++++++++++++++++
A:修改 config.plist 中:
Booter:
以下选项项取决于 Memory Attribute Table(MAT)支持情况,如何确定 MAT 支持?
使用 Debug 版 OpenCore,并在 config 中设置以下选项:
Misc→Debug→Target→67
在 EFI 日志中查找以下内容:
OCABC: MAT support is 1
以上 1 代表支持,0 代表不支持 MAT。
如果支持:
EnableWriteUnprotector→False
RebuildAppleMemoryMap→True
SyncRuntimePermissions→True
如果不支持:
EnableWriteUnprotector→True
RebuildAppleMemoryMap→False
SyncRuntimePermissions→False
其它:
SetupVirtualMap→False/No
大部分 GA 主板,以及更老的硬件如第 4 代酷睿需要开启;
Icelake 以及 Comet Lake 不能开启此项;
AMD B550 和 A520(以及最新 BIOS 的 X570)不能开启此项;
AMD 线程撕裂者 TRx40 不能开启此项;
华硕 X299 v3006 及以上版本的 BIOS(包括其他品牌 X299 + 最新 BIOS)不能开启此项;
DevirtualiseMmio
部分硬件平台并不能很好的适应这个 Quirk,例如部分 Z390 和绝大部分的 X99 和 X299。它的工作方式是占用 MMIO 区域并删除运行时属性,使它们可用作存放内核的空间,注意这个 Quirk 在绝大部分的系统上并不要求一定要填写 MmioWhiteList,但在某些非常难安装的平台(例如:线程撕裂者 TRX40 19H 或 10300H),在启用此 Quirk 的同时还需设置 MmioWhiteList,使用 Debug 版 OpenCore 并开启 DevirtualiseMmio,你会在日志中找到类似以下内容:
21:495 00:009 OCABC: MMIO devirt start
21:499 00:003 OCABC: MMIO devirt 0x60000000 (0x10000 pages, 0x8000000000000001) skip 0
21:503 00:003 OCABC: MMIO devirt 0xFE000000 (0x11 pages, 0x8000000000000001) skip 0
21:506 00:003 OCABC: MMIO devirt 0xFEC00000 (0x1 pages, 0x8000000000000001) skip 0
21:510 00:003 OCABC: MMIO devirt 0xFED00000 (0x1 pages, 0x8000000000000001) skip 0
21:513 00:003 OCABC: MMIO devirt 0xFEE00000 (0x1 pages, 0x800000000000100D) skip 0
21:516 00:003 OCABC: MMIO devirt 0xFF000000 (0x1000 pages, 0x800000000000100D) skip 0
21:520 00:003 OCABC: MMIO devirt end, saved 278608 KB
将 devirt 后面的 0x 60000000 等 6 组十六进制数字转换为十进制:
MMIO devirt 0x60000000 -> 1610612736
MMIO devirt 0xFE000000 -> 4261412864
MMIO devirt 0xFEC00000 -> 4273995776
MMIO devirt 0xFED00000 -> 4275044352
MMIO devirt 0xFEE00000 -> 4276092928
MMIO devirt 0xFF000000 -> 4278190080
然后填写到 MmioWhiteList 即可:
Kernel:
AMD 系统需要内核补丁;
Intel 系统:
BIOS 中解锁 CFG-Lock,没有该选项的情况开启以下选项:
AppleXcpmCfgLock→True/Yes
AppleCpuPmCfgLock→True/Yes
UEFI:
Quirks
IgnoreInvalidFlexRatio→True/Yes
此项仅适用于第4代酷睿或更老平台,不适用于 AMD 和第6代酷睿及更新平台。
Output
ProvideConsoleGop→True/Yes
部分平台可能需要此项以正常过渡到下一个屏幕,此功能原是 AptioMemoryFix 的一部分,现在在 OpenCore 中则是这个 Quirk。
Q8:Err(0xE), 0 @ LocHB 71B4903C-14EC-42C4-BDC6-CE1449930E49
[EB|`B:WFDW] Err(0xE), 0 @ LocHB 71B4903C-14EC-42C4-BDC6-CE1449930E49
[EB|#LOG:DT] 2020-03-09T09:40:46 [EB|#LOG:EXITBS:START] 2020-07-22T04:21:02
方案一:针对移动端,修改 config.plist 中
UEFI→Quirks→IgnoreInvalidFlexRatio→True/Yes
UEFI→Quirks→ReleaseUsbOwnership→True/Yes
Booter→Quirks→RebuildAppleMemoryMap→False/No
Booter→Quirks→SetupVirtualMap→True/Yes
方案二:针对无法解开 CFG 锁的机型,修改 config.plist 中
Kernel→Quirks→AppleXcpmCfgLock→True/Yes
Kernel→Quirks→AppleCpuPmCfgLock→True/Yes
UEFI→Quirks→IgnoreInvalidFlexRatio→True/Yes
如果无法关闭 VT-d,修改:
Kernel→Quirks→DisableIoMapper→True/Yes
方案三:参考 Q7。
Q9: [EB|#LOG:EXITBS:START]
[EB|#LOG:EXITBS:START]
A:参考 Q7,因为基本上是同样的原因。
Q10:IOConsoleUsers: time(0) 0->0, lin 0, llk1,
IOConsoleUsers: time(0) 0->0, lin 0, llk1,
IOConsoleUsers: gIOScreenLockState 3, hs 0, bs 0, now 0, sm 0x0
A:这个位置基本上卡在 GPU 正确初始化前,请确认以下设置:
GPU 支持 UEFI(尤其是 GT600/GT700 以及更早期显卡)
BIOS 中关闭了 CSM
部分笔记本机型可能无法完全关闭
BIOS 中设置强制 PCIe 到 3.0
如果使用核显,再次检查所注入的核显 ig-platform-id 和 device-id
桌面端 UHD630 可以尝试 00009B3E
尝试 -gfxmlr 启动参数,这可能同时可以解决“Divide by Zero”错误
在 10.15.4 及以上版本 macOS 中,某些机型上的第八、九代酷睿可能需要添加启动参数 igfxonln=1
更多参阅 WhateverGreen 补丁
启动界面&代码界面部分
Q10:启动界面看不到 macOS 启动分区
A:首先确认 /EFI/OC/Drivers 目录下有 HFSPlus.efi;
修改 config.plist:
Misc→Security→Scan Policy→设置为 0
UEFI→Quirks→UnblockFsConnet→True/Yes(部分惠普机型需要)
UEFI→APFS→EnableJumpStart→True/Yes
UEFI→APFS→HideVerbose→True/Yes
UEFI→APFS→MinDate→ -1
UEFI→APFS→MinVersion→ -1
Q11:选择启动项后黑屏
A:修改 config.plist:
UEFI→Output→ProvideConsoleGop→True/Yes
Booter→Quirks→RebuildAppleMemoryMap→True/Yes
如果未能解决问题,请使用 Debug 版本 OpenCore,这样会提示更多信息。
Q12:如何将 OpenCore 设置成图形化启动界面?
A:以下方法适用于 OpenCore 0.7.0 及以上。修改 config.plist:
Misc
Boot
Picker Mode → External
Picker Attribute GUI → 1
Show Picker → True/Yes
PickerVariant → Acidanthera\GoldenGate (或其它你下载的主题)
UEFI
Drivers
加载 OpenCanopy.efi
下载 OcBinaryData,点此直达官方地址;或下载黑苹果星球整理的文件包:
Q13:如何固定选择启动项?
A:修改 config.plist:
Misc→Security→AllowSetDefault→True/Yes
在启动界面选择想要设置的项,按下 Ctrl + Enter,即可。
Q14:OCB: OcScanForBootEntries failure - Not Found
OCB: OcScanForBootEntries failure - Not Found
A:这是由于 OpenCore 无法根据当前的 ScanPolicy 设置找到任何驱动器,此项设置为 0 将允许显示所有引导选项
修改 config.plist:Misc→Security→ScanPolicy→ 0
Q15:OCB: failed to match a default boot option
OCB: failed to match a default boot option
A:原因及解决方法同 Q14。
Q16:OCB: StartImage failed - Aborted
OCB: StartImage failed - Aborted
Halting on critical error
A:请升级 OpenCore 到 0.5.9 及更高版本,这主要是由错误的编译或文件版本不对应造成。
OpenCore 的关键文件必须来自同一版本:BOOTx64.efi、OpenCore.efi、OpenRuntime.efi、OpenCanopy.efi(用于支持官方主题服务)
Q17: Forcing CS_RUNTIME for entitlement: com.apple.rootless.restricted-block-devices
Forcing CS_RUNTIME for entitlement: com.apple.rootless.restricted-block-devices
A:这个一般出现在安装 macOS 11.0 Big Sur 的过程中,其实并没有卡住,注意观察硬盘灯,耐心等待,一般3-5分钟就会过。
Q18:SetMulticastList() ===>
SetMulticastList() \=\=\=>
SetMylticastList() <\=\=\=
A:同 Q17。
Q19:OCB:OcScwfurBootEntries failure - not found
OCB:OcScwfurBootEntries failure - not found
Halting on critical error
A:配置文件有错误,建议重新新建 config.plist。注:此错误新手遇到比较多,请注意 OpenCore 和 Clover 的 config 文件并不通用!
Q20:ERROR allocating 0x3362 pages at 0x0000000001033000 alloc type 2
ERROR allocating 0x3362 pages at 0x0000000001033000 alloc type 2
Error loading kernel cache (0x9)
Halting on critical error
A:原因一般是在 /EFI/OC/Drivers 目录下引入了很多 Clover 使用的 .efi 文件。并不是 Clover 适用的 .efi 文件 OpenCore 也适用,具体看:.efi 文件说明
解决办法是删除 Clover 使用的 .efi 文件,OpenCore 最基础只需保留 HfsPlus.efi,OpenRuntime.efi,OpenCanopy.efi(用于支持官方主题),其余都删除。
Q21:OCS:No schema for Disabled at 12 index
OCS:No schema for Disabled at 12 index
OC:Driver HfaPlus.efi at 0 cannot be found!
Halting on critical error
A:默认的 OpenCore 不含 HFSPlus.efi 文件,需要添加到 /EFI/OC/Drivers 目录下。
Q22:OCB:StartImage failed - Already started
OCB:StartImage failed - Already started
Halting on critical error
A:一般发生在引导项选择时选择了 EFI 分区。解决方法:不要选择 EFI 分区,请直接选择系统分区。
Q23:OCUI: Failed to load images
OCUI: Failed to load images
Halting on critical error
A:开启了 OpenCore 的 UI 界面,但是没有配置 OC 的 Resource 文件,请下载并到 /EFI/OC/Resource/ 文件。
下载 OcBinaryData,点此可直达官方地址;或下载黑苹果星球整理的文件包:
Q24:卡在主板 LOGO 界面
A:常见于 GA 主板,修改 config.plist→UEFI→Drivers 取消 AudioDxe.efi,删除或在名称前添加 # 号,暂时禁用。另一种方案,断电并拔掉电池静置 5-10 分钟,再开机。
Q25:OC: Invalid Vault mode!
OC: Invalid Vault mode!
A:修改 config.plist 中:
Misc→Security→Vault→Optional
大概率是拼写错误,将 Vault 值设置为 Optional,注意大小写敏感。
Q26:OC: OcAppleGenericInputTimerQuirkExit Status
OC: OcAppleGenericInputTimerQuirkExit Status - Success
OC: OcAppleGenericInputKeycodeExit Status - Success
A:解决方法:
Intel:
BIOS 中解锁 CFG-Lock,没有该选项的情况开启以下选项:
AppleXcpmCfgLock→True/Yes
AppleCpuPmCfgLock→True/Yes
AMD 系统需要内核补丁;
如果未能解决问题,请使用 Debug 版本 OpenCore,这样会提示更多信息。
Q27:OCABC: Memory pool allocation failure - Not Found
OCABC: Memory pool allocation failure - Not Found
A:这是由于错误的 BIOS 设置 和/或 错误的 Booter Quirks 值,请确认 Booter→Quirks 设置正确,并验证 BIOS 设置:
开启 Above 4G Decoding
关闭 CSM
升级 BIOS 到最新版本
Q28:OCS: No schema for DSDT, KernelAndKextPatch, RtVariable, SMBIOS, SystemParameters
OCS: No schema for DSDT, KernelAndKextPatch, RtVariable, SMBIOS, SystemParameters...
A:这基本上是配置文件结构不正确造成的,请勿使用 Clover 的 config.plist 引导 OpenCore,以及版本不匹配的 OpenCore Configurator 配置 config.plist。
建议是,能学会树形目录编辑器就尽量学,例如 ProperTree。
Q29:apfs_module_start
apfs_module_start
A:卡在这个位置大部分都是 Z390 主板,需要添加一个 ACPI 补丁,内容如下:
Comment: Fix RTC _STA bug
Find: A00A9353 54415301
Replace: A00A910A FF0BFFFF
Q30:OCB:LoadImage failed - Unsupported
OCB:LoadImage failed - Unsupported
Halting on critical error
A:一般发生在进入 Recovery 时。解决方法是在 /EFI/OC/Drivers/ 目录下添加 HFSPlus.efi 或 VBoxHfs.efi,一般使用前者。
Q31:AppleUSBXHCI::interruptOccurred: clearing change bits on unused port...
000340.041303 XHCI@14000000: AppleUSBXHCI::interruptOccurred: clearing change bits on unused port 23 with portSC 0x802a0
000341.204285 XHCI@14000000: AppleUSBXHCI::interruptOccurred: clearing change bits on unused port 24 with portSC 0x802a0
000341.227434 XHCI@14000000: AppleUSBXHCI::interruptOccurred: clearing change bits on unused port 25 with portSC 0x221203
000341.250544 XHCI@14000000: AppleUSBXHCI::interruptOccurred: clearing change bits on unused port 26 with portSC 0x802a0
...
...
IOUSBHost Interface(0x10000063d): matching deferred by IOUSBHostHIDDevice
A:一般是因为缺少 ACPI 补丁,没有正确驱动 USB 的 XHCI 节点。可尝试以下 ACPI 补丁:
Comment: Rename XHCI to XHC(USB)
Find: 58484349
Replace: 5848435F
Comment: Rename XHC1 to XHC(USB)
Find: 58484331
Replace: 5848435F
其它解决办法:
检查镜像 md5;
将 U 盘换到 USB2.0 或 USB3.1 的接口;
添加解除 15 端口限制的补丁,或修改 config.plist→Kernel→Quirks→XhciPortLimit
Q32:VM Swap Subsystem is ON
VM Swap Subsystem is ON
A:修改 config.plist
Kernel→Quirks→ThirdPartyDrivers→ Off/False
Q33:Kernel Extensions in backtrace
Kernel Extensions in backtrace:
com.apple.iokit.IOPCIFamily(2.9)[ADD485B5-3EF8-37C4-B3C5-F86326E497A4]@0xffffff7f9432f000->0xfffffff7f94365fff
com.apple.driver.AppleACPIPlatform(6.1)[C111AA1C-DE22-39CC-BB44-4870383DDAA0]@0xffffff7f96306000->0xffffff7f963a0fff
dependency: com.apple.iokit.IOACPIFamily(1.4)...
dependency: com.apple.iokit.IOPCIFamily(2.9)...
dependency: com.apple.driver.AppleSMC(3.1.9)...
com.apple.driver.AppleIntelCFLGraphicsFramebuffer(14.0.4)[...]@...
A:这个错误基本是是由 Framebuffer 设置不当造成的,例如7代酷睿使用了9代酷睿的核显 Framebuffer。
解决方法:修改合适的核显 Framebuffer 信息,可先删除 DeviceProperties 下有关核显的数值。其它参考:驱动 Intel 核显。
Q34:OCSB: No suitable signature - Security Violation
OCSB: No suitable signature - Security Violation
OCB: Apple Secure Boot prohibits this boot entry, enforcing!
OCB: LoadImage failed - Security Violation
A:这是由于过时的 Apple Secure Boot manifests 导致的,如果你在 OpenCore 中设置了 SecureBootModel,就会导致加载失败,这些文件丢失的原因实际上是 macOS 中的 BUG。解决方法(任选其一):
Misc→Security→SecureBootModel→ Default 或 Disabled
重新安装 macOS 到最新版本
从 /usr/standalone/i386 拷贝 Secure Boot manifests 到 /Volumes/Preboot//System/Library/CoreServices
Q35:[EB|`LD:OFS] Err(0xE) @ OPEN
[EB|`LD:OFS] Err(0xE) @ OPEN
(System\\Library\\PrelinkedKernels\\prelinkedkernel)
A:当 Preboot 未被正确更新时,可能会发生这种情况。解决此问题:
修改 config.plist→UEFI→APFS→JumpstartHotplug→True(macOS 11.0 可能必须开启此项才能进入 Recovery)
重启,引导进入 Recovery
开启终端,进行如下操作:
通过列出所有分区找到 Preboot 分卷
diskutil list
在列出的列表中,我们发现 Preboot 分卷是 disk5s2
/dev/disk5 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +255.7 GB disk5
Physical Store disk4s2
1: APFS Volume Big Sur HD - Data 122.5 GB disk5s1
2: APFS Volume Preboot 309.4 MB disk5s2
3: APFS Volume Recovery 887.8 MB disk5s3
4: APFS Volume VM 1.1 MB disk5s4
5: APFS Volume Big Sur HD 16.2 GB disk5s5
6: APFS Snapshot com.apple.os.update-... 16.2 GB disk5s5s
现在挂载指定的 Preboot 分卷
diskutil mount disk5s2
最后执行下面的命令来更新 Preboot 分卷
diskutil apfs updatePreboot /volume/disk5s2
最后重启,注意你可能需要关闭 JumpstartHotplug。
Q36:OCS: No schema for EnableForAll at 0 index
OCS: No schema for EnableForAll at 0 index, context <Quirks>!
OCS: No schema for EnableForAll at 5 index, contextr <Quirks>!
OCS: No schema for DummyPowerManagement at 8 index, context <Quirks>!
OCS: No schema for SkipCustomEtryCheck at 8 index, context <Boot>!
A:和其它升级 OpenCore 的问题一样,这一般是从 0.6.1 升级到 0.6.2,替换了文件却没有用新版 Sample.plist 重建 config.plist 造成的。解决的办法有两个:
使用 0.6.2 版本的 Sample.plist 重建 config.plist;
使用 BeyondCompare 等代码对比工具查找两个版本 Sample.plist 的不同之处,然后使用 VScode 等代码编辑器工具修正 0.6.1 版的 config.plist
Q37:OC: Driver AudioDxe.efi at 0 cannot be found!
OC: Driver AudioDxe.efi at 0 cannot be found!
Halting on critical error
A:在 config.plist 中指定了加载某些文件,实际路径里却不存在。只是此问题指的是 .efi 驱动。此案例中,请检查 /EFI/OC/Driver/ 目录下是否存在 AudioDxe.efi,不存在的话请添加。如果不想要这个驱动的话,请在 config.plist → UEFI → Drivers 中取消该文件,其它情况以此类推。
Q38:OsxAptioFix3Drv: Starting overrides for \System\Library\CoreServices\boot.efi
OsxAptioFix3Drv: Starting overrides for \System\Library\CoreServices\boot.efi
Using reloc block: no, hibernate wake: no
ERROR allocating 0x1c19 pages at 0x0000000009433000 alloc type 2
Error loading kernel cache (0x9)
Boot failed; will sleep for 10 seconds before exiting...
Error: Aborted returrned from boot.efi
was error, press any key
* Hit any key to continue *
A:如果是 OpenCore,请不要使用 OsxAptioFix3Drv.efi 或其它类似的内存修复驱动,因为 OpenCore 已经自备了 OpenRuntime.efi 来解决内存问题。如果是 Clover,r5120 以下版本请使用 AptioMemoryFix.efi,r5120 及以上版本使用 OcQuirks.efi。
Q39:Failed to parse real field of type 1
Failed to parse real field of type 1
A:此错误一般是因为使用了 Xcode 造成,Xcode 把 HaltLevel 的 integer 值类型自动改成了 real,解决办法是不要使用 Xcode,把 HaltLevel 下的数字值类型修改回 integer:
#以下是错误的
HaltLevel
2147483648
\#修正为
<key>HaltLevel</key>
<integer>2147483648</integer>
Q40:Generation from SMC report as 2
Generation from SMC report as 2
AppleLMUController::smcGetKey Info Error: received error 0x84 when getting key info for 'ALRV'
AppleLMUController::smcReadKey Error:received error 0×84 when reading key 'MSLD'
AppleLMUController::smcReadKey Error:received error 0×84 when reading key 'ALV0'
A:此错误一般 ssdt 相关,主要表现在笔记本机型上。在此案例中,当用户设备中具备 ACPI0008 (Light Sensor device) 时,macOS 会启动 AppleSMCLMU.kext 与该设备匹配并且需要 LightSensor 的 SMC 密钥。因此,删除 SSDT-ALS0.aml,或进一步补充 ssdt 内容完全屏蔽该设备,一般即可解决该问题。
Q41:IOConsoleUsers: gIOScreenLockState 3
IOConsoleUsers: gIOScreenLockState 3, hs 0, bs 0, now 0, sm 0x0
之后黑屏
A:如果是 Navi 系显卡(RX5500/5600/5700/XT)
添加启动参数 agdpmod=pikera
可尝试切换到 MacPro7,1 ,启动参数修改为 agdpmod=ignore
如果是微星的 Navi 显卡,可能需要添加以下补丁,位于 Kernel → Patch:
Base:
Comment: Navi VBIOS Bug Patch
Count: 1
Enabled: YES
Find: 4154592C526F6D2300
Identifier: com.apple.kext.AMDRadeonX6000Framebuffer
Limit: 0
Mask:
MinKernel: 19.00.00
MaxKernel: 19.99.99
Replace: 414D442C526F6D2300
ReplaceMask:
Skip: 0
Q42: Kernel Panic: Cannot perform kext summary
Kernel Panic: Cannot perform kext summary
Kernel Panic: Invalid frame pointer
A:一般情况下此时已经内核崩溃了(Kernel Panic),通常是预链接内核相关的问题造成的,尤其是 macOS 很难理解引导工具注入的内容。通过以下步骤验证:
Kext 加载顺序正确(没错,顺序也是重要的),Lilu.kext 必须、务必,一定排在其它所有 kext 之前;其它 kext,必须先是主插件(如 VirtualSMC),然后是它的卫星插件(如 SuperIO)
大部分的 Kext 拥有可执行文件(位于 kext 内部的 Executable),剩下的 Kext 只有 plist 但是没有包含可执行文件(例如 USBPort.kext、XHCI-unspported.kext 等)
不要在 config.plist 中添加多个相同的 Kext(例如,VoodooPS2Controller 中包含 VoodooInput,所以不要再单独添加)
此类错误也可能会造成 Invalid frame pointer 一类的内核崩溃
Q43:Kernel Panic: Invalid frame pointer
Kernel Panic: Invalid frame pointer
A:此部分大概率和 Booter → Quirks 相关,此部分主要和内存相关,主要涉及以下几个选项:
DevirtualiseMmio
部分硬件平台并不能很好的适应这个 Quirk,例如部分 Z390 和绝大部分的 X99 和 X299。它的工作方式是占用 MMIO 区域并删除运行时属性,使它们可用作存放内核的空间,注意这个 Quirk 在绝大部分的系统上并不要求一定要填写 MmioWhiteList,但在某些非常难安装的平台(例如:线程撕裂者 TRX40 19H 或 10300H),在启用此 Quirk 的同时还需设置 MmioWhiteList,使用 Debug 版 OpenCore 并开启 DevirtualiseMmio,你会在日志中找到类似以下内容:
21:495 00:009 OCABC: MMIO devirt start
21:499 00:003 OCABC: MMIO devirt 0x60000000 (0x10000 pages, 0x8000000000000001) skip 0
21:503 00:003 OCABC: MMIO devirt 0xFE000000 (0x11 pages, 0x8000000000000001) skip 0
21:506 00:003 OCABC: MMIO devirt 0xFEC00000 (0x1 pages, 0x8000000000000001) skip 0
21:510 00:003 OCABC: MMIO devirt 0xFED00000 (0x1 pages, 0x8000000000000001) skip 0
21:513 00:003 OCABC: MMIO devirt 0xFEE00000 (0x1 pages, 0x800000000000100D) skip 0
21:516 00:003 OCABC: MMIO devirt 0xFF000000 (0x1000 pages, 0x800000000000100D) skip 0
21:520 00:003 OCABC: MMIO devirt end, saved 278608 KB
将 devirt 后面的 0x 60000000 等 6 组十六进制数字转换为十进制:
MMIO devirt 0x60000000 -> 1610612736
MMIO devirt 0xFE000000 -> 4261412864
MMIO devirt 0xFEC00000 -> 4273995776
MMIO devirt 0xFED00000 -> 4275044352
MMIO devirt 0xFEE00000 -> 4276092928
MMIO devirt 0xFF000000 -> 4278190080
然后填写到 MmioWhiteList 即可:
SetupVirtualMap
大多数主板都需要开启这个 Quirks,如果没有开启,内核崩溃会很常见;
但是,部分主板却无法使用它,并且可能导致内核崩溃:
Intel Ice Lake 系列(十代酷睿移动端,例如 1035G1)
Intel Comet Lake 系列(十代酷睿桌面端,例如 i5-10400)
AMD B550
AMD A520
AMD TRx40
另一个问题可能是 macOS 与 CR0 寄存器的写保护冲突,要解决此问题,需要先确认你的主板是否有 MAT 支持,此部分参考 Q23;
确定有 MAT 支持时:
EnableWriteUnprotector -> False
RebuildAppleMemoryMap -> True
SyncRuntimePermissions -> True
当没有 MAT 支持时:
EnableWriteUnprotector -> True
RebuildAppleMemoryMap -> False
SyncRuntimePermissions -> False
Q44:Kernel Panic: AppleIntelMCEReporter
Kernel Panic: AppleIntelMCEReporter
A:在 macOS Catalina 处理器双插槽支持被损坏,但部分 AMD 主板的固件会报告已接入多插槽处理器,因此 macOS 内置的 AppleIntelMCEReporter.kext 会造成内核崩溃。此问题通常出现在 AMD 处理器的机型上,有两种解决办法,添加一个第三方 Kext:AppleMCEReporterDisabler.kext;或编辑 config.plist,使用 Kernel → Block 功能阻止 macOS 加载 AppleIntelMCEReporter.kext(识别符:com.apple.driver.AppleTyMCEDriver,OpenCore 默认配置文件 Sample.plist 中有提供)。
Q45:SMCLightSensor alsd: @ No iterator
SMCLightSensor alsd: @ No iterator
AppleIntelLpssI2CController::_serviceMatchingTimeSubr: fTimerServiceMatching timed out, fNotifications 0
AppleIntelLpssI2CController::_serviceMatchingTimeSubr: fTimerServiceMatching timed out, fNotifications 0
A:此错误分两个部分,第一部分,LightSensor 没有匹配到可用的光传感器,这可能是你的笔记本没有,或不被支持,可先暂时关闭 SMCLightSensor.kext;第二部分,I2C 服务匹配超时,这可能是 macOS 内置的 I2C 控制程序无法匹配你的设备,解决方法,在 config.plist → Kernel → Block 中添加以下内容,并使用 VoodooI2C.kext 替代:
Comment: Prevent Apple I2C kexts from attaching to I2C controllers
Enabled: YES
Identifier: com.apple.driver.AppleIntelLpssI2C
Comment: Prevent Apple I2C kexts from attaching to I2C controllers
Enabled: YES
Identifier: com.apple.driver.AppleIntelLpssI2CController
Q46:选择 macOS Recovery 后,提示OCB: LoadImage failed - Not Found
OCB: LoadImage failed - Not Found
A:修改 config.plist 中 Misc → Security → DmgLoading → Any/Signed,建议修改为 Any。
Q47:启动时 Kernel Panic:
Kernel Extension in backtrace:
com.apple.iokit.IOPCIFamily(2.9)[ xxxx...
com.apple.driver.AppleACPIPlatform(6.1)[ xxxx...
dependency: com.apple.driver.AppleSMC(3.1.9)[ xxxx...
dependency: com.apple.iokit.IOACPIFamily(1.4)[ xxxx...
dependency: com.apple.iokit.IOPCIFamily(2.9)[ xxxx....
A:可能有多种情况会遇到这个内核崩溃,这里主要讲解 X79 和 X99 平台,起因是苹果在 macOS Big Sur 修改了大部分 IOPCIFamily.kext 中的内容,因此造成的部分机型遭遇内核崩溃。由于目前(2021/6/16) Big Sur 还没有源码放出,如果没有反汇编大佬进行调试,则无从知晓真正的原因。可以考虑解决的办法如下:
X79/X99/X299 平台务必加上 npci=0x2000 或 npci=0x3000 这个启动参数;
尝试 SSDT-RTC0-RANGE.aml 或 SSDT-UNC.aml 这两个 ACPI 补丁,可以从 OC 团队的开发堆栈里找到源文件;
Q48:跑码过程中出现禁止符号,然后字符变成乱码,如下:
A:此错误源头和 USB 强相关。首先检查 BIOS 设置:
开启 USB XHCI Handoff 和 Legacy USB Support,如果安装到 SATA 接口硬盘,把 SATA 模式设置为 AHCI;
接下来有两种选择:
第一种是把 U 盘插到纯 2.0 接口(外观上一般为黑色 4 针);
第二种是先在 Windows 对 USB 接口进行定制,具体原因和方法见「黑苹果 Windows 定制 USB」,完成后使用定制好的 USB 文件再尝试安装;
Q49:安装 macOS Big Sur 11.3 及以上版本时,跑完进度条后见到如下界面:
A:此问题的源头来自 macOS 系统本身。苹果自 macOS Big Sur 11.3 开始修改了 USB 映射方式,导致 OpenCore 依赖的 Quirks 特性 XhciLimitPort 失效(Clover 自 r5123 开始完全是 OC 内核,因此同理)。截止 OpenCore 0.7.6 开发版,Acidanthera 团队仍未修复,估计也不太可能修复了。
简单来说,就是此时 macOS 没有找到任何键盘/鼠标/妙控板等操控设备,它以为自己运行在白苹果电脑上,于是提示用户打开秒控鼠标/妙控板的开关。至于没有检测到的原因就说来话长了,具体可参考「黑苹果 Windows 定制 USB」的前言部分。
知道原因后解决问题就比较简单,把你的鼠标键盘插到纯 USB2.0 接口(外观上一般为黑色 4 针)即可,有的机型甚至重新插拔一下都可以。进入系统后建议优先考虑定制 USB 接口。
Q50:ifnet_attach: All kernel threads created for interface en0 have been scheduled at least once. Proceeding.
ifnet_attach: All kernel threads created for interface en0 have been scheduled at least once. Proceeding.
_dlil_attach_flowswitch_nexus: en0 9000 1500
IOKit Daemon (kernelmanagerd) stall[0], (240s): 'PXSX'
A:通常情况下,此情况会出现在安装 macOS Big Sur,问题的源头是因为 Big Sur 完全删除了类 AirPortBrcm4360,为了兼容这个情况,acidanthera 团队从 Airportbrcmfixup.kext 中单独剔出了AirPortBrcm4360 和 AirPortBrcmNIC 注入器(injector),在安装 Big Sur 并使用 Airportbrcmfixup.kext 时,必须不能加载 AirPortBrcm4360_Injector.kext(或为其设置 MaxKernel 值 19.9.9)。
如果你的无线博通网卡是免驱动类型时(例如奋威 T919 或型号较新的苹果原装拆机卡),则完全不需要使用 Airportbrcmfixup.kext。
Q51:关于 12.0 的无线和蓝牙驱动
macOS Monterey 12.0 大幅修改了蓝牙和无线网卡的驱动框架,一是因为抛弃了 2015 年以前推出的机型支持,二是为通用控制做准备。虽然黑苹果老卡可以通过第三方驱动得到支持,但是在设置上和以往有一些区别。简单来说就是以下几点:
除免驱卡外(例如奋威 T919 或其它型号较新的苹果原装拆机卡),必须使用新驱动 BlueToolFixup.kext;
蓝牙驱动 BrcmPatchRAM 中的注入器(BrcmBluetoothInjector.kext),不能在 12.0 中启用,会卡住。可以删除或不启用,如果你有切换多个版本系统的需求,OpenCore 还可设置 MaxKernel 值 20.99.99 ,Clover 则需要建立不同版本号的 Kext 目录下的文件夹;
英特尔网卡,需要将 IntelBluetoothFirmware 升级到最新,同样不能使用 IntelBluetoothInjector.kext;
其它可参考「修复蓝牙在 macOS 12.0 Monterey 的方法」;
其他部分
Q52:如何关闭 OpenCore 输出到 ESP 分区下的日志文件?
A:修改 config.plist
Misc→Debug→Target→ 0
0:关闭日志记录
3:允许屏幕输出日志
19:允许屏幕输出 UEFI 变量日志
65:在 ESP 分区根目录生成日志文件 opencore-年-月-日-时分秒.txt,但屏幕上不显示日志
Q53:macOS 安装界面是俄语?
修改 config.plist:
NVRAM → 7C436110-AB2A-4BBB-A880-FE41995C9F82 → prev-lang:kbd
改类型为 data 值,内容为 7A682D48 616E773A 323532
或类型为 string 值,内容为 zh-Hans:252
Q54:硬盘提示 BIError Domain 3
A:修改 config.plist:
SMBIOS 改机型为 iMacPro1,1 或 MacBookPro16,1 等 2018年及以后的机型。
Q55:卡在“找不到安装器资源”?
A:这个问题的原因可能是多种多样的:
检查镜像的 md5 值是否相符
某些版本的镜像是特定机型使用的,例如 Catalina 19H4 就是特定机型版本,此类情况请更换镜像系统版本
对于 High Sierra 和 Mojave,需要使用终端修改时间,并断开网络
对于 Catalina,请用终端验证一下系统时间是否和真实时间相差 8 小时,如果是,使用终端改为真实时间
删除 drivers/UEFI 目录下的 EmuVariableUefi.efi(此项针对 Clover 用户)
修改机型为最近三年,比如 MacBookPro14,1、MacBookPro15,1、iMac17,1 等等
如果是双硬盘,拔掉那个不安装 macOS 的,待安装完后再插回去
Q56:进入安装界面后,找不到硬盘。
A:此问题大多数情况下是因为使用了 VBoxHfs.efi,这个驱动在某些机型上(主要是笔记本和品牌台式机)无法读取本地硬盘,解决方法是换用 HFSPlus.efi。另一种可能,请检查硬盘是否处在 RAID 模式,RAID 状态无法正常安装 macOS。
Q57:进入 macOS 后,无法挂载 EFI 分区,无论使用命令行或配置工具都不行。
A:笔者曾经遇到过这个问题,在试过无数方法后,发现是格式化硬盘的时候忘记格式化 ESP 分区😂,请用命令行或 Diskgenuis 等工具格式化 ESP 分区为 FAT32 即解决问题。
Q58:首次安装跑完代码界面后,进入一个灰色的屏幕,鼠标可以移动,但是其它什么都不显示。
A:笔者在安装 Big Sur 时遇到过这个问题。首先确保排除所有 config 设置及 kext 可能的问题:主要是针对内存设置的几个 Quirks;核显的 ig-platform-id 及其它属性先删除或屏蔽;以及尝试搭配使用不同版本的 Whatevergreen.kext。以笔者遇到的例子,最终排查结果如下:这个没有任何菜单和选项的灰色界面,其实是 Recovery 模式下 macOS Base System 的第二屏幕显示的内容,这个时候尝试重新插拔一下你的显示器接口,如果你有其他显示设备,可以尝试再接一个上去完成安装。对于 macOS,首推使用 DisplayPort 接口,1.2 及以上;其次是 HDMI,4k 需要 2.0 及以上;不推荐 DVI 接口;完全不建议使用 VGA 接口以及各类转接头。
Q59:升级到 Big Sur beta 11.0.1 后,右上角图标栏有大约三个图标的空白。
A:在此案例中,是搜狗输入法未能很好适配 Big Sur 造成的,升级搜狗输入法到最新版本可解决问题。
Q60:反复检查,设置都对,但 macOS 就是一直黑屏。
A:此现象有多种原因。在 AMD 平台的案例中,请在 BIOS 中关闭 Serial Port。
Q61:进入登陆界面后,macOS 卡住,屏幕中间显示一个半透明状态 图标,类似下图:
[
](https://oss.heipg.cn/2020/07/1607584065-eb479605271a1f0.png)A:此问题一般由不同步的处理器 TSC 造成,对于大部分处理器,添加 CpuTscSync 一类的 Kext 即可解决问题(VoodooTSCSync 或 CpuTscSync)。
Q62:OpenCore 更新到 0.6.8 之后,主题失效,还有系统选择界面光标“打滑”怎么办?
A:第一部分主题失效,是因为开发团队大刀阔斧修改了主题服务文件,需要搭配新的主题文件才能开启图形界面,可以从官方下载也可以下载黑苹果星球打包好的文件:
将解压后的 Resources 文件夹覆盖到 /EFI/OC/ 目录下的同名文件夹。OpenCore 0.7.0 需要将 PickerVariant 输入为 Acidanthera\GoldenGate 或其它你下载的主题名称。
第二个主题界面光标“打滑”现象修改以下选项即可解决。
[
](https://oss.heipg.cn/2021/04/1619617543-232d08b94ad5010.png)
Q63:进入安装程序后,在安装界面弹出“未能安装所需的固件更新”。
A:主要出现在安装 macOS Monterey 12.0.1 的过程中,有两种解决方法:
第一,修改 config.plist 文件 → PlatformInfo → Generic → AdviseFeatures → 修改为 True/勾选;
如果第一种方法无效,第二种方法是升级 OpenCore 的版本,安装 12.0.1 建议 OpenCore 从 0.7.4 起步,升级可参考「升级引导工具的方法」;## 目标
去除 iconfinder 上 icon 的水印
原理
利用水印像素点和原图像素点颜色合并的原理,如果拥有加过水印的图片和水印图片,就可以反向推出原图原像素点的颜色;前提是你得拥有他的水印图片
Read More ~
全网最全BT 磁力搜索引擎索引-持续更新中
写给热爱学习的朋友们
名字
说明
更新日期
趣导航
https://www.qssily.com/sites/cilisuoyin 提供长期稳定可用磁力索引—导航(全新升级) >旧导航
2021/5/01
菟丝子资源社区
https://dodder.club/ 菟丝子资源社区,收集了两千多万的资源,资源实时更新(索引每分钟更新一次),支持搜索和分类查看,音频、视频、图片、压缩文档、镜像等等资源分类查看,有兴趣可以去翻翻。
2022/05/21
茶杯狐
https://www.cupfox.com/影视资源聚合搜索引擎
2020/6/26
老王磁力
备用域名:laowang.funlaowangcili.monster磁力链接搜索引擎老王磁力(laowang.icu)索引了全球最新最热门的BT种子信息和磁力链接,提供磁力链接搜索、BT搜索、种子搜索等强大功能。
2020/12/26
磁力猫
发布页:http://磁力猫.xyz/ 比较干净的磁力站,资源也十分丰富,支持pikpak网盘转存
2022/6/26
磁力狗
发布页:http://ciligou.top/http://clg.im最干净好用的磁力资源搜索引擎备用地址:http://ciligou.app/
2020/6/26
磁力熊
https://www.cilixiong.com/豆瓣高清电影1080P高清磁力下载
2020/6/26
磁力天堂
磁力搜索引擎-磁力天堂,高效的磁力搜索引擎 请牢记短网址>> https://cltt.me https://cltt.vip 类似的站点发布页:http://磁力天堂.com
2022/6/29
磁力天堂
影视资源网站,多为迅雷磁力链接,致力打造国内最大的磁力链资源发布中心,提供1280高清、720P、蓝光等超清电影下载资讯服务
2022/4/24
海盗湾
http://thepiratebay.ee/备用域名:thehiddenbay.com,proxybay.app,中文支持较差,但英文资源丰富
2020/6/26
无限磁力
http://wxcli.xyz/fb地址发布页:http://wx677.xyz/种子分享平台 / 磁力链搜索引擎
2021/11/01
无极磁链(MAG磁力站)
https://zh.0mag.net/备用链接:https://6mag.net/ØMagnet种子分享平台 / 磁链搜索引擎,同时磁力链接可生成短链接!同类站点(英文版):https://9mag.net/https://0magnet.com/
2021/8/03
两个BT
https://www.bttwo.com/免费电影,电视剧资源下载
2020/6/26
YTS/YIFY
https://yts.mxyts.am 是目前访问量最高的盗版网站之一,超过了海盗湾。在原 BT 下载站 YTS 在2015年关闭之后,yts.am非正常的接手了 YTS 的品牌,它是多家尝试复活 YTS 和 YIFY 品牌的网站之一。备用域名:yts.ag,yts.lt
2021/5/14
SouCILI.INFO
https://quletu.cilimiaomiao.xyz/ 搜磁力-非常干净优雅的磁力搜索站点,不仅资源丰富,而且完全无广告,支持在线播放 可能需要下载磁力APP
2022/5/12
skrbt
https://skrbtta.xyz/无广告,界面简洁的BT磁力搜索引擎,和以前的手撕包菜很像永久发布页:永久地址发布页:https://skrbt100.xyz
2022/1/08
Seedhub
http://seedhub.info/磁力蓝光无水印影视下载,收录优质媒体资源1080P, 4K, 720P, 高清, 蓝光, BT, Torrent, 迅雷, 磁力, Magnet
2021/8/25
Sbt Magnet
https://sbt4031.icu/好用的种子搜索、磁力链接搜索引擎地址发布页:http://sbt2066.xyz/
2021/5/01
mp4ba
https://www.mp4ba.cc/老牌高清电影种子站:mp4ba(种子打包)现在改在线播放了
2020/6/26
DHTCLUB
https://www.dhtclub.com/只分享高品质影视资源 只求质量、不求数量、不抢首发!
2021/8/25
BT之家
https://btbtt12.com/提供最新最全高清电影、动漫、韩剧、日剧、美剧、无损音乐、体育、小说等BT迅雷下载以及资讯
2021/8/22
BT世界
https://www.btsj5.com/ 高清美剧资源
2021/7/03
btfan
http://www.btfan.com/一个BT聚合搜索网站。
2020/7/08
btbtt15
https://www.btbtt15.com/资源十分丰富,还出了APP,更新也比较及时
2022/6/29
bt 电影天堂
https://www.bttian.com/专注于高清电影下载服务
2022/1/08
868888
https://www.868888.net/据说什么都能搜到
2020/12/26
Read More ~
虚拟显示器——在没有显示器连接时激活Windows 10多显示器设置
原文地址:Activating a Secondary Display on Windows 10 when no Monitor is Connected
下面为机翻,调整了关键的命令行关键字,以便复制运行。需要注意的是本文是虚拟的显示器,不是虚拟桌面。该功能可以将虚拟显示器扩展投屏分享,不与主屏发生联系,且不用外接连接线。
在某些情况下,您需要模拟一个或多个连接到您的系统的辅助显示器。这是最需要的远程控制应用程序或USB类型的显示器,如Amyuni USB移动显示器产品。
在Windows 10之前,很容易通过显示设置控制面板激活VGA显示器来模拟连接第二个显示器。如果你正在寻找旧系统的解决方案,滚动到这篇文章的结尾。
Windows 10删除了在没有连接VGA显示器时激活VGA显示器的选项。我们在这里提供了一个简单而免费的解决方案,可以在您的系统上创建多达4个虚拟显示器。
以下是将虚拟显示器添加到您的系统的过程(仅限Windows 10 !)
- 从https://www.amyuni.com/downloads/usbmmidd_v2.zip 下载我们的虚拟显示驱动程序>
- 将zip文件解压缩到一个空文件夹,例如c: \temp\usbmmidd_v2
- 请确保您像阅读任何其他软件产品一样阅读License.txt文件
- 以管理员身份打开命令提示符窗口(除非以管理员身份运行,否则不能向系统添加设备)
- 执行如下命令:
- CD c:\temp\usbmmid_v2(或任何你选择的目标文件夹)
- deviceinstaller64 install usbmmidd.inf usbmmidd
- 请确保您看到驱动程序由Amyuni Technologies Inc.签署的消息。这是一个确认,驱动程序通过微软驱动程序签名程序,是无病毒的
- deviceinstaller64 enableidd 1
为了在Windows 10中添加4个虚拟显示器,您最多可以运行最后一条命令4次。
如果你使用的是32位系统,将"deviceinstaller64"替换为"deviceinstaller"
包含的批处理文件usbmmid .bat会自动运行这些命令,并在32位或64位版本的设备安装程序之间进行选择。如果您不习惯打开命令提示符并输入这些命令,右键单击usbmmid .bat和“以管理员身份运行”。
就是这样。现在在显示设置中有一个高清晰度显示器。默认分辨率是1920x1080像素,如果您需要其他分辨率,请检查包含的idd_instructions.txt文件,以了解如何指定您自己的分辨率。在你的系统的显示设置中,你可以放置显示器,改变分辨率,扩展桌面或者做任何你用真实显示器做的事情。
虚拟显示器默认支持以下显示分辨率:
1024x768像素
1360 x 768像素
1440 x 900像素
1600 x 900像素
1600 x 1200像素
1920 x 1080像素(默认分辨率)
1920 x 1200像素
2560 x 1440像素
3840x2160像素
执行上述第一步后,您可以通过更改以下注册表项来修改支持的分辨率列表:
HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WUDF\Services\usbmmIdd\Parameters\Monitors
通过此注册表项最多可以定义10个分辨率。键的名称应该从“0”到“9”。(默认)注册表值定义默认显示器分辨率。
禁用虚拟显示器。
使用实例
deviceinstaller64 enableidd 0
(如果添加了多个虚拟显示,请多次运行此命令)
重新激活:
deviceinstaller64 enableidd 1
要从你的系统中完全移除驱动程序,你可以通过设备管理器卸载“USB移动显示器虚拟显示”,或者运行以下命令:
deviceinstaller64 stop usbmmidd
deviceinstaller64 remove usbmmid
Windows 10之前的操作步骤如下:
- 右键单击桌面,选择“屏幕分辨率”或“显示设置”
- 点击主显示器旁边的“检测”
- 选择“未检测到另一个显示”->多个显示->尝试连接VGA
- 这将添加第二个虚拟显示器,然后您可以将其配置为真实显示器
其他适用于所有系统的解决方案是购买一个硬件狗连接到你的系统的HDMI、DVI或VGA连接器,以模拟显示器是实际连接的。
欲了解更多有关USB移动显示器的详细信息,请访问我们的专门网站:
www.usbmobilemonitor.com
Amyuni开发团队
Read More ~
Hello Gridea
👏 欢迎使用 Gridea !
✍️ Gridea 一个静态博客写作客户端。你可以用它来记录你的生活、心情、知识、笔记、创意... ...