macOS 调优与系统镜像制作
pmset 的坑、微软下载接口的坑、dd 写盘的坑。
一、电源策略:别让机器在你不在时睡着
跑长任务(编译、转码、批量处理)时,机器一睡任务就断。目标很明确:
屏幕 30 分钟自动关闭,系统永不睡眠
# 需要 root
sudo pmset -a displaysleep 30
sudo pmset -a sleep 0
# 验证
pmset -g custom
displaysleep 只数「无用户输入」的时间,不管有没有任务在跑。
如果希望「有任务时别关屏」,得给任务套 caffeinate:
caffeinate -d long_running_command # 防关屏
caffeinate -i long_running_command # 防系统睡眠
大坑:pmset 改完会被「系统设置」App 写回去。
我设好displaysleep 30并确认生效,两小时后打开系统设置看别的项目, 再回来发现 plist 被重写、值变回了 0。
解决:改之前先退出系统设置 App,或者干脆直接在 GUI 里改 (系统设置 → 锁定屏幕 → 关闭显示器 → 30 分钟),GUI 改的值不会被回滚。
另外 sudo 在 macOS 上通常要密码。脚本里跑可以用 osascript 弹窗授权:
osascript -e 'do shell script "/usr/bin/pmset -a displaysleep 30" \
with administrator privileges'
用户点了取消会报 -128,设置不变——所以别假设它一定成功,改完要复查。
二、默认打开方式
macOS 没有命令行直接改「某扩展名默认用哪个 App」的官方工具,但可以查:
# 查 .mp4 现在默认由谁打开
defaults read com.apple.LaunchServices/com.apple.launchservices.secure \
| grep -A2 mp4
改的话最稳的还是 GUI:右键 → 显示简介 → 打开方式 → 全部更改。
三、下载 Windows 镜像:微软把接口关了
本以为一条 curl 就能拿到直链,结果折腾了半天。
| 尝试 | 结果 |
|---|---|
| 微软 SKU 查询接口 | ✅ 通,能查到「24H2 简体中文 SKU」 |
| 生成下载链接的接口 | ❌ 404,各种写法都试了 |
| 直接猜 CDN 文件名 | ❌ 403,必须要页面会话生成的 token |
| 抓页面 JS 找接口名 | ❌ 接口名是动态加载的 |
微软现在必须走「打开页面 → 点击 → 生成 24 小时有效的临时链接」这条路。 纯脚本拿不到,得靠浏览器走一遍。
拿到链接后,用多线程下载工具,8.22GB 只用了 2 分钟(平均 76 MiB/s)。
四、把 ISO 写到 U 盘
Windows 11 的 ISO 里 install.wim 通常大于 4GB,
FAT32 拷贝法走不通(单文件上限 4GB)。只能整盘镜像写入。
先确认目标盘
diskutil list
# 找到 external, physical 的那块,比如 /dev/disk4
写盘会抹掉 U 盘上的全部数据,不可恢复。 执行前一定要用diskutil list确认设备号, 并且确认不是内置硬盘(internal那几个)。
写入
diskutil unmountDisk /dev/disk4
sudo dd if=~/Downloads/win11.iso of=/dev/rdisk4 bs=4m
用 /dev/rdisk4(raw 设备)比 /dev/disk4 快 2~3 倍。
实测 8.22GB 写了 5 分 6 秒,平均 28.8 MB/s。
怎么确认写对了
写完 diskutil list 会显示「没有分区表」,这是正常的——
Windows 的 ISO 是 ISO9660/UDF 结构,MBR 里是空分区表,macOS 认不出来。
但 UEFI 固件能识别。
要验证的话,从 U 盘读回关键扇区和 ISO 对比:
# ISO 的 sector 16(ISO9660 主卷描述符)
dd if=win11.iso bs=2048 skip=16 count=1 | od -c | head -3
# 期望看到:\001 C D 0 0 1 \001 \0 ... 以及卷标
# U 盘同样位置(需要 root)
sudo dd if=/dev/rdisk4 bs=2048 skip=16 count=1 | od -c | head -3
开头(卷描述符)、卷标、末尾扇区三处都对得上,就说明写完整了。
用完想恢复成普通 U 盘
diskutil eraseDisk FAT32 USBDISK MBRFormat /dev/disk4
否则 U 盘只认镜像那么大(8.2GB),剩下 7.9GB 是「未分配」,Windows 里看不到。
五、启动盘做好之后
插到目标机器,开机连按启动菜单键:
| 品牌 | 按键 |
|---|---|
| 联想 | F12 |
| 华硕 | F8 |
| 戴尔 | F12 |
| 惠普 | F9 |
| 微星 / 技嘉 | F11 |
菜单里要选带 UEFI: 前缀的那一项,Win11 不支持 Legacy BIOS 启动。
六、Windows 11 26H2 值得升级吗
这一版对 8GB 内存设备做了专门优化,官方说法是「响应速度最高提升 20%」。
| 改动 | 效果 |
|---|---|
| Widgets 改为按需加载 | 开机少占 200MB+ |
| 最多 2GB 活跃数据留在内存 | 不换到硬盘,多任务更顺 |
第三方实测(8GB 笔记本,装了 PyCharm / VS Code / AutoCAD):
| 指标 | 25H2 | 26H2 |
|---|---|---|
| 开机内存占用 | 5.0 GB | 3.3 GB |
| 可用内存 | 2.9 GB | 4.6 GB |
版本对应:26100 = 24H2,26200 = 25H2,26300 = 26H2。
已知 Bug:USB 音频设备可能失灵、企业域账号登录失败、Azure 虚拟桌面黑屏。 家用主要留意第一条。