来吧!用OpenMediaVault把龙芯3A2000C做成NAS吧!

前段时间我的视频让很多朋友关心起了36元包邮的龙芯3A2000C,看完后就问我能否把它做成NAS。因为我自己已经有了两套远程同步互相容灾的NAS,所以一开始我就没有去研究这个话题。但问的朋友越来越多,在元旦的时候,我就抽时间看了下。

龙芯3A2000C是MIPS64架构,大部分NAS软件都没有针对这一架构的版本。我找了我最熟悉的OpenMediaVault,研究了下它的源代码,发现只要付出小小的努力,重新移植编译部分组件,就能把它迁移到MIPS64平台上。于是花了点时间,我就弄了一个版本出来,然后找了几位群友测试了一周,暂时发现了一些小Bug,并修复了。好吧,既然很多朋友要,我就做了一个镜像版本,便于大家安装,给大家下载用用看吧。

2024/1/20 更新:下载的镜像已经更新为 alpha3 版本,更换了新编译的支持风扇降速的内核,可以做静音NAS了。已经安装系统的朋友可以去《支持主板风扇调速的龙芯3A2000C LINUX 5.10内核》下载内核包安装并更新系统启动文件 /boot/grub.cfg 使用新内核启动即可。

下载地址:

在此强调下,NAS不是备份,重要数据请做好备份!!!Debian Linux 以及 OpenMediaVault均为开源软件,基于GNU GPL v3许可证,且针对龙芯3A2000C平台的编译也为测试性编译。本人及任何相关方均不会对此系统的稳定运行及数据安全做出任何承诺。使用本系统出现的任何问题以及问题带来的相关衍生后果均与本人及相关方无关。请对重要数据做好备份

以下是这个镜像的安装说明,请认真阅读后严格按照说明安装。

OpenMediaVault 龙芯MIPS64版安装说明

系统需求

  • 适用机型: 在龙芯3A2000C测试通过,其他MIPS64架构机型可以尝试
  • 内存要求: 大于等于2G
  • 磁盘要求: 系统安装需要5G磁盘空间,第一个硬盘需要大于5G,用以安装系统
  • 网络要求: 建议使用千兆以太网,无需互联网环境
  • 电源要求: 根据硬盘数量不同,龙芯3A2000C的板U套装带一个硬盘的功率大越在40W左右

版本说明

  • 操作系统: 基于Debian 11,使用 trixie/sid 源
  • 内核版本: 预安装5.10.205-geeklogic (已增加对主板EC、风扇的支持)
  • 软件版本: OpenMediaVault 7.0-22 (sandworm)

预设信息

操作系统用户密码

镜像中的操作系统用户密码如下

用户名 角色 密码
root 系统管理员 geeklogic
omv 操作员 openmediavault

为了系统安全起见,请不要使用root用户,日常操作都可以使用omv用户通过sudo命令进行。

Web管理界面用户密码

打开OpenMediaVault的Web管理界面后,默认的管理用户名和密码如下:

用户名 角色 密码
admin 系统管理员 openmediavault

系统默认网络配置

镜像中默认的网络配置如下:

设备名 IP 子网掩码 网关 DNS
enp3s0 192.168.1.99 255.255.255.0 192.168.1.1 192.168.1.1, 8.8.8.8

如需修改,可以登录Web管理界面后,在网络>接口>编辑中进行修改。

系统所使用的文件系统

镜像中的系统包含两个必须的文件系统,如下表所示:

文件系统 挂载点 文件系统格式 大小 作用
/dev/sda1 /boot ext4 400M 启动分区
/dev/sda2 / ext4 4G 操作系统及OMV软件

在操作系统和Web管理界面中,请不要对这两个文件系统进行任何的操作和变更。

系统安装方法

镜像下载

从给定的网盘地址下载当前版本的镜像文件。镜像文件为7z压缩版,需要安装7z软件解压。

镜像写入

  1. 准备一块大于5G的硬盘,通过USB或者SATA连接日常操作的电脑;
  2. 电脑上将镜像文件写入该磁盘,推荐使用Linux环境:
    • 如果电脑是Linux环境或运行Linux虚拟机,可以使用dd命令写入。一定要确认目标硬盘,写错硬盘会导致您当前系统损坏或文件丢失。假设这块磁盘的设备名为/dev/sdx
    dd if=omv.alpha1.img of=/dev/sdx bs=16M
    
    完成后可以使用lsblk命令确认镜像中的两个分区被顺利写入
    lsblk /dev/sdx
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    sdx      8:16   0   59G  0 disk 
    ├─sdx1   8:17   0  400M  0 part 
    └─sdx2   8:18   0    4G  0 part
    
    • 如果在Windows操作系统下,可以使用Win32DiskImager软件写入镜像文件,注意Windows下的工具只支持通过USB连接硬盘。请一定要确认目标硬盘,写错硬盘可能会导致您当前系统损坏或数据丢失。请不要使用例如rufus、DiskGenius等其他软件写入镜像,这些软件写入的系统可能无效,无法正常使用。

