将ubuntu设置为NAS——14.尝试mergerfs合并多个物理硬

本文介绍了如何在Ubuntu系统中使用mergerfs工具将多个不同格式的物理硬盘合并为一个统一的存储分区,包括mergerfs的功能、安装步骤、配置挂载以及如何添加移动硬盘。通过mergerfs,可以方便地管理和扩展NAS的存储空间,无需担心数据丢失,同时提供了对硬盘的灵活管理。
摘要由CSDN通过智能技术生成

将ubuntu设置为NAS——14.尝试mergerfs合并多个物理硬

前言

之前发文简单介绍了在Ubuntu下的新增硬盘挂载方案,评论区有大佬提到了mergerfs,简单百度了一下,发现是个神器,于是就有了这篇文章。利用这个软件,我实现了多块物理硬盘(可以是不同格式)合并到一个分区文件夹中进行管理,后面又利用此软件实现外接USB3.0的移动硬盘与内部硬盘合并为一个分区文件夹。
1、mergefs介绍

mergerfs是一个联合文件系统,旨在简化众多存储设备中文件的存储和管理。它类似于mhddfs,unionfs和aufs。

如果你想在一个媒体项目中用到了多个磁盘或分区,不想丢失任何现有数据,但又想将所有文件都存放在一个驱动器下,该怎么办?这时,mergerfs 就能派上用场!

从我的感受就是mergerfs+snapraid能实现类似unRAID的硬盘管理方式,我个人不喜欢采用冗余盘来做数据校验保证数据的安全性,一般我是重要数据冷备份方式,或是多处硬盘数据同步,不重要的数据也没有备份的必要。比如重要照片在NAS系统存储,再同步到私人PC电脑上,隔段时间冷备份到移动硬盘。所以我就直接采用mergerfs,不需要snapraid校验保证数据。如果你需要数据校验等功能,需要再安装snapraid校验保证数据。

通过mergerfs,能将多个物理硬盘组成一个分区文件夹,可以是不同格式,比如ext4与ntfs混合为一个分区文件夹,当我需要拆出其中硬盘时,也能保证不破坏硬盘数据,还能在其他电脑里把数据拷贝出来。新买硬盘或是想把现有数据的硬盘加到NAS,还能在不清除数据的情况,不需要格式化为ext4,挂载到同一分区文件夹中利用Ubuntu进行管理,这对管理媒体文件,是很方便的。
2、mergerfs安装

mergerfs 官网,里面安装方法很仔细,还有详细的设置,不过确实看着很复杂。试试安装看吧

方法一:直接安装(本人推荐)

当然最简单的安装方法是

sudo apt install mergerfs

方法二:新建mergefs文件夹,并进入此文件夹

mkdir mergerfs
cd ./mergerfs

下载最新版mergefs,目前这次尝试我用的是我的超级蜗牛,安装了 Ubuntu 20.04,找到合适版本如下,其他系统请下载其他版本(比如 Ubuntu 18.04 用mergerfs_2.32.6.ubuntu-bionic_amd64.deb)

wget https://github.com/trapexit/mergerfs/releases/download/2.32.6/mergerfs_2.32.6.ubuntu-focal_amd64.deb

安装

sudo dpkg -i ../mergerfs_2.32.6.ubuntu-focal_amd64.deb

在这里插入图片描述

图上是2.31.0版本(之前安装截图的),最新是2.32.6图上是2.31.0版本(之前安装截图的),最新是2.32.6
3、mergerfs挂载硬盘

首先查看NAS服务器下的硬盘情况

sudo fdisk -l

在这里插入图片描述

本机硬盘挂载情况本机硬盘挂载情况

目前我的硬盘主要是1块64G固态做系统,2块500G机械硬盘主做存储。

查看硬盘的UUID

sudo blkid

在这里插入图片描述

查看硬盘的UUID查看硬盘的UUID

64G固态硬盘为sda2, UUID=“add73d6a-c780-4922-854e-0007631dc53e” TYPE=“ext4” PARTUUID=“b2b48c97-e412-479d-8b91-56820d093018”

其中一块500G机械硬盘为 sdb1, UUID=“32F057E6F057AF3B” TYPE=“ntfs” PARTUUID=“e80b2b83-01”

另外一块500G机械硬盘为sdc1,UUID=“5E1578FC2B456847” TYPE=“ntfs” PARTLABEL=“Basic data partition” PARTUUID=“6515ebc5-76ee-4c93-a629-431ff7aabdfa”

