pudeev (pudeev) wrote,
pudeev
pudeev

ADSL модем D-Link DSL-2640U. Часть IV. Собрал первую тестовую прошивку.

Честно говоря, надоело исследовать структуру каталогов в модеме с помощью команды echo:
# echo /* 
/bin /dev /etc /lib /linuxrc /mnt /proc /sbin /usr /var /webs 
# echo /bin/* 
/bin/adsl /bin/adslctl /bin/atm /bin/atmctl /bin/bftpd /bin/brctl /bin/busybox /bin/cat /bin/cfm /bin/chmod
/bin/date /bin/ddnsd /bin/df /bin/dhcpc /bin/dhcpd /bin/dhcpr /bin/dmesg /bin/dnsprobe /bin/dumpmem
/bin/ebtables /bin/echo /bin/epi_ttcp /bin/ethctl /bin/false /bin/hotplug /bin/igmp /bin/iptables
/bin/kill /bin/ln /bin/mkdir /bin/mount /bin/msh /bin/nas /bin/nas4not /bin/netctl /bin/openssl /bin/ping
/bin/pppd /bin/ps /bin/pvc2684ctl /bin/pvc2684d /bin/pwd /bin/reaim /bin/ripd /bin/rm /bin/sendarp
/bin/setmem /bin/sh /bin/siproxd /bin/snmp /bin/sntp /bin/sysinfo /bin/tftpd /bin/true /bin/udhcpd
/bin/upnp /bin/wlctl /bin/zebra



D-Link почему-то не посчитал нужным включить в пакет BusyBox самую распространенную и полезную консольную утилиту ls (листинг файлов), наверное, чтобы юзеры не лазили там где им "не положено" . Правда, в прошлом году, под давлением общественности, D-Link испугался судебных разбирательств и выложил на своем ftp-сервере исходники прошивки, теперь можно их спокойно скачивать и делать со своим модемом все, что угодно. Естессно, на свой страх и риск .

Вообщем, решил форсировать события, и собрать свою прошивку. В качестве теста включил в первую сборку утилиту ls:
# ls -l 
drwxrwxrwt 13 0 0 640 var 
dr-xr-xr-x 40 0 0 0 proc 
drwxr-xr-x 1 0 0 0 mnt 
drwxr-xr-x 1 0 0 516 dev 
drwxr-xr-x 1 0 0 2085 webs 
drwxr-xr-x 1 0 0 10 usr 
drwxr-xr-x 1 0 0 113 sbin 
lrwxrwxrwx 1 0 0 11 linuxrc -> bin/busybox 
drwxr-xr-x 1 0 0 171 lib 
drwxrwxrwx 1 0 0 291 etc 
drwxr-xr-x 1 0 0 487 bin

... и полезную утилиту netstat:
# netstat -an 
Active Internet connections (servers and established) 
Proto Recv-Q Send-Q Local Address Foreign Address State 
tcp 0 0 0.0.0.0:5190 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:1863 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:1864 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:30005 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:4443 0.0.0.0:* LISTEN 
tcp 0 0 0.0.0.0:5566 0.0.0.0:* LISTEN 
tcp 0 147 192.168.1.1:23 192.168.1.4:3798 ESTABLISHED 
udp 0 0 0.0.0.0:30006 0.0.0.0:* 
udp 0 0 0.0.0.0:67 0.0.0.0:* 
udp 0 0 0.0.0.0:65002 0.0.0.0:* 
udp 0 0 0.0.0.0:5099 0.0.0.0:* 
udp 0 0 0.0.0.0:5100 0.0.0.0:* 
raw 0 0 0.0.0.0:2 0.0.0.0:* 0 
Active UNIX domain sockets (servers and established) 
Proto RefCnt Flags Type State I-Node Path 
unix 2 [ ACC ] STREAM LISTENING 785 /var/br2684 
unix 2 [ ] DGRAM 2385 /var/cfm_socketapi


Файл нового firmware, с добавлением двух новых команд, получился 3300704 байт:
BFD: stW1Uybz: warning: allocated section `.bss' not in segment
Code text starts: textAddr=0x80010000  Program entry point: 0x801A9018,
Before compression: 1745030  After compression (level=2): 538808
Percent Compression = 69.12
Write Model Name string:[RU_DSL-2640U]
bcmImageBuilder
        CFE image size                : 62332
        File tag size                 : 256
        Root filesystem image size    : 2699264
        Kernel image size             : 538820
        ASUS Model name size          : 32
        Combined image file size      : 3300704


[root@localhost RU_DSL-2640U_3-06-04-3C]#


Оглавление:
Часть I. Описание, тех. характеристики
Часть II. Подключаем консольный кабель
Часть III. Boot Loader, OS Linux 2.6.8.1 и оболочка BusyBox 1.0
Часть IV. Собрал первую тестовую прошивку
Часть V. Процесс сборки/разборки firmware
Часть VI. Подключение JTAG кабеля
Tags: adsl, bcm6348, broadcom, busybox, console, d-link, dlink, dsl-2640u, firmware, linux, linux embedded, modem, red hat
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 25 comments