无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: 510819776

[分享] 安卓版的tiny-pxe-server(pxe-http-nfs) iscsi-target发布了

    [复制链接]
发表于 2014-10-20 22:44:46 | 显示全部楼层
本帖最后由 ren001 于 2014-10-20 22:55 编辑
ren001 发表于 2014-10-20 21:41
我没问题 成功了


4.0没加参数 pxe均无问题 2.3不行 应该卡权限问题 我感觉出问题都是sd权限问题    慢慢调试调试就好了 程序的保存也正常 出问题自己判断解决更长知识 以前买智器128m的最初的小平板 玩一段linux 不是太熟 有耐心才能成功 这是我跟帖最久的一次 谢谢你的程序
回复

使用道具 举报

发表于 2014-10-21 07:19:38 来自手机 | 显示全部楼层
又试了一个4.0 三个服务正常开启 没任何问题
回复

使用道具 举报

发表于 2014-10-21 08:38:53 | 显示全部楼层
510819776 发表于 2014-10-20 22:20
你的失败和我的app应该是关系不大的
我发布的所有版本 都是执行的下述命令
pxe -F 192.168.x.x,proxy - ...

钩选了代理启动,服务也能成功开启,提示"无法连接到服务器,请检查你的网络",相同网络环境下原版bukerpxe是正常的.
回复

使用道具 举报

发表于 2014-10-21 11:23:44 | 显示全部楼层
利用楼主给的代码修改了一下,我也整一个,简化了一下..

这个不需要busybox支持.

有兴趣的可以试下

http://pan.baidu.com/s/1pJ1BlB9

注:部份路由器可能是兼容性有问题,如果用代理模式启动失败(提示no dhcp proxy之类的),可以试试不使用proxyDHCP..

我自己测试有一些路由器,两种用不用代理都是正常的,部份路由器不可以使用代理模式.

PXEBoot.zip

537.75 KB, 下载次数: 357

点评

你好,软件安装好了,我手机ROOT也有了,无线也在一个路由器上,为什么电脑搜索不到啊  详情 回复 发表于 2015-4-16 10:01
C大侠,下载你提供的软件用,可以启动动,但选择IPXE启动时,加载到boot.ipxe 或menu.ipxe时停止不 动,不报错,最后提示信息是: Next server:192.168.31.204 Filename:boot.ipxe tftp://192.168.31.204/bo  详情 回复 发表于 2014-11-9 23:17
C大侠,下载你提供的软件用,可以启动动,但选择IPXE启动时,加载到boot.ipxe 或menu.ipxe时停止不 动,不报错,最后提示信息是: Next server:192.168.31.204 Filename:boot.ipxe tftp://192.168.31.20...  发表于 2014-11-9 23:12
按C大的成功了  发表于 2014-10-23 01:49
好棒啊!在平板上成功了。android 4.3。 顺便问下,平板上开发软件,怎样入门?  详情 回复 发表于 2014-10-22 19:25
回复

使用道具 举报

发表于 2014-10-21 12:08:59 | 显示全部楼层
chenall 发表于 2014-10-21 11:23
利用楼主给的代码修改了一下,我也整一个,简化了一下..

这个不需要busybox支持.

成功了.能不能让TFTP根目录可更改并保存呢?

点评

这个不急,只要成功率有保证了,这些都是小问题..  发表于 2014-10-21 13:30
回复

使用道具 举报

发表于 2014-10-21 12:45:50 | 显示全部楼层
本帖最后由 mygamexxx 于 2014-10-21 12:48 编辑

C大的测试成功。
但两个菜单不成功。
ipxe 和GRUB-IPXE

点评

能看到g4d菜单就ok 菜单只是测试 不可用 ipxe本来就没有内置菜单  详情 回复 发表于 2014-10-21 13:33
grub可以启动就说明没有问题 ipxe不成功是正常的,因为ipxe默认是加载了http服务器上的pe.iso文件.  详情 回复 发表于 2014-10-21 13:31
回复

使用道具 举报

