前言
因为exfat是微软的专利格式,商业应用要交版权费用,所以群晖DSM系统都不支持exfat文件格式的读写。随着存储卡的越做越大,而一般大容量又有的时候在macOS系统和PC端都要用,那么往往都是用exfat格式保存的。这个时候要用NAS来直接备份存储卡,这就行不通了,必须先导入电脑,然后再通过电脑传到NAS上面,但是如果你的局域网路由器不是千兆级别的,那么传输速度基本就停留在了10M/s的速度,动辄几十上百G的文件,这得传到什么时候,所以必须得直接插在NAS上进行传输。
在DSM 6.0版本以后,群晖官方的确提供了一个新的exFAT access加值套件,可以支持exfat格式的读写。不但要花$3.99美金单独购买,而且只限在一台NAS上使用。不同的NAS或者重新安装系统以后,就不能用了。
但是群晖本身就是一个Linux系统,Ubuntu可以支持exfat格式,原理应该类似。借用Ubuntu的deb安装包exfat-fuse是可以实现的。网上有网友在DSM 5.0系统DSM 6.0系统上都能实现。以下为方法。
免责声明
这个方法并不是官方提供的,需要使用到一些简单的Linux命令,不熟悉的话,存在有一定风险。所以,请谨慎尝试,风险自担!
安装步骤
1.启动SSH功能
开启群晖的ssh的功能
2.先用管理员账户登陆ssh
然后 切换root权限
sudo -i
然后输入管理员账号密码,就可以切换为root权限
3.下载对应的exfat-fuse
由于DSM 5.0是32bit操作系统,而DSM 6.0是64bit,它们需要的安装包是不一样的,下面分开说明。
- DSM 5.0安装方法:
wget -P /tmp/ http://mirrors.kernel.org/ubuntu/pool/universe/f/fuse-exfat/exfat-fuse_1.2.3-1_i386.deb
dpkg -x /tmp/exfat-fuse_1.2.3-1_i386.deb /tmp/exfat-fuse/
cp /tmp/exfat-fuse/sbin/mount.exfat-fuse /usr/bin/
- DSM 6.0安装方法
wget -P /tmp/ http://mirrors.kernel.org/ubuntu/pool/universe/f/fuse-exfat/exfat-fuse_1.2.3-1_amd64.deb
dpkg -x /tmp/exfat-fuse_1.2.3-1_amd64.deb /tmp/exfat-fuse/
cp /tmp/exfat-fuse/sbin/mount.exfat-fuse /usr/bin/
4.建立共享文件夹
浏览器登陆NAS界面,创建一个共享文件夹,列如:usbexfat
5.查看磁盘信息
插入exfat格式的U盘或者读卡器,然后回到ssh,查看磁盘信息
fdisk -l
DSM 5.0下面的信息:
Device Boot Start End Sectors Size Id Type
/dev/sdu1 256 7823654 7823399 3.7G 7 HPFS/NTFS
DSM 6.0下面的信息:
Device Boot Start End Sectors Size Id Type
/dev/sdu1 256 7823654 7823399 3.7G 7 HPFS/NTFS/exFAT
不同的用户的设备名可能不同,以实际的为准。
6.挂载插入的U盘或移动硬盘到新建的共享目录下/volume1/usbexfat
群辉NAS的共享文件默认存咋/volume1下
mount.exfat-fuse /dev/sdu1 /volume1/usbexfat -o nonempty
7.成功访问复制文件
不出问题的话,现在通过共享文件夹usbexfat,愉快的访问内容。通过命令行实现U盘和NAS之间的文件传输。
可以使用cp或rsync 命令复制文件
- cp命令复制文件
cp -rn /path/to/source/file /path/to/destination/
- 参数解释:
- -r:递归复制。当源路径是一个目录时,-r 选项会让 cp 命令递归地复制该目录下的所有文件和子目录,也就是会复制整个目录树,包括子目录中的所有内容。
- -n:不覆盖已存在的文件。当目标路径中已经存在与源文件同名的文件时,-n 选项会使 cp 命令跳过这些已存在的文件,不会对其进行覆盖操作。
- rsync命令复制文件
rsync -avz --progress --update /path/to/source/file /path/to/destination/
- 参数解释:
- -a:归档模式,它是一个组合选项,相当于同时使用了 -rlptgoD,能确保递归复制目录、保留符号链接、文件权限、时间戳等重要信息。
- -v:详细模式,输出更详细的操作信息。
- -z:在传输过程中对文件进行压缩,减少网络传输的数据量。
- –progress:显示复制进度。
- –update:仅在源文件比目标文件新,或者目标文件不存在时才进行复制。
8.文件处理
搞这么久可不止是为了让文件能在NAS系统中可以显现,虽然你现在已经可以直接在NAS的usbexfat文件夹中查看你的移动设备的内容,但是亲测,当你直接拷贝文件到其他NAS文件夹的时候,比远程拷贝更慢,我感觉可能是因为一边从nas拷贝到你的电脑主机,再从电脑主机拷贝到你的NAS,这个操作实在是太骚了,得不偿失。于是我尝试了直接用Linux系统的命令行就行拷贝操作,证明用命令行的操作会快非常多,虽然不能直接看到拷贝速度,但是亲测50G的文件夹也就几分钟的事。
9.用完后,可以手工卸载exfat分区:
umount /volume1/usbexfat
10.弹出设备
eject -F /dev/sdu1
优点
完全免费!省去了购买$3.99美金的加值套件——虽然折合20多元并不是很贵,能省一点是一点。
DSM 5.0和6.0都支持,不分黑群白群,而且安装数量的限制——自己任性安装,想装几台就装几台。
缺点
读取exfat格式支持度较好,但不建议写入!
写入后,再插到电脑上用,会提示卡有错误,需要扫描一次来修复。
使用exfat主要是备份存储卡的数据,所以尽量不要在NAS里面写入数据。
需要手工挂载和卸载exfat分区,略显麻烦,不过这个也是有解决办法的。