使用 MacBook和MacMini使用外接第三方非 Apple 认证的显示器会有色彩问题,可能是显示器颜色整体发灰,也有可能绿色特别绿。这是因为Apple封闭的系统识别的显示器较少,第三方厂商也未很好的针对Mac进行适配,导致需要用户自行修改配置文件,而且每次升级系统需要重新再修改,现在将修改方法分享给大家。

macOS对外接的第三方非认证的显示器,默认使用 ycbcr 色彩空间,而大多数显示器不支持 ycbcr 色彩空间,从而导致此问题,所以我们需要强制外接的显示器使用 RGB 色彩空间,我们通过写入系统的配置来解决这个问题。

解决方法

使用大神的脚本,通过外接的显示器生成配置文件,将生成的文件移动对应的目录即可。

第一步:生成配置文件

1、下载 脚本文件;

https://gist.githubusercontent.com/adaugherity/7435890/raw/5af7e8f7ebef354037b9be39de90b2149b84fec1/patch-edid.rb

2、接上外接显示器;
3、打开终端;
4、将脚本文件拖入终端,按下回车运行;
5、运行成功后,会在最后一行显示“Output file”输出配置文件的目录路径,(不要复制最后一个文件名)接下来的操作需要这个路径,最好将文件路径发送到手机微信或者手机QQ中记录下来;

第二步:写入系统

因为macOS系统限制,不能直接将配置文件写入系统核心,我们需要关闭系统的sip(系统完整性保护)功能,才可以写入。

Big Sur 系统操作方法

1、进入恢复模式,按下 Options 开机,然后再按 Command + R;
2、在恢复模式下的命令行输入:csrutil authenticated-root disable,然后再重启;

3、重启后,打开终端,命令行输入 sudo mount -o nobrowse -t apfs /dev/diskNsM /path/to/mntpoint 挂载系统盘。diskNsM 为 系统盘的设备名,打开磁盘工具,选择系统盘可以看到,如下图:


注意最后的 s 和之后的内容要截取掉,比如我的系统盘设备名为 disk1s5s1,则 diskNsM 为 disk1s5。

/path/to/mntpoint 为需要挂载的路径,可以为任意路径,我挂载到了下载文件夹。我的整个命令为:

sudo mount -o nobrowse -t apfs /dev/disk1s5 /Users/fk/Downloads/。

由于挂载到了下载文件夹,挂载好后,进入下载文件夹,就会进入到系统根目录了,我们把配置文件夹复制到相应的系统目录。

然后需要重建系统 snapshot,使用到的命令为:sudo bless --folder /path/to/mntpoint/System/Library/CoreServices --bootefi --create-snapshot,
我的情况用到的命令为:

sudo bless --folder /Users/fk/Downloads/System/Library/CoreServices --bootefi --create-snapshot

注意替换命令行中的自己的用户名

然后重启电脑即可生效。

Catalina 系统操作方法

1、重启进入恢复模式,在恢复模式命令行输入csrutil disable,再重启进入系统,(已关闭的无需再次操作)

2、终端输入 sudo mount -uw /
3、使用 mv 命令移动上面生成的配置文件夹到相应的系统目录。

我用到的命令为:

sudo mv /Users/fk/DisplayVendorID-5e3 /System/Library/Displays/Contents/Resources/Overrides

请将命令中配置文件夹路径改为自己生成的
4、重启电脑生效。