Coder Social home page Coder Social logo

xps15-9550-high-sierra's Introduction

XPS15-9550 macOS High Sierra 教程

10.13为第三方NVMe SSD带来支持,以及Clover DSDT热补丁技术的普及,进一步降低了黑苹果的门槛,前段时间我10.12.1的教程写得各种混乱,让黑苹果新手看得云里雾里的,决定重新写一个完全版的新手向教程,但是是针对我个人的硬件配置写的,我没有4K屏,如果有4K屏的同学愿意提供相关的补充,那就太感谢了。

机型配置

  • 机型:DELL XPS15 9550
  • CPU:Intel i7 6700HQ
  • 内存:16G DDR4 2400(原厂8G,自己换了)
  • 硬盘:东芝XG3 256G NVMe SSD (THNSN5256GPU7)
  • 核显:HD530, 1920x1080
  • 声卡:Realtek ALC298(也叫ALC3266)
  • 无线网卡:DW1830(带蓝牙)

DW1830是免驱的,如果你的无线网卡是Killer的,那就很不幸了,目前还没有驱动,你得去深水宝买一张免驱卡来更换才行。

安装完之后的一些问题

  • 独显不指望了
  • 无线5GHz达不到最高速度(我没具体测试过)
  • ThunderBolt/USB-C 应该不行(没设备测试)
  • 低亮度会有轻微闪屏

硬件准备

  • 大于等于8G的U盘一个(用的时候会完全清空,请先备份好重要资料)
  • 另外一台电脑(防止因你遇到什么特殊情况无法顺利完成安装时,可以搜索爬贴)

