Skip to main content

Centos 8 搭建Timemachine和尝试Windows共享磁盘到Timemachine的坑

Netatalk

Centos8搭建Timemachine,需要使用netatalk搭建afp服务。

yum install gcc make  
yum install libgcrypt-devel libdb-devel  
wget http://sourceforge.net/projects/netatalk/files/netatalk/3.1.12/netatalk-3.1.12.tar.gz  
tar zvxf netatalk-3.1.12.tar.gz  
cd netatalk-3.1.12  
./configure --with-init-style=redhat-systemd 
make  
make install  

安装完成之后,就已经设置好了systemd配置。接下来只需要配置目录即可。配置文件在/usr/local/etc/afp.conf
配置文件如下:

[Global]
; Global server settings
afp interfaces = eth0,eth1  
afp listen = 192.168.50.253, 192.168.3.2  
hostname = TimeMachine  
mimic model = Xserve  
uam list = uams_dhx.so uams_dhx2.so  
; [Homes]
; basedir regex = /xxxx

; [My AFP Volume]
; path = /path/to/volume

; [My Time Machine Volume]
; path = /path/to/backup
; time machine = yes

[Home]
path = /home/timemachine  
spotlight = no


[TimeMachine]
valid users=timemachine  
path = /timemachine  
time machine = yes  
spotlight = no  

注意netatalk不能使用root作为用户,所以要新建用户,并将文件夹的权限分配给这个用户。在这里,我创建了timemachine用户,并设置了密码,然后创建了/timemachine目录。

到此,就可以让mac进行Timemachine到Centos上了。

Windows共享文件夹给Centos,然后Centos使用netatalk共享给Mac使用

如果只是读取文件和写入文件,可行。但是这种方式有一个问题,通过afp打开的文件夹,无法删除和编辑文件。因此,Timemachine写入的时候会无限报错。后台也会不断的提示no extend attribue or readonly问题。根据各种资料和提示尝试增加权限、修改挂载方式,均无效。后来的人,就别尝试了。

Avahi-Daemon

只是配置Netatalk的话,是不能让Mac发现你的Timemachine的,需要使用以下命令添加:

sudo tmutil setdestination afp://username:password@192.168.3.2/TimeMachine  


或者cmd+k连接之后,再在Timemachine中添加磁盘。
如果想要Mac能在网络中发现主机,则需要配置Bounjour广播,在Centos中,提供了Avahi-Daemon。具体就不在此列举了,网上的资料大多都是对的。