无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 10577|回复: 14
打印 上一主题 下一主题

[分享] 手机弄pxe网络启动速度5-6M/s

[复制链接]
跳转到指定楼层
#
发表于 2014-9-30 01:37:27 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
手机不算好 mt6577的
sd卡是16g的c10卡
在手机上运行arm版本的dnsmasq
dnsmasq.conf配置如下
interface=wlan0
listen-address=0.0.0.0
dhcp-range=192.168.2.0,proxy
enable-tftp
tftp-root=/mnt/sdcard/www/
dhcp-match=ipxe,175
dhcp-option=175,8:1:1
pxe-service=net:#ipxe,x86PC, "welcom to boot from my phone", ipxe.kpxe
然后呢 启动需要的ipxe.kpxe.0 还有pe.iso memdisk 和undi.pxe.0放在/mnt/sdcard/www下面
运行dnsmasq的命令是
killall dnsmasq
./pxe --conf-file=/mnt/sdcard/www/dnsmasq.conf
需要注意的是手机默认有一个dnsmasq的进程
所以呢 我把这个pxe的dnsmasq改名pxe了
然后就是启动apache http server arm版本 这个提供http服务  也可以作为手机共享文件用
命令是./httpd -f /mnt/sdcard/www/httpd.conf
这个没什么好讲的  之所以不用lighthttpd 是因为这货不支持ipxe的sanboot http启动
当然我手机上还有另一个http服务软件 nginx 这个也不错
这里httpd.conf配置没什么好说的  就是把目录设置为/mnt/sdcard/www就好了
然后说下测试的效果
路由器是 wr720n v4  淘宝买75块 自带两个网口 一个usb2.0接口 可以接优盘 usb无线网卡等  无线是150M  测试的时候手机wifi是70M的样子 路由没有开启150M强制 开启后手机连接是135M      刷的是openwrt固件
路由器开启了dhcp 192.168.2.100-199 路由是靠usb无线网卡联网的
所以wifi和有线都是同一个局域网
有线连接我的台式机器 手机无线连接 路由热点
上述的命令是在手机无线连接路由之后进行
测试结果非常满意
dhcp获取ip的速度很快 就是tftp那里慢了一点点 不知道我哪里设置的不到位 还是ipxe的初始化浪费了时间
电脑用浏览器测试 下载手机http服务的pe.iso速度大概是4-5M/s
ipxe启动后执行 initrd http://$IP/pe.iso 后速度大约是5-6M/s
不知道路由强制11n模式后  手机连接达到135M 后http启动加载速度是否可以达到10M/s  发帖前忘了测试了
一个win7的pe的iso文件 大小101M 用命令
sanboot http://192.168.2.162/pe.iso
30秒进入桌面
这个速度相当不错了
用kernel /memdisk initrd /pe.iso的方式就浪费了内存  
当然因为路由可以直接刷openwrt 而且支持usb 2.0
我的优盘 读取可以达到25M/s 写入7M/s 在路由上
所以 用这个路由器插入优盘的方式来pxe启动速度绝对不慢
网上有用wr720n 通过nfs的方式启动完整的ubuntu系统的例子
看来我买这个路由器还是不错的选择
以上配置应该适合所有的无线路由了  哈哈
dhcp开着都没事 给力
当然如果有大神知道 如何进一步优化上面的dnsmasq.conf参数
让tftp的过程更快一点就好了
不过我想tftp慢的原因不是tftp服务的问题
因为以前测试过 这个自带的tftp 加载pe.iso速度也有2M/s呢
求更加给力的针对ipxe的优化参数
另外就是grldr加载ipxe有一定几率死机  原因未知
所以我都是用了几个配置文件
或许我路由开启11n强制模式 手机和路由达到135M的速度后 兴许http方式加载能有10M/s吧
看来这个方式还是很给力的呢?






评分

参与人数 1无忧币 +5 收起 理由
沉默味道12321 + 5 很给力!

查看全部评分

14#
 楼主| 发表于 2014-10-12 18:33:44 | 只看该作者
本帖最后由 510819776 于 2014-10-12 18:42 编辑
jxf268 发表于 2014-10-11 21:02
其实我一直就想问你这事来着,谢谢你给我解惑
tiny-pxe-server新版你没上传吧?老版权限不对


