Є такий аматор фахівець з модифікацій
прошивок для роутерів як DANtes. Велике дякую йому.
Так одна з останніх прошивок для роутера TP-LINK TL-WR1043ND побудована на основі таких даних:
Router Model TP-LINK TL-WR1043ND
Firmware Version OpenWrt Firmware Kamikaze (r25068) / LuCI Trunk 0.10+svn6942
Kernel 2.6.32.28
Особливість цієї прошивки - наявність пакету MPCS з підтримкою USB-COM адаптерів для підключення супутникових ресиверів застарілого типу, що мають тільки RS232 порт для комунікації з зовнішніми пристроями, наприклад OpenBox 800.
Прошивка була встановлена зі стандартної, все працює. Але щоб розширити функціонал є можливість додавання додаткових пакунків. Але деякі пакунки зав'язані на версію ядра операційної системи і знайти їх досить проблематично готовими, так як існують пакунки для більш нових версій.
Так необхідно було включити додатково у роутері підтримку зовнішніх накопичувачів USB-HDD.
kmod-fs-ntfs
kmod-usb-storage
Якзо завантижити ці пакунки зі сховища пакунків opewrt, то отримаємо подібні помилки:
Downloading http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/....
Multiple packages (kmod-usb-core and kmod-usb-core) providing same name marked HOLD or PREFER. Using latest.Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for mountd:
* kernel (= 2.6.39.4-1) * kernel (= 2.6.39.4-1) * kernel (= 2.6.39.4-1) *
* opkg_install_cmd: Cannot install package ....
Тому потрібно зробити самому пакунок на основі поточного ядра Kernel 2.6.32.28.
- Потрібна віртуальна машина, наприклад VMWare Player (безкоштовний)
- Образ Linix системи, для швидкості я звантажив вже готовий образ встановленої системи Ubuntu Server 11.04 для VMWare (http://thoughtpolice.co.uk).
- Налаштовуємо мережний адаптер віртуального образу як Bridged.
- Підключаємося до віртуальної машини, завантажується входимо до системи використовуючи логін notroot, пароль вказаний у файлі README-vmware-image.txt.
- Ubuntu Server використвує DHCP для отримання IP у роутера системи. У привітанні системи ви побачите цю адресу.
- Змінюємо пароль на свій, passwd
- Оновлюємо базу пакунків, sudo apt-get update
- Встановлюємо Midnight Commander mc, sudo apt-get install mc
- Тепер жити простіше, mc
- Створюємо теку openwrt і заходимо до неї cd openwrt
- Завантажуємо образ Kernel 2.6.32.28, wget http://ftp.gts.lug.ro/kernel/linux/kernel/v2.6/longterm/v2.6.32/linux-2.6.32.28.tar.bz2
- Завантажуємо trunk Openwrt release 25068 він на базі linux-2.6.32.27, до теки "trunk-25068", svn co svn://svn.openwrt.org/openwrt/trunk@25068 trunk-25068
- Редагуємо файл ~/openwrt/trunk-25068/target/linux/ar71xx/Makefile, змінюючи LINUX_VERSION:=2.6.32.27 на LINUX_VERSION:=2.6.32.28
- Переходимо до теки ~/openwrt/trunk-25068
- Запускаємо конфігуратор make menuconfig
- Вибираємо Target System (Atheros AR71xx/AR7240/AR913x), Target Profile (TP-LINK TL-WR1043ND v1)
- Вибираємо для USB-COM: Kernel modules, USB Support, kmod-usb-serial, kmod-usb-serial-pl2303, kmod-usb-serial-ftdi
- Вибираємо для USB-HDD: Kernel modules, kmod-usb-storage, kmod-fs-msdos, kmod-fs-ntfs, kmod-fuse, kmod-scsi-core
- Вибираємо для Wifi Entreprіse Security (якщо потрібно): Network, hostapd
- Зберігаємо налаштування: Esc, Do you wish to save your new OpenWrt configuration? , Yes
- Компіляція: make або більш детальне make V=99
- У процесі компіляції потрібен доступ до мережі інтернет для завантаження компонентів, вони завантажуються до теки ~/openwrt/trunk-25068/dl
- Якщо будуть проблеми з завантаженням linux-2.6.32.28.tar.bz2, то можна перенести попередньо завантажений файл до теки ~/openwrt/trunk-25068/dl
- Результат буде в теці ~/openwrt/trunk-25068/bin/ar71xx/packages, файли з розширенням .ipk
- Для доступу з роутера до цих файлів встановлюємо http server, наприклад apache: sudo apt-get install apache2
- Підключаємо теку з готовими пакетами до http server, ln -s ~/openwrt/r25068/trunk/trunk-25068/bin/ar71xx /var/www/openwrt
- Доступ до файлів буде як адреса http://ip-ubuntu-server/openwrt/packages
- Далі підключаємося до роутера через SSH я використовую PuTTY.
- Завантажуэмо наші пакети готові для ядра 2.6.32.28: opkg install http://ip-ubuntu-server/openwrt/packages/kmod-usb-storage_2.6.32.28-1_ar71xx.ipk
- Повторюємо для усіх необхідних надалі пакунків, kmod-scsi-core_2.6.32.28-1_ar71xx.ipk, kmod-fs-ntfs_2.6.32.28-1_ar71xx.ipk ....
- Надалі вже налаштовуємо підключений HDD
P.S.
Завантаження модуля - insmod, вивантаження rmmod, перелік завантажених lsmod
|
VMware - network Bridged |
|
Ubuntu Server: make menuconfig |
|
Роутер: opkg list-installed |
|
Роутер: підключення HDD |
Немає коментарів:
Дописати коментар