Firefly开源社区

打印 上一主题 下一主题

如何使您的USB读写速度有质的飞越

如何使您的USB读写速度有质的飞越

发表于 2015-6-3 15:08:41      浏览:9828 | 回复:3        打印      只看该作者   [复制链接] 楼主
本帖最后由 总有刁民想害朕 于 2015-6-3 15:26 编辑

标题党....
其实就是说下怎么提高NTFS格式的写速度。

想知道怎么测试读写速度的,这里有教程:
http://developer.t-firefly.com/thread-1021-1-1.html

很多人应该都知道,现在Openwrt是采用ntfs-3g挂载 ntfs格式的u盘的。但是ntfs-3g的写速度实在不怎样,恩山上很多大神(swigger大神),在华硕的一个固件里面抠出一个驱动 具体怎么做可以看这个帖子:
http://www.right.com.cn/forum/thread-164826-1-1.html

但是,那个驱动是针对3.14内核的,firewrt出来得晚,最少都3.18内核了。


我也不是专业的内核工程师,如果官方不支持,我也不想去折腾。可是最近在看firewrt的u盘挂载脚本的时候,发现firewrt早就支持ufsd了。
大概在 /etc/hotplug.d/block/30-mount 377行的样子:
elif [ "$isntfs" -a "$isfuse" -a "$isntfs3g" ]; then                                  mkdir -p /mnt/$device                                             

        if [ "$isufsd" ]; then                                       
                chkntfs -f /dev/$device            
                mount_ret=$(mount -t ufsd /dev/$device /mnt/$device 2>&1)
                mount_ret_erro=`echo $mount_ret | grep Failed`           
        else                                                            
                mount_ret_erro="not support ufsd"                        
        fi                                                               
        if [ ! -z "$mount_ret_erro" ];then                              
                mount_ret=$(ntfs-3g -o noatime,big_writes,async,nls=utf8 /dev/$device /mnt/$device 2>&1)
                #echo "mount_ret ntfs = "$mount_ret                                                     
                mount_ret_erro=`echo $mount_ret | grep Failed`                                          
        fi


可以看到如果当前固件支持ufsd的话,将会优先采用 ufsd挂载。如果没有,则采用 ntfs-3g挂载。


于是找呀找,在firewrt的软件源里面发现了这个驱动。kmod-fs-ufsd_3.18.11+2015-05-16-1_ramips_1004kc.ipk 。尝试安装看看咯~


这里想问一下,为什么都是 3.18.11内核,但是使用opkg install kmod-fs-ufsd的时候就会提示这个错误???
Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for kmod-fs-ufsd:
*         kernel (= 3.18.11-1-90eeb1cec790a2b3422486f718006702) *
* opkg_install_cmd: Cannot install package kmod-fs-ufsd.

再尝试一下加--force-depends参数,安装成功。

对比一下读写速度吧。是用一个USB3.0的移动硬盘测试的。
用ntfs-3g测试的话:
读 time dd if=/dev/zero of=/mnt/sda1/testfile bs=1M count=1024  大概75M/s
写 time dd if=/mnt/sda1/testfile of=/dev/null                   大概12.2M/s
用 ufsd测试的话:
读 time dd if=/dev/zero of=/mnt/sda1/testfile bs=1M count=1024  大概73.6M/s
写  time dd if=/mnt/sda1/testfile of=/dev/null                  大概76M/s


这是经过很多次测试的数据了,用ufsd确实能有质的飞越。只是不明白为什么firewrt不内置进去。也没开放代码。
另外,这个ipk其实用在最新的trunk代码上也是可以的啦,最新是3.18.14
kmod-fs-ufsd_3.18.11 2015-05-16-1_ramips_1004kc.ipk (183.85 KB, 下载次数: 28)


回复

使用道具 举报

发表于 2015-6-3 16:20:21        只看该作者  沙发
支持原创!
暴走的创客!
回复

使用道具 举报

98

积分

9

威望

6

贡献

注册会员

Rank: 8Rank: 8

积分
98
发表于 2015-6-3 17:47:25        只看该作者  板凳
ufsd好东西啊
回复

使用道具 举报

10

积分

0

威望

0

贡献

游客

积分
10
发表于 2015-6-8 15:06:28        只看该作者  地板
果然有很大提升。
但是,怎么还显示是华硕的呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表