SHESHUI.ME

捣腾Openmediavault:经济高效的NAS解决方案

/

背景

捣腾一套网络存储即方便家庭媒体共享,也适应小工作室协同办公,这事不定期地琢磨有好几年了。

最开始了解了主流的网络存储方案,市面供应商包括群晖、威联通,也是自己之前关注过最多的两项,两者之中更偏向威联通,从软件界面来看更简单清爽。

而今,最终决定还是自己利用现有的闲置电脑已经购买的 世特力 硬盘盒来搭建,从经济上会节约很多,虽然 世特力 硬盘盒也不便宜,但相对于群晖、威联通等4~ 5盘位动则三四千的价位来说已经很经济了。

方案

硬件

网络上提供的安装硬件大致两类,一是现有操作系统搭载虚拟机;二是捣腾官网提供树莓派的玩家;个人查阅资料感觉还是采用闲置的独立电脑主机搭建,配置如下:

  • 机型:戴尔(DELL)Vostro 270S-R136-JN 台式电脑(双核i3-3220 2G 500G DVD WIFI USB3.0)
  • 处理器:Intel® Core™ i3-3220 CPU @ 3.30GHz 3.30 GHz
  • 内存:6.00 GB(5.88 GB usable)
  • 硬盘:WDC WD5000AAKX-75U67AA0 (500 GB)

该机器2013年4月14日购入,当时售价:¥3349.00

关于方案的选择性思考包括硬件、软件两方面,其中软件在最开始已经基本确定是 Openmediavault,而硬件方面出于需支持 磁盘阵列的部署,则经历了多次心路历程:

1、通过2013年 Dell 台式机+ 世特力 硬盘盒来实现,但发现硬盘盒仅提供USB连接,外置连接方式可靠性不高;

2、通过2002年的一台 Acer 台式机(大学时期购买的二手机)来实现,优点:机箱大盘位多;缺点:主板老,BIOS不支持USB引导启动, 功耗高且不静音;

3、继续采用2013年 Dell 台式机完成,缺点:机箱太小缺少硬盘位,不具备扩展空间。琢磨后发现可以通过插入U盘作为系统盘,经过测试发现U盘读写速度很喳,试着安装几次系统后发现不管速度慢,且容易出错,稳定性极差。最终放弃,改用一块120G容量的2.5寸移动硬盘作为系统盘顺利安装,因为盘面体积较小顺便在机箱找个位置固定即可。

最终方案,120G 2.5寸机械硬盘(系统盘) 、480G SSD、两块 3Tb 3.5寸机械硬盘作镜像存储(RAID 1模式),其中受机箱位影响,需要将现有的光驱位腾出来改作硬盘位,网上有改装工具:“光驱位转硬盘位”工具)

分区方案

ZFS:基于成熟的Oracle技术,拥有最多的特性,集成RAID技术,应该是首选的方案。虽然因为协议问题没有在Debian的主库中,但是仍然可以使用。
LVM2 + Linux RAID:基于Linux维护的软件与库,使用最多的方式。
MergerFS + SnapRAID:构建于底层分区体系上的方案,没有实际使用。
最初通过在OMV上安装ZFS插件,尝试使用ZFS,但是OMV对ZFS支持不佳,应该是设计缺陷,无法在ZFS分区上创建共享目录(Shared Folders),导致无法在GUI上方便使用,于是无奈弃用。。。
关于MergerFS + SnapRAID方案,因为是较新的方案,还未调研功能性与稳定性,不做评论。
最后的选择是使用最常见的LVM2 + Linux软RAID。

以上来源: via: mosrv.com/nas/2018/05/01/nas-build-and-config.html

软件

软件方面,最开始知道的是 FreeNAS ,后来发现 Openmediavault 才是最佳选择,原因参考网络的资料:

Synology DSM

1、相对臃肿,不够简洁;
2、每块磁盘上都会安装 DSM,包括存储安装的软件及其数据,导致用户存储和操作系统耦合,尤其是频繁的读写影响每块硬盘的休眠功能;
3、DIY 设备安装运行涉及版权,无法稳定升级版本;

FreeNAS

对硬件要求比较高,尤其是内存最低要求 8G,其未来的目标用户应该主要是企业。

openmediavault

基于 Debian Linux,开源免费。openmediavault 的目标就是面向家庭和小型办公环境,是对熟悉 Linux 又追求最小化安装的人的首选。

注: 更多软件解决方案可参考 几个常见的 NAS 系统整理及选择

安装 OpenMdediaAvault

文件系统及挂载信息

root@nas:/dev# df -h

安装 omv-extras

在安装完OpenMediaVault 系统后,基本上完成了第一阶段的基础性功能服务,正常使用NAS问题已经不大。不过如果要根据自己的其他定制化需求,则可以考虑继续安装一些容器或插件。

通过网上了解,最基本的容器就是Docker,也是最常用的。安装Docker之前需要安装 omv-extras,命令如下:

wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash

ref: https://github.com/OpenMediaVault-Plugin-Developers/installScript

注: 如果显示什么 443 failed: Connection refused. 就是网络源被墙了,该死的CCP!

