Openwrt:mtd/mtd_write書き込みファームウェア
3115 ワード
文書ディレクトリ
比較的に簡単で、親測は有効で、途中で電気を切らないで、タイルを変えることに注意します.
1現在のシステムパーティション情報の表示
cat /proc/mtd
:dev: size erasesize name
mtd0: 00050000 00010000 "u-boot"
mtd1: 00020000 00010000 "u-boot-env"
mtd2: 00f80000 00010000 "firmware"
mtd3: 00107440 00010000 "kernel"
mtd4: 00e78bc0 00010000 "rootfs"
mtd5: 00810000 00010000 "rootfs_data"
mtd6: 00010000 00010000 "art"
ここで、mtd 2はファームウェアパーティション(firmware)である
2バックアップファームウェアfirmware
dd if=/dev/mtd2 of=/tmp/firmware_backup.bin
winscpを使用してルータtmpディレクトリにログインし、ファームウェアファイル
firmware_backup.bin
をコンピュータに保存します.dd命令の使用は、端末に
man dd
を入力し、manマニュアルを表示することができ、本稿では後述しない.3ファームウェアfirmwareの復元
まずwinscpでファームウェアファイル
firmware_backup.bin
をルータtmp
ディレクトリに転送し、その後:mtd -r write /tmp/firmware_backup.bin firmware
リカバリが完了するとルータが自動的に再起動し、
-r
のパラメータはreboot
の役割を果たします.4バックアップリカバリOpenwrtルータ構成
新しいインストールソフトウェアを含むカスタムルータ情報をバックアップします.
dd if=/dev/mtd5 of=/tmp/overlay.bin
バックアップ設定を復元して再起動:まずwinscpでバックアップファイルoverlayをバックアップします.binはルータtmpディレクトリにアップロードします(一般的にシステムはreadonlyかもしれませんが、tmpはユーザーに対して読み書き権限があります).
mtd -r write /tmp/overlay.bin rootfs_data
ルータ構成のみのバックアップ:
sysupgrade -b /tmp/back.tar.gz
ルータ構成の復元:
sysupgrade -f /tmp/back.tar.gz
5 Openwrtルータのデフォルト設定を復元する
/overlayパーティションのすべてのファイルを削除し、再起動するとデフォルト設定を復元します.
rm -rvf /overlay/* && reboot
mtdを使用して/overlayパーティション情報を消去し、再起動するとデフォルト設定に戻ります.
mtd -r erase rootfs_data
6ルータファームウェアの更新
mtdリフレッシュの使用:まずwinscpでファームウェアファイル
xxx.bin
をルータtmp
ディレクトリに転送し、その後:mtd -r write /tmp/xxx.bin firmware
更新が完了すると、ルータは自動的に再起動されます.
sysupgrade更新を使用して、
sysupgrade
はmtd
より安全で、レンガを変える可能性は少ないことをお勧めします.まずwinscpでファームウェアファイルxxx.bin
をtmp
ディレクトリに転送し、その後:sysupgrade /tmp/xxx.bin