上周将工作用电脑由公司配备的台式机切换到自己低配的macbook air上面,小本本的128G SSD远远不能满足工作的储存需要,但又不舍得入手昂贵的AirPort Time Capsule,于是考虑将空闲下来的pc主机作为Mac的文件及time machine的备份服务器。

服务器的操作系统当然要用我最爱的FreeBSD,她无论在稳定性、性能和易用性方面都要完胜已经是四分五裂的linux。需要在服务器上面安装netatalk及avahi。

netatalk是一个开源的afp文件服务器,可为Mac Os提供文件共享服务。

安装过程采用FreeBSD的ports编译方式。

安装netatalk

cd /usr/ports/net/netatalk/ && make WITHOUT_X11=yes config install clean
文件服务器不需要工作在桌面环境下,所以要特别注意编译的时候排除掉X11.

编辑 /etc/rc.conf 以保证开机的时候能够启动文件服务。

netatalk_enable="YES"
afpd_enable="YES"
cnid_metad_enable="YES"

编辑netatalk的共享配置 /usr/local/etc/AppleVolumes.default
/home/share/apple "Time Machine" allow:kmd options:usedots,upriv,tm cnidscheme:dbd
Time Machine 是备份空间的名称
/home/share/apple 备份空间的路径
kmd 系统用户名

启动netatalk
/usr/local/etc/rc.d/netatalk start

到mac下的finder里按快捷键command+k 
afp://[服务器ip]


这个时候应该就可以正常的连接到文件服务器,进行正常的读写操作。但是要特别注意服务器目录的访问权限。

安装avahi

为了让Mac Os在还原模式下(开机时按command+R快捷键)能够搜索到netatalk,文件服务器还需要安装avahi服务,Avahi和苹果的Bonjour同为Zeroconf规范的开源实现。

以 ports 方式安装 avahi,配置里只需要选择 avahi-libdns
cd /usr/ports/net/avahi/ && make WITHOUT_X11=yes config install clean

在 /etc/rc.conf 添加:
avahi_daemon_enable="YES"

启动 avahi-daemon:
/usr/local/etc/rc.d/avahi-daemon start

开始享受time machine吧

首次备份需要很长的时间,由机器性能及网络环境决定的,以后会定期自动进行增量备份。

操作环境说明

FreeBSD9.1 
OS X Mountain Lion

Next..

在pc上跑文件服务器还是比较费电的, 以后要尝试下树莓派+FreeBSD的方式,目前树莓派的磁盘IO有瓶颈,可能会有性能问题等。

参考

http://mikuru.tw/wordpress/archives/1980

在FreeBSD上搭建Mac的文件及time machine备份服务的更多相关文章

  1. 利用WebClient上传参数及文件流到远程ashx服务

    原文 利用WebClient上传参数及文件流到远程ashx服务 1 思路: WebClient.UploadFile()方法可以上传文件:UploadData()方法可以上传数据参数:如何合二为一既上 ...

  2. docker 下mysql 和postgresql 数据库的搭建以及数据文件的迁移和备份

    service docker start - docker 启动 service docker stop - docker 关闭 1.docker 镜像创建—使用的默认镜像有数据卷 docker pu ...

  3. 在MAC服务器上搭建docker-registry(转)

    在MAC服务器上搭建docker-registry 2014-03-14      0个评论    来源:在MAC服务器上搭建docker-registry   收藏    我要投稿 本文介绍如何在M ...

  4. 在MAC上搭建cordova3.4.0的IOS和android开发环境

    Hello,大家好,今天给大家说说在mac上搭建cordova3.4.0的iOS和Android开发环境,首先下载cordova,地址:https://cordova.apache.org/#down ...

  5. Mac上搭建直播服务器Nginx+rtmp

    简介 nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,本人在网上整理了安装流程,分享给大家并且作备忘. 步骤安装 1.安装Homebrow Homebrew简 ...

  6. MAC中在eclipse luna上搭建移动平台自己主动化測试框架(UIAutomator/Appium/Robotium/MonkeyRunner)关键点记录

    这几天由于原来在用的hp laptop的电池坏掉了,机器一不小心就断电.所以仅仅能花时间在自己的mackbook pro上又一次搭建整套环境.大家都知道搭建好开发环境是个非常琐碎须要耐心的事情,特别是 ...

  7. MAC中在eclipse luna上搭建移动平台自动化测试框架(UIAutomator/Appium/Robotium/MonkeyRunner)关键点记录

    这几天因为原来在用的hp laptop的电池坏掉了,机器一不小心就断电,所以只能花时间在自己的macbook pro上重新搭建整套环境,大家都知道搭建环境是个很琐碎需要耐心的事情,特别是当你搭建的安卓 ...

  8. mac上搭建appium+IOS自动化测试环境(一)

    阅读须知 由于OS X系统最近才开始接触,所以有些东西也不是很清楚,这里只提供方法不提供原理,能解释清楚的我也会尽量解释.可能也有一些地方说的不严谨或有错的,还望大家指点一二. 实验环境 操作系统: ...

  9. 在Mac上搭建React Native开发环境

    概述 前面我们介绍过在window环境下开发React Native项目,今天说说怎么在mac上搭建一个RN的开发环境. 配置mac开发环境 基本环境安装 1.先安装Homebrew:用于安装Node ...

随机推荐

  1. ubuntu下使用apt-get install安装的软件在哪个目录

    形如 apt-get install apps 这样的命令,一般会将下载文件放在 /var/cache/apt/archives目录下,然后安装. 如果不及时清理,这个目录所占空间会越来越大,幸运的是 ...

  2. Android IOS WebRTC 音视频开发总结(五八)-- 图文解说视频直播原理

    本文主要介绍rtmp&hls视频直播原理,文章最早发表在我们的微信公众号上,详见这里,欢迎关注微信公众号blackerteam,更多详见www.blackerteam.com 现在视频直播很火 ...

  3. Jqgrid获取行id

    //获取选中行(单行)的ID var id = $("#table").jqGrid('getGridParam','selrow'); //根据id获取行数据,返回的是列表 va ...

  4. 导出excel表功能

    前台: <asp:Button ID="btndao" runat="server"  Text="导出excel文件" onclic ...

  5. JavaScript入门基础

    JavaScript基本语法 1.运算符 运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=).算术运 ...

  6. jQuery下拉友情链接美化效果代码分享

    这篇文章主要介绍了jQuery下拉友情链接美化效果,很实用的代码,推荐给大家,有需要的小伙伴可以参考下. 文实例讲述了jQuery下拉友情链接美化效果,jQuery下拉友情链接美化代码是一款基于jQu ...

  7. oracle11g导入到10g

    oracle11g导入到10g http://www.doc88.com/p-0827386468478.html

  8. 使用notiy和wait模拟阻塞队列

    public class MyQueue { //定义一个存储数据的容器 private LinkedList<Object> list = new LinkedList<Objec ...

  9. PHP 表单 - 验证邮件和URL

    PHP - 验证名称 以下代码将通过简单的方式来检测 name 字段是否包含字母和空格,如果 name 字段值不合法,将输出错误信息: $name = test_input($_POST[" ...

  10. PHP四大安全策略

    PHP中的文件系统安全.数据库安全.用户数据安全等安全相关的问题. 一.文件系统安全 php如果具有root权限,且在脚本中允许用户删除文件,那么用户提交数据,不进行过滤,就非常有可能删除系统文件 & ...