| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2141 人关注过本帖
标题:DLINK-DSL500-ADSL-初探(四)- tftp功能
只看楼主 加入收藏
rabbit5455
Rank: 2
等 级:论坛游民
帖 子:123
专家分:25
注 册:2004-4-14
收藏
 问题点数:0 回复次数:0 
DLINK-DSL500-ADSL-初探(四)- tftp功能

前几天对ADSL-DLINK500做了初步的分析,把里面被“汉化”掉的高级功能找了出来,
内容在这个帖子上:
[原创](adsl)DLINK-DSL500-BusyBox on dsl-gateway-初探(一)(二)(三)

这次重点放在ADSL内部的linux系统上,
用ps -ef查看后可以看到很多服务进程:
# ps -ef
PID Uid VmSize Stat Command
1 root 1272 S init
2 root S [keventd]
3 root R [ksoftirqd_CPU0]
4 root S [kswapd]
5 root S [bdflush]
6 root S [kupdated]
7 root S [mtdblockd]
32 root 1168 S /usr/sbin/thttpd -d /usr/www -u root -p 80 -c /cgi-b
33 root 1784 S /usr/bin/cm_pc
35 root 1272 S init
36 root 2864 S /usr/bin/cm_logic -m /dev/ticfg -c /etc/config.xml
37 root 1280 S /usr/bin/cm_monitor
48 root 632 S /sbin/dproxy -c /etc/resolv.conf -d
99 root 672 S /usr/sbin/udhcpd /var/tmp/udhcpd.conf
101 root 2340 S /usr/sbin/pppd plugin pppoe nas7 user ta1*****38@e p
121 root 616 S /sbin/utelnetd
122 root 1276 S -sh
124 root 1272 R ps -ef
=============================================

我重点看了上面标红的两行,thttpd的现实被截断了,不过在/etc/init.d/rcS脚本中,
看到了这句话的完整内容:
/usr/sbin/thttpd -d /usr/www -u root -p 80 -c '/cgi-bin/*'
它指定web服务的主目录,端口和cgi脚本。

从cm_logic的帮助中看到它的用法:
cm_logic -h
Prints this help message.

cm_logic -c /path/to/config.xml
Uses XML file on a filesystem for configuration.

cm_logic -m /path/to/mtdblock/device -c /path/to/config.xml
Uses raw MTD block for configuration. If MTD is corrupted, it will be po
pulated with XML file.

所以 /dev/ticfg /etc/config.xml 的内容应该是一样的,我用cat命令查看了他们。
帮助的最后一行也有:如果ticfg出了意外,就用config.xml来重建ticfg。

===========================================

接下来看一下那个tftp的小东西,在/usr/bin中:
# cd /usr/bin
# ls
[ cm_logic free test wget
cm_cli cm_monitor id tftp whoami
cm_convert cm_pc passwd tty yes
=============================================
我们知道,tftp是一个非常简单的文件传输协议,一般只有上传和下载功能,
不可以列出目录,但对于嵌入式linux的开发,确实非常优秀的工具。
我从网上找了个Cisco TFTP Server V1.1 汉化版.rar,设定好主目录,
在里面放了个xuhua.txt,内容是“xuhua, tftp succ ...”。

这样windows2003上
就开启了tftp服务,回到ADSL的telnet界面,测试一下tftp的get(上传)命令:
# tftp -g -l /var/xuhua.txt -r xuhua.txt 192.168.1.13
# cat /car/xuhua.txt
xuhua, tftp succ ...
==============================
再测试一下put上传命令,我把/etc/init.d/rcS传到我的本本上:
# tftp -p -l /etc/init.d/rcS -r rcS 192.168.1.13

Cisco TFTP Server 指定的根目录中找到rcS,用记事本打开:
摘录部分内容:
==============================================
#! /bin/sh
#
# rcS Call all S??* scripts in /etc/rcS.d in
# numerical/alphabetical order.
#
# Version: @(#)/etc/init.d/rcS 2.76 19-Apr-1999 miquels@cistron.nl
#
trap "" SIGHUP

PATH=/sbin:/bin:/usr/sbin:/usr/bin
runlevel=S
prevlevel=N
umask 022
export PATH runlevel prevlevel
....
....(省略)
....
# UPnP requires loopback
ifconfig lo 127.0.0.1

/usr/sbin/thttpd -d /usr/www -u root -p 80 -c '/cgi-bin/*'
/usr/bin/cm_pc > /dev/tts/0 &
================================================
这样我们就可以和ADSL进行数据交换了,让我看看/etc里面的内容:
# ls /etc -a
.nautilus-metafile.xml host.conf resolv.conf
config.xml hosts securetty
dproxy.conf init.d services
dropbear inittab shadow
firewall_start led.conf shells
firewall_stop linux-igd strings.xml
flush_firewall passwd sysdef.xml
fstab ppp udhcpc
gateways progdefs.xml udhcpd.conf
group protocols versions
===========================================
看到了不少conf和xml吧,我认为有必要把它们tftp -p 到咱们的pc上
好好研究一下, 。。。
困了,午觉 。。。

搜索更多相关主题的帖子: tftp 初探 target 
2007-04-23 13:37
快速回复:DLINK-DSL500-ADSL-初探(四)- tftp功能
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015854 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved