macOS 电脑环境配置
之前整理过一篇《Windows 电脑环境配置》,这里继续记录 Mac 的常用软件与开发环境安装。主要面向 Apple Silicon(M1/M2/M3/M4 等),Intel Mac 大部分步骤也适用。
更新时间:2026 年 10 月。安装软件时建议优先阅读官网说明;Homebrew 软件包名称、系统要求及版本会随时间变化。下文默认使用 macOS 自带的 zsh 终端。
我的安装习惯:图形软件优先官网或 Homebrew Cask;命令行工具优先 Homebrew;Node.js 使用 nvm;Python 项目优先 uv;只有需要 Conda 生态时再安装 Miniforge。
一、安装前的系统设置
1. 查看芯片和系统版本
左上角苹果菜单 → 关于本机,确认是 Apple Silicon 还是 Intel。终端也可以查看:
uname -m # arm64 为 Apple Silicon,x86_64 通常为 Intel
sw_vers # macOS 版本如果是 Apple Silicon,尽量选择软件的 Apple Silicon / ARM64 / aarch64 / Universal 版本,不要误下 Intel 专用包。
2. Rosetta 2(按需)
部分旧软件只有 Intel 版本,需要 Rosetta 2 兼容层。Apple Silicon Mac 有需要时再安装:
softwareupdate --install-rosetta --agree-to-license不必把 Rosetta 2 当作所有新 Mac 的必装步骤;较新的系统对它的支持策略也可能变化。
3. Finder 优化
建议在 Finder → 设置 中:
- 高级 → 显示所有文件扩展名。
- 边栏 → 勾选个人文件夹、硬盘及常用位置。
- 新建 Finder 窗口显示 → 选择个人文件夹或下载。
- 查看 → 显示路径栏、显示状态栏。
显示隐藏文件快捷键:Command + Shift + .。
需要显示完整路径和隐藏文件,也可以在终端执行:
# 显示隐藏文件
defaults write com.apple.finder AppleShowAllFiles -bool true
# 在 Finder 窗口标题中显示 POSIX 路径
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
# 重启 Finder
killall Finder4. Dock、触控板、键盘
建议按自己的习惯配置:
- 系统设置 → 桌面与程序坞:打开自动隐藏 Dock、调整 Dock 大小。
- 系统设置 → 触控板:按需打开轻点来点按、三指拖移(在辅助功能的指针控制中设置)。
- 系统设置 → 键盘:调整按键重复速度,检查输入法快捷键与终端快捷键是否冲突。
- 系统设置 → 隐私与安全性:为需要全局热键、截图、窗口管理的软件按需授权。
原生截图快捷键:
Command + Shift + 3 全屏截图
Command + Shift + 4 选区截图
Command + Shift + 5 截图及录屏工具5. 系统备份
Windows 版介绍了系统还原点,Mac 对应的常用方案是 Time Machine(时间机器)。
系统设置 → 通用 → 时间机器,选择外置硬盘或支持的网络备份磁盘。建议在大规模更改开发环境、升级系统前做一次备份。
官方说明:Apple Time Machine
二、Homebrew 包管理器
Homebrew 是 macOS 常用的包管理器,既能安装 Git、wget 等命令行工具,也能安装 VS Code、Obsidian 等图形应用。
1. 安装 Xcode Command Line Tools
xcode-select --install按弹出的窗口安装。验证:
xcode-select -p
clang --version这里只安装命令行开发工具,并不等于安装完整 Xcode。一般 Git、C/C++ 编译、Homebrew 使用已足够;iOS/macOS App 开发通常还需要完整 Xcode。
2. 安装 Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Apple Silicon 默认安装在 /opt/homebrew,Intel Mac 通常在 /usr/local。
Apple Silicon 若安装器没有自动配置 PATH,可执行:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"Intel Mac 请以安装器打印的命令为准,不要照抄 /opt/homebrew。
brew --version
brew doctor3. 常用命令
brew update # 更新软件仓库元数据
brew upgrade # 升级已安装的软件包
brew search 软件名称 # 搜索软件
brew info 软件名称 # 查看信息
brew install git # 安装命令行程序
brew install --cask visual-studio-code # 安装图形软件
brew list # 查看已安装包
brew list --cask # 查看已安装 GUI 软件
brew cleanup # 清理旧版本与缓存需要注意:brew upgrade 可能同时升级很多依赖。科研项目中对版本敏感的工具(Python、Node.js、CUDA 生态)尽量放在独立环境中,而不是依赖全局最新版。4. Brewfile 备份软件列表
brew install mas
brew bundle dump --file=~/Brewfile --force在新 Mac 上安装备份的软件:
brew bundle --file=~/BrewfileBrewfile 是安装清单,不能代替应用数据、许可证或系统配置备份;恢复前检查清单是否仍然适用。
三、常用软件
部分软件既可以从官网下载,也可以通过 Homebrew 安装。两种方式选一种即可,不建议对同一应用同时混装。
1. Zotero
文献管理:Zotero 官网
brew install --cask zotero2. Obsidian
Markdown 笔记:Obsidian 官网
brew install --cask obsidian3. 腾讯系
macOS 不必照搬 Windows 的腾讯电脑管家、独立版 DeskGo 或 360 压缩;优先使用系统自身的安全保护和 Finder 解压功能。
4. 飞书
5. 压缩解压
macOS 自带 ZIP 压缩/解压功能,处理 7z、RAR 等格式可以安装 Keka:
brew install --cask keka命令行也可以使用:
brew install sevenzip
7z --help6. Karing
代理管理工具:Karing 官网
brew install --cask karing首次使用按自己的网络环境导入配置,避免同时开启多个软件的系统代理或 VPN 模式导致网络冲突。
7. 远程控制
网易 UU 远程:官网下载
其他可选方案:RustDesk 、Tailscale。使用前核对当前 macOS 版本支持情况,并按提示授予录屏、辅助功能等权限。
8. 截图软件 PixPin
brew install --cask pixpin首次打开需要在系统设置中授权屏幕录制等权限。也可以继续使用系统自带的 Command + Shift + 5。
9. 终端
macOS 自带 Terminal。想使用更强的终端可以选择:
brew install --cask iterm2
# 或
brew install --cask wezterm
# 或
brew install --cask ghostty10. SSH 工具
Termius 或系统自带 OpenSSH。日常开发实际上用 macOS 原生 ssh + VS Code Remote SSH 已经足够。
ssh -V11. CC Switch
Codex、Claude Code 等 AI 编程工具配置管理:
brew install --cask cc-switch建议从官方发布页或 Homebrew 安装,配置前备份已有的认证和工具设置文件。
12. 其他实用工具
| 软件 | 用途 | 链接 |
|---|---|---|
| Raycast | 快速启动、搜索、快捷指令 | https://www.raycast.com/ |
| Rectangle | 窗口分屏与管理 | https://rectangleapp.com/ |
| AppCleaner | 卸载应用及关联文件 | https://freemacsoft.net/appcleaner/ |
| Stats | 菜单栏硬件状态监控 | https://github.com/exelban/stats |
| IINA | 视频播放器 | https://iina.io/ |
| LocalSend | 局域网跨设备传文件 | https://localsend.org/ |
其中 Raycast 与系统 Spotlight 可以二选一,Rectangle 与系统自带窗口平铺也可以根据需要选用。
四、IDE 和开发工具
1. Visual Studio Code(蓝色 VS)
brew install --cask visual-studio-code建议在 VS Code 命令面板运行 Shell Command: Install 'code' command in PATH,随后可以:
code .常见扩展:Python、Pylance、Remote - SSH、Dev Containers、GitLens、Jupyter。
macOS 没有 Windows 版的完整 Visual Studio IDE(紫色 VS)可直接照搬。需要 C++/CUDA 编译时,以 Clang、CMake、Xcode Command Line Tools 及远程 Linux 编译环境为主。
2. Xcode(按需)
做 Apple 平台原生应用时在 App Store 安装 Xcode。只做 Python、Web、LLM 实验,不一定需要完整 Xcode。
3. 常用命令行工具
brew install git git-lfs wget curl jq yq tree htop btop ripgrep fd fzf tmux cmake ninja pkg-config检查:
git --version
rg --version
cmake --version五、Git 和 GitHub
1. 安装 Git
brew install git git-lfs
git lfs install2. 设置 Git 身份
git config --global user.name "你的 GitHub 用户名或提交署名"
git config --global user.email "你的 GitHub 提交邮箱"
git config --global init.defaultBranch main如果想使用 GitHub 的隐私邮箱,可以在 GitHub 的邮箱设置中找到自己的 noreply 邮箱。
3. 创建 SSH Key
ssh-keygen -t ed25519 -C "你的 GitHub 邮箱"
eval "$(ssh-agent -s)"
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
pbcopy < ~/.ssh/id_ed25519.pub将复制好的公钥粘贴到 GitHub → Settings → SSH and GPG keys。
Mac 上可以将以下内容写入 ~/.ssh/config,方便 SSH Agent 使用钥匙串:
Host github.com
HostName github.com
User git
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_ed25519上面的配置假设密钥位于默认路径,且没有已有的 Host github.com 冲突配置。如果已有 SSH 配置,请合并而不是覆盖。测试:
ssh -T git@github.com4. GitHub CLI
brew install gh
gh auth login
gh auth status六、Node.js、nvm 和 pnpm
1. 安装 nvm
Windows 使用 nvm-windows,macOS 则使用独立的 nvm-sh/nvm,两者不是同一个项目。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.8/install.sh | bash重开终端后检查:
command -v nvm
nvm --version如果提示找不到 nvm,检查 ~/.zshrc 是否有安装器添加的初始化代码,或添加:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"然后执行:
source ~/.zshrc2. 安装 Node.js
推荐先使用当前维护中的 LTS 版本,旧项目再按需安装 Node.js 22:
nvm install --lts
nvm alias default 'lts/*'
node -v
npm -v旧项目:
nvm install 22
nvm use 22项目目录可以用 .nvmrc 固定版本:
echo '22' > .nvmrc
nvm install
nvm use3. pnpm
安装方式一:通过 npm 安装:
npm install -g pnpm
pnpm -v
pnpm setup安装方式二:支持 Corepack 的 Node.js 环境可以选用 Corepack 管理包管理器版本:
npm install -g corepack
corepack enable pnpm
pnpm -v两种方法选一种即可。不同 Node.js 版本是否自带 Corepack 存在差异,不要默认所有版本都内置。切换 nvm 的 Node.js 版本后,必要时重新安装对应版本的全局工具。
七、uv 和 Python
uv 适合安装 Python、管理虚拟环境、依赖和项目。一般科研开发优先推荐 uv,减少全局 Python 环境污染。
1. 安装 uv
官方安装:
curl -LsSf https://astral.sh/uv/install.sh | sh或用 Homebrew:
brew install uv两种安装方式选一种。 独立安装方式一般可以使用 uv self update;Homebrew 安装的 uv 应使用 brew upgrade uv 更新。
2. 自定义安装路径
macOS 默认会安装到用户可执行文件目录(通常是 ~/.local/bin)。如果想像 Windows 一样集中放进 ~/Env:
mkdir -p "$HOME/Env/uv/bin"
curl -LsSf https://astral.sh/uv/install.sh | env UV_INSTALL_DIR="$HOME/Env/uv/bin" sh将路径加入 ~/.zshrc:
echo 'export PATH="$HOME/Env/uv/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc检查:
uv --version
which uv注意:UV_INSTALL_DIR 只改变 uv 程序本身的位置,不会自动修改 Python 安装目录和 uv 缓存目录。使用 Homebrew 安装时不需要单独设置 uv 的二进制安装目录。3. 自定义 Python 安装路径
为了避免每次新开终端都丢失环境变量,添加到 ~/.zshrc:
echo 'export UV_PYTHON_INSTALL_DIR="$HOME/Env/uv/pythons"' >> ~/.zshrc
source ~/.zshrc
uv python install 3.12
uv python list --only-installed安装 Python 3.13 等版本:
uv python install 3.13不同 Python 版本可以共存。
4. 创建虚拟环境
mkdir -p ~/Projects/demo
cd ~/Projects/demo
uv venv --python 3.12
source .venv/bin/activate
uv pip install numpy pandas matplotlib
python --version退出环境:
deactivate5. uv 项目模式(推荐)
uv init myproject
cd myproject
uv python pin 3.12
uv add numpy pandas matplotlib
uv run python main.py
uv sync项目依赖会记录在 pyproject.toml,解析锁定后的依赖会记录在 uv.lock;适合科研项目提交到 GitHub 后,在其他机器复现环境。
6. pip 换源(按需)
清华 PyPI 镜像:
python -m pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple这只针对当前 Python 对应的 pip 配置;uv 可以单独通过环境变量配置索引:
# 只对当前命令生效
UV_DEFAULT_INDEX=https://pypi.tuna.tsinghua.edu.cn/simple uv pip install numpy如无访问问题,优先使用官方索引,以减少镜像同步延迟。不要把账号 token 写进公开仓库中的索引 URL。
八、Miniforge(按需)
清华镜像:Miniforge 镜像目录
使用 uv 的普通 Python 项目不必额外安装 Conda。只有需要大量 Conda-forge 包、特殊编译依赖或现有 Conda 项目时再安装。
1. 安装
brew install --cask miniforge或者从官方 Releases 下载与你芯片对应的安装脚本,按照其说明安装。
2. 初始化
先确认 Conda 的路径:
conda --version
conda init zsh
exec zsh如需 mamba,先确认安装包是否已包含,再执行 mamba --version;不存在时可以安装:
conda install -n base -c conda-forge mamba建议关闭启动终端时自动激活 base:
conda config --set auto_activate_base false3. 创建环境
mamba create -n research python=3.12
conda activate research
python --version
conda deactivate4. 换源注意
Miniforge 主要使用 conda-forge,不建议直接照搬 Windows 笔记中 Anaconda 的 pkgs/free、pkgs/pro 等旧仓库列表;这些源可能过期,也可能造成包冲突。需要清华镜像时,按 清华 Anaconda/Conda 镜像帮助 中当前的 conda-forge 配置操作。
建议同一项目主要使用 uv 或 Conda 中的一种 管理依赖。混用时先明确环境所在位置,避免把包装入错误的 Python。
九、Docker 与 Linux 开发
1. Docker Desktop
brew install --cask docker运行 Docker Desktop,完成初始设置后:
docker version
docker compose version
docker run --rm hello-worldDocker Desktop 的许可和资源要求请以官网为准。
2. OrbStack(可选)
OrbStack 是 macOS 上的 Docker/Linux 虚拟化替代方案:
brew install --cask orbstackDocker Desktop、OrbStack 通常选一个作为默认 Docker 运行环境,避免命令行连接到错误的 Docker Context:
docker context ls3. macOS 和 Windows WSL2 的区别
Mac 不需要安装 WSL2。运行 Linux 开发环境可以使用 Docker、OrbStack、UTM 或远程 SSH 服务器。
如果是 Apple Silicon,默认 Linux 容器架构通常为 linux/arm64;需要运行仅支持 x86_64 的镜像时,可以按需指定:
docker run --platform linux/amd64 --rm alpine uname -m跨架构模拟可能有性能损失,个别镜像也可能不兼容。
十、CUDA 与深度学习环境
Apple Silicon Mac 不支持 NVIDIA CUDA。 因此 Windows 版的 CUDA Toolkit、cuDNN 和 NVIDIA 驱动安装步骤不能直接迁移到 Mac。
在本机运行 PyTorch,可以关注 Apple 的 Metal / MPS 后端:
uv venv --python 3.12
source .venv/bin/activate
uv pip install torch torchvision torchaudio检查:
python - <<'PY'
import torch
print('PyTorch:', torch.__version__)
print('MPS available:', torch.backends.mps.is_available())
PYMPS 不等于 CUDA,部分算子、训练框架和项目只支持 CUDA。需要 NVIDIA GPU、CUDA 或多卡训练时,更推荐在 Mac 上开发,再通过 SSH 到 Linux GPU 服务器运行实验。
十一、SSH 远程开发
1. 配置服务器别名
mkdir -p ~/.ssh
chmod 700 ~/.ssh
nano ~/.ssh/config示例:
Host gpu-server
HostName 服务器 IP 或域名
User 你的服务器用户名
Port 22
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 60设置配置权限:
chmod 600 ~/.ssh/config
ssh gpu-server2. VS Code Remote SSH
VS Code 安装 Remote - SSH 扩展,连接 gpu-server,即可编辑远程服务器目录中的代码。
3. 远程文件同步
# 本地目录同步到服务器(确认路径后再执行)
rsync -avh --progress ./project/ gpu-server:~/project/
# 从服务器拉回结果
rsync -avh --progress gpu-server:~/project/results/ ./results/不要在未经检查的情况下随意添加 --delete,以免误删文件。
4. tmux 保持任务运行
brew install tmux # 本机安装;远程服务器应在远程 Linux 上安装
ssh gpu-server
tmux new -s research分离当前会话:Ctrl + B,然后按 D。
再次连接后:
tmux attach -t research十二、AI 编程工具
1. Codex CLI
确认 Node.js 和 npm 可用后:
npm install -g @openai/codex
codex --version
codex首次启动按官方提示登录或配置认证。不同安装渠道与订阅方式的权限、额度可能不同。
2. Claude Code
安装方式可能变化,以官方安装文档为准。需要通过 npm 安装的环境可参考:
npm install -g @anthropic-ai/claude-code
claude --version
claude若官方当前推荐原生安装器,优先选择官网支持的方式。不要同时混用多种安装渠道,避免 PATH 指向旧版本。
3. CC Switch
上文已安装 CC Switch,用于管理 AI 编程工具的配置。更换渠道或 API 配置前,备份已有配置,并注意不要把密钥提交到 GitHub。
4. 本地与远程开发建议
- 本机 Mac:管理文献、写代码、运行轻量模型和测试。
- 远程 GPU Linux:CUDA 训练、大规模实验和长时间任务。
- GitHub:代码版本管理;大模型权重和海量数据不要直接放普通 Git 仓库。
- uv/Conda:锁定依赖并记录项目运行环境。
十三、macOS 环境变量与 Shell 配置
macOS 默认使用 zsh。常用配置文件:
| 文件 | 主要用途 |
|---|---|
~/.zprofile | 登录 shell 的初始化,常用于 Homebrew PATH |
~/.zshrc | 交互式 shell 配置,如 alias、nvm、个人环境变量 |
~/.ssh/config | SSH 主机别名及连接设置 |
~/.gitconfig | Git 全局配置 |
编辑:
nano ~/.zshrc
# 或安装 VS Code CLI 后
code ~/.zshrc查看命令从哪里加载:
which -a python3
which -a node
which -a uv
which -a git
echo "$PATH"如果遇到 Python、Node.js 版本错乱,先查 PATH 和当前虚拟环境,不要急着重装系统。
路径管理建议:
~/Projects/ # 代码项目
~/Documents/ # 文档
~/Env/uv/bin/ # 自定义 uv 程序路径(可选)
~/Env/uv/pythons/ # uv 安装的 Python(可选)
~/.nvm/ # nvm 安装及 Node.js 版本
~/.ssh/ # SSH 密钥及配置
/opt/homebrew/ # Apple Silicon 默认 Homebrew 路径十四、常用维护命令
软件更新
brew update
brew outdated
brew upgrade
brew cleanup系统信息
sw_vers
system_profiler SPHardwareDataType
uname -m
df -h查看磁盘占用
du -sh ~/Downloads/* 2>/dev/null | sort -h检查关键环境
brew --version
git --version
node --version
npm --version
pnpm --version
uv --version
python3 --version
ssh -VPython 版本取决于当前 shell 的 PATH 和虚拟环境,python3 --version 不一定等于 uv python install 安装的版本。可以使用 uv run python --version 检查当前项目。
十五、参考安装顺序
新 Mac 建议按以下顺序配置:
- 更新 macOS、设置 Finder / Dock / 触控板,配置 Time Machine。
- 安装 Xcode Command Line Tools 与 Homebrew。
- 安装微信、飞书、浏览器、Zotero、Obsidian、PixPin、Karing 等常用软件。
- 安装终端、VS Code、Git、GitHub CLI,配置 SSH。
- 安装 nvm、Node.js、pnpm。
- 安装 uv、Python;确有需求再装 Miniforge。
- 安装 Docker Desktop 或 OrbStack,配置远程 Linux GPU 开发环境。
- 安装 Codex CLI、Claude Code、CC Switch,并验证版本和认证。
- 用
brew bundle dump导出软件清单,备份~/.zshrc、~/.ssh/config等配置(不公开私钥或令牌)。
到这里,macOS 的日常使用、Python/Node.js 开发、AI 编程与远程科研环境基本就配置完成了。后续遇到特殊软件安装、权限、网络代理或 ARM64 兼容问题,再单独记录。