Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >macOS Mojave 10.14.2(18C54)安装常见问题

macOS Mojave 10.14.2(18C54)安装常见问题

作者头像
Bess Croft
发布于 2020-04-03 08:07:34
发布于 2020-04-03 08:07:34
1.9K00
代码可运行
举报
文章被收录于专栏:贝丝的专栏贝丝的专栏
运行总次数:0
代码可运行

其实很多不同的版本在安装时也可以套用!

首先,安装10.14及以上macos,Clover版本不低于r4515!

安装:

• 根据以往的经验,不建议大家在安装前替换你已经配置好的EFI。先就用U盘安装好了之后再去挂载EFI,这样可以避免很多未知的错误!

• 关于Clover使用教程,网上有大批的高质量的教程。可能我写不出来,但是也没必要写了!比较优秀的推荐远景论坛的帖子和@DalianSky

• 如果你的安装卡在最后两分钟,那么建议你使用OsxAptioFixDrv-64.efi或者OsxAptioFixDrv3-64.efi替换AptioMemoryFix.efi,每次只可以用一个驱动。

• 找不到安装器资源的解决方法:断网安装(这个基本上都是的)、删除drivers64UEFI目录下的EmuVariableUefi-64.efi、修改机型为最近三年,比如MacBootPro13.1 MacBookPro14.1 iMac17.1等等、如果你的电脑是双硬盘或者多硬盘,先拔掉不安装的再试、检查镜像的md5值

• 如果你是alc295的声卡,你很幸运,我就是alc295声卡,你可以找我要。如果你是其它声卡,很遗憾,你只能自己去爬贴学习驱动了,或者找人给你帮忙!

其它:

• USB端口限制解除补丁

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Comment: USB Port limit patch 10.14(credits FredWst)
Name: com.apple.dirver.usb.AppleUSBXHCI
Find: 83FB0F0F 83030500 00
Replace: 83FB0F90 90909090 90
MatchOS: 10.14

请一定要看清楚哦!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Comment: USB Port limit patch 10.14.1 10.14.2 Beta(credits DalianSky)
Name: com.apple.dirver.usb.AppleUSBXHCI
Find: 83FB0F0F 838F0400 00
Replace: 83FB0F90 90909090 90
MatchOS: 10.14.1,10.14.2

