Собираем OpenWRT для D-link dir-320 (A2)

В руки попал «d-link dir -320» и сразу его судьба была предрешена. В ближайшем магазине по этому случаю была куплена флешка на 16 Гб, на которой мы будем хранить систему и что-нибудь ещё. Описывать перепрошивку dir-320 со стандартной на OpenWRT буду на ходу, .  Cобирать будем на ubuntu 12.04 , поэтому ядро должно быть 3.2.0. Теперь обо всем по порядку. Куплена была следующая флешка — USB2.0 Flash Kingston 16 Gb DataTraveler Micro Mini/16GB.

Собираем прошивку OpenWRT

Устанавливаем Subversion

sudo apt-get install subversion

Скачиваем последние исходники

svn co svn://svn.openwrt.org/openwrt/trunk/ openwrt

Переходим в папку со скачанными исходниками

cd openwrt

Обновляемся:

./scripts/feeds update -a && ./scripts/feeds install -a

Cобираем tools и toolchain:

make prereq && make tools/install && make toolchain/install

Build dependency: Please install the GNU C++ Compiler (g++). Build dependency: Please install ncurses. (Missing libncurses.so or ncurses.h) Build dependency: Please install zlib. (Missing libz.so or zlib.h) Build dependency: Please install GNU awk. Build dependency: Please install flex. Build dependency: Please install git (git-core) v1.6.5 or later. Prerequisite check failed. Use FORCE=1 to override. make: *** [tmp/.prereq-build] Ошибка 1

Исправляем ошибки:

sudo apt-get install git-core g++ flex gawk libncurses5-dev zlib1g-dev

Cобираем tools и toolchain:

make prereq && make tools/install && make toolchain/install

Конфигурируем прошивку:

make menuconfig

Должны увидеть:

Для интегрирования пакетов устанавливаем <*>, если хотим включить пакет для последующей установки, но вам не нужно его интегрировать, то напротив нужного пакета установите <M>. Устанавливаем следующие пункты:

Target System (Broadcom BCM947xx/953xx)  —>  Broadcom BCM947xx/953xx

Если есть необходимость, то можете заранее произвести сетевые настройки

Image configuration  —> Preinit configuration options  —>

Включаем модуль файловой системы ext4, при необходимости можно включить и другие

Kernel modules  —> Filesystems  —>  kmod-fs-ext4

Устанавливаем Модуль USB, поддержку USB 2.0 и USB накопителей:

Kernel modules —> USB Support —> kmod-usb-brcm47xx Kernel modules —> USB Support —> kmod-usb-core Kernel modules —> USB Support —> kmod-usb-ohci Kernel modules —> USB Support —> kmod-usb-storage Kernel modules —> USB Support —> kmod-usb2

Так как мы будем систему размещать на USB, устанавливаем потдержку монтирования:

Base System —> block-mount

Устанавливаем поддержку «utf8»

Kernel modules  —>  Native Language Support  —> kmod-nls-utf8

Добавляем веб-админку. Необходима для первоначальных настроек (установить пароль для входа по ssh)

Administration  —> webif —> webif Administration  —> webif —> webif-applications

Устанавливаем набор утилит для поддержания файловых систем ext2, ext3 и ext4:

Utilities  —> Filesystem  —> e2fsprogs

Для удобства я ещё ставлю Midnight Commander (вы можете это и пропустить):

Utilities  —> filemanager  —> mc

Выходим из конфигурирования и сохраняемся

  Конфигурируем ядро:

make kernel_menuconfig

Device Drivers —> Memory Technology Device (MTD) support —> RAM/ROM/Flash chip drivers —> Flash chip driver advanced configuration options —> Specific CFI Flash geometry selection —> Support 8-bit buswidth Device Drivers  —> Memory Technology Device (MTD) support  —> RAM/ROM/Flash chip drivers  —> Flash chip driver advanced configuration options —> Specific CFI Flash geometry selection —> Support  16-bit buswidth

Выходим и сохраняем конфиг

Собираем:

make V=99

Если компиляция прошла успешно (рисунок выше) прошивки будут находится в каталоге bin/brcm47xx.  Для dir-320 нужно выбрать openwrt-brcm47xx-squashfs.tx. В каталоге  bin/brcm47xx/packages находятся все собранные .ipk пакеты, те которые были отмечены «М».

[download id=»111″ format=»1″]

Share

You may also like...

5 комментариев

  1. Как я могу связаться с автором темы, кто-нибудь подскажет?

  2. salt:

    Благодарю, помогло 😉

  3. Roman:

    В начале написано «Описывать перепрошивку dir-320 со стандартной на OpenWRT буду на ходу»
    Так а сам процесс прошивки полученным файлом Dir-320 где?
    В стандартном процессе писано как использовать файл bin.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *