家里的文件越来越多,每个人的文件放得到处都是,需要的时候又找不到。。。

买个NAS服务器?太贵!太吵!太费电!。。。

好在我们有树莓派,自己动手,丰衣足食!

说做就做,主要分成以下三部分

  1. 加载双USB移动硬盘
  2. 在网络中共享
  3. USB移动硬盘间同步

加载双USB移动硬盘

为啥树莓派加USB?安静省电呗,你要弄主机和大硬盘24小时开着,估计没用几个月,让你白天看着电表哭,晚上听着机器吵。。。

为啥要双移动硬盘?一个用来网络共享,一个用来备份。不省电了?如果老婆的文件有一天不见了,估计你就不会想着省电了,呵呵呵~~

由于树莓派的USB个数的限制(不要笑话,哥们我现在还在使用一代B型),移动硬盘一定要接在带外接电源的USB Hub上

// 由于希望在Windows的电脑上可以查看文件,所以USB硬盘的文件系统选择NTFS

// 树莓派上安装NTFS文件系统的支持

sudo apt-get install ntfs-3g

// 查看USB的连接情况,一般会是类似/dev/sda及/dev/sdb的连接

sudo fdisk –l

// 为USB加载准备文件夹

sudo mkdir /media/USBHDD1

sudo mkdir /media/USBHDD2

// 挂载USB到树莓派,USB设备名称见截图

sudo mount -t auto /dev/sda1 /media/USBHDD1

sudo mount -t auto /dev/sdb1 /media/USBHDD2

// 为网络共享准备共享文件夹

sudo mkdir /media/USBHDD1/shares

sudo mkdir /media/USBHDD2/shares

//这一步有点危险,做之前做好系统备份;如何备份?Win32 Disk Imager拷贝一个IMG文件呗

// 修改树莓派的文件系统表,需要按照fdisk中看到的信息填写

sudo nano /etc/fstab

/dev/sda1 /media/USBHDD1 auto noatime 0 0

/dev/sdb1 /media/USBHDD2 auto noatime 0 0

在网络中共享

NAS,NAS,网络连接存储,当然要通过网络共享出来嘛,我们用常用的Samba方式

// 安装Samba服务器及客户端工具

sudo apt-get install samba samba-common-bin

// 备份及修改配置文件

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old

sudo nano /etc/samba/smb.conf

// 在配置文件的地步加入如下配置节(不解释)

[Backup]

comment = Backup Folder

path = /media/USBHDD1/shares

valid users = @users

force group = users

create mask = 0660

directory mask = 0771

read only = no

// 重启Samba服务让配置生效

sudo /etc/init.d/samba restart

// 添加一个叫backups的用户

sudo useradd backups -m -G users

// 修改该用户的密码

sudo passwd backups

sudo smbpasswd -a backups

// 参考截图访问共享文件夹(杠杠+树莓派IP地址)

cd /media/USBHDD1/shares

ls

USB移动硬盘间同步

以上还只用到了一块USB硬盘,以下的命令是在凌晨两点将文件从USB1拷贝到USB2,分成以下两种情况

  1. 如果USB1上有而USB2无,将文件拷贝到USB2
  2. 如果USB2上无而USB2有,将USB2上文件删除

// 安装同步软件

sudo apt-get install rsync

// 配置同步任务

crontab –e

// 在最后加入如下命令

0 2 * * * rsync -av --delete /media/USBHDD1/shares/ /media/USBHDD2/shares/

// 也可以使用以下命令立即执行同步操作

rsync -av --delete /media/USBHDD1/shares/ /media/USBHDD2/shares/

装好的系统建议使用固定IP的方式,方式如下(使用网线的方式)

// 备份网络配置

sudo /etc/network/interfaces /etc/network/interfaces.old

//编辑网络配置

sudo nano /etc/network/interfaces

// 网络配置改成如下格式

iface eth0 inet static

address 192.168.1.115

gateway 192.168.1.1

netmask 255.255.255.0

broadcast 192.168.1.255

忍不住贴一张收工以后的PP,哈哈哈。。。

Andy Yang

2015.10.12