Mojave系统下蓝牙会失效,或者时而抽风,我也是中枪之一!截止到目前有效的解决办法是将文件BrcmFirmwareData.kext和BrcmPatchRAM2.kext复制到/Library/Extensions目录下。而且不要忘了,这种操作必须要重建缓存的!!!(重启前

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/bin/sh
sudo chmod -Rf 755 /S*/L*/E*
sudo chown -Rf 0:0 /S*/L*/E*
sudo chmod -Rf 755 /L*/E*
sudo chown -Rf 0:0 /L*/E*
sudo rm -Rf /S*/L*/PrelinkedKernels/*
sudo rm -Rf /S*/L*/Caches/com.apple.kext.caches/*
sudo touch -f /S*/L*/E*
sudo touch -f L*/E*
sudo kextcache -Boot -U /

如果你不会,或者嫌这样太麻烦了,那么你也可以应用Kext Utility重建缓存。然后重启系统,查看你的蓝牙是否正常了!

APFS转换解决方法:

Apple已经删除了我们必须避免APFS转换的选项,常规的方法已经无法避免安装过程中自动将分区转换为APFS格式,包括在硬盘上安装以及固态上面安装。

以下是一些已知的解决方案:

  1. 使用Carbon Copy Cloner(CCC)应用程序格式驱动器备份到HFS+J并恢复备份。
  2. 使用此应用程序将APFS分区转换为HFS+J:https://www.paragon-software.com/home/apfs-hfs-converter/
  3. 使用USB转SATA线缆从外部卸下HDD/SDD并安装macOS(应该可能也许会避免转换!)
  4. 修补安装程序,由你来找到这个方法!

去掉Lilu的输出信息,还原10.14内核崩溃(Kernel pance)的真相:

• 使用文本编辑器,在KernelToPatch段落添加内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<key>KernelToPatch</key>
<array>
    <dict>
        <key>Comment</key>
        <string>Disable panic kext logging on 10.14 Release kernel (c) vit9696</string>
        <key>Disabled</key>
        <false/>
        <key>Find</key>
        <data>
        igKEwHRC
        </data>
        <key>MatchOS</key>
        <string>10.14.x</string>
        <key>Replace</key>
        <data>
        igKEwOtC
        </data>
    </dict>
</array>

• 使用Clover Configurator打开config.plist-Kernel and Kext Patches-kernelToPatch,添加:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Comment:    Disable panic kext logging on 10.13 Release kernel
Find:       8a0284c0 7442
Replace:    8a0284c0 eb42
MatchOS:    10.14.x

• 其它的内核补丁备用,请自行按需取用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cpuid_set_info_rdmsr (c) vit9696
B9A00100 000F32
B9A00100 0031C0
10.12.x,10.13.x,10.14.x

xcpm_idle_wrmsr (c) Pike R. Alpha
B9E20000 000F30
B9E20000 009090
10.12.x,10.13.x,10.14.x

xcpm_assert_rdmsr (c) Sherlocks
B9980100 000F32
B9980100 0031C0
10.12.x,10.13.x,10.14.x

xcpm_SMT_scope_msrs (c) Pike R. Alpha
BE0B0000 005DE908 000000
BE0B0000 005DC390 909090
10.12.x,10.13.x,10.14.x

cpuid_set_info (c) Pike R. Alpha
04723CD0
04XX3CD0 
10.13.x,10.14.x
- XX: need value you want
  
xcpm_bootstrap (c) Pike R. Alpha
89D804C4 3C22
89D804XX 3C22
10.13.x,10.14.x
- XX: need value you want

xcpm_assert_wrmsr (c) Sherlocks
B9990100 000F30
B9990100 009090
10.13.x,10.14.x

xcpm_core_scope_msrs (c) Pike R. Alpha
BE030000 0031D2E8 79FCFFFF
BE030000 0031D290 90909090

xcpm_pkg_scope_msrs (c) Pike R. Alpha
BE070000 0031D2E8 91FCFFFF
BE070000 0031D290 90909090
10.14.x

xcpm_program_msrs (c) Pike R. Alpha
554889E5 41574156 41554154 53504189 D64889FB 4189F54C 8D3D6387
C39089E5 41574156 41554154 53504189 D64889FB 4189F54C 8D3D6387
10.14.x

xcpm_SMT_scope_msrs (c) Pike R. Alpha
BE0B0000 0031D2E8 66FCFFFF
BE0B0000 0031D290 90909090
10.14.x

挂载EFI分区:

Windows系统下打开命令行,输入如下指令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
iskpart
list disk           # 磁盘列表
select disk n       # 选择EFI分区所在的磁盘,n为磁盘号
list partition      # 磁盘分区列表
select partition n  # 选择EFI分区,n为EFI分区号
set id="ebd0a0a2-b9e5-4433-87c0-68b6b72699c7"    # 设置为EFI分区
assign letter=X     # x为EFI分区盘符

当然,如果你觉得麻烦,可以看一下我之前的文章。尝试自己用easyUEFI挂载分区,这个软件适合所有阶段的人使用,而且比较友好!

抹盘时提示“MediaKit报告设备上的空间不足以执行请求的操作”的原因及方法:

原因:

出现该提示最根本的原因就是你之前磁盘分区的ESP分区小于200MB,这个你可能会忽略,但是不管你在哪里看教程,都会提醒你注意这个事情!

解决方法:

  • Windows下使用diskgenius删除掉MSR分区,将多出来的分区合并到ESP,正好凑成200MB,以满足安装macOS的基本需求.
  • macOS下可以直接使用磁盘工具进行抹盘,它会自动生成一个200MB的EFI分区,当然前提条件是你需要先备份好磁盘里的数据,否则会造成全盘数据的丢失,请谨慎操作.

*版权声明:版权归作者本人所有,尊重原创,推送文章除非无法确认,都会注明作者和来源。如果出处有误或侵犯到原作者权益,实属无心之举,请务必与我联系删除或授权事宜。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 爪哇派生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
通过源码分析nodejs的进程架构
我们知道nodejs是单进程(单线程)的,但是nodejs也为用户实现了多进程的能力,下面我们看一下nodejs里多进程的架构是怎么样的。 nodejs提供同步和异步创建进程的方式。我们首先看一下异步的方式,nodejs创建进程的方式由很多种。但是归根到底是通过spawn函数。所以我们从这个函数开始,看一下整个流程。
theanarkh
2020/03/31
7050
通过源码分析nodejs的进程架构
libuv源码阅读(21)--uvtee
uv_write_s 类型是由普通ref以及cb和一些写操作有关的信息组成,然后它需要一个 uv_stream_t* handle 来配合使用。
wanyicheng
2021/03/13
1.1K0
libuv源码分析之stream第一篇
流的实现在libuv里占了很大篇幅,今天分析一下流的实现。首先看数据结构。流在libuv里用uv_stream_s表示,他属于handle族。继承于uv_handle_s。
theanarkh
2020/05/07
9530
libuv源码阅读(16)--signal
总结:信号处理handler是被插入到红黑树中,按照一定规则排序插入的,信号越小,不带oneshot等规则。信号处理函数统一触发信号管道可读,然后loop从信号io管道可读端读取信号结构体,执行这个信号上的handler的回调。大概主体流程就是这样的。跟我们平常自己写某些信号的handler的方法类似:注册信号和信号函数,触发信号管道可读,主循环捕获io可读事件,根据信号值调用对应回调。
wanyicheng
2021/03/13
2.2K1
libuv源码阅读(18)--progress
总结:用户自己初始化的async handler 也可以被插入到异步handler队列中,当管道[0]可读的时候,代表某个异步handler可以处理了,这时候遍历队列,处理pengding状态的handler。
wanyicheng
2021/03/13
5580
libuv源码分析之stream第二篇
关闭流的写端就是相当于给流发送一个关闭请求,把请求挂载到流中,然后注册等待可写事件,在可写事件触发的时候就会执行关闭操作。这个我们后面分析。
theanarkh
2020/05/07
7010
libuv源码阅读(10)-thread-create
根据参数设置新线程的堆栈大小,然后调用系统接口创建对应的线程,然后释放线程属性变量
wanyicheng
2021/03/12
6210
nginx源码阅读(2)master和worker进程创建流程
ngx_uint_t log_use_stderr; /* unsigned log_use_stderr:1; */
golangLeetcode
2022/08/02
4390
libuv源码阅读(12)--change
可以看到 fs_event_s 也是由基础的handler和一个path 以及 它独有的字段组成
wanyicheng
2021/03/12
6940
libuv源码阅读(8)--idle-compute
工作函数 uv__fs_work 做的事情很简答 根据要做的操作类型做对应的操作函数调用,uv__fs_read 根据系统类型采取合适的读取函数,可以简单的视为调用read从fd读数据即可;
wanyicheng
2021/03/12
9260
libuv源码阅读(23)--tcp-echo-server
listen完了之后run loop等待socket可读,新连接到来,执行指定回调
wanyicheng
2021/03/14
1.3K0
libuv源码解析之信号处理
经过一系列的操作后,主要是申请了一个用于互斥控制的管道,然后往管道里写数据。后面就可以使用lock和unlock进行加锁解锁。接着在第一个注册信号的时候,还会做一些初始化的工作。
theanarkh
2020/01/15
9000
swoole 学习第二章 Event Io 与 process
刚刚才说了,子进程当复制一个父进程的时候会复制它的内存以及它的上下文环境,除了这些之外,子进程会复制父进程的io句柄(fd描述符)
Marco爱吃红烧肉
2021/07/23
4960
libuv源码分析之unix域
unix域是一种基于单主机的进程间通信方式。实现模式类似tcp通信。今天先分析他的实现,后续会分析他的使用。在libuv中,unix域用uv_pipe_t表示。
theanarkh
2020/05/24
9140
libuv源码学习笔记:tcp-echo-server
事件循环是 libuv 功能的核心部分,它负责对 I/O 进行轮询,并基于不同的事件源执行它们的回调函数。libuv 的设计目标之一是为了让异步 I/O 操作变得简单易用,同时保持高性能。
晨星成焰
2024/10/20
2660
libuv源码学习笔记:tcp-echo-server
libuv源码阅读(6)--helloworld
每一种都是一种hanlder类型或者request类型,代表某种资源类型或者请求操作的包装结构体,里面的属性字段是为了支持它可以正常工作的而设置的:
wanyicheng
2021/03/12
8061
node.js 中的进程和线程工作原理
进程是对正在运行中的程序的一个抽象,是系统进行资源分配和调度的基本单位,操作系统的其他所有内容都是围绕着进程展开的
ACK
2024/09/18
1600
node.js 中的进程和线程工作原理
1(UNIX基础)
操作系统可定义为一种软件,它控制计算机硬件资源,又称之为内核(kernel)。 内核的接口被称为系统调用(system call)。公用函数库在系统调用之上,应用软件既可以使用公用函数库,也可以使用系统调用。(系统调用和库函数的比较在最后)
提莫队长
2019/02/21
9360
libuv线程池和主线程通信原理
代码很简单,就是设置一下async_io_watcher的fd和回调,在epoll_wait返回的时候用到。再看uv__io_start。
theanarkh
2020/01/15
1.5K0
在Node.js中使用SO_RESUEPORT
前言:今天下载了Node.js最新版代码,并为Node.js的TCP模块增加了SO_RESUEPORT的能力,本文介绍一下具体的实现,关于SO_RESUEPORT的知识可以参考之前的文章或者网上文章。
theanarkh
2021/07/30
6580
相关推荐
通过源码分析nodejs的进程架构
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验