软件准备

  • Win系统(一般刚买回来的XPS就是win10了)
  • TransMac(下载辅助工具
  • Download ZIP后解压得到的文件夹(下称我Repo提供的文件
  • 带Clover引导的macOS安装映像一个(可以在pcbeta论坛找,我这里也提供一个10.13PB的

关于系统安装镜像

为什么我要建议你准备一个带Clover引导的映像呢,完全是为了不想你用两个U盘分别做引导安装那么麻烦。

写本文的时候论坛里找不到有带Clover10.13PB(17A315i)映像,于是我就自己弄了一个带Clover4124的。其实我也不知道正宗的方法是怎么制作DMG,就自己搜索几个教程用hdiutil瞎搞了一下,自己用TransMac试写到U盘竟然凑合可以用,于是就放上来了。

考虑到我提供的映像版本很快会过时,但是基本操作步骤是不会过时的,所以如果你在看本文的时候发现pcbeta论坛有更加新版的系统映像,不妨去下载新的。

BIOS版本

开机狂按F2,进入BIOS设置界面,在General-System Information看看你的Bios version是什么。 如果是比1.2.21更小,则可以在这里下载1.2.21,然后接上笔记本电源,确保电池电量大于20%,在windows环境双击这个exe,升级成1.2.21。 如果出厂版本就比1.2.21更大,虽然说可以降级,但是我不清楚会不会出现什么意外,所以,接下来就会麻烦一点。

写映像到U盘

右击TransMac,以管理员身份运行,然后看图操作,耐心等待几分钟,出现Restore Complete即为写入完成。 (图片是旧教程里的,dmg名字请忽略)

写完映像之后,U盘会变成两个分区,一个叫EFI的就是U盘引导区,里面存在UEFI版本的Clover;另外一个叫U盘的提示你未格式化,这个时候千万不要手贱去格式化,这是因为windows认不出macOS的文件系统而已,并不是里面没有东西。

打开资源管理器,你可以大概浏览一下U盘EFI引导区目录结构:

  • 顶上的AptioFix2文件夹是我留给你备用的
  • 红色箭头的config.plist是Clover的配置文件
  • 绿色箭头是AptioFix,先有个印象

如果你是从论坛下载的带Clover引导的dmg映像,你可以在我的辅助工具里找到USB-EFI.zip,解压出来的文件就是上图所有文件了,删除你U盘引导区里所有文件,把解压得到的所有文件复制进去。

  • 如果你和我一样是i7的CPU,可以进入下一步BIOS设置了。
  • 如果你是i5的CPU,用Notepad++打开config.plist,搜索191b0000,改成19160000,保存。

BIOS设置

重启,开机狂按F2,直到DELL Logo下方出现蓝色进度条,错过的话,重启再试。

  • Secure Boot - Secure Boot Enable里改成Disabled
  • System Configuration - SATA Operation 改成 AHCI

注意

一旦你把SATA OperationRAID On改成了AHCI,你的原厂win10就启动不了了,你需要改回RAID On才能启动win10.

自动发现启动项

在 General - Boot Sequence,在右边列表找到一个UEFI: U盘型号, Partition 1这样的启动项,如下图,把它挪到最顶部,然后ApplyOKExit,就可以让U盘第一启动顺序了。

  • 如果你找到这样的启动项,跳到下面的Clover引导小节
  • 如果你没找到,往下看。

手动添加U盘引导项

右边点击Add Boot Option,如下图操作,Boot Option Name可以随便填,我这里写USB-Clover,然后点击File Name右边的按钮进入选择引导的efi文件。

选择文件的操作如下:

然后把刚刚添加的USB-Clover选中,点击右边的上箭头把它置顶,然后ApplyOKExit

Clover引导

如果一切顺利,笔记本重启后你可以进入到Clover引导画面了:

选择Boot OS X Install from HS_Beta这个安装图标按回车键。

  • 如果顺利的话,就会进入满屏英文滚动,两三分钟后进入安装界面,请跳过下面的slide计算,直奔安装这一节。

  • 如果很不幸,选择安装图标后出现了类似下面的画面,提示can not allocate relocation block...的话,就需要手动计算slide值了。

    1225-er

slide计算

用备用电脑把U盘引导里面的AptioFix2文件夹下的OsxAptioFix2Drv-64.efi剪切到Clover/drivers64UEFI里,然后把OsxAptioFixDrv-64.efi(前面绿色箭头指的那个)剪切到AptioFix2文件夹(留个备份)。

然后打开config.plist,搜索kext-dev-mode,在它前面加一个slide=168 ,变成了下面这样:

<string>slide=168 kext-dev-mode=1 dart=0 nv_disable=1 -v</string>

现在保存,然后重启,再次进入Clover引导画面,选择安装图标,看看是否顺利进入满屏英文,两三分钟后进入安装界面,跳到下一节——安装

如果很不幸,选择安装图标后卡住在下面的画面,说明168这个数不适合你:

1218-11

留意错误信息Error allocating 0x13d3a pages at 0x0000000003f26000 ...,记住0x13d3a这个数值,你将会面临本教程最艰难的部分。

重启,再回到Clover引导画面,如下图,选取下面行的第一个图标,进入UEFI Shell 64界面:

clover-1

当命令行准备好之后,输入memmap命令,输出如下图:

1218-0

不同的内存容量和不同的BIOS版本,上图的数据是不同的,上图是我自行升级的海盗船16G内存在1.2.18BIOS下的情况。

我们在图中找符合以下条件的行: 1. Type列的值是Available 2. # Pages列的值大于等于13d3a这个值 3. Start列的值比100000

不难得出两个结果:

Start # Pages
9F41000 1DB30
100000000 3BE000

第二个Start数值太大了,我们只要第一个9F41000即可。

打开你第二台电脑的计算器,切换到程序员模式,选择16进制(HEX)。(如果你实在小白到不会用win的计算器,请点击在线计算,计算出来的结果忽略小数部分)

用公式:Start / 200000 + 1 计算出Slide值:9F41000 / 200000 = 4F4F + 1 = 50,转换成10进制(点击HEX上面的DEC),显示为80。

以上计算方法参考自 @wmchris 的教程,有修改。

实测一下,在Clover启动画面,选UEFI Shell 64图标那行的第三个Options,如图,把Boot Argsslide=168改为slide=80(对这行按空格,就进入编辑模式了,用方向箭头移动光标),改完按回车,然后Esc键。(图片是以前截的显示slide=0,别在意)

args

再次选择安装图标,一般来说你就能进入安装界面了,跳到下一小节——slide注意

如果计算出来的值还是有问题(出现前面同样的错误,或者只显示一排++++号就不动了),那你可以试试把计算出的值加1或减1,即slide=79slide=81都试试。

如果很不幸,你还是无法进入满屏英文的画面,我只能建议你降级BIOS到1.2.21版本,然后用OsxAptioFixDrv-64.efi了,也就是U盘刚被写入dmg映像的状态。

slide注意

要注意的是,这里只是临时修改启动参数,你每次重启它都会恢复回原来的样子。所以我们要备用电脑,打开config.plistslide=168改成slide=你测试出的可启动值,保存,然后再进入安装界面。

还有要注意的是,你的kernel cache变化的时候(安装了第三方驱动到系统),有可能会导致slide值需要重新计算。

进入安装前的verbose模式

满屏英文就是系统启动过程的各种信息显示,如果你卡住在这个英文画面很久(超过2分钟没有任何变化),你就要去论坛求救一下了。
如果遇到BrcmPatchRAM2: Firmware upgrade not needed.5行不断重复的情况,你可以先把U盘EFI/Clover/kexts/other里面的两个Brcm开头的文件夹剪切到其他地方(可以放AptioFix2文件夹),然后再试试进安装图标。等正常安装完成后再在后面安装硬盘引导的时候把这两个还原回去other里。

安装

希望你不是经历了上面梦魇般的slide计算步骤才来到这里的,如果是的话,您辛苦了。

进入安装界面后,你可以用磁盘工具对你的SSD进行分区,比如我就分成两个OSXSource两个区了。
第一次进入安装过程2分钟左右就会重启,然后Clover多了一个叫Boot macOS Install from OSX(我的系统分区名)的图标,直接对着它回车。
然后第二次进入的话,几秒钟就重启了。第三次进入,大概10多分钟就安装好系统了。

安装完之后笔记本自动重启,Clover的引导画面已经多了一个系统图标Boot macOS from XXX,选择它进入就可以启动系统了,设置时区、语言、无线连接、用户登陆什么的。

有个比较重要的就是提示是否开启FileVault,这东西似乎和用户数据加密有关,我个人不开启,也不知道黑苹果开启了会不会有什么不好的地方,请自行搜索,斟酌。

进入桌面后建议你再重启一次系统,不然亮度调节无效。

硬盘EFI引导

目前都是靠U盘的Clover引导才能进入系统的,所以我们要把Clover安装到硬盘的EFI分区,让系统脱离U盘引导。

在屏幕左下方有个蓝白的笑脸图标,叫做Finder,打开它,然后在Finder窗口的左边栏找到HS_Beta,也就是U盘写入dmg映像后的分区,里面有个Clover_v2.4k_r4124.pkg,如果你不是用我的dmg映像,可以在辅助工具-mac_app里找到它。

双击打开,提示来自身份不明的开发者,这个时候你可以按组合键Alt + 空格,然后输入term回车,就跳出终端窗口了。
你也可以点击Finder图标旁边的小火箭LaunchPad-其他-终端来打开。

在终端输入:sudo spctl --master-disable回车,提示输入密码执行,然后没有任何输出,这就代表执行成功了,这个行为我下称执行命令,后文还有一些命令要执行,请记住哦。

再次双击刚才的pkg进入安装。

安装Clover

出现安装窗口,点击Continue(继续),再Continue,点击Change Install Location...(更改安装位置),选择你的系统分区,点击Continue,再点击左下角的Customize(自定义),按下图的勾选,主题你可以勾BlackGreenMoody,我图勾少了这个。

注意Drivers64UEFI选什么不重要,因为我们后面要覆盖它。

点击Install(安装),输入密码,5秒左右就安装完成了。

覆盖配置

继续在HS_Beta里找到Clover Configurator,把它拖到Finder左边的应用程序里,然后点击Finder图标旁边的小火箭LaunchPad,找到Clover Configurator,打开。

两个都Mount之后,分别点击旁边的Open Partition,弹出两个Finder窗口,如何区分哪个是U盘的EFI区,哪个是硬盘EFI区?如果你是用我的dmg,有AptioFix2的那个就是U盘的EFI。否则你可以展开EFI文件夹,看看哪个的Clover文件夹日期比较新,哪个就是硬盘EFI。

区分好之后,我们要做的就是,把硬盘EFI的Clover文件夹下的下面四个删除:

ACPI
config.plist
driver64UEFI
kexts

然后把U盘EFI的Clover文件夹的这四个复制到硬盘EFI的Clover文件夹下:

现在应该一切就绪了,重启系统,黑屏的时候拔掉U盘,耐心等待,Clover画面再次出现的话,说明硬盘Clover引导成功。

注意配置更新

如果你用的是我提供的dmg,那么U盘EFI里的文件总是针对10.13PB版本的设定,如果你在几个月后才看到本文,那时候PB早就被正式版或10.13.x取代了,这个时候你就应该用本文最顶上的那些文件了,即我Repo提供的文件,来覆盖到硬盘EFI的Clover文件夹。

我会跟进系统更新,把自己的最新配置更新上来github的,前提是我还没挂掉,而且还在用XPS15做iOS开发的话。

网卡顺序修正

原理嘛,忘记了,如果顺序错了,就不能在App Store下载东西。

打开终端,执行命令:networksetup -listallhardwareports,如下图,留意en0对应的Port是否Wi-Fi,如果是,说明顺序正确了,跳过本步骤。

如果顺序不正确,你需要点击屏幕左上角的苹果图标,打开系统偏好设置-网络,点击左下角的减号,把所有列表项删除干净,然后执行命令:sudo rm -f /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist,重启。

重启后,再进入系统偏好设置-网络,点击左下角的加号,先添加WiFi,再添加蓝牙,然后应用,就可以了。

安装其他辅助app

我在HS_Beta我Repo提供的文件里提供了一个叫Other的文件夹,里面有几个文件夹,我们先来处理ComboJack

ComboJack

  • 执行命令:cd 把ComboJack文件夹拖过来

  • 执行命令:chmod +x install.sh

  • 执行命令:./install.sh

没提示错误的话,ComboJack就安装完成了。

顺带提一下它的作用:检测耳机拔插,修复耳机孔多合一下产生的一些问题,关于它的原理,请看wmchris的教程

VoodooPS2Daemon

  • 执行命令:cd 把VoodooPS2Daemon文件夹拖过来

  • 执行命令:chmod +x _install.command

  • 执行命令:./_install.command

它的作用嘛……我忘了,你稍后自行搜索呗?

LE

这个文件夹的东西是要安装到/Library/Extensions/里面的。

  • 执行命令:sudo cp -r 把AppleGraphicsDevicePolicyInjector.kext拖过来 /Library/Extensions/
  • 执行命令:sudo cp -r 把X86PlatformPluginInjector.kext拖过来 /Library/Extensions/
  • 执行命令:sudo kextcache -i /

第一条命令的AppleGraphicsDevicePolicyInjector.kext是用来打开MacBookPro13,3这个SMBIOS的HDMI图像输出的。 第二条命令的X86PlatformPluginInjector.kext是用来让CPU获得0.8GHz的最低频率的。 第三条是重建缓存,让前面两个驱动在重启后生效。

其他

touristd进程耗电,耗流量

我在surge一直看着这个家伙以2MB/s的速度在下载东西,永远不停止,这可能是个系统BUG(升级到PB4 17A330h似乎没有这个BUG了),这个进程我查了一下,似乎是做一些新机使用指引什么的,可以禁用。

  • 执行命令:launchctl remove com.apple.touristd
  • 执行命令:sudo mv /System/Library/LaunchAgents/com.apple.touristd.plist /System/Library/LaunchAgents/com.apple.touristd.plist.bak

关闭Verbose

如果你觉得你的系统足够稳定了,但是每次开机依然一屏屏英文字符把你刷得头晕眼花无心工作,那就在config.plist里找到下面这句,去掉-v就行了:

<string>kext-dev-mode=1 dart=0 nv_disable=1 -v</string>

关掉SDCard Reader

在BIOS里禁用读卡器会更省电,反正我是很少在win用读卡器,在macOS更是没有驱动。

禁止生成休眠文件

简单来说就是SSD的写入寿命有限,而默认的休眠模式3会每次都把内存数据写入SSD(大概8G一次)。

然后说说禁用休眠的命令,3条按顺序执行:

sudo pmset hibernatemode 0
sudo rm /var/vm/sleepimage
sudo mkdir /var/vm/sleepimage

原生NTFS读写

  1. 打开终端输入 diskutil list 查看所有分区的卷标(NAME列)

  2. 输入 sudo nano /etc/fstab 再输入密码回车进入配置

  3. 根据自己要配置的NTFS分区的卷标UUID输入配置信息,下面各列举一条:

    UUID=C3C40C2E-7766-48A0-AA99-18305C9BAD3A none ntfs rw,auto,nobrowse
    LABEL=多媒体 none ntfs rw,auto,nobrowse
    

UUID可以从磁盘工具查到,输入完成之后按Ctrl+X再输入Y再回车进行保存。 4. 用磁盘工具将配置好的分区进行卸载再装载使配置生效(无需重启) 5. 因为加入了nobrowse所以Finder中看不到修改过的NTFS分区(不加入nobrowse会无法写入)所以要使用快捷方式进行访问. 在终端中输入 sudo ln -s /Volumes/卷标 ~/Desktop/卷标 即可在桌面生成NTFS分区的快捷方式。 6. 将快捷方式拖动到Finder的侧边栏就可以很方便的打开NTFS分区进行操作了

一些常用命令

  • 挂载系统EFI:diskutil mount EFI && open /Volumes/EFI
  • 安装驱动:sudo cp -r AAA/BBB/CCC/**.kext /Library/Extensions/
  • 重建缓存:sudo kextcache -i /

最后

你现在已经拥有一个可以正常使用的macOS系统了,我们没有修改任何系统的驱动,它比较接近原版了,所以理论上可以直接小版本无痛升级的。

虽然它还不完美:你可能还需要HandOff、HDMI输出、USB-TypeC等等,你可能还想win10双系统什么的,这些只能由你自行测试和研究了,没有哪篇文章可以面面俱全给你从入门到精通,我已经尽力了,如果你遇到什么解决不了的问题,可以自行去pcbeta论坛搜索,爬贴,提问。

对你有帮助的话,点个赞呗 😎

xps15-9550-high-sierra's People

Contributors

darkhandz avatar

Watchers

James Cloos avatar John Lee avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.