最近一段时间感觉用移动硬盘备份Mac电脑很不方便,因为要把移动硬盘拿出来,还要插上电脑备份,看了一下AirPort,但是价钱太贵,况且只能用于Mac备份并不能用于其他的Samba服务等,感觉不太划算,于是打算自己做一个TimeMacheine以及samba服务,TimeMacheine服务主要用于Mac备份,而samba用于局域网内的电脑上的一些文件存放。
准备工作:
1、树莓派
2、移动硬盘
3、5V电源适配器以及连接线
4、无线USB网卡或者有线
5、SD卡(新版本的是TF卡)
6、操作系统,关于操作系统,你可以到raspberry官方网站进行下载并通过win32diskimager软件进行写入。
在这里我自己的设备信息为:
1、树莓派2代
2、西数移动硬盘2TB自带电源
3、5V电源适配器以及连接线
4、有线网络
5、SD卡16GB金士顿
6、raspbian操作系统
查看自己的移动硬盘是否加载,lsblk结果:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda : .8T disk |-sda1 : .9G part `-sda2 : .1G part mmcblk0 : .6G disk |-mmcblk0p1 : 56M part /boot `-mmcblk0p2 : 3G part /
在这里我是把我的硬盘分为两个分区,/dev/sda1 为ntfs格式、/dev/sda2 为 hfs格式,如果你需要进行分区可以通过fdisk以及cfdisk进行分区。
格式化分区:
mkfs.ntfs -v “samba” /dev/sda1 && mkfs.hfsplus -v “timemacheine” /dev/sda2
准备timemacheine以及samba的挂载目录:
mkdir /srv/samba mkdir /srv/timemacheine
samba搭建
安装ntfs-3g,让raspberry支持ntfs格式
apt-get install ntfs-3g
挂载分区到指定目录
mount -t ntfs /dev/sda1 /srv/samba
查看是否成功挂载,lsblk结果:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda : .8T disk |-sda1 : .9G part /src/samba (已挂载成功) `-sda2 : .1G part mmcblk0 : .6G disk |-mmcblk0p1 : 56M part /boot `-mmcblk0p2 : 3G part /
安装samba
apt-get install samba samba-common-bin
修改samba配置文件
vi /etc/samba/smb.conf
添加共享配置信息
[BackupFolder] (共享名字) comment = Backup Folder path = /srv/samba (路径) valid users = @users force group = users create mask = directory mask = read only = no
添加samba用户
useradd backuser -m -G userspasswd backuser smbpasswd -a backuser
重启服务
/etc/init.d/samba restart
timemachine搭建
安装必要的软件:
apt-get install hfsplus hfsutils hfsprogs
挂载目录:
mount -t hfsplus /dev/sda2 /src/timemacheine
修改目录的所属组、所有者:
chown -R pi:pi /srv/timemacheine
查看是否成功挂载,lsblk结果:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda : .8T disk |-sda1 : .9G part /src/samba (已挂载成功) `-sda2 : .1G part /src/timemacheine (已挂载成功) mmcblk0 : .6G disk |-mmcblk0p1 : 56M part /boot `-mmcblk0p2 : 3G part /
安装Netatalk
Netatalk 是一个开源的 AppleTalk 通信协议的实现,Linux 系统通过它可以充当 Mac 的文件服务器 、AppleTalk 路由、打印服务器等。 安装:
apt-get install netatalk
把最先设置的目录添加到配置文件:
echo “/srv/timemacheine \”TimeMacheine\” options:tm” >> /etc/netatalk/AppleVolumes.default
或者
vi /etc/netatalk/AppleVolumes.default
然后把/srv/timemacheine “TimeMacheine” options:tm 添加到最后 这里可以把samba服务器也设置进来,这样就可以统一访问
vi /etc/netatalk/AppleVolumes.default
然后把/srv/samba “samba” options:tm 添加到最后
安装avahi-daemon和libnss-mdns
添加Avahi工具让Mac电脑可以在Finder工具栏的共享里发现磁盘
apt-get install avahi-daemon libnss-mdns
配置nsswitch.conf文件,在原有的hosts行后面添加 mdns
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns
让Avahi在局域网广播AFP共享:
vi /etc/avahi/services/afpd.service
添加如下内容
<?xml version=”1.0″ standalone=’no’?> <!-*-nxml-*-> <!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=Xserve</txt-record> </service> </service-group>
重启avahi服务
/etc/init.d/avahi-daemon restart