xyn 发表于 2008-9-18 20:23:36

DIY h608b v2 无天线猫

一。h608b-v2的启动过程:

    bootload加载
      |
      V
    加载linux核心,核心初始化
      |
      V
    调用/etc/init.d/rcS,
      加载/var工作目录(ram中,可读写)
      加载/usr/local/ct目录(flash,可读写)
      |
      ---------------------------------------调用/usr/local/ct/rc1
                                                                                    |
      -----------------------------------------
      |
      继续执行rcS,完成各个工作进程的启动
      |
      V
    进入正常工作状态。

二。上面过程的左半部分都是在只读目录中,不刷新固件则不可改变。
   但右面的rc1却是在读写目录,可以更改,并且是flash存储器,更改可以保存。

三。如此,/usr/local/ct/rc1就是在不更新固件的条件下改变系统工作的入口。
   只需改写rc1的内容,那么,可以做那些事呢?
   1)开通ftp服务,让usb口成为网络共享设备:
      执行命令 vsftpd &
   2) 修改web管理界面:
      只要提供新的html.mz文件
   3)打开telnet和ssh端口(如果要提供共享的话,还是用时打开,不用则关闭好):
      执行 iptables -D INPUT -j DROP -p tcp --distination-port 23
         iptables -D INPUT -j DROP -p tcp --distination-port 22
   4)......继续想和做

四。h608b出厂时默认关闭了ftp,telnet,ssh,tftp所有本地连接端口,所以第一次必须
   用数据线来改写rc1。但每次都用数据线又很麻烦,所以我用数据线写入两个文件:
   rc1和rc.diy 。以后通过这两个文件与优盘配合完成有关更新工作。
    其中,rcB.diy是在原系统进程之前完成,可以影响原有进程的工作,比如使用新的
    web页面;rcA.diy在原有进程正常运行后执行,做新增内容。
   具体步骤如下:
    1)用数据线把rc1和rc.diy复制到/usr/local/ct目录
    2)把上两文件属性设成可执行。
    3)在优盘上建一目录E8_h608b
    4) 把rcA.diy和rcB.diy和html.mz(若要改变web页的话)栲到E8_h608b目录。
    5)把优盘作为第二个共享盘(不是第二个USB口,先插一个作usb1_1,然后插入本盘,
      成为usb2_1).
    6) 重启,有关文件自动读进并执行。
    7) 启动时如插入/var/usb/usb2_1/rc.exec则telnet和ssh打开。
五。根据不同的目的,可以改写rcA.diy和rcB.diy和rc.exec只要记住:rcB.diy是pre init
   而rcA.diy是after init而rc.exec是立即执行(在rcA.diy之后)。
六。几个附件:
   1)rc.tar包含几个脚本文件
         
   2)hyml.mz.2.gz是一个修改过的web页。
         hotqj:最新的打包在14楼
   3)是2)的一个截图。
         
   4)html.tar是管理页面的源码,有兴趣的可以研究,修改和扩充。
         

[ 本帖最后由 hotqj 于 2008-9-29 09:39 编辑 ]

valley74 发表于 2008-9-20 18:12:18

xyn 发表于 2008-9-20 20:43:36

回复 2# valley74 的帖子

TTL电平的串口线或USB转串口线
接口:指示灯朝自己,五个针脚从左棉开始
1--3.3V
2--数据出
3--数据入
4--地
5--空
只用中间三个.
执行第二个iptables命令可以打开ssh(不过我只试了telnet没检查ssh)
ssh 用处不大,因为自用的话telnet可以了,多人共享的话,首先必须修改telecomadmin的口令,否则根本就每安全可言.

[ 本帖最后由 xyn 于 2008-9-20 20:50 编辑 ]

liuleidehu 发表于 2008-9-23 10:58:03

高人。。。
H608B的用户要靠你们造福了

MINE 发表于 2008-9-25 12:29:59

这篇文章可以很不错。

xyn 发表于 2008-9-26 09:59:02

修改及打包

附件中包括已经修改的文件和打包工具。解开后拷到原来的html目录下。
打包方法:(Linux环境)
1)decode.log是要包含的文件列表,必须在同目录中。
2)在页面文件顶层目录下,运行 ./encode 生成 html.mz 文件
3)重命名为 html.mz.2
4)gzip html.mz.2 生成 html.mz.2.gz

HOTQJ:
最新包在14楼.

[ 本帖最后由 hotqj 于 2008-9-28 22:27 编辑 ]

MINE 发表于 2008-9-26 10:23:52

原帖由 xyn 于 2008-9-26 09:59 发表 https://www.chinadsl.net/images/common/back.gif
附件中包括已经修改的文件和打包工具。解开后拷到原来的html目录下。
打包方法:(Linux环境)
1)decode.log是要包含的文件列表,必须在同目录中。
2)在页面文件顶层目录下,运行 ./encode 生成 html.mz 文件
3 ...

你不如把你改好的MTD文件发上来,我们用数据线传更方便些。

hotqj 发表于 2008-9-26 10:31:54

呵呵,有了这个方法,我们可以自己做一下非定制版的界面及修改版.
就用宽频网的好了.呵呵.

xyn 发表于 2008-9-26 14:11:12

回复 7# MINE 的帖子

我根本就没修改的mtd文件,到目前为止,除了rc1是原固件里的文件改了一丁点外,我没对固件做任何改动。

hotqj 发表于 2008-9-27 11:17:16

原帖由 xyn 于 2008-9-26 09:59 发表 https://www.chinadsl.net/images/common/back.gif
附件中包括已经修改的文件和打包工具。解开后拷到原来的html目录下。
打包方法:(Linux环境)
1)decode.log是要包含的文件列表,必须在同目录中。
2)在页面文件顶层目录下,运行 ./encode 生成 html.mz 文件
3 ...

好象命令是
./decode


但还有一个问题,运行这个命令后,提示

./decode:/usr/lib/libstdc++.so.6: version 'GLIBCXX_3.4.9' no found (required by ./decode)


是不是缺少什么包啊..
和Gcc有关?
要怎么安装呢/

不好意思,我是Linux新手,没怎么玩过.我装的是Debian 4.0的,一张盘装的最基本的系统.
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: DIY h608b v2 无天线猫