如何将树莓PI用作Mac的网络时光机驱动器

既然你可以用树莓PI和外置硬盘自己做一个时间胶囊,为什么还要花300美元买一个机场时间胶囊呢?这需要进行一些调整,但一旦全部设置完毕,您的Mac将自动备份,而您无需付出任何努力。不再需要将驱动器插入您的计算机。

更棒的是:当需要恢复文件时,您可以从PI上拔下硬盘,直接将其插入您的Mac,这样您就可以使用系统恢复功能从整个系统故障中恢复。类似的黑客攻击不会以这种方式进行。

您需要的是什么

我们已经向您展示了如何使用Time Machine备份Mac,甚至如何通过网络执行Time Machine备份。但在这些教程中,通过网络进行备份需要另一台Mac充当服务器。因此,如果你住在一个只有一台Mac的家庭里,你可能会认为你唯一的选择就是插上USB硬盘或买一个300美元的苹果时间胶囊(Apple Time Capsage)。

那是胡说。Raspberry Pi连接到外部硬盘驱动器,是时间胶囊或另一台Mac的一个很好的即兴替代品,而且价格便宜得多。(是的,时间胶囊确实包括路由器功能,所以对于它提供的功能来说,这实际上是一个不错的价格-但这种方法让你可以使用任何你想要的路由器,并在你的驱动器空间不足时提供更多的升级空间。)

本教程假设您已经知道如何设置Raspberry PI的基础知识。它还需要一些设备:

一种覆盆子派。任何型号都可以,但目前的型号是覆盆子派3型B。 一张SD卡,用于Raspberry Pi的操作系统。较旧的Raspberry PI将使用标准SD卡,而较新的将需要microSD卡,因此请确保选择正确的型号。这里有一个很好的列表,通过测试可以在PI中很好地工作。 PI的电源。Pis电源端口只是microUSB,但我们建议使用专为PI设计的电源,以实现可靠的性能-CanaKit的这个电源工作得很好。 PI的有线网络连接(您可以使用Wi-Fi,但需要更多设置,而且对于大型网络备份,有线会更好)。 一个外置硬盘,你可以通过USB连接到PI。我们建议您购买带专用电源的台式机外置硬盘,除非您的USB供电驱动器已经过测试,可以与PI配合使用。

你可以用这样一个很好的树莓Pi入门工具包一口气买到大部分这些东西(甚至更多),或者你也可以单独购买。你说了算。

我从Caleb Woods的一篇博客文章中了解到了这个方法,并通过阅读Badbox.de上的这篇文章填写了一些对我不起作用的内容。我向你们两位致以诚挚的谢意。

最后要注意的是:根据我的经验,这个黑客工作得很好,但归根结底,它仍然只是一次黑客攻击。出于这个原因,我建议在此之外进行一些备份,最好是异地备份。(无论如何,您都应该有一个异地备份,以防发生火灾或其他自然灾害。)

相关:如何使用Time Machine备份Mac和恢复文件

第一步:为时光机准备外置硬盘

您需要做的第一件事是准备外部驱动器,以便与Time Machine一起工作。将驱动器插入Mac,然后启动Disk Utility。选择您的外置驱动器,然后单击“擦除”按钮。您可能希望将驱动器格式化为“Mac OS Extended”,也称为“MacOS Extended”。

接下来,我们要确保您的Raspberry PI和每个设备都具有控制驱动器的权限。找到Finder,然后右键单击侧栏中的驱动器。单击“获取信息”。

在打开的窗口底部,您可以找到权限设置。

单击右下角的锁,然后输入您的密码。接下来,选中“忽略此卷的所有权”。这样,您就可以将外部驱动器连接到PI了。

第二步:在您的PI上安装Raspbian并通过SSH连接到它

接下来,您将不需要使用Raspbian设置您的Raspberry PI,如本文所述。我们不会在这里详细介绍这个过程,因为它本身就是一个项目,所以请查看该指南,以便在您的PI上设置Raspbian。我使用Raspbian Core进行设置,因为我没有将PI连接到显示器,但是没有理由Raspbian的完整GUI版本不能正常工作。

