Linuxntfs-3g提高写入速度

Linuxntfs-3g提高写入速度,第1张

ntfs-3g是Linux上默认的/免费的ntfs解决方案,由于其有商业版的存在,对于ntfs文件系统的写入只能在50MB/s作用,这在以前usb2.0或者更早的设备,其实还好。毕竟,没人会在Linux系统真正在ntfs分区上做为主要工作区,99%场景是从usb或者sata口访问ntfs设备。

当usb3.0成为默认标准,这个速度就就明显不够看了。

值得提出的是,ntfs-3g读取速度在150MB/s,至少目前是可接受的。

ntfs-3g有产生之初就存在这个写速度问题,官方给的解释有两个原因:1. 以4K的大小写入。2. 没有开启caching机制

walkaround的方法是挂载参数big_writes, 以更大的数据块写入。

在ntfs-3g的源码了追了一下,初步判断是改变写的策略,将多个io请求合并在一次中,iov的方式。

而且man中说的128k没找到,手动算了一下,似乎比128k大很多。待查证。

可以使用使用NTFS-3G,步骤如下:

正确安装后,我们需要通过ntfs-3g来加载NTFS分区。

1 获得NTFS分区设备名

执行下面的命令

fdisk -l | grep NTFS

结果如下所示:

/dev/sdb1 1 10443838833667 HPFS/NTFS

其中第一个字段/dev/sdb1即为所需要的分区设备名

2 建立装载

mkdir /mnt/ntfs-p1

如果需要,请给予特定的访问权限

chmod 755 /mnt/ntfs-p1

3 临时装载NTFS分区

可以使用下面的命令以读写方式临时装载一个NTFS分区到装载点

mount -t ntfs-3g

其中:

------ NTFS所在分区的设备名,如3.1中的/dev/sdb1

------ 装载点,如3.2中的/mnt/ntfs-p1

例如:

mount -t ntfs-3g /dev/sdb1 /mnt/ntfs-p1

更多的选项及例子请用下面的命令参见mount命令和ntfs-3g的文档

man mount

man ntfs-3g

4 系统启动时装载NTFS分区

编辑/etc/fstab

vi /etc/fstab

在文件最后增加如下格式的行

ntfs-3g defaults 0 0

其中:

------ NTFS所在分区的设备名,如3.1中的/dev/sdb1

------ 装载点,如3.2中的/mnt/ntfs-p1

例如:

/dev/sdb1 /mnt/ntfs-p1 ntfs-3g defaults 0 0

保存文件后重启系统或简单的执行下面的命令,即可装载NTFS分区到指定的装载点

mount -a

Linux NTFS的优点:

1. 兼容性:Linux NTFS可以读取和写入Windows NTFS文件系统,这使得它成为一种可以在Linux和Windows之间共享文件的理想选择。

2. 安全性:Linux NTFS支持文件系统加密,这使得它更安全,可以防止未经授权的访问。

3. 性能:Linux NTFS支持高性能,可以提供更快的文件传输速度。

Linux NTFS的缺点:

1. 不支持热插拔:Linux NTFS不支持热插拔,因此无法在不重新启动系统的情况下添加或移除硬盘。

2. 不支持文件系统压缩:Linux NTFS不支持文件系统压缩,因此无法有效地减少文件系统的大小。

3. 不支持文件系统碎片整理:Linux NTFS不支持文件系统碎片整理,因此无法有效地提高文件系统的性能。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8683529.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存