ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Mac从能用调到好用:重装、清理、虚拟机与开发环境全指南

Mac从能用调到好用:重装、清理、虚拟机与开发环境全指南 我把这台Mac从能用调到好用大概花了一个完整的周末。起因是三件事同时爆发存储设置里系统数据悄悄涨到200多GB内存压力常年飘红重装一个旧版本系统还反复报错发生错误重新运行此应用。当时我给自己定的目标很简单——用如虎添翼-MacOS的标准把系统彻底整理一遍从重装到开发环境从虚拟机到外置启动盘全部一次理清。这篇文章就是那两天完整折腾过程的记录内容基本按热搜榜上那些高频问题展开比如系统镜像下载、虚拟机安装macOS、macOS搭建51单片机开发环境、全盘克隆到外置U盘等。如果你手里的Mac也正处在能用但不够顺手的状态这篇应该能给出一套可以照着抄的方案。1. 重装前先摸清家底镜像、备份与常见报错1.1 不是所有问题都靠重装解决先把话放前面系统卡顿、应用闪退、存储空间不足这些问题很多都不是重装能根治的。见过太多人一遇到系统数据占用过大就想抹盘重装结果装完一个月系统数据又涨回原样——因为问题出在缓存机制和使用习惯上不是系统文件本身。真正值得重装的时机大概就这么几类跨大版本升级后出现反复的内核崩溃或驱动异常硬盘里堆积了太多历史文件清理成本已经高于重装成本换了新硬盘、新设备需要完整迁移或者你只是单纯想把系统从用了三年的状态恢复到刚拆箱的状态。我这次重装属于最后一种目的也不是救急而是想给后续折腾虚拟机、外置系统打个干净底子。1.2 备份的两种做法别只靠一台Time Machine动手之前先备份这是唯一一条不能省的步骤。Time Machine必须做但我还会把文稿桌面照片这些高频目录手动拷到另一块独立移动硬盘。为什么做两份因为Time Machine恢复的是整个系统时间点当你只想从旧系统里抽出某几个文件时在时间轴里翻效率很低手动拷贝能让第一波文件恢复控制在几分钟内。至于系统本身反倒是可以放弃的——反正要重装。Time Machine的设置路径很简单进入系统设置旧版本叫系统偏好设置- 通用 - 时间机器添加备份磁盘。第一次备份会很慢建议挂着一晚上让它跑完别中途拔盘。1.3 官方镜像获取与U盘启动盘制作macOS系统镜像下载macOS镜像文件iso下载这类搜索几乎常年霸榜但我的建议很明确优先用恢复模式联网安装其次是自制启动U盘最后才考虑第三方镜像。恢复模式的操作是开机长按CommandR进入恢复界面后选择重新安装macOS系统会自动从官方服务器拉取当前机器支持的最新版本。这个方案不用U盘缺点是完全依赖网络网速差的时候体验很折磨。想离线安装、或者装指定老版本就自己做启动U盘。先从App Store或Apple支持页面下载官方安装器Monterey、Catalina、High Sierra这些老版本在Apple支持页面都有入口然后执行sudo /Applications/Install\ macOS\ Monterey.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume --nointeraction命令会生成一个可引导的安装U盘--nointeraction用来跳过中途确认。注意它会清空整个U盘别选错磁盘。至于网上流传的.cdr、.iso大多是虚拟机场景准备的下载后一定要核对哈希值来历不明的镜像文件风险远大于收益。1.4 发生错误重新运行此应用的完整排查链路这是重装过程中最常见的拦路虎我这次也撞上了。排查顺序很重要别一上来就反复抹盘。先看系统时间。安装器做证书校验时会比对系统时间时间不对直接报错。在恢复模式的终端里执行ntpdate time.apple.com或者手动把时间调到当前时刻再重试。再看网络。安装器需要联网拉取组件如果无线网络时好时坏或DNS有残留配置安装器很可能中途判定失败。可以在恢复模式终端里强制指定DNSnetworksetup -setdnsservers Wi-Fi 8.8.8.8 223.5.5.5最后看磁盘状态。目标磁盘如果残留着其他系统卷或APFS快照写入阶段也可能报错。回到磁盘工具把整个物理硬盘抹成APFS格式如果有卷组就一并抹掉然后再执行安装。这轮排查做完基本能覆盖九成以上的报错原因。1.5 顺手搞懂boot macos with selected options开机时长按Option键会进入启动管理器里面会列出所有可引导的磁盘和U盘。这个界面就是boot macOS with selected options的实际使用场景。当你做了启动U盘、接了外置系统盘或者同一台机器上装了多套系统都用它来选启动目标。我在重装时会专门做一步验证用启动管理器确认U盘能被正确识别。如果U盘不出现先检查U盘分区表是不是GUID再确认格式是不是APFS或Mac OS Extended这两者缺一个就进不了启动列表。2. 系统数据越用越大存储清理与iSCSI外扩思路2.1 系统数据到底是什么很多人看到系统数据占了几十GB就很慌其实它不是单个文件夹而是系统卷里一堆内容的汇总主要包括APFS本地快照、Time Machine本地快照、系统缓存、崩溃报告、应用支持文件、日志、邮件附件索引等。想知道具体哪些目录最占空间用命令行扫最快sudo du -sh ~/Library/* 2/dev/null | sort -rh | head -20这条命令列出用户资源库下最大的20个目录。想要可视化就装GrandPerspective或DaisyDisk图形界面看哪个目录是彩色的巨人更直观。2.2 三步清理大法第一步清Time Machine本地快照。系统没接备份盘时会自动在本地保留一些快照这是系统数据的头号贡献者。先查看当前快照tmutil listlocalsnapshots /然后逐个删除旧快照或者直接瘦身sudo tmutil deletelocalsnapshots 时间戳 sudo tmutil thinlocalsnapshots / 99999999999第二步清理缓存和旧备份。~/Library/Caches和/Library/Caches里的临时文件可以直接删系统会按需重建。另一个容易被忽略的是~/Library/Application Support/MobileSync/Backup里面是iPhone的旧备份动辄几十GB确认不需要了就整个删掉。第三步重建Spotlight索引。有时候系统数据虚高是因为Spotlight索引损坏系统反复重建索引、写入大量临时文件。执行sudo mdutil -E /可以让索引重建重启后通常会恢复正常占用。2.3 空间还是不够外接SSD与iSCSI清理完之后如果空间还是不够用说明你的使用需求已经超出了内置硬盘的容量这时候该考虑的是外接存储而不是继续跟系统数据较劲。我自己用的是USB4的NVMe硬盘盒挂了一块2TB固态实测读写速度接近内置盘视频素材直接放在移动硬盘上剪辑也不卡。如果你只是存文档和照片普通USB 3.2硬盘盒已经足够没必要上雷电。有人搜macOS iSCSI想通过iSCSI把NAS的存储池挂到macOS上当成普通磁盘用。这个方向在macOS上不算主流通常需要依赖第三方initiator工具配置也比较繁琐日常体验并不比SMB共享更省心。我的建议是内网文件共享优先用SMB/AFPiSCSI更适合特定专业设备和特定存储环境普通人不用在这个方向上硬磕。2.4 顺带解决待机后应用退出的疑惑macOS 待机后再开机很多应用就退出了这个问题和存储清理其实是同一类排查思路。唤醒后打开应用发现它像重启过大概率是休眠期间内存压力太大系统直接回收了后台应用的内存。打开活动监视器的内存标签看内存压力是绿色、黄色还是红色再看交换使用量是否居高不下。如果是就该减少开机启动项关掉不用的浏览器标签页或者考虑升级内存。应用真的崩溃的话去控制台搜索Crash日志可以看到具体是哪个进程在退出前报错。3. 虚拟机装macOS尝鲜、兼容测试与多版本并存3.1 适用场景哪些需求值得开虚拟机说到虚拟机装macOS有人第一反应是在Windows上装来体验但这个方向涉及系统许可协议也有驱动兼容风险我不展开讨论。真正实用且合规的场景是你手头已经有一台Mac想在不动主系统的前提下测试另一个版本或者做多版本兼容性验证。虚拟机的回滚能力比实体机强太多出问题秒回快照完全不心疼。我自己就常年挂着一台VMware Fusion虚拟机装的是旧版Catalina专门用来验证一些老项目。主系统保持最新版两边互不干扰这比抹盘装旧系统再用完抹回去效率高一个量级。3.2 版本代号与镜像选择很多人会搜macOS Sequoia跟Tahoe其实是在纠结该装哪个大版本。macOS每年用一个加州地标命名从Catalina、Monterey、Ventura、Sonoma到Sequoia名字不影响日常使用但下载镜像时确实会困惑。我的看法是没有明确兼容性要求就装当前最新稳定版有老硬件或老软件依赖就装对应的老版本用虚拟机当试验田。虚拟机镜像的来源依然建议走官方安装器 自行转换这条路。先用App Store下载对应安装器再转成可引导的ISO或dmg。第三方网站转好的ISO虽然省事但下载后至少核对一下SHA校验值再使用。3.3 安装流程与经典报错在Mac上跑虚拟机Intel芯片优先VMware FusionApple Silicon用UTM基于QEMU更稳妥。常用配置内存至少4GBCPU两核起步磁盘按需分配建议30GB以上。安装过程里最容易遇到的坑还是那两类安装器提示无法验证、或者无法获取更新。处理方式和实体机一样先把虚拟机的系统时间同步到当前再检查虚拟网络能不能正常访问外网。另一个高频问题是虚拟机窗口里显示的分辨率很低这通常是显卡驱动没装上装好VMware Tools或UTM Guest Tools后就能全屏。3.4 性能调优与快照习惯虚拟机跑macOS最影响体验的是磁盘IO和图形加速。虚拟机磁盘文件尽量放在高速SSD上启动速度能明显拉开差距。图形方面VMware Fusion和UTM都支持一定程度的3D加速开启后系统动画会顺滑不少。如果只是跑命令行工具配置可以压得很低。无论多流畅都要记得给虚拟机定期做快照。虚拟磁盘文件本质上就是几个大文件一旦损坏恢复难度比实体机高得多。我在每次装新软件前都会先打一个快照出问题立刻还原这是虚拟机相比实体机最大的优势。4. 开发环境底座brew、终端工具与51单片机交叉编译4.1 Homebrew 安装时间差在哪macOS安装brew要多久答案可能是三分钟也可能是半小时差距几乎全在拉取代码仓库这一步。安装之前先执行xcode-select --install装好命令行工具这是很多新手绕不过去的前置步骤。如果你所在网络环境访问GitHub仓库速度不理想安装过程就会卡很久。这时候直接用国内镜像源安装完再补上环境变量export HOMEBREW_BREW_GIT_REMOTEhttps://mirrors.ustc.edu.cn/brew.git export HOMEBREW_CORE_GIT_REMOTEhttps://mirrors.ustc.edu.cn/homebrew-core.git这样后续brew install的速度也能稳定不少。4.2 telnet与su指令新版macOS已经不自带telnet了但偶尔要连老网络设备时还得用。一条命令就能装回来brew install telnet另一个高频困惑是su指令。macOS默认root用户不启用直接su -通常会失败。更推荐用sudo -i或sudo su切到root会话。如果确实需要给root设置密码用sudo passwd root但日常操作还是建议用sudo执行单条命令安全且保留审计记录。4.3 代码字体与渲染有人搜wsl ubuntu写代码最推荐的字体接近macos的体验其实底层是两个问题字体文件在哪渲染方式怎么调。macOS默认用了亚像素抗锯齿和较宽的字符间距所以Menlo看起来润。在Linux/Windows下想接近这种体验先装开源字体JetBrains Mono、Source Code Pro、Fira Code都可以再打开终端或编辑器的字体平滑选项。回到macOS这边系统自带的Menlo已经够用但我长期用JetBrains Mono0和o区分明显、等宽节奏干净写代码确实舒服。4.4 STC51单片机开发环境在macOS上做STC51开发不用找Windows的Keil开源工具链完全能跑通。三段式工具编译器用SDCC烧录用stcgalUSB转串口驱动按板载芯片装CH340或CP210x。安装命令brew install sdcc pip3 install stcgal写一个最简单的LED闪烁程序#include 8051.h void delay(void) { int i; for (i 0; i 20000; i); } void main(void) { while (1) { P1 0xFE; delay(); P1 0xFF; delay(); } }编译sdcc -mmcs51 blink.c烧录stcgal -p /dev/tty.wchusbserial1420 -b 2400 blink.ihxSTC烧录最容易踩的坑有两个。第一是上电时序stcgal提示等待MCU时需要给板子重新上电一次它才开始接收固件不是插上USB就会自动烧录。第二是串口权限提示权限不足就执行sudo chmod 666 /dev/tty.wchusbserial*或者把用户加入对应用户组后退出重登。4.5 两个开发中的小噪音gthread警告与Fork用Python写GTK/GObject程序时终端偶尔会打印gthread: a worker thread is idle之类的提示。这大多不是致命错误只是GLib线程池空转时的调试信息。如果只是一行警告忽略即可如果后面跟着段错误就要检查GTK版本和依赖库是否兼容。Git客户端方面我推荐Fork。同样是图形化Git工具它在macOS上响应快、分支图干净分阶段提交stage hunk的操作比命令行直观很多。Fork是付费软件但有试用期如果只是日常个人使用体验一段时间基本也能覆盖需求。5. 全盘克隆到外置U盘把整套macOS变成随身系统5.1 什么时候值得折腾把整个硬盘的macOS系统克隆到外置优盘看着偏门但两类场景很实用一是电脑送修或换机想在一台临时Mac上快速还原自己的开发环境二是手头有多台Mac想把某台已经调教好的系统随身带走。就算没这些需求做一个可引导的应急系统盘也比干等恢复模式踏实。5.2 工具选型macOS没有Windows那类一键Ghost工具但可用方案很明确Carbon Copy ClonerCCC功能最全支持APFS快照能做增量备份收费有试用期。SuperDuper老牌工具界面简单适合纯全盘复制。rsync命令行免费可控但要手动处理引导文件容易漏项不推荐新手。我主力用CCC。图形界面里点几下就能创建一个备份任务源硬盘选内置系统卷目标盘选外置盘剩下的交给它跑。5.3 操作步骤与启动方式以CCC为例先准备一块外置固态普通U盘真的会慢到怀疑人生。插上后用磁盘工具把外置盘抹成GUID分区图 APFS格式。打开CCC源磁盘选当前系统卷目标磁盘选外置盘执行克隆。克隆完成后把外置盘留在机器上开机长按OptionApple Silicon机型长按电源键在启动管理器里选外置盘就能从外置系统启动。第一次启动会做用户目录权限校准等几分钟是正常的。5.4 踩坑提醒我从这几次折腾里总结了几条经验速度瓶颈最现实。USB 2.0的U盘跑系统会卡到让人崩溃至少用USB 3.1以上的移动SSD或NVMe硬盘盒。APFS卷组要简单。外置盘别分成太多个卷一个APFS容器最省事卷组复杂时CCC偶尔会找不到根卷。授权会失效。外置系统启动后iCloud和App Store需要重新登录验证这是正常现象不代表系统坏了。启动安全策略。如果外置盘无法被识别为启动盘去系统设置 - 隐私与安全性确认有没有阻止外部介质启动的选项T2芯片或Apple Silicon机型尤其要注意。6. 顺着热搜词聊几个日常细节任何来源、带鱼屏与休眠假死6.1 开启任何来源的正确姿势在macOS上遇到已损坏无法打开你应该将它移到废纸篓的提示是因为应用签名或Gatekeeper校验没通过。一个常见解法是开启任何来源sudo spctl --master-disable执行后在系统设置 - 隐私与安全性里能看到任何来源选项手动允许即可。想恢复保护就执行sudo spctl --master-enable。这里必须提醒一句关闭Gatekeeper意味着系统更容易执行未签名代码所以下载软件要更克制尽量只从官网或知名平台下载。6.2 带鱼屏分辨率与Type-C视频输出带鱼屏21:9超宽屏在macOS上体验不错但常见两个问题。第一是分辨率列表里没有显示器的原生分辨率这时候先确认用的是有线连接雷电/Type-C别用无线投屏或劣质转接头再用BetterDisplay这类工具添加额外的分辨率模式。第二是Type-C线材问题很多显示器背面有Type-C口插上却只有充电没有画面大概率是线材只支持供电、不支持DP Alt Mode。换一根全功能Type-C线或雷电认证线问题立刻消失。我自己的带鱼屏常设在3440x1440再把缩放调整到合适档位长时间看代码眼睛压力小很多。6.3 待机后应用的假死与专注模式前面讲过待机后应用退出的内存原因实践中还有一个容易误判的情况频繁插拔外接显示器时系统切换显示配置的瞬间部分应用会重绘异常甚至退出。这不算系统bug更像是显示器配置切换引发的连锁反应。遇到时别急着重启先重开显示器设置或者合盖再开盖很多时候自己就好了。至于热搜里那个macOS 上班摸鱼神器我的真实建议是与其研究怎么摸鱼不如把系统通知统一收进专注模式把高频工具固定在程序坞和快捷键上。工作效率高了早点把事干完剩余时间才真正属于自己。6.4 从官方渠道下载安装包别给安全留口子最后回到macOS下载安装包macOS镜像下载。每次新版本发布前后网上都会冒出一堆第三方镜像站流量大、来源杂、风险高。官方安装器在系统设置 - 通用 - 软件更新里直接获取就行老版本安装器在Apple支持页面也能找到入口。如果确实要用第三方镜像一定先核对安装包的哈希值这个动作最便宜也最管用。这台Mac从重装到环境重建折腾了一整个周末第二周用起来明显顺了系统数据固定在50GB以内虚拟机随用随开外置盘装着完整开发环境带鱼屏的分辨率和字体也调到了舒服的状态。如果让我只留一条经验我会说每次做系统级操作之前先把自己的操作步骤写在备忘录里。不是要写得多规范而是操作到一半忘了下一步的时候那张纸条能把你从重来一次的边缘拉回来。祝你的Mac也能早日如虎添翼。
返回列表