各种系统的装机都遇到,在此做个记录,方便查询。
术语介绍
SATA控制模式
IDE模式
IDE模式可以通过映射通吃SATA硬盘,由于无需加载驱动程序,它的兼容性能超强,适用WinXP和Win7/8系统。
比较老的硬盘控制模式了,兼容性比较好。
AHCI模式
AHCI模式原生支持SATA硬盘,它的优势在于它能够将NCQ技术充分发挥作用,或者说AHCI是现有的SATA硬盘主控接口中,除了复杂的磁盘阵列(RAID)模式之外,最能发挥SATA硬盘性能。Win7/8系统完美支持AHCI模式,对WinXP兼容性不佳。
如果要装黑苹果,必须使用这个模式。
RAID模式
RAID模式是在 AHCI模式的基础上增加了磁盘的RAID 功能,可能实现磁盘的 RAID 0、RAID 1、RAID 5 等硬盘阵列功能,以提高磁盘的性能或提供硬盘的冗余保护功能;
分区架构
MBR架构
MBR磁盘分区是一种使用最为广泛的分区结构,它也被称为DOS分区结构,但它并不仅仅应用于Windows系统平台,也应用于Linux,基于X86的UNIX等系统平台。它位于磁盘的0号扇区(一扇区等于512字节),是一个重要的扇区(简称MBR扇区)。
MBR扇区由以下四部分组成:
引导代码:引导代码占MBR分区的前440字节,负责整个系统启动。如果引导代码被破坏,系统将无法启动。
Windows磁盘签名:占引导代码后面的4字节,是Windows初始化磁盘写入的磁盘标签,如果此标签被破坏,则系统会提示“初始化磁盘”。
MBR分区表:占Windows磁盘标签后面的64个字节,是整个硬盘的分区表,每个分区16个字节,因此只支持4个分区。
MBR结束标志:占MBR扇区最后2个字节,一直为“55 AA”。
该种分区架构因为支持的分区数量已经过时,一般用于小容量的硬盘,比如U盘。
GPT/GUID架构
GPT(也叫GUID)磁盘分区结构解决了MBR只能分4个主分区的的缺点,理论上说,GPT磁盘分区结构对分区的数量好像是没有限制的。但某些操作系统可能会对此有限制。
GPT磁盘分区结构由6部分组成,如下图:
-
保护MBR位于GPT磁盘的第一扇区,也就是0号扇区,有磁盘签名,MBR磁盘分区表和结束标志组成,没有引导代码。而且分区表内只有一个分区表项,这个表项GPT根本不用,只是为了让系统认为这个磁盘是合法的。
-
GPT头位于GPT磁盘的第二个磁盘,也就是1号扇区,该扇区是在创建GPT磁盘时生成,GPT头会定义分区表的起始位置,分区表的结束位置、每个分区表项的大小、分区表项的个数及分区表的校验和等信息。
-
分区表位于GPT磁盘的2-33号磁盘,一共占用32个扇区,能够容纳128个分区表项。每个分区表项大小为128字节。因为每个分区表项管理一共分区,所以Windows系统允许GPT磁盘创建128个分区。
每个分区表项中记录着分区的起始,结束地址,分区类型的GUID,分区的名字,分区属性和分区GUID。
-
GPT分区区域就是用户使用的分区,也是用户进行数据存储的区域。分区区域的起始地址和结束地址由GPT头定义。
-
GPT头有一个备份,放在GPT磁盘的最后一个扇区,但这个GPT头备份并非完全GPT头备份,某些参数有些不一样。复制的时候根据实际情况更改一下即可。
-
分区区域结束后就是分区表备份,其地址在GPT头备份扇区中有描述。分区表备份是对分区表32个扇区的完整备份。如果分区表被破坏,系统会自动读取分区表备份,也能够保证正常识别分区。
目前大部分个人PC电脑都是采用该种分区架构。
分区名称
只讨论GPT分区架构下的常用分区名称。
ESP分区
EFI system partition,通常格式化为FAT32文件系统,一般在100~500M大小,该分区用于采用了EFI BIOS的电脑系统,用来启动操作系统。分区内存放引导管理程序、驱动程序、系统维护工具等。如果电脑采用了EFI系统,或当前磁盘用于在EFI平台上启动操作系统,则应建议ESP分区。
MSR分区
即微软保留分区,通常未格式化,一般在100多M大小。是GPT磁盘上用于保留空间以备用的分区,例如在将磁盘转换为动态磁盘时需要使用这些分区空间。
引导程序
BIOS
BIOS 即Basic Input Output System,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序。
启动过程:
磁盘MBR–>(激活的)分区PBR–>\bootmgr–>\Boot\BCD(指定windows所在磁盘和分区)–>\Windows\system32\winload.exe 启动分区包含bootmgr文件、Boot目录(里面有BCD文件)
BIOS只认识设备,不认识分区、不认识文件
EFI
EFI是Extensible Firmware Interface(可扩展固件接口)的缩写,是由英特尔倡导推出的一种在类PC系统中替代BIOS的升级方案。与传统BIOS相比,EFI通过模块化、C语言的参数堆栈传递方式和动态链接的形式构建系统,较BIOS而言更易于实现,容错和纠错特性更强。
启动过程:
EFI(GPT格式的分区表): ESP分区–>\Boot\Bootx64.efi–>\Microsoft\Boot\BCD(指定windows所在磁盘和分区)–>\Windows\system32\winload.efi
因特尔推出的替代BIOS的方案。EFI认识设备,还认识设备ROM,还认识分区表、认识文件系统以及文件。
UEFI
UEFI则是Unified Extensible Firmware Interface(统一可扩展固件接口),它是基于EFI 1.10标准为基础发展起来的,不过所有者并不是英特尔,而是一个名为Unified EFI Form的国际组织。UEFI是一种详细描述类型接口的标准,可以让PC从预启动的操作环境,加载到操作系统上。
本质上和EFI一样,只是功能更多点。
装机介绍
现在都是用U盘装机,因此针对于U盘装机讨论。
windows装机
先到 https://msdn.itellyou.cn/ 下载官方原版iso镜像文件。然后用软碟通工具烧录到U盘中,BIOS设置为U盘启动,然后直接装机即可。
Ubuntu装机
先到 https://ubuntu.com/download/desktop 下载官方原版iso镜像文件。然后用软碟通工具烧录到U盘中,BIOS设置为U盘启动,然后直接装机即可。
macOS
先到一些黑苹果网站上下载镜像,例如:
远景论坛: http://www.pcbeta.com/
黑苹果乐园: https://imac.hk/
黑果小兵的部落阁:https://blog.daliansky.net/
推荐黑果小兵的dmg镜像文件。
启动器
Clover
Clover是一个操作系统启动加载器(boot loader),能够同时运行于支持EFI方式启动的新式电脑和不支持它的老式电脑上。一些操作系统可以支持以EFI方式启动,比如OS X, Windows 7/8/10 64-bit, Linux;也有不支持的,比如Windows XP,它只能通过传统的BIOS方式来启动,也就是通过启动扇区来启动。
Clover的两种启动方式
启动方式A: 基于BIOS的电脑(老式主板)
BIOS->MBR->PBR->boot->CLOVERX64.efi->OSLoader
启动方式B: 基于UEFI的电脑(新式主板)
UEFI->CLOVERX64.efi->OSLoader
Mac OS X的操作系统加载器(OSLoader)是boot.efi, Windows的则是bootmgr.efi。
Clover的界面操作说明:
ESC 退出子菜单,返回到主菜单。
F1 显示帮助页面。
F2 保存启动日志文件( preboot.log) 到 EFI/CLOVER/misc/ 目录下,以便于排错。
F3 显示被隐藏的一些引导选项。
F4 提取 DSDT数据保存到 EFI/CLOVER/ACPI/origin文件夹下。
F5 提取修正过的DSDT数据保存到 EFI/CLOVER/ACPI/origin文件夹下。
F6 提取显卡ROM (VideoBios 文件)保存到 EFI/CLOVER/misc文件夹下。
F10 截屏,截取当前界面,保存到 EFI/CLOVER/misc文件夹下。
F12 弹出光驱。
空格 显示选定菜单项的详细信息。
数字 1-9 对应的选项菜单页面。
A 关于 Clover。
O Clover 选项。
R 软复位。
U 退出。
RETUIN 返回上一级页面。
OpenCore
比Clover更新,目前是这个潮流,不过不够成熟,暂且不管它。
步骤
- 如需分区,推荐使用DiskGenius软件处理,这一步可选 。
- 使用balenaEtcher工具(也可以使用TransMac)给U盘(大于16G)烧录映像文件。
balenaEtcher工具免费开源,步骤简单,烧录windows测试有问题,启动不起来,看后续新版本是否会更新。
- 开机U盘启动,进入Clover引导程序,进入macOS的安装程序。
- 使用macOS的磁盘管理工具,格式化要安装的系统盘,推荐使用APFS文件系统,扩展的可以使用macos 扩展模式。
- 安装macOS,直到安装完成,期间会重启几次(一般会重启三次),这几次都是要通过U盘来引导进入。
- 将U盘的EFI文件复制到目标系统盘内,可以直接从目标系统盘启动。
- 进入macos系统后,使用clover configurator打开系统盘中的EFI分区里面的config.plist文件,按照自己的喜好编辑各种参数,比如,自动登陆,登陆日志打印等。
装机记录
macOS的装机比windows和ubuntu复杂一些,在此做个记录,方便后期查阅。
配置
CPU:Inter I5-4430
GPU:核显Intel HD Graphics 4600
主板:技嘉 B85M-HD3主板
内存:4G*2=8G
显示器:SANC 2K显示屏
有线网,USB键鼠,USB扬声器。
过程
- 首先在黑果小兵的网站上下载带镜像文件,在此用 macOS Big Sur 11.0.1 20B50 Installer for CLOVER 5126 and WEPE.dmg。
- 使用balenaEtcher工具对一个32G的U盘做启动盘。
- 台式机按DEL进入bios,硬盘的SATA控制模式选择AHCI。
- 优先选择U盘引导。
- 然后会进入clover的启动界面,里面就有install macos的图标,选择开始安装。
- 重启两次,每次都是读秒自动选取重启选项。
- 第三次重启,日志打印出现了错误,如下:
apfs_get_firmlink_target_vnode:2007:vnode_lookup(Library)failde with error 2 AFI:Denying coure dump for pid 961 (logd)Process[961] crashed:logd. Too many corpses being created
参考 https://github.com/daliansky/daliansky.github.io/issues/231 此时重启进入clover引导界面,按F3打开隐藏的启动项,选择preboot启动,完成安装。
- 虽然完成了安装,但目标系统盘里没有启动EFI文件。因此每次开机都需要通过clover按F3打开preboot来引导。
- 进入macOS,安装打开clover configurator软件,通过工具->挂载分区,选择里面的挂载分区,再打开分区,选择里面的config.plist文件,将preboot的隐藏取消,然后默认引导卷名选择LastBootedVolume,并将快速勾选,另外参数里面邮件选择 -V ,打开日志模式。
- 进入系统,显卡没驱动成功,不能显示2K分辨率,也不能调节,通过 https://blog.daliansky.net/Intel-core-display-platformID-finishing.html,查找到我的 platform-id 为 Intel HD Graphics 4600 0x04160000,因此通过clover configurator软件把 0x04160000 写入platform-id并重启。
- 另外又发现关机的时候USB不断电,因此判定没有正常关机,通过 https://www.jianshu.com/p/95473697218f,果断删除了 EFI\CLOVER\drivers\off\EmuVariableUefi.efi文件,然后重启即可。
- 因为用的是2K(2560X1440)显示器,因此默认的HiDPI只有1280X720模式,导致屏幕很多窗口内容显示不出来,根据 https://github.com/xzhih/one-key-hidpi/blob/master/README-zh.md 模拟实现HiDPI,即可使用1080P来使用2K屏幕了。
- 后来使用当中又出现关机USB不断电,查了下,这次的原因是bios的电源设置导致的,我的是技嘉主板,进入bios后找到Power management找到ErP改成Enable就行了。
- 后续是否有问题持续使用验证中…