说到这一点:当涉及到本教程的其余部分时,您有两个选择。你可以把你的树莓PI连接到键盘和显示器上,然后进行设置,或者你也可以通过SSH连接到你的PI,然后在你的Mac上舒适地运行每一步。我们认为SSH方法比查找随机监控器容易得多,所以下面是如何做到这一点的。

在Mac上启动终端,然后输入以下命令:

邮箱:ssh pi@192.168.1.11

将192.168.1.11替换为您的PI的IP地址。通过转到路由器的Web界面,您可以找到连接到您的网络的任何设备的IP地址,包括您的Raspberry PI。

然后会要求您输入默认用户pi的密码。默认情况下,pi的密码是raspberry。

如果您是第一次连接到新系统,我建议您在继续之前配置一些东西。首先,运行sudo raspi-config并更改默认密码。如果您有一个很大的SD卡,您还可以在这里扩展您的默认文件系统(尽管这对于本教程来说不是必需的)。您的覆盆子PI将重新启动,此时您就可以开始工作了。

第三步:挂载您的外置驱动器

在您可以设置您的时光机之前,您需要挂载驱动器,以便您的树莓PI可以对其进行读写。要做到这一点,需要安装一些软件。首先,确保PI上的所有软件都是最新的。依次运行以下两个命令:

数独APT-GET更新

SUDO APT-获取升级

接下来,安装两个包:hfsprogs和hfplus。这些将让您的Raspberry PI读取您的Mac格式的驱动器。

sudo apt-get install hfsprogs hfplus

你现在已经有了能够挂载你的硬盘的软件,但它需要知道要挂载哪个驱动器,所以你需要做一些研究。从启动Parted开始。

SUDO/sbin/Parted

接下来,键入print以查看当前连接的驱动器列表。您应该在这里看到您的外置驱动器。

从这个屏幕截图中,我们可以看到我的硬盘是一个164 GB的Maxtor硬盘(我保证,稍后我会买一个更大的)。这里的重要信息是/dev/sda。您的驱动器将具有类似的名称,您应该将其记下来。

接下来,请看该文本块下方的表格。在我的例子中,很明显第二个更大的分区就是我要找的。因此,我注意到我要挂载的分区是sda2。如果您的驱动器上有多个驱动器或多个分区,则可能需要稍有不同的数字。

现在您已经有了所需的信息,请键入Quit,然后按Enter键。接下来,我们将创建一个文件夹,该文件夹将用作我们的挂载点…

sudo mkdir-p/media/tm

…。然后将一些信息添加到FSTAB文件中。使用此命令打开文本编辑器:

SUDO Nano/etc/fstab

将以下行粘贴到文档中,如果/dev/sda2与/dev/sda2不同,请将/dev/sda2替换为您的驱动器分区。

/dev/sda2/media/tm hfplus force,rw,user,auto 0 0

粘贴文本后,按Ctrl+X离开编辑器,并确保在执行此操作时保存。

然后,使用以下命令装载驱动器:

SUDO MOUNT-A

如果您没有看到错误消息,祝贺您!您已成功装入驱动器。

第三步:编译和安装Netatalk

Netatalk是一款模拟AFP的软件,AFP是苹果目前用于Time Machine备份的网络协议。您可以使用sudo apt-get install netatalk安装旧版本的Netatalk,但我强烈建议您不要这样做。由于(主要是政治)复杂的原因,Debian-Raspbian的基础上-在其存储库中提供了一个非常过时的Netatalk版本。你可以用这个过时的Netatalk版本让Time Machine工作,但根据我的经验,这很令人沮丧。

因此,我建议您编译最新版本。安装起来比较麻烦,但值得。

首先,您需要安装依赖项。以下是您需要安装的所有内容,只需一个命令:

sudo智能安装build-Essential libeevent-dev libssl-dev libgcrypt11-dev libkrb5-dev libpam0g-dev libwrap0-dev libdb-dev libtdb-dev libmysqlclient-dev avahi-daemon libavahi-client-dev libacl1-dev libldap2-dev libcrack2-dev system