树莓派版的家用NAS服务器的更多相关文章

  1. 自己家里搭建NAS服务器有什么好方案?

    转自:https://www.zhihu.com/question/21359049 作者:陈二发链接:https://www.zhihu.com/question/21359049/answer/6 ...

  2. 极客DIY:使用树莓派制作一套“NAS+私有云盘+下载机”

    原创作者:HackLiu 0×00 前言 ‍ ‍ 如果你家里有多台设备需要联网需要娱乐,你一定会或多或少遇到设备碎片化带来的烦恼.当然,已经有很多厂商包括新晋的小米.360在内的互联网公司做了这个事情 ...

  3. 使用树莓派制作一套“NAS+私有云盘+下载机”

    ‍ ‍‍原创作者:HackLiu‍‍ ‍ 0×00 前言 ‍‍如果你家里有多台设备需要联网需要娱乐,你一定会或多或少遇到设备碎片化带来的烦恼.当然,已经有很多厂商包括新晋的小米.360在内的互联网公司 ...

  4. 家用NAS配置方案

    对家用用户而言,NAS即一台下载机,硬件需要满足以下几点: 1.稳定性:24×7稳定无故障运行. 2.拓展性:较多的硬盘槽位,便于容量扩容: 3.体积小巧:占地面积小,便于放置. 4.方便远程管理:无 ...

  5. 树莓派做下载机+Web服务器(Aria2下载+yaaw做UI+nginx)

    今天收到了小派,UK产的绿板子,还配了个透明盒子,装在里面闪亮亮的很好看,而且只有卡片大小,寻思着用它做什么好呢?想来想去,看到人家拿小派作家庭媒体中心,还有人拿它当下载机,于是就萌生了一个家庭媒体中 ...

  6. 变废为宝,用旧电脑自己DIY组建 NAS 服务器

    i17986 出品,必属佳作! 前言: 老外不喜欢升级硬件和软件,大家应该都知道.我昨天无意看到 FreeNAS 自述文件,这个系统可以让你使用旧的计算机硬件,于是我决定这么做.垃圾电脑你怎么能没有, ...

  7. Apache2.4.x版wampserver本地php服务器如何让外网访问及启用.htaccess

    http://www.jb51.net/article/61193.htm ———————————————————————————————————————————— 这篇文章主要介绍了Apache2. ...

  8. 为eclipse EE(汉化版) 配置Tomcat服务器

    为eclipse EE(汉化版) 配置Tomcat服务器   很多小朋友在初次使用eclipse进行web开发的时候,很是蒙蔽.以前都是文本编辑器写好,做好目录结构,往tomcat下一扔,重启,搞定. ...

  9. 22-1 web传输视频 Opencv+usb摄像头 树莓派+Flask实现视频流媒体WEB服务器

    第一篇 讲解原理 https://blog.miguelgrinberg.com/post/video-streaming-with-flask 第二篇 加入多线程可以直接用 https://gith ...

随机推荐

  1. Gson解析数组多类型元素

    本文的出现是为了解决以下需求:使用Gson对json数组进行解析,但是数组里面元素的类型是多种的.数据如下: {"list":[{ "type":0, &quo ...

  2. 又是一个小正则replace

    var a = "http://www.xx.com?id=111&-deb"; var b = "http://www.xx.com?-deb&id=1 ...

  3. MyBatis知多少(12)私有数据库

    如果你从事软件开发工作有了一段时间的话,那么肯定听过关于“自己动手还是花钱购买” 的争论.该争论是说,针对一个业务问题,我们是应该自己动手构建自己的解决方案呢,还是应 该花钱购买一个声称已经解决了此问 ...

  4. java模仿qq好友面板的布局(BoxLayout问题)

    .............. JLabel ll = new JLabel(dlg.getNameText() + ":" + dlg.getIPText(), ii[index] ...

  5. 探秘空值位图掩码(NULL bitmap mask)

    这篇文章我想谈下空值位图掩码(NULL bitmap mask) ,并揭开它的神秘面纱.空值位图掩码是在存储引擎层为列是否存储NULL值进行编码.它是一个简单的位图掩码,如果值是1的话,表示这列有NU ...

  6. SQL语句技巧:查询时巧用OR实现逻辑判断

    首先看以下SQL逻辑语句块: ) ) SET @fieldname='chassisno' --这里可传入chassisno,plateno,owner,contacttelno其中之一或不传 SET ...

  7. 操作ACCESS数据库注意事项

    以下问题都是容易忽略,但却不容易找出问题的所在,让我头疼不少,故在此列出,即是一个总结,同样也给其他人参与! 1.使用参数形式执行SQL命令时,参数数组需与在SQL语句中参数名出现的位置及名称必须完全 ...

  8. angularJs自定义服务

    在AngularJS中,系统内置的服务都是以$开头,所以我们的自定义服务尽量避免以$开头.自定义服务的方式有如下几种: 使用Module的provider方法 使用Module的factory方法 使 ...

  9. [Solution] 一步一步WCF(2) 终结点Endpoint

    繁忙的一天又一天,不管其他,先继续WCF吧. Endpoint包含地址,绑定,契约三要素.WCF作为一个Windows平台下最大的通信框架.通过终结点承载了所有通信功能.所以终结点的作用将非常重要. ...

  10. 阅读《构建之法》P384~391

    通过阅读<构建之法>P384~391以及参考阅读杜老师给出的链接,得出一个重要的结论:软件工程师的职业道德至关重要. 软件工程的动态性和需求的前后关系,要求一个规范能对出现的新情形有较强的 ...