家里NAS使用Win10系统,平时主力机器是两台MBP,对MacOS进行备份的最佳方法当然是使用Time Machine服务器,它可以对MacOS整个系统进行完整备份并实现增量备份。
以下是搭建方法:
如下操作在Win10 Ubuntu bash下完成:
- 安装必要软件包
sudo apt-get install netatalk avahi-daemon
- 为Time Machine进程创建一个用户
tm
useradd -c "Time machine" -m -s /bin/bash tm
修改用户tm
的密码
sudo passwd tm
- 创建Time Machine备份文件夹(我放在F盘)并修改所有者为用户
tm
mkdir -R /mnt/f/TimeMachineFolder
sudo chown -R tm /mnt/f/TimeMachineFolder
- 设置
netatalk
首先我们将原有的配置文件备份
sudo mv /etc/netatalk/AppleVolumes.default /etc/netatalk/AppleVolumes.default.old
然后创建一个新的配置文件
sudo touch /etc/netatalk/AppleVolumes.default
使用你偏好的编辑器(vim,nano之类)编辑配置文件,我用nano
sudo nano /etc/netatalk/AppleVolumes.default
加入如下内容
:DEFAULT: options:upriv,usedots
/mnt/f/TimeMachineFolder "MyTimeMachine" options:tm volsizelimit:800000 allow:tm
其中
"MyTimeMachine"
是映射到mac上的名称,强烈建议不要有空格~!
/mnt/f/TimeMachineFolder
就是前面你创建的文件夹。volsizelimit设定了Time Machine将会使用的最大硬盘空间,单位是MB。
- 重启netatalk服务
sudo service netatalk restart
如下操作在MacOS下完成:
-
在Mac上连接到Time Machine
打开Finder并按下⌘+K,在弹出来的窗口中,于服务器地址一栏输入afp://Win10主机的IP地址/,然后点连接。会提示输入用户名和密码,用户名就是tm
,密码就是你设置的tm用户密码。 -
此时直接备份通常不会成功,会提示
无法创建备份磁盘映像“/Volumes/MyTimeMachine/MacBook-Pro-xxxx.sparsebundle”(错误 (null))
之类的错误信息。 -
打开「系统偏好设置-共享」,点击「编辑」按钮,然后复制你的本地主机名(
不需要.local
字符)。
-
获取需要备份的MacOS电脑的 mac 地址
在mac终端中输入命令
ifconfig en0 | grep ether | awk '{print $2}' | sed 's/://g'
获取mac地址
- 本地创建临时备份文件夹,
在mac终端中输入如下命令创建备份文件夹
sudo hdiutil create -size 320g -type SPARSEBUNDLE -nospotlight -volname "Backup of <computer_name>" -fs "Case-sensitive Journaled HFS+" -verbose ~/Desktop/<computer_name>_<mac address>.sparsebundle
其中 <computer_name> 替换为第三步中获得的本地主机名, 替换为第四步中获得的 mac 地址,敲击回车键,输入密码,稍等一下,你的桌面上就会生成一个正确的 sparsebundle 文件(实际上是文件夹)。
-
我们在第6步已经打开了Time Machine的网络文件夹,现在把刚才桌面上生成的 sparsebundle 文件复制到Time Machine的网络文件夹。
-
在系统偏好设置-Time Machine中启用Time Machine,此时在驱动器选择列表中应该有
MyTimeMachine
,选择它,系统开始倒计时120s,然后自动开始备份。
参考文献: