说在前面

  • 为什么要这样做?

我相信肯定有用户跟我一样,平常 macos 作为工作的机器,另外有一个 windows 主机作为娱乐向使用。 现在一般的 windows 机器都有至少 1TB 的存储空间了,取个200G出来用于备份系统,何乐而不为。

  • 有什么优势?

macos 的时间机器功能真的十分强大,强大到你甚至可以利用它无缝的更换 mac 设备而完全不需要担心任何的数据丢失问题,因为时间机器甚至可以把你观看视频的时间线记录都保存下来。如果你是开发者,你完全不用担心恢复之后的软件使用发生问题,我安装在本地的所有软件(php/mysql/redis/es等包括homebrew中所有)都可以通过时间机器进行恢复。

  • 我需要什么

    • 稳定的网络,且windows 与 macos 的网络在同一个网络中
    • windows 拥有足够的空间

windows 处理

  • 找一个有充足空间的分区,建一个共享文件夹,供 macos 使用。

创建共享文件夹

点击共享之后,添加一个用户,标记为“任何人”,并赋予读and写权限。
你也可以借此创建一个公共空间,方便自己进行持续化文件存储。

  • 在“开始”中,搜索 cmd 并运行
  • 在命令行终端中,输入 ifconfig ,并回车
  • 在输出的内容中,找到你的内网IP地址。到此, windows 的共享目录就完成了,例如我在 D盘 创建了一个叫 macosbackup 的共享文件夹,则共享文件夹路径为 smb://你的IP地址/macosbackup

获取IP地址

macos 备份

  • 先连接上共享文件夹,在 访达->前往->链接服务器 ,填入你的共享文件夹路径 smb://你的IP地址/刚刚创建的文件夹名称
    连接共享文件夹

点击连接的时候,一般会要求输入账号密码,对应为 windows 的登陆账号密码, 账号一般为屏幕解锁时候上面显示的名称,密码则为解锁密码

  • 打开磁盘工具( 可使用 command+空格 聚焦搜索快速找到 ),根据下图,在 windows 的共享文件夹中,新建一个磁盘映像
    创建磁盘映像

创建磁盘映像2

  • 打开终端(可使用 command+空格 聚焦搜索快速找到),输入以下命令,然后回车
sudo tmutil setdestination /Volumes/xxxx
# xxxx 为你刚才创建的磁盘映像的名称,如上图则为 beifen
# 回车后若有"Password"提示字样,请输入开机密码然后再次回车
# 如果遇到异常, 请检查系统已经关闭SIP, 可参考:https://www.jianshu.com/p/fe78d2036192
# 如果仍然遇到异常,欢迎评论留言。
  • 若回车后没有任何提示则为成功,此时打开 系统偏好设置->时间机器 ,可以在选择磁盘中找到刚刚创建的备份磁盘,点击选择
  • 若需要马上进行备份,可以勾选“在菜单栏中显示时间机器”,然后在菜单栏中点击选择“立即备份”
  • 备份全程不能断开网络,亲测预计完成备份需要至少2个小时

macos 恢复

安全模式内无法截图,所以下面无图 😓

  • 关机,按住 command + R + 开机键 进行开机,直到出现白苹果并开始读条后,方可松开按键
  • 进入安全模式后,先点击右上角的WiFi标志,与windows机器连接到同一网络中
  • 选择恢复,“从时间机器中恢复”
  • 左下角 “从服务器中选择”
  • 输入你 windows 的共享目录连接,例上文中的 smb://你的IP地址/macosbackup
  • 确认后开始恢复。 恢复的耗时会比备份要旧,还请耐心等待并保持WiFi网络稳定

恢复后可能遇到的问题:

  1. 有一些软件出现异常,如 PHP 的已安装扩展出现问题并失效

    恢复后,系统的SIP模式可能会开启,需要重新再次关闭,可参考 https://www.jianshu.com/p/fe78d2036192