使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS

2020-06-14 13:27:00 69点赞 405收藏 38评论

创作立场声明:预告:下期介绍如何使用树莓派4B+Manjaro发行版本搭建NAS,敬请关注。

大约一年前,树莓派4B型号发布。相比上一代的树莓派3B+,树莓派4B在处理器速度,多媒体性能,内存和连接方面提供了突破性的增长,同时保留了向后兼容性和类似的功耗。对用户来说,树莓派4B提供的桌面性能可与入门级x86 PC系统相媲美。(部分树莓派4B介绍的文字及图片来自电路城

使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS

核心SoC方面:从树莓派3B+的Broadcom BCM2837B0提升到Broadcom BCM2711,集成了4核的Arm Cortex-A72 处理器,主频为1.5GHz。根据电子发烧友网的测试,4B多核性能(4核全开)比3B提升约45%。

内存方面:不再局限于单一的1GB的运存,而是提供了1GB、2GB、4GB、8GB的LPDDR4的运存可选。本文涉及的树莓派4B使用的是4GB版本,同时搭配64位版的Linux。

USB HOST接口提升:树莓派3B+有4个USB2.0的USB HOST接口,而树莓派4B将其中的两个USB接口提升到了USB3.0标准,大大提升了传输速率,更适合NAS家用网络存储的需求。

使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS

供电接口:树莓派的供电接口一改以往的MicroUSB接口,换成了主流的TYPE-C接口。当然,更强的性能也代表了更高的功耗,官方宣称必要的供电需求为5V/3A。本文所涉树莓派实际使用了华为P30原装的5V/4.5A USB电源,否则树莓派NAS频繁写盘时会出现故障,供电不足问题严重的话甚至有可能损坏外置硬盘

真正的千兆以太网:4B终于摈弃了3B上古怪的330Mbps网口。同样依据电子发烧友网的测试,单纯的对拷传输速度基本跑满千兆了。

使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS

其他方面,树莓派4B还有hdmi输出显示、蓝牙5.0等方面的硬件规格提升,因为跟NAS关系不大,在此不赘述了。

实现本文NAS功能,同样需要合适的Linux发行版本的支撑。由于树莓派社区已经形成了较好的软件系统生态,除了官方提供的Raspbian,现在还有Ubuntu等多个专用于树莓派的Linux发行版本,这也给我们提供了丰富的系统软件选择。为了更适合NAS工作的特性,这次我们先给树莓派选用基于Ubuntu 20.04 LTS(20.04意为2020年4月发布,LTS是Long Term Support的意思,由Canonical提供5年的支持至2025年)的Ubuntu Server 64位服务器版本,默认不带GUI桌面。如果安装到树莓派SD卡后需要安装桌面,可以参考此官网页面,简单地使用sudo apt install kubuntu-desktop命令安装KDE桌面环境。

其他Ubuntu 20.04新特性与功能包括(不是都适用于服务器版本):

  • Linux kernel 5.4(包括锁定模式和exFAT支持)
    Python 3现在是默认的(不再是Python 2)
    启动屏幕中的供应商LOGO
    改进的ZFS支持
    侧面启动栏中的Amazon取消
    添加了WireGuard支持
    新壁纸
    主题改进
    Thunderbird扩展与Lightning集成
    GDM多显示器支持
    Xorg中的分数缩放

Ubuntu特别友好的一点是自带NTFS硬盘格式支持,读写usb硬盘不需要安装ntfs-3g。这也给我们后面的NAS功能实现提供了便利。

接下来的任务分成以下几步:

  • 准备树莓派启动的系统TF卡
    启动树莓派,并完成首次远程连接和用户(root)密码的设置
    设置usb硬盘的自动挂载,安装及设置SAMBA网络邻居服务
    安装及设置transmission-daemon下载精灵(设置文件名为settings.json)
    启动transmission-daemon后台服务,开始下载

一、准备树莓派启动的系统TF卡

树莓派的系统安装非常简单,只要使用合适的镜像写入(刻录)软件,把.img格式的系统固件写入到这张卡,插上开机即可。具体可以参见阿文菌的这篇文章,以及CSDN网站的这一篇

注意2点:
1.容量,最好用32G以内的TF卡 ;
2.刻录软件,建议使用win32DiskImager。

win32DiskImager以及ubuntu server 20.04系统镜像,可以在此下载:
百度网盘地址
提取码:dsfq

下载的系统镜像全名为ubuntu-20.04-preinstalled-server-arm64+raspi.img.xz,是个667M大小的压缩包,需要先解压成名为ubuntu-20.04-preinstalled-server-arm64+raspi.img的原始镜像方能刻录到TF卡,这个镜像的大小是3.0G。

二、启动树莓派,并完成首次远程连接和用户(root)密码的设置

插好TF卡及电源,启动树莓派4B以后,可以先通过路由器的管理界面找到新启动的树莓派设备的IP地址,然后使用putty软件SSH连接到树莓派4B,根据提示完成ubuntu server的安装过程以及用户(root)密码的设置,以及运行apt-get update命令更新软件列表等基础操作,此处不再赘述。建议每次putty访问时,都运行sudo -i命令,以root身份进行操作。本文后面涉及的所有设置文件,都是存在root用户目录中的,transmission-daemon下载精灵也是以root身份运行,这点要特别注意。

三、设置usb硬盘的自动挂载,安装及设置SAMBA网络邻居服务

在windows电脑上,将准备好的usb硬盘格式化成NTFS格式,然后插入树莓派4B的usb3.0(蓝色)接口。前面提过,ubuntu自带NTFS硬盘格式支持,因此可以通过直接编辑fstab的方法来完成硬盘开机后的自动挂载,本部分内容主要参考CSDN博客文章。在ubuntu server上运行的步骤如下。

1.运行命令ls -l /dev/disk/by-uuid/查看UUID:

使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS

上图中可见,以mmcblk开头的是TF卡分区,标有sdaX字样的才是外置NTFS盘,也可以用fdisk -l命令辅助发现硬盘列表。图中A2F2B4DDF2B4B6BF这个就是/dev/sda2对应的UUID,记录下来。

2.编辑/etc/fstab文件:

注意,这个文件要正确修改其内容,否则会开不了机。我的挂载点是/home/ubuntu/data(可自己定义),于是我先创建个data目录:

cd /home/ubuntu
mkdir data

运行命令nano /etc/fstab编辑文件,在文件最后一行添加挂载分区:

UUID=这里是刚刚查询出来的UUID 要挂载到的目录 ntfsdefaults 0 0

我的示例:

UUID=A2F2B4DDF2B4B6BF /home/ubuntu/data ntfs defaults 0 0

注意有空格,可以用TAB键生成。

UUID是刚刚查询并记录下来的;

/home/ubuntu/data表示挂载点;

ntfs表示格式,小写;

0 0表示开机不检查磁盘。

3.reboot重启后,就发现ntfs外置硬盘已经自动挂载了,可运行命令df -h查看挂载情况。

使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS

4.接下来的步骤是为了设置一个无密码访问的SAMBA网络邻居文件夹,主要参考CSDN博客

Ubuntu下SAMBA服务的安装比较简单,是使用apt install samba命令。主要配置文件smb.conf的编辑,权限和密码的配置,以及samba服务的启动、自启动及重启,上述CSDN博客链接已经说的很清楚了,这里不再搬运了。

四、安装及设置transmission-daemon下载精灵

安装命令很简单,apt install transmission-daemon即可。

安装好后,还不能直接运行下载精灵,需要运行nano ~/.config/transmission-daemon/settings.json命令,编辑设置文件。

要说的是,nano程序非常好用,屏幕下方有菜单提示,不必记忆繁杂的参数。一般来说,settings.json中只需设置以下几个地方:

1.p2p下载端口号,为了较佳的下载速度,稍后记得设置路由器端口映射

2.下载文件的保存路径,设为之前映射到的/home/ubuntu/data即可

3.将rpc-whitelist-enable设置为false

4.将rpc-password和rpc-username修改为自己的用户名和密码

如果有更多需求,可以自行到网上搜索相关内容。

五、启动transmission-daemon后台服务,开始下载

在root用户身份下使用下述命令运行及停止精灵:

$ transmission-daemon

$ killall transmission-daemon

transmission-daemon运行以后,远程电脑在浏览器中输入http://ip:9091(ip为安装transmission机器的ip地址,9091是默认的transmission-daemon下载精灵的web服务端口,如果在setting.json中修改过,以实际设置为准),就可以见到熟悉的管理界面,开始愉快地下载吧!

(预告:下期介绍如何使用树莓派4B+Manjaro发行版本搭建NAS,敬请关注)


展开 收起
38评论

  • 精彩
  • 最新
  • 曾经我也想过,后来觉得这点钱我直接星际蜗牛不好么

    校验提示文案

    提交
    对,NAS的方案千千万,本文的意思绝不是只推荐树莓派。

    校验提示文案

    提交
    对,NAS方案有千千万,千万别单恋树莓派,本文也不是这个意思。

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 如果我买回来主要目的是搭个人博客4b 2G的够嘛

    校验提示文案

    提交
    我认为够了。

    校验提示文案

    提交
    收起所有回复
  • 作者补充几点:
    1.树莓派的优势在于延展性及各种可能性,感兴趣的不妨去看看知 乎,也特别适合孩子们拿来学习Linux和Python;
    2.实际使用中,台式机通过AX200访问树莓派NAS上的蓝光原盘,potplayer播放流畅,毫无带宽压力;
    3.树莓派的优势不在于价格低廉;阿文菌虽然总自称垃圾佬,但人家也有大量高端设备包括原厂NAS;不要把自己想象成锤子,然后看啥都像钉子。大家玩法各有不同,老用垃圾佬的眼光去看树莓派当然没甚优势了。作为作者,不喜欢看到这些不尊重他人劳动的酸溜溜评论。

    校验提示文案

    提交
    支持一下,大佬说得对。

    校验提示文案

    提交
    收起所有回复
  • 看见上面的一排小针针了吗?如果你不知道是什么,就去买N1吧。

    校验提示文案

    提交
  • 希望树莓派将来出个集成emmc或者UFS的版本。tf卡太丧了。 [喜极而泣]

    校验提示文案

    提交
  • 正巧,现在也是在用树莓派干这个事的。不过用的是qBittorrent和nfs实现的。

    校验提示文案

    提交
  • 我就是树莓派4做的NAS,2G低配350元,8G高配650元。我买的高配方便后期拓展功能,实际上2G版本350元够用。千兆带宽完全可以跑满,最关键待机功率不到5w,花了120买了个UPS,定期ping网关断电自动关机。

    校验提示文案

    提交
    待机3w+静音+不折腾硬件+外挂WDElement大容量硬盘+UPS,感觉很好以后树莓派升级2.5GE口再升级换代。忘记说我之前也是树莓派3 NAS的用户,当时也花了300块运行了3年也没什么问题,主要在公网中使用以前100Mbps也够用,手痒换的4。

    校验提示文案

    提交
    其实树莓派玩法很多,我装了Ubuntu图形界面,然后远程桌面上去,还挺好玩的。

    校验提示文案

    提交
    收起所有回复
  • 这个月的免费币没了,手动点赞

    校验提示文案

    提交
  • 我用过树莓派和其他各种开发板,树莓3和以前的网卡都是挂接在usb上,速度慢情有可原,一些国产的soc开发板,网口千兆但是usb2.0,或者有3.0和千兆,价格又受不了,树莓4价格也不便宜,做个小nas有点浪费的说,mt7621的板子很多也能刷nas玩,千兆加3.0也有,学习难度较高。。。

    校验提示文案

    提交
  • 最喜欢树莓派的低功耗+gpio,使它可以在计算机科学与自动化技术之间左右横跳,插上一块锂电池能够跑好久,似乎最新款有一点偏离它的初衷了,开始在性能上有所追求。

    校验提示文案

    提交
    [皱眉] 想干掉Windows了

    校验提示文案

    提交
    收起所有回复
  • 草莓派4B基础套装都260了,大全套要600多,这搞NAS真的没可玩性 [皱眉]

    校验提示文案

    提交
    Linux+GPIO你告诉我没有可玩性?你怕是曲解了玩吧!随便举个例子,samba定制开发+自研管理界面都不够你玩?

    校验提示文案

    提交
    收起所有回复
  • 玩玩可以,但是成本和易用性不如J1900

    校验提示文案

    提交
    确实j1900组低成本nas最合适了

    校验提示文案

    提交
    j1900就一个sata咋解决多块硬盘的?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • i3 1/10 的性能。确实nb,我有。

    校验提示文案

    提交
  • 价格并不适合垃圾佬玩

    校验提示文案

    提交
  • 为什么不装omv?

    校验提示文案

    提交
  • 论图形性能,还是raspbian做的最好,而且现在raspbian也有了64bit的版本。

    校验提示文案

    提交
    那个只是beta版,还不成熟

    校验提示文案

    提交
    我已经用上了,感觉疗效还不错。至少在2K屏幕上比majaro要流畅多了,看B站也勉强能开弹幕了。

    校验提示文案

    提交
    收起所有回复
  • 树莓派就是我的游戏机,xbox
    手柄

    校验提示文案

    提交
  • 我看有个外国人用固态硬盘接usb启动,这样是不是更快一点?

    校验提示文案

    提交
  • 树莓派的优势在于针脚可以实现众多交互
    ,游戏机和nas个人觉得还是之前淘汰的硬件或者***佬设备更合适,性能比树莓好,价格还比他便宜不少,就是收纳没有树莓方便,总体不推荐树莓派

    校验提示文案

    提交
  • 某鱼的J1900不够香吗

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
405
扫一下,分享更方便,购买更轻松