将您的Raspberry Pi放入NAS盒

当然,您需要Raspberry Pi和一个或两个备用驱动器。较小的2.5英寸驱动器可以直接通过USB供电,但是我们将需要一个有源集线器,因为RPi的USB端口提供的电源对他们来说还不够。或者,您可以使用USB拇指驱动器,甚至可以使用SD卡。实际上,我今天混合使用了USB硬盘和拇指驱动器,但是过程是相同的。

仅使用一个驱动器,您仍然可以创建一个共享的网络存储区,但是如果有两个失败,您将能够设置数据冗余。

准备驱动器

首先从台式机将驱动器格式化为 NTFS 。这是为了方便起见,因此,如果出现任何问题,我们将能够将其与NAS断开连接,并仍然可以从任何PC读取数据。

我们可以将其格式化为Raspberry Pi,但将花费几个小时,并且在台式机上执行起来要快得多。立即执行此操作。并再次以root身份进入。从高级选项菜单,启用 SSH

重新启动后,您应该可以使用(如果需要,请使用Putty,在Windows上重新安装)

SSH root@[IP address]

Once logged in, figure out which devices are your additional drives. I’m assuming you’ll be using two for data redundancy. Type

fdisk -l

列出附加的存储设备。您应该会看到类似这样的东西。

/ dev / mmc 分区是您的Pi操作系统, mmc 是指 SD卡。令人困惑的是, / dev / sda1 / dev / sdb1 实际上与SD卡无关,它们实际上是您连接的USB驱动器。最初是“ SCSI设备",但现在是指任何连接的SATA或存储设备)

为Linux安装 ntfs-3g ,以便我们可以访问NTFS格式的Windows驱动器

apt-get install ntfs-3g

下一步,创建用作挂载点的目录,然后挂载驱动器。我在这里保持简单,将它们称为 1 2

mkdir /media/1mkdir /media/2mount -t auto /dev/sda1 /media/1mount -t auto /dev/sdb1 /media/2mkdir /media/1/sharesmkdir /media/2/shares

Samba

接下来,我们ll设置Samba。 Samba是Windows(实际上是最新的OSX Mavericks)使用的网络共享协议。

apt-get install sambaapt-get install samba-common-bincp /etc/samba/smb.conf /etc/samba/smb.conf.baknano /etc/samba/smb.conf

If you’re not familiar with these kind of config files, a # at the start of the line means it is commented out, and therefore not currently set or configured. To enable something, you can either add a new line, or un-comment an existing line to make it active.

我们首先要启用用户安全性;按 CTRL-W 并键入“ security"以找到相关部分。最后,从显示

security = user

的行中删除#符号,向下滚动到底部(或按住 CTRL V 直到到达那里)并添加任意数量的网络共享。使用以下格式:

[test]comment = Test sharepath = /media/1/sharesvalid users = @usersforce group = userscreate mask = 0660directory mask = 0771 read only = no

虽然仅引用第一个已安装的驱动器–我们稍后将与第二个共享驱动器进行同步以提供冗余。

完成后,依次按 CTRL X y 保存。

然后使用以下命令重新启动Samba。

service samba restart

现在,添加Pi的新用户,假设您不想使用相同的登录名(用“ jamie"代替您自己的用户)

useradd jamie -m -G users

输入以下命令后,系统将提示您输入密码

passwd jamie

然后我们可以继续将此系统用户添加到Samba。您需要再次确认一次密码。

smbpasswd -a jamie

现在继续测试网络共享-在其他计算机(Windows或Mac)上应该可以看到该网络共享,并且应该能够进行写操作文件。

目前唯一的问题是,重新启动Pi时将卸载驱动器。要解决此问题,请安装autofs。

apt-get install autofsnano /etc/auto.master

在+ auto.master

/media/ /etc/auto.ext-usb --timeout=10,defaults,user,exec,uid=1000

下面添加以下行,现在您应该可以安全地重新启动而不会破坏所有内容

数据冗余

假设您安装了两个驱动器,我们现在可以设置一个自动脚本,以将数据从第一个驱动器同步到第二个,从而在一个驱动器出现故障时为我们提供备份。我们将使用rsync实用程序。

apt-get install rsynccrontab -e

Linux中的crontab是一种自动执行任务的方法。在向您展示如何自动执行站点备份时,我曾简短地谈论过。添加以下行:

30 5 * * * rsync -av --delete /media/1/shares /media/2/shares/

使用的编号方案如下:

minute | hour | day-of-the-month | month | day-of-the-week

因此,在我们新添加的行中,rsync命令将在 5:30 am 每天 * 通配符的意思是“每天",因此“每月的每一天")

如果要继续运行并立即运行备份,只需粘贴rsync命令,如下所示:

rsync -av --delete /media/1/shares /media/2/shares/

根据您在共享文件夹中放置的内容,可能要花几秒钟或更长时间您一份报告。 rsync的优点在于它知道哪些文件已更新,添加或应删除。继续并再次尝试相同的命令。它应该立即完成,因为它不知道任何更改。

就这样了,完成了–您现在拥有了自己又快又脏的NAS。是的,它可能不具备适当NAS的所有闪闪发光的功能,但是可以很好地完成工作,并且功耗要低得多。

标签: