Резервное копирование Broadcom CFE

From DD-WRT Wiki

Jump to: navigation, search

Common Firmware Environment (CFE), также называемый "cafe", представляет собой интерфейс встроенного ПО (прошивки) и загрузчика, разработанный Broadcom для 32-битных и 64-битных одноплатных систем (system-on-a-chip). Он предназначен для использования в качестве гибкого инструментария инициализации CPU и кода начальной загрузки для использования на встроенных процессорах. Это примерно как BIOS на компьютере.

Contents

[edit] Как сделать резервную копию CFE

Допустим, вы боитесь, что когда-нибудь потребуется использовать резервную копию CFE (загрузчика) на случай, если маршрутизатор рано или поздно перестанет работать и "превратится в кирпич".

Если у вас есть маршрутизатор Linksys WRT54G/GL/GS и CFE уже неисправен, вы можете попробовать набор инструментов для восстановления Skynet Repair Kit, чтобы создать себе новый. Версии CFE для этих и других моделей маршрутизаторов также можно найти на сайте проекта CFE collection project (также смотрите старый форум проекта).

Существует несколько способов резервного копирования CFE:

[edit] Через веб-интерфейс (предпочтительный метод)

Этот метод работает начиная с ревизии SVN 8428 (версии post-RC5). Резервное копирование CFE легко выполняется в браузере:

http://{IP-адрес_маршрутизатора}/backup/cfe.bin

Например, IP-адрес маршрутизатора с DD-WRT по умолчанию - 192.168.1.1 (замените, если вы его изменили):

http://192.168.1.1/backup/cfe.bin

[edit] По Telnet или SSH

Возможно, это работает и на других сторонних прошивках. Подключитесь к маршрутизатору по протоколу Telnet или SSH (SSH должен быть включен!) и просто введите следующую команду для всех сборок, кроме Micro:

dd if=/dev/mtd/0 of=/tmp/cfe.bin

В версии v24 (Mini и Mega) вставьте эту строку в поле Commands на вкладке Administration → Commands и нажмите кнопку Run Commands. Затем скачайте файл cfe.bin из каталога /tmp по протоколу FTP, SFTP или SCP (используя, например, WinSCP).


На сборках Micro всё немного сложнее:

cat /dev/mtd/0 > /tmp/www/cfe.jpg

Затем в браузере перейдите по адресу http://IP-адрес_маршрутизатора/user/cfe.jpg и сохраните файл cfe.bin на диске. Полученный файл должен иметь размер 256 КБ.

Примечание: файл "/user/cfe.jpg" ссылается на "/tmp/www/cfe.jpg".


Вы можете сделать то же самое для mtd/1 (ядро, прошивка), mtd/2 (часть JFFS, если есть) и mtd/3 (NVRAM)

[edit] С помощью адаптера JTAG

Предполагается, что у вас уже есть кабель адаптера JTAG, готовый к использованию с маршрутизатором. Используйте следующую команду:

wrt54g -backup:cfe

Вы можете сделать то же самое с NVRAM, kernel и т.д.

[edit] Восстановление CFE

[edit] По Telnet или SSH

ПРЕДУПРЕЖДЕНИЕ. Не пытайтесь восстановить CFE по Telnet или SSH, если вы не уверены, что вы делаете и почему вы это делаете. Если всё сделано неправильно, после этого маршрутизатор может перестать загружатся и работать!

Следующее было протестировано и работает на маршрутизаторе wl-500gp:

Сначала скопируйте CFE в каталог /tmp маршрутизатора (используя что-то вроде WinSCP или wget), а затем

mtd unlock cfe
mtd write -f /tmp/cfe_new.bin cfe

[edit] С помощью адаптера JTAG

Используйте адаптер JTAG для восстановления CFE. Например,

tjtag -flash:cfe