树莓派4搭建苹果TimeMachine

前言

Linux+Netatalk 是很多家用路由器提供 Mac TimeMainche云备份的实现方案。本次楼主用的是树莓派4的官方系统也是基于 Debian 的 Linux 系统。树莓派4的强大地方在于,全新Typce C供电(意味着更大的输入电流(官方的是5V 2.5A)意味着不需要额外供电即可挂载移动硬盘成为可能);USB 3.0接口 + 千兆网口,意味着传输数据带宽不再成为瓶颈。经过测试,搭建Nas完成后,传输大文件基本能达到80M+速度,这个速度已经基本能跑满普通移动机械硬盘的写入速度了;另外由于楼主使用的是2.5英寸的2.0T移动硬盘,如果需要使用3.5英寸的移动硬盘,那可能就需要额外的DC 12伏供电了;

参考文献

  1. netatalk基本配置文档

一、搭建树莓派操作系统raspbian lite (不带桌面)

1. 通过官方连接下载 Raspbian Buster Lite

https://www.raspberrypi.org/downloads/raspbian/

2. 使用刻录软件刻录镜像到tf卡,mac 下推荐使用Etcher

如图选中你的tf卡 点击Flash即可

3. 开启ssh,并通过路由找到树莓派系统的ip,通过ssh连接树莓派

在mac 随便生成一个ssh文件,开启777权限 并复制到刚刚刻录完的tf卡的boot目录

sudo mkdir ssh
sudo chmod 777 ssh

tf卡插入树莓派,连接网线,电源,通过路由器找到树莓派ip,通过ssh 连接,初始官方系统账号是pi,密码默认是raspberry,登录完成后记得修改密码。

ssh pi@xxx.xxx.x.xx  (输入树莓派的ip)

如图通过ssh连接树莓派成功。

二、安装搭建TimeMachine所需包,netatalk,avahi-daemon

1. 先更新一下apt-get

sudo apt-get update

2. 安装所需工具

netatalk 拿来搭建TimeMachine Server,avahi可以让macBook 自动发现树莓派

sudo apt-get install netatalk avahi-daemon

安装hfsprogs和hfsplus, 让树莓派能够读取Mac格式化的驱动器,如果需要nsfs,ext3等格式请自行查询所需包。

sudo apt-get install hfsprogs hfsplus

3. 创建用户,自启动挂载硬盘

先创建一个用户,用来挂载TimeMachine硬盘,不用默认账户

useradd -c "Time machine" -m -s /bin/bash tm

给用户设定密码

sudo passwd tm

准备挂载硬盘的文件夹,我分了两个区一个用来做常规Nas

mkdir /home/tm/TimeMachine
sudo chown -R tm /home/tm/TimeMachine

mkdir /home/tm/MacData
sudo chown -R tm /home/tm/MacData

配置fstab,启动自动挂载硬盘

sudo nano /etc/fstab 

在文件底部加入以下内容,具体多个分区因人而定

UUID=7fc30fac-660e-303d-9778-6326602ff216    /home/tm/TimeMachine  hfsplus    force,rw,user,auto   0    0
UUID=ecb5d47d-f906-302b-8723-e840938d25e8    /home/tm/MacData      hfsplus    force,rw,user,auto   0    0

分区UUID可以通过以下命令查询

ls -l /dev/disk/by-uuid

如图中sda2,sda3就是分别的uuid,也可分别用/dev/sda2 ,/dev/sda3 代替.

启动挂载硬盘,以后不需要再挂载。

sudo mount -a

如图,两个分区已挂载成功(具体个数因人而定)

4. 配置Avahi,Netatalk

让mac自动发现linux AFP服务,需要安装avahi软件,并启动avahi-daemon服务

配置avahi config

sudo nano /etc/avahi/services/afpd.service 

复制以下内容,并保存

<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_afpovertcp._tcp</type>
<port>548</port>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=TimeCapsule</txt-record>
</service>
</service-group>

配置netatalk

sudo nano /etc/netatalk/afp.conf 
;
; Netatalk 3.x configuration file
;

[Global]
; Global server settings
mimic model = TimeCapsule6,106
hosts allow = xxx.xxx.x.xxx //输入你树莓派的ip

[MacData]
path = /home/tm/MacData
valid users = tm

[TimeMachine]
path = /home/tm/TimeMachine
time machine = yes
valid users = tm
;下面的参数可选,限制time machine最大可用容量,单位是mb,我已经分了区所以不做限制
;vol size limit = 1400000

启动avahi,netatalk,并设置开机自启动

sudo service avahi-daemon start
sudo service netatalk start

systemctl enable avahi-daemon
systemctl enable netatalk

5. 连接afp服务器做nas,以及连接TimeMachine

连接Afp服务器

注意连接之前检查好,移动硬盘是否设置好用户权限,允许所有人读写,否则有可能映射出来的服务器不可写,只可读,也会影响到 TimeMachine连接失败

确认每个分区如上图所示,everyone 需要改成read & write ,默认是read only;

打开finder,此时Network栏应该已经出现了一个树莓派服务器

双击raspberrypi,点击Connect As 或者 Command + K

输入 afp://xxx.xx.xx.x 树莓派的ip

输入上面设置的账号和密码 即可连接服务器


连接成功,到此一个家用Nas服务器就成功了。

连接TimeMachine

系统偏好设置->Time Machine,然后将驱动器选择为Time Machine备份,如无硬盘点击Select Disk里面已经有你网络中的硬盘,点击选中即可开启备份

Time Machine将运行第一次备份,之后每小时如果macbook插着电源都会进行备份。(温馨提示,macbook最好连网线 以及 和树莓派使用同一个千兆交换机,否则使用wifi或者网线经过路由器,路由器太渣的话有可能拖垮家里的网速)

发表评论

电子邮件地址不会被公开。 必填项已用*标注