发表于 2014-10-21 13:31:06 | 显示全部楼层
mygamexxx 发表于 2014-10-21 12:45
C大的测试成功。
但两个菜单不成功。
ipxe 和GRUB-IPXE

grub可以启动就说明没有问题

ipxe不成功是正常的,因为ipxe默认是加载了http服务器上的pe.iso文件.

点评

C大就是C大 采用配置文件的形式来干活 我就没想到 这货能支持多个配置同时工作 另外 我测试的安卓2.3 失败 原因是pxe进程没起来 研究发现是因为 default.conf添加的group=sdcard_r 我修改为group=sdcard_rw就  详情 回复 发表于 2014-10-21 16:20
回复

使用道具 举报

 楼主| 发表于 2014-10-21 13:33:51 来自手机 | 显示全部楼层
mygamexxx 发表于 2014-10-21 12:45
C大的测试成功。
但两个菜单不成功。
ipxe 和GRUB-IPXE

能看到g4d菜单就ok 菜单只是测试  不可用
ipxe本来就没有内置菜单
回复

使用道具 举报

 楼主| 发表于 2014-10-21 16:20:25 | 显示全部楼层
chenall 发表于 2014-10-21 13:31
grub可以启动就说明没有问题

ipxe不成功是正常的,因为ipxe默认是加载了http服务器上的pe.iso文件.