已经上传了
新版把 程序和so的库文件都拷贝到/lib下执行
应该是没问题了
没想到sd卡的文件系统 也会影响到软件
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=342394
回复

使用道具 举报

13#
发表于 2014-10-11 21:02:20 来自手机 | 只看该作者
本帖最后由 jxf268 于 2014-10-11 21:11 编辑
510819776 发表于 2014-10-11 20:36
试试我最新发布的tiny-pxe-server吧
该死 我没想到呀
我的sd卡是hfsx文件系统 不是vfat


其实我一直就想问你这事来着,谢谢你给我解惑
tiny-pxe-server新版你没上传吧?老版权限不对

点评

已经上传了 新版把 程序和so的库文件都拷贝到/lib下执行 应该是没问题了 没想到sd卡的文件系统 也会影响到软件  详情 回复 发表于 2014-10-12 18:33
回复

使用道具 举报

12#
 楼主| 发表于 2014-10-11 20:36:41 | 只看该作者
本帖最后由 510819776 于 2014-10-11 20:38 编辑
jxf268 发表于 2014-10-11 16:16
无奈把.nfs内的文件全部复制到lib文件夹,权限修改成功了,不过……
app_101@android:/ $ su
root@androi ...


试试我最新发布的tiny-pxe-server吧
该死 我没想到呀
我的sd卡是hfsx文件系统 不是vfat
我的sd卡支持权限修改
vfat不支持

点评

其实我一直就想问你这事来着,谢谢你给我解惑  详情 回复 发表于 2014-10-11 21:02
回复

使用道具 举报

11#
 楼主| 发表于 2014-10-11 20:29:54 | 只看该作者
jxf268 发表于 2014-10-11 16:38
进程portmap unfsd不在运行
app_101@android:/ $ su
root@android:/ # ps | grep -i portmap

nfs手机要挂载的话   需要固件支持nfs
如果不支持 如果手机有原生的cm固件 也可以挂载
如果没有 就放弃吧
这个nfs服务的速度快 主要是用于电脑和手机之间
想手机上挂载电脑的共享 而且想要速度
可以试试sshfs curlftpfs 和davfs2
如果是手机与手机的话  就不要用nfs了 也不要用samba
直接用ftp或http共享最好
大部分手机都不支持nfs和samba的内核挂载
samba的挂载可以用软件实现 但是设置也很麻烦 re文件管理器就支持
nfs 这可是高级货   手机固件要支持这个很容易
就看厂家是否坑爹了

小文件用蓝牙
大文件用ftp或http
samba是不推荐的 这货两头都麻烦
  
回复

使用道具 举报

10#
发表于 2014-10-11 16:38:02 来自手机 | 只看该作者
进程portmap unfsd不在运行
app_101@android:/ $ su
root@android:/ # ps | grep -i portmap
1|root@android:/ # ps | grep -i unfsd
app_100   23401 127   274136 34984 ffffffff 4003e5e0 S com.unfsd
root@android:/ # netstat -a | grep -i unfsd
1|root@android:/ #

大神,如果这个开启成功了,别的安卓手机怎么能连上他

点评

nfs手机要挂载的话 需要固件支持nfs 如果不支持 如果手机有原生的cm固件 也可以挂载 如果没有 就放弃吧 这个nfs服务的速度快 主要是用于电脑和手机之间 想手机上挂载电脑的共享 而且想要速度 可以试试sshfs  详情 回复 发表于 2014-10-11 20:29
回复

使用道具 举报

9#
发表于 2014-10-11 16:16:17 来自手机 | 只看该作者
无奈把.nfs内的文件全部复制到lib文件夹,权限修改成功了,不过……
app_101@android:/ $ su
root@android:/ # ls /lib/
exports
ld-linux-armhf.so.3
libc.so.6
portmap
unfsd
root@android:/ # busybox chmod 777 -R /lib
root@android:/ # /lib/portmap
sh: /lib/portmap: No such file or directory
1|root@android:/ # lib/unfsd -e /lib/exports
Cannot register service: RPC: Unable to receive; errno = Connection refused
unable to register (NFS3_PROGRAM, NFS_V3, udp).
还是和5楼那个手动安装的提示一样,试这个前,我已经把5楼复制进system中的文件已经全部删除了。

点评

试试我最新发布的tiny-pxe-server吧  详情 回复 发表于 2014-10-11 20:36
回复

