树莓派实现TimeMachine以及samba服务

最近一段时间感觉用移动硬盘备份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结果:

 

1 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 1.8T 0 disk |-sda1 8:1 0 977.9G 0 part `-sda2 8:2 0 885.1G 0 part mmcblk0 179:0 0 14.6G 0 disk |-mmcblk0p1 179:1 0 56M 0 part /boot `-mmcblk0p2 179:2 0 3G 0 part /

 

在这里我是把我的硬盘分为两个分区,/dev/sda1 为ntfs格式、/dev/sda2 为 hfs格式,如果你需要进行分区可以通过fdisk以及cfdisk进行分区。

格式化分区:

1 mkfs.ntfs -v “samba” /dev/sda1 && mkfs.hfsplus -v “timemacheine” /dev/sda2

 

准备timemacheine以及samba的挂载目录:

1 mkdir /srv/samba mkdir /srv/timemacheine

samba搭建

安装ntfs-3g,让raspberry支持ntfs格式

1 apt-get install ntfs-3g

挂载分区到指定目录

1 mount -t ntfs /dev/sda1 /srv/samba

查看是否成功挂载,lsblk结果:

1 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 1.8T 0 disk |-sda1 8:1 0 977.9G 0 part /src/samba (已挂载成功) `-sda2 8:2 0 885.1G 0 part mmcblk0 179:0 0 14.6G 0 disk |-mmcblk0p1 179:1 0 56M 0 part /boot `-mmcblk0p2 179:2 0 3G 0 part /

 

安装samba

1 apt-get install samba samba-common-bin

修改samba配置文件

1 vi /etc/samba/smb.conf

添加共享配置信息

1 [BackupFolder] (共享名字) comment = Backup Folder path = /srv/samba (路径) valid users = @users force group = users create mask = 0660 directory mask = 0771 read only = no

 

添加samba用户

1 useradd backuser -m -G userspasswd backuser smbpasswd -a backuser

重启服务

1 /etc/init.d/samba restart

timemachine搭建

安装必要的软件:

1 apt-get install hfsplus hfsutils hfsprogs

挂载目录:

1 mount -t hfsplus /dev/sda2 /src/timemacheine

修改目录的所属组、所有者:

1 chown -R pi:pi /srv/timemacheine

查看是否成功挂载,lsblk结果:

1 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 1.8T 0 disk |-sda1 8:1 0 977.9G 0 part /src/samba (已挂载成功) `-sda2 8:2 0 885.1G 0 part /src/timemacheine (已挂载成功) mmcblk0 179:0 0 14.6G 0 disk |-mmcblk0p1 179:1 0 56M 0 part /boot `-mmcblk0p2 179:2 0 3G 0 part /

安装Netatalk

Netatalk 是一个开源的 AppleTalk 通信协议的实现,Linux 系统通过它可以充当 Mac 的文件服务器 、AppleTalk 路由、打印服务器等。 安装:

1 apt-get install netatalk

把最先设置的目录添加到配置文件:

1 echo “/srv/timemacheine \”TimeMacheine\” options:tm” >> /etc/netatalk/AppleVolumes.default

或者

1 vi /etc/netatalk/AppleVolumes.default

然后把/srv/timemacheine “TimeMacheine” options:tm 添加到最后 这里可以把samba服务器也设置进来,这样就可以统一访问

1 vi /etc/netatalk/AppleVolumes.default

然后把/srv/samba “samba” options:tm 添加到最后

安装avahi-daemon和libnss-mdns

添加Avahi工具让Mac电脑可以在Finder工具栏的共享里发现磁盘

1 apt-get install avahi-daemon libnss-mdns

配置nsswitch.conf文件,在原有的hosts行后面添加 mdns

1 hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 mdns

让Avahi在局域网广播AFP共享:

1 vi /etc/avahi/services/afpd.service

添加如下内容

 1 <?xml version=”1.0″ standalone=’no’?>
 2 <!-*-nxml-*->
 3 <!DOCTYPE service-group SYSTEM “avahi-service.dtd”>
 4 <service-group>
 5 <name replace-wildcards="”yes”">%h</name>
 6 <service>
 7 <type>_afpovertcp._tcp</type>
 8 <port>548</port>
 9 </service>
10 <service>
11 <type>_device-info._tcp</type>
12 <port>0</port>
13 <txt-record>model=Xserve</txt-record>
14 </service>
15 </service-group>

 

重启avahi服务

1 /etc/init.d/avahi-daemon restart

文档信息

发表评论

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