方法总比问题多, 习惯采用Google 英文搜索有好处! 此时当采用线上命令无法读取源安装时,只能下载 deb 文件包通过web 插件管理界面上传后安装。 下载文件参考:forum.openmediavault.org/index.php?thread/5549-omv-extras-org-plugin/

安装 Docker

完成插件 omv-extras 的安装是具备安装Docker的基础,而Docker容器又是作为安装流行的云应用 NextCloud 的基础,真是环环相扣啊…

Docker 的安装相对简单,在安装完 omv-extras 后,通过左侧管理菜单 OMV-Extras 进入切换到 Docker 标签页直接安装即可。Portainer 作为一套轻量化的Docker 可视化工具也可以一并安装。

安装完成之后可通过 yourdomain.com:9000 进入,比如: nas.sheshui.me:9000。初次登录需要设定管理密码,UID默认为admin。

安装 NextCloud

经了解有人反馈 NextCloud 吃资源等各种不是(参考 淘汰Nextcloud,一行命令搭建功能强大的个人网盘FileRun FileRun

如需坚持安装 NextCloud 可参考文章 OMV安装NextCloud

安装 FileRun

在OMV上还是需要依赖 Docker 容器安装方式,参考教程 FileRun installation using Docker

1、拉取 FilesRun 镜像文件

docker pull afian/filerun

2、创建配置文件

version: '2'

services:
  db:
    image: mariadb:10.1
    environment:
      MYSQL_ROOT_PASSWORD: filerun
      MYSQL_USER: filerun
      MYSQL_PASSWORD: filerun
      MYSQL_DATABASE: filerun
    volumes:
      - /filerun/db:/var/lib/mysql

  web:
    image: afian/filerun
    environment:
      FR_DB_HOST: db
      FR_DB_PORT: 3306
      FR_DB_NAME: filerun
      FR_DB_USER: filerun
      FR_DB_PASS: filerun
      APACHE_RUN_USER: www-data
      APACHE_RUN_USER_ID: 33
      APACHE_RUN_GROUP: www-data
      APACHE_RUN_GROUP_ID: 33
    depends_on:
      - db
    links:
      - db:db
    ports:
      - "3000:80"
    volumes:
      - /filerun/html:/var/www/html
      - /filerun/user-files:/user-files

上述配置模板参考 docs.filerun.com/docker ,将使网站目录映射为/filerun/html,用户目录为/filerun/user-files,端口映射配置80:80,前为对外端口,后为容器端口。*此处要注意因对外80端口已在OMV web服务中占用,所以需自定义修改端口,如: - "3000:80" * 否则会因端口冲突出错。

3、创建文件目录

mkdir /filerun /filerun/html /filerun/user-files

4、运行

docker-compose up -d

运行过程中还会下载安装一些library,成功后会展示如下信息:

Creating root_db_1 ... done
Recreating root_web_1 ... done

通过web访问进入 htttp://yourdomain-localhost:3000, 默认登录:Username: superuser ; Password: superuser,首次登录后强制要求修改密码。

系统安装

Openmediavault 对硬件要求较低,官网给出的信息如下:

  • CPU: Any x86-64 or ARM compatible processor
  • RAM: 1 GiB capacity
  • HDD:
    • System Drive: min. 4 GiB capacity (but more than the capacity of the RAM)
    • Data Drive: capacity according to your needs

安装个人认为分两个阶段,一个是初始化安装可以通过web登录管理界面的阶段;第二个则是在此基础上安装各中容器插件或应用服务。

登录

登录分两种,一类是Web管理界面,默认登录信息如下:

UID:admin
PWD:openmediavault

前提:已连接网线并配置IP后(WIFI不太好使,需连网线),通过浏览器登录查看。

查看IP的命令 ip addr,如果提示该命令不存在等情况,可试着先更新包:

apt-get update
apt-get upgrade

另一类是通过 Shell控制台 :UID:root ;PWD:「安装时设置的密码」

安装或配置过程中如遇到问题,可通过命令 omv-firstaid 救急,这是一套配置菜单,可清晰的指引完成网络等配置信息。

原则

准确说几年前就有想法要整一套网络存储,适应家庭共享媒体或小工作室协作办公使用,在查阅了网络冠哟OMV的各种资料后确定以下搭建建议或原则:

  1. 尽可能不采用虚拟机的方式,作为独立的服务应该享有独立的硬件资源;
  2. 不采用树莓派的搭建方式,虽然官方有提供,但个人认为这属于玩家们捣腾的世界;

索引

OpenMediaVault 常用命令

OpenMediaVault 是基于 Debian 开发,所以熟悉 Linux 操作的前提下会很轻松。

omv-fistaid : 安装配置菜单引导;

ip addr : 查看本机IP信息;

dpkg -l | grep openmediavault :检查当前系统版本

参考资料

常见问题

—— Updated 2020-06-01 15:36 ——

评论列表

  • 文章不错非常喜欢

    新闻头条2021-02-13

  • WOW!!! awesome information you share here..
    keep make this usefull article, i will tell all my friends to come to your blog
    Website : http://kontenlucu.com

    pornstar*2021-03-23

非本文主题相关的留言请到:留言本

给我留言 Say something...

* 先[预览],后[提交]。

insert_comment