筆者通常不建議直接從舊設備遷移資料。遷移過程不僅可能會引入一些預料之外的 bug,還會連許多垃圾和臨時文件一並複製過來。大量 4K 隨機讀寫也對 Wi-Fi 連接速率非常不友好,尤其是 Apple 設備一向不領先的無線性能。這個原則其實不僅適用於 Mac,對於 Windows / Android /iOS 設備,也是同理。不過要是新 Mac 夠大,舊款也是 Mac,可以試試雷電網橋直連,本文完結。(逃
冷啟動#
首先是必備軟體,不然下面免談:
系統設定#
然後為了後續體驗良好,我們還需要改一下系統設定。命令行應該都能改,但有些比較新的設定我查不到,所以我們還是手動吧。
-
電池
- Mac 續航這麼好當然要帶出門,所以可以打開離電自動省電、电源自動高性能。(更高能耗疑似 Max 系列獨占)
- 如果你不打算用第三方 app 限制充電上限,那最好打開系統自帶的優化電池充電,點電池健康右邊的 icon,在彈窗中打開。 部分第三方充電限制工具會明確要求關閉優化電池充電;但是我不關好像也沒影響
- 如果想要讓 Mac 連插座的時候兼職伺服器,那可以把所有的都打開
,除了 HDR 省電,不然螢幕白買了。
-
通用
一大坨東西全擠在這裡了。
- 關於本機:先改個名吧。最好能讓自己認出來設備,這裡的名字影響主機名、設備發現和 Apple ID 的設備管理。我現在是都會改的。序列號如果是二手機,可以去微信有些公眾號花 3 塊錢出個詳細報告,看看有沒有貓膩。
- 儲存空間:icloud 同步是大坑。默認打開桌面和文稿同步,但是免費用戶只有 5G,建議關掉。程序員尤其前端項目如果放桌面,那 node modules 的 4k 性能一定會教同步盤做人的……
看看 macOS + 系統數據 + 開發者 占用有多少,你就知道 win 那邊系統體積控制已經很好了。 - 隔空投送 / 接力:一般都要開。酌情開所有人,現在 iOS 所有人限制 10 分鐘自動關閉了,mac 還沒跟進。Airplay 支持你把 iPhone /iPad 投到 Mac 上。
- 登錄項與擴展:新機應該沒什麼東西,可以裝完再來看看。
- 共享:如果你想讓這台電腦全職 / 兼職伺服器,那多半都要開。具體用法就不展開了,以後有機會可以詳細說說。
- 啟動磁碟:其實你可以把系統裝到外置硬碟裡……
- 時間機器:喜歡的人很喜歡。
- 自動填充和密碼:神。但是不如 iOS。桌面端瀏覽器插件更重要一些,第三方 App 也可以直接接管,目前似乎沒看到哪個第三方密碼管理器用這個 API 的。
-
輔助功能
很多人說,Apple 老把一些特別有用的東西藏這裡面。確實,有幾個基本上一定會打開的尤其是鼠標指針相關設定。
- 指針控制:鼠標與觸控板 - 觸控板選項,使用觸控板拖移 + 三指拖移,基本上必開。不然必須很大力氣按下觸控板才能拖動。github 上還專門有個項目把這個手勢移植到 win/linux.
- 顯示:這裡可以改指針大小,比如我 4K 螢幕有的時候就會覺得指針太小了,可以放大一點。還有個手勢,找不到鼠標之後可以快速晃一晃,macOS 會幫你把指針放大。
- 音頻:一些與 AirPods 有關的輔助功能放這裡面了。但是我耳機壞了,現在不給我看
,難過。
-
聚焦(spotlight)
現在感覺沒那麼好用了,畢竟這麼多年也沒加什麼新功能。
不知道 WWDC 會不會接入 AI。看上去現在使用 RayCast 的用戶會比較多,但我都不怎麼用() -
控制中心
起名起得不好,應該叫控制中心與菜單欄。肯定有人因為這個名字找不到菜單欄設定。這裡可以設定圖標是否顯示在菜單欄或者控制中心,以及微調一些按鈕的顯示樣式。
我一直想有一個功能,內置螢幕上所有時候顯示菜單欄(因為全螢幕有劉海,是否顯示都不影響縱向高度,不現實的話只是黑掉),然後檢測到外接之後自動切換到全螢幕的時候隱藏。但是之前跟某個開發者留言,客服看不懂,回覆像是個人機。想開個坑自己寫了都,但感覺有點難。
-
螢幕保護程式
卒。應該沒人用了。
-
墻紙
macOS 每個大版本都換一批新的。現在的這個版本是 Apple 自己的團隊全世界租直升機到處拍,公費旅遊了屬於是。
-
外觀
這個初始化的時候改過主題色了。只有點按滾動條行為跟直覺不太一樣,可以改一下。
-
顯示器
隨航和通用控制在這裡開。如果默認縮放不夠細,可以點高級,然後把以列表顯示解析度打開。有條件的話,推薦使用 Better Display,效果非常好。
-
桌面和程序塭
- 程序塭(Dock 欄)圖標大小:一般直接拉滿就行了。默認不放大就不會有動畫。
- 最小化窗口時使用 - 神奇效果:默認也沒開。招牌動畫很多年了。
但是 macOS 窗口管理太爛了,很少用最小化( - 最小化至應用圖標:默認沒開,個人習慣打開。
- 自動隱藏程序塭:默認沒開,個人習慣打開。
- 台前調度:不建議用。iPad 是只能用這個,Mac 沒必要。可以放到控制中心,真需要再切就好了。
- 小組件:是個好東西。但是解鎖完全體需要一台 iPhone。
- 窗口平鋪:落後 Windows 15 年。平鋪窗口邊緣空白記得關上。
- 觸發角:好東西。一定程度上解決了鼠標沒有觸控板手勢,快捷鍵又難記的問題。遷移 win 習慣,我一般設置為左下角啟動台、右下角顯示桌面、左上角調度視圖、右上角當前 App。總之按個人習慣來。
-
Siri / AI
mac 上不怎麼好用。
好像其他設備也不好用啊 -
聲音
不想啟動的時候被咚一下可以把開機聲音關了。
-
鎖定螢幕
螢保默認關的。還可以改一下顯示器關閉時間。
-
隱私和安全性
相信我,這裡絕對是你來最多的地方。所有 App 的權限都在這裡管理,而且所有未簽名的 App 也都要在這裡打開。應用來源中,有辦法恢復 “任意來源” 選項,這裡不展開了。配件的話,如果電腦不帶出去,可以設置成默認允許。
-
鍵鼠觸控板
沒什麼東西就合一起說了。鍵盤設定可以改鍵盤燈、快捷鍵、Fn 單擊功能。外接鍵盤如果有 Fn 鍵位定義,與內置的 Fn 是一樣的。輸入法設定也是這裡改。鼠標設定裡滾輪方向一般不改,改了的話觸控板就反了,所以一般用第三方軟體。打遊戲的話,可以去高級選項裡把鼠標加速度關了。觸控板是最重要的。macOS 其實不挑觸控板,只是 win 沒人想用外置的,所以做的人少。有現代精確式觸控板是可以用的,多點觸控和手勢都一切正常,華強北平替大概 200 左右吧。只是少了沒什麼用的 3D Touch。設定裡,一般要打開輕點來點按,不然得按到累死。然後更多手勢中,如果前面打開了三指拖移,那調度中心的手勢就會變成四指。
完結撒花!總算配置完了。
包管理器#
為什麼要裝包管理器?#
不如說,使用包管理器安裝才更符合 *nix 和開發者的使用習慣。達成同樣的操作,CLI 天然就遠比 GUI 更高效、更容易自動化。而 macOS 上,brew 包管理器是默認的事實標準,大部分 repo 只要提供軟體包,基本上都首選 brew,遠超 MacPorts 和其他。
還有相當一部分人覺得 brew 實在是太好用了,把它移植到了一些 Linux 系統上,此處不展開。
常用 App#
好的,很快啊,我們裝好之後直接 brew 一把梭:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
接下來我儘量把一眼看不出來的包註釋一下。如果用不到,可以直接複製到行編輯軟體中刪除對應行即可。
Cask:
- 1password: 最貴 (好?) 的密碼管理器。
其實開源軟體維護者可以申請免費版… - alt-tab: 類似 win 的 Alt Tab 頁面。macOS 默認的 cmd+tab 邏輯只能切換不同 app,想要切換同 app 不同窗口需要按 cmd + `
- android-platform-tools: adb/fastboot. 安卓開發 / 搞機必備。
- apifox: 有人喜歡把它叫 postman 國產平替,但我覺得不完全是一個賽道。當然也可以當 postman 用(
- applite: brew 的 GUI,最近才知道。不喜歡敲命令可以逛一逛。
- battery: 極簡的 80% 充電限制。
- betterdisplay: macOS 最好的顯示器管理軟體。win 上甚至沒有替代品。授權模式極其友好,不限制激活數量。
- cherry-studio: 著名 LLM 前端。
- cursor: 這個應該不用多說了。
我都是白嫖 vscode 同步,新機先 code 同步完再導入。 - discord: 用得少,很多開發者社區也愛用,偶爾看看。
- docker: 不多說了。
- feishu: 同上。
- firefox: 同上。
- font-cascadia-code: 微軟大法好。
- google-chrome:
Web 開發誰敢不下 - iina: 播放器,湊合。真看 metadata 我現在都
ffprobe
了,唉。 - input-source-pro: 神!自動切換輸入法。macOS 切輸入法有點痛苦的。
- jetbrains-toolbox: jb 我習慣用它裝,也可以都走 brew,但是 brew 沒多線程太慢了。
- jordanbaird-ice: 不是劉海屏 Mac 可以跳,用來給 macOS 菜單欄圖標會溢出到劉海後面擦屁股的。
- keycastr: 在螢幕上顯示你按下的鍵。錄屏用。
- lark: 飛書海外版,數據不互通。
- linear-linear: 名字被佔了,笑死。項目進度管理軟體,個人用免費版完全夠用。github 集成也不錯。簡單說就是高級 todo.
- lm-studio: 著名 LLM GUI 後端。
- moonlight:
我要在 Mac 上打遊戲 - obs: 錄影我習慣用,直播好像目前還沒在 mac 上試過。
- obsidian: 不多說了。
- ollama: 著名 LLM CLI 後端
- parsec: 不僅能打遊戲,還能生產力。moonlight 共享不了剪切板,但是 parsec 可以啊。
- playcover-community: 星鐵啟動!
- rustdesk: 現在知道我有多怕斷聯了吧(其實還有兩三個)
- scroll-reverser: macOS 下單獨反轉鼠標滾輪方向。
- signal: 端到端加密 im.
- snipaste: 其實你們可以用 pixpin.
- tailscale: 從 zerotier 潤過來的,以後可能會換成 wireguard.
- tencent-lemon: 太良心了。
- tencent-meeting: 大家都在用。
- typora: 買了正版支持一下。
- visual-studio-code: 不多說了。
- vlc: 良心播放器。
- warp:
ai 賦能終端 - windterm: ssh 客戶端,現在支持用同步盤了。
- zed: rust editor, 適合追求極致性能的場合。
CLI 工具#
- uv: 神!再也沒直裝過 python
- git:
誰敢不裝系統自帶的太舊了,一般自己再裝一個。 - nvm, rbenv: 比 uv 差很多,之前用的 pyenv, 都是用來解決語言本身版本問題的。
- pnpm: 用來替代 npm. yarn 現在似乎很少用了。
- ffmpeg: 就算不裝,很大概率編譯的時候也會遇到依賴,更不用說有的是應用自帶 ffmpeg 動態庫。簡單的轉換我已經習慣敲命令行了(
- doggo: 我最習慣的 dns cli 客戶端,網路調試很好用。同類工具還有經典的 dig,同樣現代的 q/dog (rust 寫的,doggo 是它的社區 go 重寫版)
- wget: 命令行下文件比 curl 直接。web 調試我還是 curl 用得多一些。
brew install --cask \
1password \
alt-tab \
android-platform-tools \
apifox \
applite \
battery \
betterdisplay \
cherry-studio \
cursor \
discord \
docker \
feishu \
firefox \
font-cascadia-code \
google-chrome \
iina \
input-source-pro \
jetbrains-toolbox \
jordanbaird-ice \
keycastr \
lark \
linear-linear \
lm-studio \
moonlight \
obs \
obsidian \
ollama \
parsec \
playcover-community \
rustdesk \
scroll-reverser \
signal \
snipaste \
tailscale \
tencent-lemon \
tencent-meeting \
typora \
visual-studio-code \
vlc \
warp \
windterm \
zed
# cli tools
brew install uv git nvm wget pnpm rbenv
brew install doggo ffmpeg
# oh my zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# 腳本語言三巨頭 (¿
uv python install
nvm install --lts
rbenv install -l
rbenv install 3.4.3 # 一般裝最新的正式版
# 記得改!別用我的!
git config --global user.name Nahida
git config --global user.email [email protected]
# 安全一些可以一機一密,懶得弄也可以用舊的。但用新的更方便?
ssh-keygen -t ed25519 -C "[email protected]"
Git 配置#
有些代理環境會把 22 端口訪問 ban 掉,出於安全考量。github 官方為了方便,創建了轉發 ssh.github.com:443 -> github.com:22 .
詳見 https://docs.github.com/zh/authentication/troubleshooting-ssh/using-ssh-over-the-https-port
還有進階一些的技巧,不考慮操作系統多用戶的情況,單用戶下想不同 repo 靈活切換多個身份,也可以設定多個 ssh 別名然後使用 ssh 連接。
Host github.com
HostName ssh.github.com
Port 443
User git
IdentityFile ~/.ssh/id_ed25519 # 改成你的位置,這是生成的默認位置。
Host nahida
HostName ssh.github.com
Port 443
User git
IdentityFile ~/.ssh/id_ed25519_nahida # 改成對應用戶的私鑰,不能重
Host hyacine
HostName ssh.github.com
Port 443
User git
IdentityFile ~/.ssh/id_ed25519_hyacine # 改成對應用戶的私鑰,不能重複
這樣的話:
- 使用
git clone [email protected]:Homebrew/homebrew-cask.git
就是默認用戶(由於配置了別名,git@
部分也可以省略。你也可以配置更短的別名,比如gh
); - 使用
git clone nahida:Homebrew/homebrew-cask.git
就是 nahida 那一項配置的私鑰對應用戶; - 使用
git clone hyacine:Homebrew/homebrew-cask.git
就是 hyacine 那一項配置的私鑰對應用戶。
這些配置對於命令行的 ssh 命令也可以用 (廢話,不然為什麼叫 ,也可以與 vscode 的 ssh 無縫集成。太過詳細的內容就不展開了。ssh_config
)
從 Mac App Store 下載的 App#
- Office 365
- 微信
- FastZip
- PasteNow
- 網易雲音樂
- 米家
- Onedrive
- iStatistica Pro(別買,還是買 iStat Menus 吧)
- 小米互聯服務
- O+ 互聯
- Pushdeer
- Speedtest
- Blackmagic Disk Speed Test
- LocalSend
- 速達
- Shadowrocket (?)
下載自 App Store 的 App 通常相對 dmg /pkg 安裝的,會使用更少的權限,經過更嚴格的審查,沙盒也保證了數據隔離和安全性。