数据备份系列——Netatalk+Avahi (搭建开源版TimeMachine)

苹果系统有个很棒棒的备份功能,叫做TimeMachine,时间机器对吧,很形象,当然确实也很好用。撒比巨硬搞的那个啥文件历史就巨难用,简直了,无法同台竞技。早期,只有搭配苹果自家的Time Capsule这破玩意才能实现,然后这款路由器实在是不咋滴,性价比也不高。后来,出现了Netatalk+Avahi的组合。Netatalk 是一个免费开源的 AppleTalk 通信协议的实现,Linux 或者 BSD 系统通过它可以充当 Mac 的文件服务器 (AppleShare File Server, 网络协议是 AFP)、AppleTalk 路由、打印服务器等。而Avahi是Zeroconf规范的开源实现,常见使用在Linux上。它可以在没有 DNS 服务的局域网里发现基于zeroconf协议的设备和服务。

两者搭配,就能在局域网内完美模拟出Time Capsule的TimeMachine功能(毕竟它其实是个路由器,总不能模拟出个路由器来吧),目前市场上的各种号称具有TimeMachine功能的NAS和路由器也基本上都是用的这套组合,所以效果不用担心。

PS.本文主要讲搭建,因为我还没买MBP(准备等2017款上市呢),所以后面的配置部分怕不是要去盗图咯(会标明出处的,虽然谁知道出处是不是也是盗的……)

一.安装

①Avahi

这个简单,直接yum就行

yum install avahi -y

②Netatalk

Netatalk的话倒霉的Centos还是没有现成的包……其它系统可以自己找找

首先来装一堆依赖,省得之后出问题

阅读全文→

阶段性吐槽

唔,这个系列教程很早以前就想写了,大概是云盘倒闭风波那个时候就起了念头,那么为什么现在才写呢?都是懒癌的锅……好吧,其实事也挺多的,拖着拖着就拖到了现在,不过总算是全写好了,每写一篇都得花好久的说,因为全是自己试过的,所以说按照我的流程来应该可能也许大概不会出啥问题(出问题的请留言,我努力解决吧。

Samba这个我是纠结了好久要不要写的,毕竟在现在这个情况下不是非常实用,我在测试的时候也发现了本地Windows连不上的情况,尝试tcping发现端口没开,然后从服务器同机房的另一台机器上就能检测出端口是开放的,果然还是因为前段时间的病毒问题导致封端口情况严重啊。(所以在最后的部分用红字写的点说明)不过嘛,想了想事情总会过去的,何况也有局域网使用的情况,所以还是写了。

没想到的是和NFS不一样,这货的配置还不少,所以我还分了两天才全写完,蛋疼。

本来吧,这个系列应该是一口气写完的,不过在写完NFS后发生了一些破事,所以又耽搁了下,有感而发,所以下个系列会写下文件备份的相关。

比如有Linux下的TimeMachine搭建,Rsync的使用,还有一堆云盘的命令行客户端使用。

再往后的话会写下局域网穿透之类的了。

自建云盘系列(番外篇)——Samba (信息服务块,Win&Linux共享存储)

上一次提到了NFS,挺好用的,我拿来给我的OVH官方小鸡挂KS的大硬盘存储,官方的存储贼贵,我放弃。因为是一个机房,所以效果还不错。那么问题来了,NFS适合于Linux系统之间共享存储,那么如果Windows掺和进来了,我们又该选择什么呢?当然是选择原谅它啊,好吧,不扯淡,我们需要的是Samba,很多人可能对这个不知道是啥,但是玩NAS之类的同学们肯定很熟悉。不过你不知道Samba你肯定知道网上邻居吧,当初在XP时代很多人在局域网内共享文件靠得就是这个了,而网上邻居使用的是SMB协议也称作CIFS协议,Samba服务是SMB的一个开源实现。

所以,正好符合我们Windows和Linux两手抓的需求。

一.安装配置

因为不需要自己编译,所以安装配置放一起说了就,另外,这部分就说Linux的,Windows下怎么共享我就不说了……挂载部分会提到Linux怎么挂载Windows的

samba是提供服务的,后面两个是作为客户端的,有yum的就是方便……走完进度就装好了,下面是配置

首先我建议是关闭selinux,防止出问题

当然如果你不想关,那么也行,运行如下命令改下权限 阅读全文→

自建云盘系列(番外篇)——NFS (网络文件系统,远程挂载存储)

有些时候,我们会遇到一种比较尴尬的情况,就是我有两台VPS,其中一台可能内存很小,但是硬盘却比较大,比如128M或者256M配了100G或者更大的硬盘(显然serverhub的某plan就是这样),另一台相对来说内存会正常一点,然而硬盘却不大,比如512M 20G啥的,这种情况下,我们要怎么用呢?当是选择NFS咯,NFS就是网络文件系统,简单的来说就是远程挂载存储。你可以通过NFS来实现将一台机器上的目录挂载到另一台机器上。这样就能充分得利用资源。

一.服务端配置

所谓服务端,就是存储或者说被挂载的那部分

请注意,在这个过程中会安装python-argparse,如果你的系统是Centos6且还升级了默认Python为2.7,那么可能你需要运行如下的命令额外为Python 2.7安装argparse,系统默认yum安装的是2.6的,可能会出点问题

安装在这儿就OK了,下面是配置

首先当然是选择一个用于挂载的文件夹,可以是已有的,也可以新创建,建议创建前使用df -h查看是否本机的大部分存储空间是挂载到指定目录的,这样的话我们就需要在那个目录下创建用于挂载的文件夹 阅读全文→