前文 树莓派设置samba文件共享 介绍了树莓派设置samba搭建共享网盘的详细步骤。然而samba要与macos良好的协作,例如作为time machine(时光机器)的备份目的地,需要额外的设置。
首先,/etc/samba/smb.conf文件的[global]段应增加如下设置以禁用samba1协议和支持os x系统的拓展属性:
min protocol = SMB2
ea support = yes
其次,作为备份的共享文件夹设置应设置支持time machine。一个作为备份文件夹的配置示例:
[tmbackup]
comment = macos time machine backup
path = 你的备份路径
browseable = yes
public = no
writable = yes
create mask = 0700
valid users = 授权用户名
# 加载模块以支持AAPL拓展,注意顺序很重要!
vfs objects = catia fruit streams_xattr
# 支持aapl
fruit:aapl = yes
# 存储os x的元数据
fruit:metadata = stream
# 设置服务器在finder中的图标
fruit:model = MacPro
# 支持time machine,非常重要!
fruit:time machine = yes
# 文件清理的一些配置
fruit:posix_rename = yes
fruit:veto_appledouble = no
fruit:wipe_intentionally_left_blank_rfork = yes
fruit:delete_empty_adfiles = yes
配置好后重启samba服务让设置生效:sudo systemctl restart smbd
。
因time machine只能选择系统自动发现的硬盘(airport utility能找到的),故而树莓派需要自动广播让os x找到有支持time machine的备份硬盘(文件夹)存在。幸运的是,raspbian系统上默认安装和启用了Avahi服务,Avahi服务会自动提供服务广播。如果你的系统未安装Avahi,使用该命令可安装并启用服务:sudo apt install -y avahi && sudo systemctl enable avahi-daemon && sudo systemctl start avahi-daemon
。
接下来配置time machine。打开系统设置,找到time machine(时光机器),解锁后点击“选择磁盘”,如果配置无误且在同一个局域网的话,会看到共享的samba硬盘:
选择磁盘,在弹框中输入samba的用户名和密码,完成设置。
今后,只要连到了树莓派的局域网,time machine将自动备份电脑,再也无需担心电脑出现的意外。
注意:如果samba不设置支持time machine,即使使用命令行的tmutil setdestination
命令也无法设置为time machine的备份硬盘,会提示:”Incompatible file system type: smbfs (error 45) The backup destination could not be set”。