这可能需要一段时间才能安装。接下来,下载最新版本的Netatalk。在撰写本文时,版本是3.1.10,不过您可能希望查看netatalk的主页以获取最新的版本号。然后,运行以下命令下载它:

WGET http://prdownloads.sourceforge.net/netatalk/netatalk-3.1.10.tar.gz

如果您在其网站上找到较新的版本,请更换版本号。

现在,使用以下命令解压下载的文件:

tar-xf netatalk-3.1.10.tar.gz

然后切换到您刚刚创建的新文件夹。

CD netatalk-3.1.10

接下来,您可以使用以下命令在编译程序之前配置netatalk的所有设置:

./configure \ --with-init-style=debian-systemd \ --without-libevent \ --without-tdb \ --with-cracklib \ --enable-krbV-uam \ --with-pam-confdir=/etc/pam.d \ --with-dbus-daemon=/usr/bin/dbus-daemon \ --with-dbus-sysconf-dir=/etc/dbus-1/system.d \ --with-tracker-pkgconfig-version=1.0

假设您没有看到任何错误消息,您可以进入下一阶段并运行:

做 / 使得 / 布置 / 制造

这需要一段时间。你不妨给自己煮一杯咖啡、一些烤饼和一顿三道菜的饭。覆盆子派在编译软件方面速度不快。

当一切都完成后,您终于可以安装Netatalk了:

SUDO进行安装

那不是很有趣吗?快速检查Netatalk是否实际正在运行:

Netatalk-V

您将看到有关Netatalk设置的大量信息。如果一切看起来都很好,我们来配置一下吧!

第四步:配置Netatalk

现在已经安装了Netatalk,您需要告诉它共享您的驱动器。首先,您需要重新编辑nsswitch.conf。

sudo Nano/etc/nsswitch.conf

在这里,您需要将mdns4和mdn添加到以“hosts:”开头的行,使其如下所示:

主机:文件mdns4_minimal[NotFound=return]DNS mdns4 mdns

这一调整意味着你的时光机驱动器将显示在Finder的侧边栏中,只要你将你的Raspberry Pi连接到网络上。

接下来,您需要重新编辑afpd.service:

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

复制此文本块并将其粘贴到该文件中:

%h _afpovertcp._tcp 548 _device-info._tcp 0 model=TimeCapsule

其中,这些信息使你的树莓PI模仿了一个实际的苹果时间胶囊,并带有适当的图标。

最后,是将您的外部驱动器设置为网络共享的时候了。

sudo Nano/usr/local/etc/afp.conf

在本文件底部,请粘贴以下文本:

[Global] mimic model = TimeCapsule6,106 [Time Machine] path = /media/tm time machine = yes

如果你愿意,你可以在第二个括号里加上一个不同于“时光机”的名字。这将更改您备份到的驱动器的名称,如Finder和Time Machine本身所示。

最后,继续启动网络服务。依次运行以下两个命令:

SUDO服务Avahi-后台进程启动。 SUDO服务Netatalk启动

您的驱动器现在已在网络上提供。要确保每次启动Raspberry PI时都会发生这种情况,请再次逐个输入以下命令:

sudo systemctl启用avahi-daemon。 SUDO系统ctl启用netatalk

我们现在真的很接近了!

第五步:连接到你的时光机

前往你的Mac上的Finder,你应该会在这里看到你的树莓PI。

您实际上可以从这里连接,方法是单击“连接身份”并输入用于通过SSH连接的用户名和密码。

然而,根据我的经验,如果你通过硬盘的IP地址连接到硬盘,Time Machine的工作效果会更好,特别是如果你已经用路由器设置了静态IP地址(你可能应该这样做)。要连接,请打开Finder,然后按键盘上的Command+K。

一旦你挂载了硬盘,进入系统偏好设置>时光机,然后选择该硬盘作为你的时光机备份。

初始备份将运行,之后每小时进行一次备份。您现在拥有了一个联网的时光机驱动器。好好享受吧!

相关文章