C大就是C大
采用配置文件的形式来干活
我就没想到 这货能支持多个配置同时工作
另外 我测试的安卓2.3 失败  原因是pxe进程没起来
研究发现是因为 default.conf添加的group=sdcard_r 我修改为group=sdcard_rw就没问题了
估计sdcard_r/rw  这两种用户组应该能满足2.3-4.4.2的安卓需求了吧
或许可以添加个group的选项 以及判断进程pxe是否运行
还是佩服C大 硬是用dnsmasq弄出了一个菜单
c大 为啥不把默认的tftp路径改成/sdcard/***
/mnt/sdcard 我目前了解的红米note 4.4.2的默认就不是这个路径

点评

我这里没有2.3的设备可以测试 麻烦你测试一下,在不修改默认配置文件的情况下,使用附加参数添加--group=sdcard_rw看看能不能工作(这个问题其实也不是很大,只要再获取一下sd卡需要的权限就解决了.) 另外我新的没  详情 回复 发表于 2014-10-21 16:29
回复

使用道具 举报

发表于 2014-10-21 16:29:21 | 显示全部楼层
510819776 发表于 2014-10-21 16:20
C大就是C大
采用配置文件的形式来干活
我就没想到 这货能支持多个配置同时工作

我这里没有2.3的设备可以测试

麻烦你测试一下,在不修改默认配置文件的情况下,使用附加参数添加--group=sdcard_rw看看能不能工作(这个问题其实也不是很大,只要再获取一下sd卡需要的权限就解决了.)

另外我新的没有上传,新的版本,默认的ipxe/grub4dos菜单都是可以直接使用的(一些小工具使用网络的形式通过ipxe来加载)

默认tftp的路径是使用e4a函数获取的,应该不会有什么问题,我用小米1S测试可用.


点评

完整版busybox内置tftp http dhcp ftp服务 我网盘里面就有一个自己编译的 而且我可以给busybox弄一个配置 让它当pxe服务器 只不过busybox 自带的tftp服务 太菜了 启动grub4dos不出菜单 不过启动pxelinux没问题  详情 回复 发表于 2014-10-21 23:53
刚才用电脑版tiny pxe server测试了一下 勾选了代理后 单从启动界面上完全看不到 服务器的ip信息 这一点和servers ultimate的pxe服务一致 而用dnsmasq弄出来的 无论是否启用代理 都可以在启动时看到 手机的ip信  详情 回复 发表于 2014-10-21 20:22
另外我发现pxe启动不止两种模式 1.dhcpproxy 客户端启动后有显示 proxy***** 2.不采用代理 客户端显示dhcpserver=手机ip 3.我用servers ultimate的pxe服务 不会显示proxy*** 也不会出现dhcpserver=手机ip的  详情 回复 发表于 2014-10-21 18:52
坐等C大出完美的tiny-pxe-server 备用方案 andtftp(tftp)+portforward(iptables)+dnsmasq(pxe only) 另外似乎sanboot iscsi cdrom也不错.  发表于 2014-10-21 18:47
不修改默认配置 pxe进程起不来 附加参数加啥都没用 另外e4a获取 取存储卡路径 函数 取得是sd的路径 最好加个判断sd是否存在 不存在就用android shell的命令来获取内置存储路径 android 4.4系统 貌似当sd不是默认  详情 回复 发表于 2014-10-21 18:41
回复

使用道具 举报

 楼主| 发表于 2014-10-21 18:41:06 | 显示全部楼层
chenall 发表于 2014-10-21 16:29
我这里没有2.3的设备可以测试

麻烦你测试一下,在不修改默认配置文件的情况下,使用附加参数添加--group ...

不修改默认配置 pxe进程起不来 附加参数加啥都没用
另外e4a获取 取存储卡路径 函数  取得是sd的路径 最好加个判断sd是否存在
不存在就用android shell的命令来获取内置存储路径
android 4.4系统 貌似当sd不是默认存储的时候 禁止对sd写入
对红米note 4.4.2无效 不知道为啥获取的是个错误的路径
你要内置的话  就内置pxelinux/lpxelinux/grub4dos/ipxe四种 满足一切需求
lpxelinux也原生支持http ftp协议的  不过鉴于某天看到的pxe启动引导文件64K限制的说法
pxelinux的兼容性应该最好
tftp路径之类的 可以用linux的软链接 固定死
不管用户指定哪个文件夹作为tftp目录
一条命令ln -s /sdcard/**** /data/data/com.xxx/tftp 就把路径变为固定值了
也不需要弄个配置来保存tftp目录

我现在认为   弄这个pxe server有个更简单的方法
我发现androidtftp软件的tftp服务 非常好 不比dnsmasq自带的差 完美grub4dos出菜单 速度很快
就是端口默认是6969 无法更改
所以 需要另外写一个软件
这个软件只需要提供 pxe服务 告诉客户端引导文件是什么就行了
还有就是执行一条iptables 端口重定向的命令
然后就是把androidtftp这个软件包含进去 root权限静默安装
就是androidtftp这软件内置广告 不过 这软件apk没有加密   可以反编译出源码
我把端口修改为69 然后把软件移动到system/app
打开后还是提示无权限   
我不太会去除广告 谁有能力 搞出一个干净的androidtftp呢??
这样就没sd卡什么事情了
如果需要http服务 可以安装anmpp 内置nginx web server  配合ipxe htttp  pe.iso无压力
nfs服务则是启动linux livecd 然后可以拷贝windows系统文件
目前兼容性的最大问题就在于tftp的路径获取和 tftp目录的权限问题
用andtftp取代之 则完美解决
当然 servers ultimate 配合andtftp也可以的  只不过设置上麻烦点



回复

使用道具 举报

 楼主| 发表于 2014-10-21 18:52:26 | 显示全部楼层
chenall 发表于 2014-10-21 16:29
我这里没有2.3的设备可以测试

麻烦你测试一下,在不修改默认配置文件的情况下,使用附加参数添加--group ...

另外我发现pxe启动不止两种模式
1.dhcpproxy  客户端启动后有显示 proxy*****
2.不采用代理  客户端显示dhcpserver=手机ip
3.我用servers ultimate的pxe服务
不会显示proxy***   也不会出现dhcpserver=手机ip的提示
给人的感觉就像是路由器自带pxe服务
不知道这种方式用dnsmasq的命令应该怎么写??
C大研究下???
回复

使用道具 举报

发表于 2014-10-21 20:03:32 | 显示全部楼层
楼主的软件用了后看不到菜单,C大的测试成功。但是速度太慢了,才能达到25K/S左右,不知道是什么原因。

点评

我的手机平时下载能达到600K/S到1M/s(手机上的LBE流量监控显示),用手机网启时速度仅能25-30K/s,请教一下,是路由设置的问题还是手机上哪里能设置呢  详情 回复 发表于 2014-10-22 09:11
这个和你的手机无线有关系,先看一下无线状态的连接速率,,  发表于 2014-10-21 22:54
25kb/s 你怎么算出来的?? 我测试单纯的tftp加载pe.iso 速度也在1M/s左右 这是没优化 使用ipxe http方式 速度可以达到6-7M/s 用lpxelinux http速度也差不多6-7M/s 不过用grub4dos 速度只有  详情 回复 发表于 2014-10-21 20:29
回复

使用道具 举报

 楼主| 发表于 2014-10-21 20:22:45 | 显示全部楼层
chenall 发表于 2014-10-21 16:29
我这里没有2.3的设备可以测试

麻烦你测试一下,在不修改默认配置文件的情况下,使用附加参数添加--group ...

刚才用电脑版tiny pxe server测试了一下
勾选了代理后
单从启动界面上完全看不到 服务器的ip信息 这一点和servers ultimate的pxe服务一致
而用dnsmasq弄出来的 无论是否启用代理 都可以在启动时看到 手机的ip信息
所以我想  那两条命令的pxe服务之外 还有第三种
既不用开启dhcp的分配ip服务 也不需要弄proxy

点评

试用了一下BukerPXE-lite发现这货虽然也是用dnsmasq的,但其实它只使用了dnsmasq的dhcp功能,, TFTP是使用busybox的内置tftp来实现的(这个可以解决tftp的权限问题) 看了一下busybox竟然连http服务都有  发表于 2014-10-21 22:57
回复

使用道具 举报

 楼主| 发表于 2014-10-21 20:29:38 | 显示全部楼层
shwk88888 发表于 2014-10-21 20:03
楼主的软件用了后看不到菜单,C大的测试成功。但是速度太慢了,才能达到25K/S左右,不知道是什么原因。

25kb/s  你怎么算出来的??
我测试单纯的tftp加载pe.iso 速度也在1M/s左右 这是没优化
                  使用ipxe http方式  速度可以达到6-7M/s
用lpxelinux http速度也差不多6-7M/s
不过用grub4dos 速度只有可悲的1M/s
用我的app 你要在附加参数 填写上-u root -g sdcard_r 这样就和C大的一致了
有的手机不能用-g sdcard_r 要用-g sdcard_rw
你25kb/s  表示不服  c大貌似在tftp服务部分加了一些参数tftp lowercase 难道是这个参数影响速度??


点评

手机上有流量监控啊,可以显示数据速率啊,我的是酷派9960,在用楼主的加参数试试看  详情 回复 发表于 2014-10-21 22:21
回复

使用道具 举报

发表于 2014-10-21 21:35:13 来自手机 | 显示全部楼层
用了个2.3测试pXe服务能开启pc端和hy5425出错一样估计逞cpu太弱造成

点评

这个 你可以帮助详细测试下 用ps | grep -i pxe看看服务进程是否开启 是以什么身份运行 然后netstat -a | grep -i udp 看看端口 67 69 4011是否存在 或者你在附加参数 填写-u root -g sdcard_r/rw 试试看 我这  详情 回复 发表于 2014-10-21 23:40
回复

使用道具 举报

发表于 2014-10-21 22:21:14 | 显示全部楼层
本帖最后由 shwk88888 于 2014-10-21 22:23 编辑
510819776 发表于 2014-10-21 20:29
25kb/s  你怎么算出来的??
我测试单纯的tftp加载pe.iso 速度也在1M/s左右 这是没优化
               ...


手机上有流量监控啊,可以显示数据速率啊,而且一个300兆的pe得加载好久好久,我的是酷派9960,在用楼主的加参数试试看

点评

tftp方式加载300Mpe 差不多5分钟 1M/s 必须用http或ftp加载 速度我的手机150M无线 可达到6-7M/s 你那25kb/s 我真的一身汗呀  发表于 2014-10-21 23:27
回复

使用道具 举报

 楼主| 发表于 2014-10-21 23:40:19 | 显示全部楼层
ren001 发表于 2014-10-21 21:35
用了个2.3测试pXe服务能开启pc端和hy5425出错一样估计逞cpu太弱造成

这个 你可以帮助详细测试下
用ps | grep -i pxe看看服务进程是否开启 是以什么身份运行
然后netstat -a | grep -i  udp
看看端口 67 69 4011是否存在
或者你在附加参数 填写-u root -g sdcard_r/rw 试试看
我这里一台 小米系统的 andriod 2.3 毫无问题
C大 默认让pxe root用户和sdcard_r运行  不过我的2.3安卓手机 必须用-u root -g sdcard_rw才能ok 或者不加参数也没问题
回复

使用道具 举报

 楼主| 发表于 2014-10-21 23:53:06 | 显示全部楼层
chenall 发表于 2014-10-21 16:29
我这里没有2.3的设备可以测试

麻烦你测试一下,在不修改默认配置文件的情况下,使用附加参数添加--group ...

完整版busybox内置tftp http dhcp ftp服务  我网盘里面就有一个自己编译的
而且我可以给busybox弄一个配置 让它当pxe服务器
只不过busybox 自带的tftp服务 太菜了  启动grub4dos不出菜单  不过启动pxelinux没问题
另外ipxe如果要sanboot http://****/pe.iso  busybox自带的http服务是不能启动的
安卓上一款 纯java写的andtftp提供的tftp服务可以完美的配合busybox的dhcp 唯一要做的就是把这个软件开启的6969端口给转发到69端口 而servers ultimate里面有端口转发的功能
我已经启动过数次了 效率很高  启动grub4dos 界面一晃而过就到菜单了 至于ipxe pxelinux不在话下
做个可以端口转发的dnsmasq的pxe服务就行了  tftp部分交给andtftp处理
当然能力强点的  直接用andtftp和servers ultimate pro 就能直接配置出一个不比dnsmasq差的pxe服务出来
servers ultimate自带的tftp也不给力 和busybox半斤八两

