我大约每三年会清除重装一次电脑,有时候是因为系统档占用过多的硬盘空间,有时候
是换新电脑洁癖发作。虽然手动备份档案跟环境很麻烦,但每次过程中的重新检视过去
安装过的软件跟整理产生的档案也让我有很多收获。为了让自己尽可能省力安心的执行
这个过程,所以整理了一篇文章分享我的流程、工具跟心得。以下撷取实际操作的部分,
对更多心得或参考连结有兴趣的可以看原文:http://bit.ly/2g7D7wr
正文开始。
这个过程共包含三个部分:备份、重新安装、档案迁移。
## 第一部分:备份
需求:一个外接硬盘作为 Time Machine 使用与存放备份资料使用。
重要的事先做:使用 Time Machine 执行一次完整系统备份。有了这个保险,我们就有
能力还原任何档案,真的是“任何档案”。做错任何事情想恢复?没问题,只要还原即
可。有时候大家在备份资料上会有心有余力不足的情况,原因是根本不知道从哪里开始
,但是其实只要仔细想想就会发现,软件是所有资料的核心,所有的资料都由我们所使
用的软件而生。所以由软件为出发点思考,我们有这三类资料需要备份:
1. 你所使用的软件
2. 你透过软件间接产生的资料,包含设定、历史纪录、备份档案等等
3. 你透过软件直接产生的静态档案,像是文件、照片、专案资料等等
我们从使用 Homebrew 列出软件清单开始。Homebrew 是一个 Mac 的命令列软件管理工
具,管理的意思是它可以安装、移除还有列出软件清单。如果你像我一样是软件开发者
,你可能已经正在用了,如果不是的话也不用担心,单纯地复制贴上以下步骤中的指令
就可以让它运作了。
* 打开内建的终端机程式贴上以下指令按 Enter 即可
> /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/
install/master/install)"
* 安装 mas-cli 外挂让 Homebrew 支援 Mac App Store
> brew install mas
* 使用 brew bundle 指令列出软件清单
> brew bundle dump
这个指令会在当前目录(默认是家目录)新增一个叫做 Brewfile 的档案:
# 档案范例
# brew 'app_name'
# cask 'app_name'
# mas 'app_name', id: xxxxxxxxx
brew 'mas'
cask 'java'
mas 'iMovie', id: 408981434
档案的每一行都会以三个关键字 brew, cask, mas 开头,表示软件使用 Homebrew 的哪
个工具安装:brew 大多是命令列工具,cask 是以命令列方式安装 Mac apps,mas 则表
示从官方 Mac App Store 安装。在空格之后是以单引号包住的软件名称。规则可参照上
述范例,行列可以互换,# 开头的文字视为注解。
接着,检视这个清单并比较你在应用程式资料夹的 apps。如果有不在清单上的 app,表
示这可能是从其他的来源像是开发者的网站或是 CD-ROM。使用 brew cask search
{app_name} 指令来搜寻其他替代来源安装
> brew cask search java
==> Exact Match
java
==> Partial Matches
eclipse-java java-jdk-javadoc netbeans-java-ee netbeans-java-se yourkit-java-profiler
==> Remote Matches
caskroom/versions/java-beta
因为 brew-cask 是社群维护的工具,有很大的机会可以从这边找到安装来源。如果有的
话,在 Brewfile 加入一行 cask 'app_name' 即可。如果找不到而你又需要这个软件的
话,就必须手动备份或是找到其他替代方案了。
完成之后我们就有了详细的软件清单 Brewfile,如果怕忘记的话也可以用注解的方式写
下软件的用途。之后把这个档案储存在外接硬盘或是 Dropbox,我们稍后会用到。
现在我们已经制作、重新检视了目前的软件清单,也写下为什么需要他们的注解,相当
确定这就是我们需要的软件。现在进行下一步,也就是软件资料的部分。在这个步骤,
我们要打开每一个我们需要的 app,检视每一个曾经做过的设定、产生的文件或是资料
的备份,用自己的方式记录下来确保我们可以在重新安装后有能力还原。详细的内容根
据每个人使用的软件或习惯不同而有所不同,不能一概而论。我自己是在检视完所有软
体跟设定之后列出一个检查表,其中的部分内容如下:
**接下来出现的波浪符号 ~ 表示你的家目录**
* 系统偏好设定
* 一般 > 使用暗色选单列和 Dock
* 一般 > 最近使用过的项目:0 个文件、App 和服务器
* 桌面与萤幕保护程式 > 萤幕保护程式 > 启动前闲置时间:2 分钟
* 桌面与萤幕保护程式 > 萤幕保护程式 > 使用 Apple TV Aerial Screen for Mac
* 钥匙圈
* 启用 iCloud 钥匙圈
* Safari
* 从 ~/资源库/Safari/Bookmarks.plist 备份书签
* 从 ~/资源库/Safari/History* 备份历史浏览纪录
* 照片
* 从 ~/图片/Photos Library.photoslibrary 备份整个照片图库
* iTunes
* 从 ~/音乐/iTunes 备份整个音乐数据库
* 取消 iTunes 的 AppleID 授权:https://support.apple.com/zh-tw/HT201251
* iBooks
* 从 ~/资源库/Containers/com.apple.BKAgentService/Data/Documents/iBooks/
Books/ 备份 PDFs 跟电子书
* 讯息
* 从 ~/资源库/Messages 备份讯息历史与档案
* 1Password
* 启用 iCloud 同步
* 从 ~/资源库/Containers/2BUA8C4S2C.com.agilebits.onepassword-osx-helper/
Data/Library/Backups/ 备份 1Password 备份档
* 字型
* 从 ~/资源库/Fonts 备份字型
* Dotfiles(开发者才需要)
* 备份 ~/.ssh
* 备份 ~/.gitconfig
* 备份 ~/.zshrc
* 最后是静态档案,相较前面两个步骤这是比较简单的。只要检视以下资料夹内哪些档
案需要备份即可,或是直接备份每一个资料夹也可以。
* ~/桌面
* ~/文件
* ~/下载项目
* ~/音乐 除了已经备份的 iTunes 资料夹以外的档案
* ~/影片
* 其他存放个人资料的资料夹
哒啦!你已经完成了!
温馨提醒,以上并不是完整的清单,完整与否根据每一个人不同的需求而不同。对我来
说,我想要我的电脑可以让细碎的片段延续,像是浏览纪录、对话纪录等等这些每天的
生活片段。但毕竟每个人偏好不同,说不定你更是把过去抛诸脑后,未来对你才是最重
要的类型,完全没问题的。
## 第二部分:重新安装
需求:一个大于 8GB 的随身碟
首先,我们需要一个可开机的随身碟
* 下载 macOS Sierra
* 打开磁盘工具选择随身碟、点击清除、名称使用 Untitled、选择
Mac OS Extended (Journaled) 重新格式化
* 在终端机 输入以下指令来制作可开机随身碟
> sudo /Applications/Install\ macOS\ Sierra.app/Contents/Resources/
createinstallmedia