安装硬盘

  • 将刚才写好的硬盘从工作电脑上拆下,安装到龙芯3A2000C主板的第一个SATA口(远离电源插口,靠近蜂鸣器的那个);
  • 先不要安装其它硬盘。

初始化系统

  • 根据你的网络环境,接好网线。如果IP没有冲突,可以直接接入网络;如果网段不一致或IP有冲突,建议和工作电脑直连。
  • 开机,等待启动完毕。
  • 在工作电脑上用ssh客户端以omv用户登录。用户名密码请参考前文,IP地址为192.168.1.99:
    ssh omv@192.168.1.99
    
  • 登录后执行如下命令,将硬盘的剩余空间初始化:
    sudo gen_new_part
    
    执行后需要输入omv用户的密码,请参考前文。
  • 执行完成后,可以用lsblk命令确认下是否生成了/dev/sda3文件系统。
  • 如果仅安装这一块硬盘,初始化工作完成,可以开始使用;
  • 如果要安装其他硬盘,使用sudo shutdown -h now命令关闭机器,将其余硬盘安装上后开机,初始化完成。

OMV操作

在浏览器输入服务器的IP地址(默认192.168.1.99)就可以打开OMV的管理界面,输入默认的用户名和密码(见前文)就可以登录。

OpenMediaVault的操作可以参考官方手册。不再赘述。 简单说下基本的操作:

  • IP地址可以在网络>接口>编辑中进行修改

  • 刚才扩展的/dev/sda3空间(硬盘装完系统的剩余空间),需要在存储器>文件系统界面点击列表左上角的播放箭头图标进行挂载后才可以使用

  • 基本的操作流程如下

    • 对于新安装的硬盘在存储器>磁盘界面点击列表上方的橡皮擦图标进行初始化(千万不要对系统盘或有数据的盘进行此操作)
    • 如需要做LVM或者软RAID,可在存储器分类下的LVM多重装置中进行设置,如不需要,可不设置。请注意软RAID可能会降低性能。
    • 接着在存储器>文件系统中在列表上方点选加号图标创建文件系统,一般选择EXT4格式(可以理解为Windows下的格式化硬盘)。
    • 文件系统创建完成后,在存储器>共享文件夹下,点击加号图标创建共享目录。在这一步,如果您不做用户权限管理的话,请记得在权限一栏一定要选择“每个人:读/写”。否则会遇到windows共享没有写入权限的问题。
    • 最后是设置共享方式,可以在服务菜单分类中,通过NFS给Linux或UNIX主机共享,或者SMB/CIFS分享给Windows主机。主要说下分享给Windows主机的设置。
      • 服务>SMB/CIFS>设置中,勾选“已启动”前的选框。
      • 服务>SMB/CIFS>共享中,点击列表上方的加号将刚才设置的共享的文件夹一一加入列表,在这里,如果你不做用户控管的话,建议在“公开”一栏选择“允许访客”。另外建议勾选“存储DOS属性”
      • 保存并应用配置后,在Windows主机可以打开文件管理器,输入类似\\192.168.1.99这样的服务器地址访问共享文件夹,或者将其映射为你的一个网络驱动器。这时如果弹出用户名密码框,如果你不做用户控管,前面把权限放给所有人的话,可以随便输入即可;如果你做了用户控管,则需要输入服务器上存储的用户名和对应密码才可以按自己的权限访问。用户管理可以在Web管理界面的用户菜单分类下完成。
    • 其他共享服务说明:
      • FTP建立简单的FTP服务器;
      • NFSNFS协议在Linux/UNIX系统中共享;
      • Rsync可以通过rsync协议在多台OpenMediaVault服务器或Linux/UNIX主机间实现文件同步,可以用来做容灾(我自己的多台NAS就采用这种方式做容灾的);
      • S3亚马逊的云服务(没用过,我看到了就加进来了);
      • SSH在这里可以管理这台主机的SSH服务及权限;
      • Shairport音频共享服务(没用过);
      • TFTP建立简单的TFTP服务器;
      • USB备份可以定期将重要资料备份到USB设备;
  • 其他的一些操作说明

    • 登录管理界面后一段时间不操作会自动登出,这个时间可以在系统>工作台中设置;
    • 管理账户admin的密码登录后在浏览器右上角的用户图标中点击修改密码进行修改,并非在用户菜单中修改;
    • 建议谨慎进行系统更新,因为针对特定平台编译,更新可能会造成部分功能出问题。

许可证

基于GNU GPL v3发布。

免责说明