点评

andtftp新版可以直接使用69端口,不能使用69端口是由于ANDROID的权限限制,只能使用1024以上的端口 使用ROOT权限就能用1024以下的端口.  详情 回复 发表于 2014-10-22 11:11
回复

使用道具 举报

发表于 2014-10-21 23:54:43 | 显示全部楼层
用了个2.3测试pXe服务能开启是用c大的那个 你的那个20号是不能开启 错误是默认的存储是mnt sdcard。。。后面的信息我给你过 明天我再加参数试试
回复

使用道具 举报

发表于 2014-10-22 09:10:51 | 显示全部楼层
重新刷了2.3的机器 安装20号调试版 安装到手机和sd卡都不能找到pxe文件 但是com.dnsmasq文件夹有lib和sd文件夹
1111.jpg
222.jpg

点评

排除软件代码问题的话 你可以看看你手机busybox是否支持 unzip命令  详情 回复 发表于 2014-10-22 15:23
排除软件代码问题的话 你可以看看你手机busybox是否支持 unzip命令  详情 回复 发表于 2014-10-22 15:21
回复

使用道具 举报

发表于 2014-10-22 09:11:39 | 显示全部楼层
shwk88888 发表于 2014-10-21 20:03
楼主的软件用了后看不到菜单,C大的测试成功。但是速度太慢了,才能达到25K/S左右,不知道是什么原因。