准备硬盘挂载点,计划挂载载/mnt目录下面

sudo mkdir /mnt/disk{1,2}
sudo mkdir /mnt/all

其中disk1和disk2用于挂载2个机械硬盘,all用来mergerfs合并分区。

编辑fstab将分区信息写到/etc/fstab 文件中让它永久挂载。

sudo nano /etc/fstab

添加如下内容:

# /mnt new harddisk
UUID=32F057E6F057AF3B /mnt/disk1 ntfs defaults
UUID=D61DFC12BB32EDB9 /mnt/disk2 ntfs defaults

# mergerfs storage combine data harddrives into single storage
/mnt/disk* /mnt/all fuse.mergerfs defaults,allow_other,minfreespace=10G,fsname=mergerfs,ignorepponrename=true 0 0

在这里插入图片描述

添加内容添加内容

其中最重要的是mergerfs相关命令

fuse.mergerfs defaults,allow_other,minfreespace=10G,fsname=mergerfs,ignorepponrename=true 0 0

简单介绍一下上述参数的意义。

defaults:开启以下 FUSE 参数以提升性能:atomic_o_trunc, auto_cache, big_writes, default_permissions, splice_move, splice_read, splice_write;

allow_other:允许挂载者以外的用户访问 FUSE。你可能需要编辑 /etc/fuse.conf来允许这一选项;

use_ino:使用 mergerfs 而不是 libfuse 提供的 inode,使硬链接的文件 inode 一致;

minfreespace=10G:选择往哪个下层文件系统写文件时,跳过剩余空间低于 10G 的文件系统;

fsname=mergerfs:设置文件系统的名称为 mergerfs,特可以自定义其他名字如mount,df等 。

ignorepponrename=true:重命名文件时,不再遵守路径保留原则,保持原来的存储路径。

填好上面内容后,ctrl+O保存(输入Y确认),ctrl+X退出。

对磁盘挂载分区进行更新挂载

sudo mount -a

再查看挂载情况

df -TH

再查看挂载情况再查看挂载情况
在这里插入图片描述

已经能看到挂载各个硬盘,以及mergerfs挂载情况,mergerfs容量 = disk1容量 + disk2容量,共计 995 G 。
4、合并移动硬盘

购入移动12T西数硬盘,准备也合并起来,考虑USB3.0传输速度问题也不大,并且对蜗牛的NAS的供电不是太信任,直接接USB3.0,而不是拆出来使用,还是用原来的西数硬盘盒,再将移动硬盘挂载合并使用。

准备硬盘挂载点,还是挂载/mnt目录下面

sudo mkdir /mnt/disk3

查看移动硬盘信息

sudo blkid

在这里插入图片描述

查看移动硬盘信息查看移动硬盘信息

重点记住UUID和TYPE。

编辑fstab将分区信息写到/etc/fstab 文件中让它永久挂载。

sudo nano /etc/fstab

在这里插入图片描述

编辑fstab将分区信息编辑fstab将分区信息

保存退出后,对磁盘挂载分区进行更新挂载

sudo mount -a

如果出现问题,可能是USB已经自动挂载了,再挂载后出现重复挂载的情况,那就重启一下NAS服务器。

fuse: mountpoint is not empty
fuse: if you are sure this is safe, use the 'nonempty' mount option

重启ubuntu服务器后,查看mnt/all容量,已经有12.7T了,挂载成功。
在这里插入图片描述

查看mnt/all容量查看mnt/all容量

局域网测试移动文件

局域网测试移动文件局域网测试移动文件
在这里插入图片描述

基本达到了局域网千兆网速要求,这样的分区设置,基本对硬盘速度没有。后期使用过程,这样的分区设置,部分文件移动还是会有些影响,可以微调mergerfs相关命令,不过目前本文使用的这个默认命令,已经可以满足大部分应用场景需求。如要调整请参照官网说明
总结

通过尝试mergerfs管理磁盘,合并多个物理磁盘为同一挂载文件,方便了文件管理。之前有小伙伴提到mergerfs影响磁盘性能,经过简单测试,并没有这个问题。我理解本软件实现的只是不同物理硬盘的映射方式,对硬盘本身是没有影响的,即不能加速,也不会减速。

参考
mergerfs官网:https://github.com/trapexit/mergerfs

https://forums.serverbuilds.net/t/setting-up-media-server-using-ubuntu-and-snapraid/239/2

WZYBOY'S BLOG
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值