文档章节

MAC和树莓派实现文件共享和TM备份

小本聪
 小本聪
发布于 2014/09/12 09:01
字数 1167
阅读 459
收藏 1
  • 使用 netatalk 让 Linux 与 Mac OS X 共享文件

  • 为 Mac 搭建 Time Machine 备份服务器

Mac OS X 系统自带了一款简单易用的备份软件 Time Machine,它能够每小时进行增量备份(即只备份有更改的文档),所以如果你使用 MacBook Pro/Air 笔记本而且需要处理的文档比较多,那么使用 Time Machine 通过无线网络备份是一种不错的选择。可惜使用 Time Machine 需要一个外接硬盘或者购买一台 Apple Time Capsule 设备,而下面的方法是通过安装 netatalk 软件,让一台普通 Linux 树莓派能与Mac OS X共享文件并且还能充当 Time Machine 的备份服务器。

1、树莓派安装 netatalk

netatalk 是一个免费开源的 AppleTalk 通信协议的实现,Linux 或者 BSD 系统通过它可以充当 Mac 的文件服务器 (AppleShare File Server, 网络协议是 AFP)、AppleTalk 路由、打印服务器等。

# 使用如下命令安装 netatalk

sudo apt-get install netatalk
pi@raspberrypi ~ $ sudo apt-get install netatalk
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  avahi-daemon bind9-host cracklib-runtime db-util db5.1-util libavahi-core7 
libbind9-80 libcrack2 libdns88 libisc84 libisccc80 libisccfg82 liblwres80 
libnss-mdns libpam-cracklib
  lsof rc wamerican
Suggested packages:
  avahi-autoipd texlive-base-bin groff quota db4.2-util
The following NEW packages will be installed:
  avahi-daemon bind9-host cracklib-runtime db-util db5.1-util libavahi-core7 
libbind9-80 libcrack2 libdns88 libisc84 libisccc80 libisccfg82 liblwres80 
libnss-mdns libpam-cracklib
  lsof netatalk rc wamerican
0 upgraded, 19 newly installed, 0 to remove and 1 not upgraded.
Need to get 4,056 kB of archives.
After this operation, 9,783 kB of additional disk space will be used.
Do you want to continue [Y/n]? Y

2、设置共享文件夹

编辑文件 

sudo nano /etc/netatalk/AppleVolumes.default

这里的每一行即代表一个共享文件夹,默认会把当前用户的 $HOME 文件夹共享出来,如果不希望这样的话则找到“~”一行并把它注释掉,加入如下的一行:

/home/pi/nas "CohoStudio_NAS"

这表示将 /home/pi/nas 文件夹共享出来,共享名为"CohoStudio_NAS"。

3、设置 Time Machine 备份文件夹

跟上一步类似,只要在共享设置后面增加参数 “options:tm” 就可以了,比如(在nas文件夹下面创建time_capsule):

/home/pi/nas/time_capsule "Time_Capsule" options:tm

4、安装及配置 Avahi

Avahi 是 Apple’s Zeroconf 协议的开源实现,实现类似 Bonjour 的功能,它可以让你在 Mac 系统里自动发现你的 Linux 计算机。

sudo apt-get install avahi-daemon(可选,用于支持网内的计算机自动发现)

创建文件 

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

写入如下内容(Port:548):(Archlinux 已经存在此文件,不需要创建)

<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>

5、启动 netatalk 和 avahi

$ sudo service netatalk restart
$ sudo service avahi-daemon restart

默认2345都是on的,所以下面两个命令就没有必要了。