使用道具 举报

8#
发表于 2014-10-11 15:59:25 来自手机 | 只看该作者
app_101@android:/ $ su
root@android:/ # ls /sdcard/.nfs
exports
ld-linux-armhf.so.3
libc.so.6
portmap
unfsd
root@android:/ # mount -o remount,rw
Usage: mount [-r] [-w] [-o options] [-t type] device directory
1|root@android:/ # mkdir /lib
root@android:/ # mount -o bind /sdcard/.nfs /lib
root@android:/ # busybox chmod 777 -R /lib
root@android:/ # /lib/portmap
sh: /lib/portmap: cannot execute - Permission denied
126|root@android:/ # lib/unfsd -e /lib/exports
sh: lib/unfsd: cannot execute - Permission denied
126|root@android:/ #

mount命令没能成功,我就用RE浏览器给他挂载可写了, chmod虽然没有提示,但在RE中查看lib的权限却是0075,Owenr是1000,Group是1015
回复

使用道具 举报

7#
 楼主| 发表于 2014-10-11 13:04:03 | 只看该作者
本帖最后由 510819776 于 2014-10-11 20:31 编辑
jxf268 发表于 2014-10-11 11:06
大神,用这个apk启动服务后,没任何提示,但Win7连不上,命令行提示网络错误-53,启动后 /sdcard/.nfs/expo ...


说的很清楚
我自己用的是nfsclient在xp中连接 一切正常
你手动运行portmap出现这个提示 是因为你没有把lib拷贝到手机根目录/
至于你说的0.0.0.0/0.0.0.0  这里不是指ip  而是表示所有ip的客户端都可以连接
确保你手机  wifi连接正常 安装了busybox 并且root
打开apk后 点击了启动服务
然后你用
adb root
adb shell
连接手机shell
查看ls /lib下面是否有文件
同时使用
ps | grep -i portmap
ps | grep -i unfsd
netstat -a | grep -i unfsd
查看进程portmap unfsd是否在运行 查看端口2049和111是否再使用
另外win7的nfs客户端可能有问题  关于uid和gid的
我xp下用nfsclient没问题
如果你打开程序后点击了开启服务
但是进程portmap和 unfsd没有运行
我表示无能为力
你试试用手动版吧
安装好这个软件后 会自动把程序解压到手机卡.nfs目录
查看.nfs下面有没有portmap unfsd ld-linux-****等文件
然后终端输入
mount -o remount,rw /
mkdir /lib
mount -o bind /sdcard/.nfs /lib
busybox chmod 777 -R /lib
/lib/portmap
lib/unfsd -e /lib/exports
同时反馈那条命令执行失败?》



回复

使用道具 举报

6#
发表于 2014-10-11 11:06:22 来自手机 | 只看该作者
大神,用这个apk启动服务后,没任何提示,但Win7连不上,命令行提示网络错误-53,启动后 /sdcard/.nfs/exports内容为 /mnt/sdcard/ 0.0.0.0/0.0.0.0(insecure,rw,no_root_squash)也就是说IP他没有填入
还有怎么看是否支持armhf ?


楼上那个手动安装版,
运行portmap
提示 sh: <stdin>[69]: portmap: No such file or directory
运行unfsd
提示 Cannot register service: RPC: Unable to receive; errno = Connection refused

点评

说的很清楚 我自己用的是nfsclient在xp中连接 一切正常 你手动运行portmap出现这个提示 是因为你没有把lib拷贝到手机根目录/ 至于你说的0.0.0.0/0.0.0.0 这里不是指ip 而是表示所有ip的客户端都可以连接 确保  详情 回复 发表于 2014-10-11 13:04
回复

使用道具 举报

5#
 楼主| 发表于 2014-10-9 23:33:37 | 只看该作者
jxf268 发表于 2014-10-8 14:14
大大,安卓版nfs共享一下,并介绍一下用法

http://pan.baidu.com/s/1dDiY7xJ  
ious
这是我自己随意写的一个nfs v3的服务 apk
我只在自己手机上测试 可以用
附送winxp的nfsclient 客户端  其它客户端我测试不成功    linux下没问题
手机需要满足 1.支持armhf  2.安装了busybox  3.已root
祝你成功吧
回复

使用道具 举报