我的手机平时下载能达到600K/S到1M/s(手机上的LBE流量监控显示),用手机网启时速度仅能25-30K/s,请教一下,是路由设置的问题还是手机上哪里能设置呢

点评

我试了一下54M的路由器,用TFTP速度250K左右(用WINDOWS 的TFTP命令下载测试),用HTTP的话就比较快,和手机还有路由器都有关系.  发表于 2014-10-22 11:10
回复

使用道具 举报

发表于 2014-10-22 11:11:56 | 显示全部楼层
510819776 发表于 2014-10-21 23:53
完整版busybox内置tftp http dhcp ftp服务  我网盘里面就有一个自己编译的
而且我可以给busybox弄一个配 ...

andtftp新版可以直接使用69端口,不能使用69端口是由于ANDROID的权限限制,只能使用1024以上的端口

使用ROOT权限就能用1024以下的端口.
回复

使用道具 举报

发表于 2014-10-22 13:31:40 | 显示全部楼层
本帖最后由 mygamexxx 于 2014-10-22 13:32 编辑

C大能不能搞成TFTP目录可以更改的,将0PE.ISO改名为PE.ISO,启动不成功。一个109M的PE.ISO启动成功。

点评

下次发布的版本将允许修改TFTP根目录,,没有问题的话估计晚上之前会上传.  详情 回复 发表于 2014-10-22 13:58
回复