pi@cohostudio ~ $ sudo chkconfig --add netatalk
insserv: warning: script 'K01aria2' missing LSB tags and overrides
insserv: warning: script 'aria2' missing LSB tags and overrides
insserv: warning: script 'mathkernel' missing LSB tags and overrides
netatalk                  0:off  1:off  2:on   3:on   4:on   5:on   6:off
pi@cohostudio ~ $ sudo chkconfig --add avahi-daemon
insserv: warning: script 'K01aria2' missing LSB tags and overrides
insserv: warning: script 'aria2' missing LSB tags and overrides
insserv: warning: script 'mathkernel' missing LSB tags and overrides
avahi-daemon              0:off  1:off  2:on   3:on   4:on   5:on   6:off
pi@raspberrypi ~/nas $ sudo service netatalk restart
Restarting Netatalk Daemons (this will take a while)Stopping Netatalk Daemons: afpd cnid_metad papd timelord atalkd.
..Starting Netatalk services (this will take a while):  cnid_metad afpd.
done.
pi@raspberrypi ~/nas $ sudo service avahi-daemon restart
[ ok ] Restarting Avahi mDNS/DNS-SD Daemon: avahi-daemon.

MAC连接LINUX上面的AFP服务

输入linux系统的用户名pi和密码即可登陆。

6、Mac OSX 系统上的设置

右击 “Finder” -> “连接服务器…” -> “服务器地址”,使用 Linux 系统中的帐号和密码登录进入之后应该会看到 “CohoStudio_NAS” 和 “Time_Capsule” 文件夹。

afp://xxxx.jios.org # AFS服务器地址

然后在 Mac 打开一个终端(位于 “应用程序” -> “实用工具” -> “终端”),执行这个命令让 Time Machine 能够使用网络磁盘作为备份目标位置:

defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1

打开 “系统偏好设置” -> “Time Machine” -> “开” -> “选择磁盘” 然后选择 “Time Machine” 文件夹。

现在所有设置都完成了,测试一下吧。

7、将MAC系统备份到树莓派上面

点击菜单栏上的 Time Machine 图标,再点击 “立即备份”,没有问题的话应该开始备份文件了(一般来说可以只备份用户文件,即可以把系统文件都排除掉),首次备份需要很长时间,所以最好接上交流电并且设置节能器永不进入睡眠。

© 著作权归作者所有

小本聪
粉丝 5
博文 9
码字总数 3237
作品 0
杭州
程序员
私信 提问
树莓派+一根网线直连笔记本电脑

用网线直连电脑,不经过路由器。这个方法最大的特点用最少的工具玩树莓派。 一、材料:树莓派一部、网线一根,笔记本电脑一台。 1、树莓派:带供电系统和烧好Raspbian系统的SD卡; 2、网线:...

maweitao
2014/07/31
1K
1
PiShrink:使树莓派镜像更小

树莓派不需要过多介绍。它是一款小巧、价格实惠,只有信用卡大小的电脑,它可以连接到显示器或电视。我们可以连接一个标准的键盘和鼠标,并将其用作一台成熟的台式计算机来完成日常任务,如互...

作者: Sk
05/24
0
0
树莓派4正式上线!「PC级」性能,支持4K双屏,仅售241

机器之心报道。 面对如此令人心满意足的全新树莓派,也许开发者们只想说一句话,上手盘它。 作为开发者最喜欢的开发板,树莓派的第四代产品带来了 3 倍以上的计算性能、新的操作系统、接口全...

06/25
0
0
[翻译完成] 编辑树莓派配置文件

概述 在启动过程中, 树莓派会从SD里读取一些配置参数. 这些参数储存在config.txt文件中. 这个文件存在SD里, 在Windows下直接可见. 因此, 你可以从Windows PC, Mac, Linux PC或者直接从树莓派...

八宝粥
2013/06/29
7.9K
0
新手教程:如何 SSH 进入树莓派

在这篇树莓派文章中,你将学到如何在树莓派中启用 SSH 以及之后如何通过 SSH 进入树莓派。 在你可以用树莓派做的所有事情中,将其作为一个家庭网络的服务器是十分流行的做法。小体积与低功耗...

作者: Chinmay
05/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
29分钟前
4
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
4
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
13
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
13
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部