Debian Linux 以及 OpenMediaVault均为开源软件,基于GNU GPL v3许可证,且针对龙芯3A2000C平台的编译也为测试性编译。本人及任何相关方均不会对此系统的稳定运行及数据安全做出任何承诺。使用本系统出现的任何问题以及问题带来的相关衍生后果均与本人及相关方无关。请对重要数据做好备份。

重要的事情

NAS不是备份!重要数据请备份!

NAS不是备份!重要数据请备份!

NAS不是备份!重要数据请备份!


希望我移植的OMV对大家有用,能用上仅仅36元的国产NAS主机!有什么问题就留言吧!OMV启动!!!

下载地址:

13 thoughts on “来吧!用OpenMediaVault把龙芯3A2000C做成NAS吧!

    1. 大佬的固件真的不错!!非常感谢。
      现在发现个问题就是挂载 /目录的 sda2空间 剩下的可用空间非常少,刚装好时候大概剩300m出头,用了几天就剩155m。运行的时候能在网页图形界面的系统监控上肉眼可见的看到空间在一点点儿的减少。想问问怎样给这个空间做下扩容呢。或者找到空间减少的原因?

      1. 安装好后先不要使用gen_new_part生成新分区。先用fdisk删除sda2分区,不要保存,然后新建sda2分区输入大小时,输入一个比较大的大小,然后再保存,退出fdisk后,使用resize2fs /dev/sda2扩展文件系统到整个分区;最后再执行gen_new_part使用剩下的空间创建新分区。

  1. Win32DiskImager软件只支持USB连接的硬盘,那我连接机械硬盘的时候是不是要买一个转接线?我是小白一个

    1. 是的,就是刷写系统是在windows下 win32DiskImager只支持USB设备,所以要一个USB转SATA的线。Linux系统没这个限制。

  2. 你好,我打算将这块3a2000 itx主板塞进一个蜗牛星际机箱里,但是这款机箱限高,我不得不将这块主板的原装cpu风扇拆下,请问这样做cpu温度会过高么?期待大佬的答复=w=

  3. 首先感谢大佬的工作。
    但是因为镜像使用静态IP,如果出现IP冲突或者不在同一网段的情况(例如小米路由器默认的网段是192.168.31.0/24),可以通过以下步骤获取正确的IP:

    1. 给物理机连接键盘和显示器(非必须)并登录,root用户或omv用户均可。
    2. 输入`dhclient -v`(不用输入`),如果连接了显示器,则可以看到类似以下内容的输出(不重要的内容用省略号代替):

    DHCPDISCOVER on enp3s0 to 255.255.255.255 port 67 interval 4
    DHCPOFFER of 192.168.50.99 from 192.168.50.1
    DHCPREQUEST for 192.168.50.99 on enp3s0 to 255.255.255.255 port 67
    DHCPACK of 192.168.50.99 from 192.168.50.1
    RTNETLINK answers: File exists
    bound to 192.168.50.99 — renewal in 37811 seconds.
    3. 根据步骤2中的输出,可以得知现在omv新的IP(对于提供的例子,IP是192.168.50.99),此时可以通过这个新IP登录omv后台修改IP。务必修改IP,否则重启后仍需要按照该步骤重新获取一次IP。

    如果没有连接显示器,可以盲打进行操作,先输入用户名,回车后输入密码,回车后输入上述步骤2中的命令,然后前往路由器后台查看IP。

    注意,上述步骤需要路由器开启DHCP功能(一般来说都有)。如果路由器没有开启DHCP/不支持DHCP/上述步骤执行失败,可以通过以下步骤添加一个静态IP(假设已经登录):

    1. 输入`ip addr show`(不用输入`)查看有哪些网络接口。一般来说会有两个,其中名字叫`lo`的不用管他,看另一个即可,例如(不重要的内容用省略号代替):
    1: lo: ……
    2: enp3s0: ……
    2. 输入`ip addr add xxx.xxx.xxx.xxx/24 dev yyy`。其中:`xxx.xxx.xxx.xxx`是你想要绑定的IP地址,注意不要和其它设备冲突;`yyy`是网络接口名,如本例中是`enp3s0`。
    3. 如果一切顺利,那么不会有任何输出,且输入`ip addr show`后可以看到设置的IP,此时可以通过设置的IP登陆后台。务必修改IP,否则重启后仍需要按照该步骤重新设置一次IP。

    如果没有显示器,那就请盲打吧: ) 网络接口名应该固定是enp3s0,不排除有其它情况的可能性。

  4. 昆仑固件的3A4000刷进去好像因为分区格式的原因识别不了,boot提示找不到\initramfs-3.10.84-22.fc21.loongson.7.mips64el.img ,但是在bios更新EC和驱动是可以读文件的。
    还有个思路好像是说这个固件锁麒麟OS

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据