無線LANルータ LAN-W300N/G8 のファームウェアの展開
現在公開されている v1.03のファームウェアをカスタマイズを考えています。
その準備として、ファームウェアのイメージファイルを解凍してファイルを取り出せる
ようにします。
イメージファイル: LAN-W300NG8_v1.03.bin
[LINUX] 000176c2 - 000ee6d3 d7002 バイナリ
スキップしています。
これで、webpages.bin、linux.bin、rootfs.bin が得られました。
webpages.bin: bzip2 compressed data, block size = 900k
# file linux.bin
linux.bin: data
# file rootfs.bin
rootfs.bin: Squashfs filesystem, little endian, version 4.0, 1030543 bytes, 226 inodes,
blocksize: 131072 bytes, created: Tue May 6 15:28:16 1902
# bunzip2 webpages.bin
bunzip2: Can't guess original name for webpages.bin -- using webpages.bin.out
bunzip2: webpages.bin: trailing garbage after EOF ignored
解凍ファイルはwebpages.bin.out となります。
更にこれの解凍が必要ですが、形式がSDK独自の形式で苦労しました。
結局、SDKのflashコマンドのソースを切り出してコマンドを自作しました。
webpages.bin.out の解凍
# mkdir web
# webout webpages.bin.out web
(以下省略)
# cd web
# ls

これで、webページのファイルが展開できました。
2)linux.bin
このファイルはLinuxのカーネルです(たぶん)。
特にいじる必要が無いのでこのままにします。
2013/09/18 追記
カスタムファームウェア作成時、ヘッター部が必要なことが判明しました。
linux.bin をヘッター部16バイト付の作成は次のコマンドを実行します。
# dd if=LAN-W300NG8_v1.03.bin of=linux.bin bs=1 skip=95938 count=880658
3)rootfs.bin
このファイルはルーターの / 以下のファイルシステムです。
単なるSquashfs形式(圧縮ファイルシステム)かと思い、unsquashfs コマンドを
試すと次のエラーが発生。
# unsquashfs rootfs.bin
Parallel unsquashfs: Using 2 processors
zlib::uncompress failed, unknown error -3
read_block: failed to read block @0xfb709
read_fragment_table: failed to read fragment table index
FATAL ERROR aborting: failed to read fragment table
squashfs-toolsの最新版(4.2)のソースをコンパイルして試してもだめ
# unsquashfs rootfs.bin
Filesystem uses lzma compression, this is unsupported by this version
Decompressors available:
gzip
xz
lzma形式未対応のようで、lzma対応版を入手して試す
#unsquashfs-lzma rootfs.bin
Parallel unsquashfs: Using 2 processors
uncompress failed, unknown error 1
read_block: failed to read block @0xfb709
read_fragment_table: failed to read fragment table index
FATAL ERROR aborting: failed to read fragment table
お手上げ状態。いろいろ調べ「ままれのblog」さんの記事に行きつきました。
参考にした記事:CQW-MRB2: ファーム更新失敗と復旧 の
Edimax 3G6218Nのホームページへ行き、GPL Source Codeをダウンロードします。
のリンクから3G-6218n_RTL8196C_3G_GPL_20110121.zip を入手して
解凍しunsquashfs コマンド 取り出して利用しました。
あっけなく解凍できました。
Parallel unsquashfs: Using 2 processors
[==========================================================/] 223/223 100%
created 99 files
created 15 directories
created 70 symlinks
created 42 devices
created 0 fifos
# cd squashfs-root
# ls -l
合計 40
drwxr-xr-x 2 root root 4096 9月 30 10:35 2011 bin
drwxr-xr-x 2 root root 4096 9月 30 10:35 2011 dev
drwxr-xr-x 4 root root 4096 9月 30 10:35 2011 etc
drwxr-xr-x 2 root root 4096 9月 30 10:35 2011 home
lrwxrwxrwx 1 root root 8 9月 17 20:42 2013 init -> bin/init
drwxr-xr-x 2 root root 4096 9月 30 10:35 2011 lib
drwxr-xr-x 2 root root 4096 9月 30 10:35 2011 mnt
drwxr-xr-x 2 root root 4096 9月 30 10:35 2011 proc
drwxr-xr-x 2 root root 4096 9月 30 10:35 2011 sys
lrwxrwxrwx 1 root root 8 9月 17 20:42 2013 tmp -> /var/tmp
drwxr-xr-x 3 root root 4096 9月 30 10:35 2011 usr
rwxr-xr-x 2 root root 4096 9月 30 10:35 2011 var
lrwxrwxrwx 1 root root 8 9月 17 20:42 2013 web -> /var/web
とりあえず、イメージファイルの解凍ができました。
2013/09/18 追記
後からSDKを調べると、unsquashfs-tools のソースが含まれていました。
# cd ./rtl819x-SDK-v3.2.3/rtl819x/users/squashfs4.0/squashfs-tools
# make
これでコンパイルすればunsquashfs、ununsquashfs が作成できます。
このコマンドの利用で解凍できました。
方法と、tftpによるファームウェアの流し込み方法について調査します。
・ままれのblog : CQW-MRB2: ファーム更新失敗と復旧
・Royal Windows : Realtek SDK Firmware USBメモリの接続 MZK-MR150
« Androidタブレット CubeU9GT5 のファームウェア更新 | トップページ | 無線LANルータ LAN-W300N/G8 のカスタムファームウェアの作成 »
「LAN-W300N/G8」カテゴリの記事
- LAN-W300N/G8の管理画面が最新版Chromeで正常に表示できない(2013.12.23)
- 無線LANルータ LAN-W300N/G8 カスタムファームウェアの修正版の公開(2013.11.16)
- 無線LANルータ LAN-W300N/G8 カスタムファームウェアの公開(2)(2013.11.13)
- ロジテックからLAN-W300N/G8のソースCDが届きました(2013.11.09)
- 無線LANルータ LAN-W300N/G8 のファームウェアV1.10が公開される(2013.11.06)
コメント
« Androidタブレット CubeU9GT5 のファームウェア更新 | トップページ | 無線LANルータ LAN-W300N/G8 のカスタムファームウェアの作成 »

おおお、素晴らしい! 調査お疲れ様です。かなり試行錯誤
なさっているご様子、更なる進捗に期待しております。
当方、LAN-W300N/G8絡みでは最近チップにヒートシンクを
取り付けてみました。やはりそれなりに熱を持つ様子ですので。
取り敢えず大小のチップ計4つに取り付けを行い、短時間
確認した所、まだ筐体の吸排気口には手を加えておりませんが
そこそこ上手く放熱出来ている模様です。
設定変更後の再起動時、たまに応答しなくなる事があったので
これで多少なりとも改善してくれれば良いのですが…
ファーム起因なら無意味でしょうけどw
投稿: weberl | 2013年9月18日 (水) 03時54分
Very great post. I simply stumbled upon your blog and wanted to mention that I’ve really loved browsing your blog posts. After all I’ll be subscribing in your feed and I am hoping you write again soon!
投稿: programa para crear camisetas | 2013年10月 9日 (水) 01時11分