使用道具 举报

发表于 2014-10-22 13:43:33 来自手机 | 显示全部楼层
恭贺楼主问题解决
回复

使用道具 举报

发表于 2014-10-22 13:58:24 | 显示全部楼层
mygamexxx 发表于 2014-10-22 13:31
C大能不能搞成TFTP目录可以更改的,将0PE.ISO改名为PE.ISO,启动不成功。一个109M的PE.ISO启动成功。

下次发布的版本将允许修改TFTP根目录,,没有问题的话估计晚上之前会上传.
回复

使用道具 举报

发表于 2014-10-22 14:05:12 | 显示全部楼层
经过各种测试发现TFTP的传输率很差,同样条件下HTTP可以达到TFTP的5倍左右.

当然了和手机还有路由器都有关系.

另外同时测试了andtftp,DNSMASQ,BUSYBOX等TFTP服务器,差别不是很大,所以就没有必要再去折腾什么了,直接用DNSMASQ和BUSYBOX的TFTP服务就行了.

点评

找到了支持69端口的最新版andtftp 可惜广告满天飞 设置也整得蛋疼 两条端口转发 的事情 软件体积扩大四倍 汗颜 换回1.2版 老版本没广告 界面也舒坦  详情 回复 发表于 2014-10-22 15:48
关键是busybox的tftp 我测试不出g4d菜单 同样的g4d文件 dnsmasq和andtftp的tftp服务都无问题 追求完美的我受不了 另外支持直接69端口的新版andtftp 我怎么找不到? 另外tftp慢和默认blksize关系很大 pxe时g4d和  详情 回复 发表于 2014-10-22 15:13
回复

使用道具 举报

 楼主| 发表于 2014-10-22 15:13:58 来自手机 | 显示全部楼层
chenall 发表于 2014-10-22 14:05
经过各种测试发现TFTP的传输率很差,同样条件下HTTP可以达到TFTP的5倍左右.

当然了和手机还有路由器都有 ...

关键是busybox的tftp 我测试不出g4d菜单   同样的g4d文件 dnsmasq和andtftp的tftp服务都无问题 追求完美的我受不了
另外支持直接69端口的新版andtftp 我怎么找不到?
另外tftp慢和默认blksize关系很大 pxe时g4d和pxelinux都是1408 有人编译16k的版本 tftp效率大幅度提高

点评

使用GooglePlay直接下载的就是有支持69端口的,当然了ROOT权限是必须的,没有ROOT权限只能使用1024以上的端口号.  发表于 2014-10-22 15:24
回复

使用道具 举报

 楼主| 发表于 2014-10-22 15:21:37 来自手机 | 显示全部楼层
ren001 发表于 2014-10-22 09:10
重新刷了2.3的机器 安装20号调试版 安装到手机和sd卡都不能找到pxe文件 但是com.dnsmasq文件夹有lib和sd文 ...

排除软件代码问题的话
你可以看看你手机busybox是否支持
unzip命令
回复

使用道具 举报

 楼主| 发表于 2014-10-22 15:23:21 来自手机 | 显示全部楼层
ren001 发表于 2014-10-22 09:10
重新刷了2.3的机器 安装20号调试版 安装到手机和sd卡都不能找到pxe文件 但是com.dnsmasq文件夹有lib和sd文 ...

排除软件代码问题的话
你可以看看你手机busybox是否支持
unzip命令
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 22:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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