4#
 楼主| 发表于 2014-10-9 03:47:44 | 只看该作者
jxf268 发表于 2014-10-8 14:14
大大,安卓版nfs共享一下,并介绍一下用法

这个安卓版的nfs不是apk安装包
就是一个unfsd和一个portmap还有需要的so库文件
portmap不需要配置  unfsd需要编辑exports
而且   电脑上如果是windows系统 需要用http://pan.baidu.com/s/1ntoNP4t       0t95
这里的nfsclient才可以挂载成功 此软件需要netframework4 支持xp/win7  32/64位
另外手机必须root
把nfs.tar.gz解压后 里面的lib文件夹拷贝到/
unfsd和portmap 放到/sytem/bin
然后 超级终端运行portmap
在运行
unfsd
就行了
关于nfs共享目录的设置
在/etc/建立一个exports文件
内容如下
/sdcard 192.168.2.0/255.255.255.0(rw,insecure,no_root_squash)
#共享目录            wifi的网段
自己按照需要修改
每次修改后需要重新运行unfsd
关闭已经运行的unfsd的命令是killall -9 unfsd
如果你不想把exports放到/etc下面
需要用unfsd -e /sdcard/exports 之类的命令来启动它
有时间 有感觉了就写个android的apk吧
另外我发现我的手机100M网速nfs能提供的读取的极限速度是8M/s samba是不行的 ftp也不行
手机上测试 读取20M/s  写入8M/s+
看来手机通过wifi后网速还是下降很快
不过只要android能提供6M/s以上的文件传输服务 无论是启动pe还是启动ubuntu都是足够了








回复

使用道具 举报

3#
发表于 2014-10-8 14:14:37 来自手机 | 只看该作者
510819776 发表于 2014-10-3 14:02
呵呵  手机弄了nfs 服务 也测试了samba服务
现在发现nfs服务的读取速度是5.5M/s 和http服务共享一致
而 ...

大大,安卓版nfs共享一下,并介绍一下用法

点评

http://pan.baidu.com/s/1dDiY7xJ ious 这是我自己随意写的一个nfs v3的服务 apk 我只在自己手机上测试 可以用 附送winxp的nfsclient 客户端 其它客户端我测试不成功 linux下没问题 手机需要满足 1.支持  详情 回复 发表于 2014-10-9 23:33
这个安卓版的nfs不是apk安装包 就是一个unfsd和一个portmap还有需要的so库文件 portmap不需要配置 unfsd需要编辑exports 而且 电脑上如果是windows系统 需要用http://pan.baidu.com/s/1ntoNP4t 0t95 这  详情 回复 发表于 2014-10-9 03:47
回复

使用道具 举报

2#
 楼主| 发表于 2014-10-3 14:02:06 | 只看该作者
lightpeter 发表于 2014-10-3 07:25
先顶顶,贴还没看完!有这个速度很不错了!

呵呵  手机弄了nfs 服务 也测试了samba服务
现在发现nfs服务的读取速度是5.5M/s 和http服务共享一致
而samba服务共享读取还不知道
不过写入速度只有2M/s的样子
nfs的写入能有3.7M/s
看来samba作为网络文件系统 效率不是一般的低下
而http和nfs的读取速度相同 说明我的手机io读sd的速度也就是5.5m
/s的极限了
也不知道是不是和无线72M 有关系 不知道135M 会不会翻倍了??
记得以前 手机开启ap热点
电脑无线网卡直接连接 貌似http速度也是5.-6M/s 看来手机arm v7a 1G双核 1G ram的配置 还是不行呀
或许我应该对sd卡进行一次格式化 这样应该能提高sd卡的读写速度

点评

大大,安卓版nfs共享一下,并介绍一下用法  详情 回复 发表于 2014-10-8 14:14
回复

使用道具 举报

1#
发表于 2014-10-3 07:25:13 来自手机 | 只看该作者
先顶顶,贴还没看完!有这个速度很不错了!

点评

呵呵 手机弄了nfs 服务 也测试了samba服务 现在发现nfs服务的读取速度是5.5M/s 和http服务共享一致 而samba服务共享读取还不知道 不过写入速度只有2M/s的样子 nfs的写入能有3.7M/s 看来samba作为网络文件系统  详情 回复 发表于 2014-10-3 14:02
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-25 17:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表