1

Тема: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Внимание владельцам Zyxel KEENETIC 4G rev.A
Наконец-то я сообразил, как можно сделать поддержку USB дисков, вообще не меняя прошивку роутера! cool
Теперь никакой потери гарантии - всё полностью обратимо, как с кинетиком.
Вот ссылка на пакет: usbdisk_sup_wget.rar - он должен загружаться на роутер с FTP или HTTP сервера при каждой загрузке роутера.
Хаб поддерживается.
А теперь, о проблемах:
1) Автозапуска для загрузки нет - каждый раз при перезагрузке роутера нужно будет запускать загрузку пакета вручную (хотя можно использовать скрипт отсюда, возможно, после небольшой доработки)
2) Хотя с диска запускается скрипт ext_init.sh (как в Кинетике) и можно поставить на диск проги, совместимости с репозиторием Zyxmon'a нет. Это из-за различия в путях: В Кинетиках(и Гигах) пакеты ставятся в папку /media/DISK_A1/system а здесь - в /tmp/DISK_A1/system
Просто папки /media в оригинальных прошивках 4ж просто нет, поэтому пришлось делать DISK_A1 в /tmp
По-идее, можно сделать свой репозиторий, в который выкладывать пакеты, переделанные для работы в /tmp
Некоторые программы переделать очень легко, другие придётся пересобирать.
3) Для кинетик 4ж рев. В нет(у меня) нужных модулей(хотя попробую поискать), поэтому он не поддерживается.
Если найдутся модули, сделаю версию пакета и для рев. В (вот только проверить не смогу)
4) Пока ставить на диск практически нечего. Практически все пакеты(большая часть)требуют адаптации, но времени катастрофически не хватает, на всё. Поэтому, если кто подключится к процессу - буду только рад smile
Хорошо, что получилось сделать FTP и самбу.

В общем, отписываемся, задаём вопросы.

UPD
Появились сообщения, что всё работает и на 4ж rev.B, поэтому, у кого 4ж В  - пробуйте и отписывайтесь.
Есть возможность(используя chroot), ставить приложения из репозитория кинетика, а также Entware. Подробности смотреть тут: Chroot

UPD2
У кого Keenetic 4G II - прошивают его прошивкой V1(если ещё не сделали этого), и тоже пробуют, и ОТПИСЫВАЮТСЯ!
UPD3
По последней информации, на Keenetic 4G II тоже всё работает.
Итого, имеем суперуниверсальное решение по поддержки USB дисков для немодифицированных прошивок 3-х роутеров: Keenetic 4G rev.A , Keenetic 4G rev.B , Keenetic 4G II .

Отредактировано Dr.Acid (2014-02-02 20:43:42)

2

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Dr.Acid :

Хотя с диска запускается скрипт ext_init.sh (как в Кинетике) и можно поставить на диск проги, совместимости с репозиторием Zyxmon'a нет. Это из-за различия в путях: В Кинетиках(и Гигах) пакеты ставятся в папку /media/DISK_A1/system а здесь - в /tmp/DISK_A1/system

mount --bind не поможет?

Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn...
Keenetic Giga & WD Mybook Live user

3

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

ZimniY :

mount --bind не поможет?

ZimniY, а чего биндить? - в корне прошивки физически нет папки media
Первое, что я делал в своих прошивках, это добавлял эту папку в корень файловой системы - сначала для последующего бинда, потом сделал её rw (ramfs), как у самого кинетика. Или я чего не понимаю? В принципе, это единственная причина несовместимости с пакетами Zyxmon'a - невозможность использовать путь /media/DISK_A1
Если пакеты пересобрать под пути /tmp/DISK_A1 - они будут работать (большая часть).
Хотя, не исключаю возможность, что при правильной настройке opkg какие-то пакеты(в которых не прошиты жёстко пути) можно будет ставить и использовать(после небольшого "допиливания" скриптов) - надо подумать на эту тему.

4

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Немного обновил пакет - теперь всё можно запустить в 2 клика!
С рев. В засада - нужных модулей(sd_mod fuse ext2 nls_base nls_cp1251 nls_utf8 fat vfat), походу, нигде нет sad
Попытаюсь добавить поддержку Кинетик 4ж рев. В в тулчейн Заксел (не уверен, что получится - с Лайт В пробовал что-то подобное, но по-моему, нормально не получилось) но на это потребуется много сил(и времени).
Если получится собрать модули, кто-то должен будет проверить хотябы один - что грузится, т.к. у меня 4ж рев. В нету.
Никакого практического смысла в этом пакете нет, если нет поддержки сервисов: поэтому сейчас главная задача - сделать ftp и самбу. Ну а там и остальное можно...

Отредактировано Dr.Acid (2013-01-18 18:49:56)

5

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Вот инсталляционный пакет для "Заводских" 4ж: system_4g_or_v1.rar
После установки, на диске получается система, есть opkg, можно ставить пакеты(не все - см. далее). После перезагрузки всё сохраняется(но чтобы диск смонтировался, естественно, надо запускать usbdisk_sup_wget)
Так же есть самба, ftp.
Теперь о проблемах:
1) Эта система несовместима с текущим репозиторием Zyxmona. Я, конечно, "костыльнул" кое-чего, чтобы это немного работало, но все-таки... полноценной совместимости нет. sad
Примеры/пояснения:
Обновление списка пакетов(update) работает, upgrade тоже. Обновление opkg и dropbear(они пропатчены - отличаются от тех, что в репозитории) я заблокировал, выставив им "запредельные" версии. install в принципе, вроде работает. Такие пакеты, как nano(без привязки к путям и без стартовых скриптов в init.d) ставятся и работают без проблем. Если взять, например, udpxy то он тоже будет работать, надо только отредактировать его скрипт запуска, прописав там правильные пути (т.е. везде заменить /media/DISK_A1 на /tmp/DISK_A1). А вот mc запускается, но с глюками и руганью - он использует несуществующие пути. Некоторые пакеты по этой причине вообще не будут работать(как я понимаю, таких довольно много). Одним словом, что-то работает, но не всё - репозиторий не совместим. sad  По-идее, надо делать свой, отдельный репозиторий, тогда всё будет ОК.

Отредактировано Dr.Acid (2013-01-27 18:56:47)

6

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Dr.Acid :

Вот инсталляционный пакет для "Заводских" 4ж

Есть ли поддержка Rev.B?

7

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

ResPasha :

Есть ли поддержка Rev.B?

См. пост №1  wink
Сам инсталляционный пакет Rev.B поддерживает(ему вообще пофиг), Rev.B не поддерживает пакет usbdisk_sup_wget (т.е. нет возможности смонтировать USB диск). В принципе, на основе этой наработки(system_4g_or) планирую сделать очередную версию SIRAM (там поддержка Rev.B будет, но это всё в оперативке роутера).
С пакетом usbdisk_sup_wget всё упирается в отсутствие необходимых модулей ядра(писал каких). Если кто сможет их собрать - выкладывайте - сделаю пакет. Сам тоже попробую работать в этом направлении, но это будет очень медленно(в данный момент пытаюсь "разобраться" со сборкой модулей для Лайт Rev.B, разберусь - перейду к 4ж Rev.B. Лайт В есть у друга, 4ж В нет).

8

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

В архиве в readme написано "Активируем поддержку USB дисков." — как это сделать?

9

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Rojers :

В архиве в readme написано "Активируем поддержку USB дисков." — как это сделать?

Я был уверен, что это понятно - прочитать первый пост темы. wink  Т.е. скачать архив оттуда, распаковать и почитать readme.txt Если останутся вопросы, задавайте.

10

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

В пакете usbdisk_sup_wget (пост 1) сделал поддержку "горячего" подключения/отключения дисков. Сейчас пока тестирую, отлаживаю(возможно, переделаю скрипт automount.sh). Времени мало. Как все проверю, выложу обновленную версию.

11

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Наконец-то доделал пакет usbdisk_sup_wget (пост 1) "Горячее" подключение/отключение дисков работает. Обновил - ссылка прежняя, в посте №1.
Теперь, я так понимаю, на очереди самба, и ФТП. (Они уже практически есть в  system_4g_or_v1, но, похоже, не работают) Это всё пойдёт аддонами - будет ставиться на диск. Поддержки веб-интерфейсом не будет(хотя подумаю - может, что-нибудь придумаю).

Проверил - самба ок, vsftp не работает. Причину нашёл, разбираюсь, что можно сделать.

Поправил(немного) пакет system_4g_or_v1 - теперь работает самба и FTP сервер. Перезалил на прежнее место.

Отредактировано Dr.Acid (2013-01-27 18:35:34)

12

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Добрый день. У меня Keenetic 4g rev. B с официальной прошивкой KEENETIC_4G-V2.00[AABV.3]B11.
Keenetik 4g постоянно теряет подключенный к нему usb hdd Iomega 1TB. Иногда работает сутки иногда 2-3 но всегда теряет жесткий диск. В в USB устройствах он пропадает. После того как выдернуть и вставить в usb все становится нормально до следущей проблемы.
Обращался в службу поддержки Zyxel - сказали что 4G только для модемов и предложили поменять на Keenetic.
Я думаю что скорее всего дело в прошивке. Может есть у кого-нибудь мысли как сделать работу с usb hdd стабильнее.
Заранее благодарен.

13

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

pro85 :

У меня Keenetic 4g rev. B с официальной прошивкой KEENETIC_4G-V2.00[AABV.3]B11.
Keenetik 4g постоянно теряет подключенный к нему usb hdd Iomega 1TB.

Ну, во первых, по прошивкам V2 есть отдельная тема, во вторых - их до сих пор так и не "расковыряли", в третьих - форум вообще посвящен прошивкам V1, в четвертых - USB диски в V1 для Keenetic 4g rev. B до сих пор всё ещё не поддерживаются. Отсюда вывод - воздействовать как либо(программно) на роутер не получится. Остается 2 варианта:
1) Может быть, у вас иногда происходят скачки напряжения в сети - в эти моменты винт и "отваливается"  (весьма вероятно) Можно попробовать включить роутер через бесперебойник(хотя, не факт, что это поможет против такой проблемы - тут нужен бесперебойник типа online)
2) Возможно, в самом винте включена какая-то функция энергосбережения, он "засыпает", а "проснуться" уже не может.(Кстати - а помогает ли "теплая" (из меню в веб интерфейсе) перезагрузка роутера, или только физическое отключение/подключение диска?) Это уже надо тогда с ним разбираться(как отключить, если возможно).
Других вариантов у меня нет.

Отредактировано Dr.Acid (2013-02-17 22:47:12)

14

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Dr.Acid :

С пакетом usbdisk_sup_wget всё упирается в отсутствие необходимых модулей ядра(писал каких). Если кто сможет их собрать - выкладывайте - сделаю пакет. Сам тоже попробую работать в этом направлении, но это будет очень медленно(в данный момент пытаюсь "разобраться" со сборкой модулей для Лайт Rev.B, разберусь - перейду к 4ж Rev.B.

Плохие новости: Собрать(рабочие) модули для 4ж В(и Лайт В) не получится. Подозреваю, причина - в изменениях(неизвестных) в конфигурации ядра. Исходников прошивки для 4ж В, как известно, нет, файла конфигурации ядра - тоже.
Что делать: Идти на ixbt в эту тему http://forum.ixbt.com/topic.cgi?id=14:57251  (там появляются авторы прошивки V1) и упрашивать, умолять, угрожать авторов собрать и выложить нужные модули(а ещё лучше - исходники, тулчейн для сборки прошивки).
Если они снизойдут до бедных, несчастных владельцев кинетиков 4ж В и выложат модули - наступит праздник под названием "USB диск".

15

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Сделал вариант пакета usbdisk_sup_wget(chroot) со встроенным chroot
Требуется проверка - (сам проверил - работает).
Что дает:
1) На кинетиках 4ж рев А с заводской прошивкой теперь диск будет доступен по пути /media/DISK_A1 (в пакете из 1го поста путь /tmp/DISK_A1).
2) Соответственно, теперь можно ставить инсталляционные пакеты для 4ж с модифицированными прошивками (рекомендую system_4g_v1.rar или system_4g_keevi.rar , искать в этой теме: http://forum.zyxmon.org/topic78-zyxel-k … osti.html) - будет совместимость с репозиторием Zyxmona(конечно, не на 100%, но по большей части)
3) При подключении по SSH (через dropbear) корневая папка доступна на запись (т.е. файлы и папки можно создавать ВЕЗДЕ)
4) Соответственно, можно попробовать заюзать OptWare, EntWare
Пробуем, отписываемся - пакет ещё сырой, возможно, понадобится доработка.
Особенно важно посмотреть, как будут вести себя другие диски, подключаемые к роутеру (например, DISK_B1) - куда они будут монтироваться (должны в /tmp)
Также жду предложений, как сделать так, чтобы они(тоже) монтировались(или точнее, "попадали") в /media
ВАЖНО Владельцы 4ж рев В - тоже пробуйте: есть информация, согласно которой у вас тоже может заработать!

Отредактировано Dr.Acid (2013-04-10 21:05:48)

16

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Приветствую.
Пытаюсь тут, несмотря на предостережение, использовать ваш пакет с rev.B, будь он проклят.
Есть успехи - флешка (вернее, картридер, не всё ли равно?) на ext2 подцепилась:

Apr  4 04:10:11 kernel:  /dev/scsi/host3/bus0/target0/lun0:
Apr  4 04:10:11 kernel:  unknown partition table
Apr  4 04:10:11 kernel: sd 3:0:0:0: [sda] Attached SCSI removable disk
Apr  4 04:10:11 kernel: sd 3:0:0:0: Attached scsi generic sg0 type 0
Apr  4 04:10:11 kernel: usb-storage: device scan complete
~ # ls /dev/scsi/host3/bus0/target0/lun0
disc
~ # mount /dev/scsi/host3/bus0/target0/lun0/disc /tmp/test
~ # ls /tmp/test
lost+found
~ # mount
rootfs on / type rootfs (rw)
/dev/root on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
none on /var type tmpfs (rw)
none on /sys type sysfs (rw)
none on /proc/bus/usb type usbfs (rw)
/dev/scsi/host3/bus0/target0/lun0/disc on /var/tmp/test type ext2 (rw)

Прошивка V1.10.B.RU.NDMS, пакет usbdisk_sup_wget(chroot).

upd: Всё, разобрался, у меня просто питания хабу не хватило, от того и проблемы. Теперь всё работает. Можно считать, что с rev.B проблем больше нет.

Отредактировано Carrey (2013-04-04 12:08:31)

17

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Carrey :

Пытаюсь тут, несмотря на предостережение, использовать ваш пакет с rev.B, будь он проклят.
Есть успехи - флешка (вернее, картридер, не всё ли равно?) на ext2 подцепилась:

Ревизия В ??!!?? Точно? Просто это - не возможно! Я ничего не понимаю.

Вечером(когда буду дома, и осмыслю все это) задам вам пару вопросов - просьба ответить.

18

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Да, точно.
Вообще, флешка распознается и прописывается в /dev/scsi и без вашего пакета.
От него нужны только модули для поддержки ФС. Они нормально вставляются:

Module                  Size  Used by    Tainted: P
vfat                    8896  0
fat                    43408  1 vfat
ext2                   38992  0
nls_utf8                 896  0
nls_cp1251              3680  0
nls_base                4608  4 vfat,fat,nls_utf8,nls_cp1251
sd_mod                 19248  0
fuse                   39056  0
igmpsn                 53584  0
rt2860v2_ap           779904  1
sierra                  9648  0
powerstat               1920  0
ralink_wdt               896  0
xt_mark                  736  0
xt_mac                   928  0
ipt_webstr              3200  0
ipt_ipp2p               7648  0
rtled                   3376  1 rt2860v2_ap
nf_nat_pptp             1568  0
nf_nat_proto_gre        1168  1 nf_nat_pptp
nf_conntrack_pptp       3728  1 nf_nat_pptp
nf_conntrack_proto_gre     2656  1 nf_conntrack_pptp
nf_nat_h323             5792  0
nf_conntrack_h323      36160  1 nf_nat_h323

На любые вопросы отвечу, единственное - не могу воткнуть больше одного usb, т.к. для хаба нету блока питания, и сторонний софт пока ставить не научился толком. Если надо будет - расшарю доступ к железке, но придется пару дней подождать до этого.

19

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Обновил 15ый пост - исправил пакет  usbdisk_sup_wget(chroot), теперь он работает!  big_smile
Пробуйте, и те, у кого 4ж rev.A, и те, у кого 4ж rev.B - ходят слухи, что модули от ревизии А работают и на ревизии В, а значит, должен работать и весь пакет.
Самая интересная его особенность - возможность записи во все папки системы!
Можно попробовать установить систему OptWare(или EntWare). Ну, или Debian  wink

20

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Подтверждаю, Keenetic 4G rebB, прошивка http://l10n.ndl.ru/firmwares/NDMSv1/270 … 235342.bin и архив http://yadi.sk/d/HNFFBClA3xZyK (usbdisk_sup_wget(chroot)) из поста 15 - модули ядра грузятся.
Флэшко в EXT3 монтироваться не пожелала,  но после переформатирования в vFAT смонтировалась (в /tmp/DISK_A1/)

Отредактировано S-trace (2013-04-13 22:32:45)

21

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

S-trace :

Флэшко в EXT3 монтироваться не пожелала,  но после переформатирования в vFAT смонтировалась

И не должна была - поддерживаются только: ext2, FAT и NTFS. smile

22

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Dr.Acid :

И не должна была - поддерживаются только: ext2, FAT и NTFS.

Эм... А разве on-disk формат у ext3 не является обратно совместимым с ext2?
Кстати, пришла в голову невероятная идея, но она может сработать. Что, если залить после образа SquashFS в mtd4 (там примерно с 0x310000 всё забито 0xFF - это нам даёт 3,375 метров свободного пространства!) ещё один образ SquashFS, но уже содержащий модифицированную прошивку (с необходимыми каталогами, скриптами и тому подобным), а потом просто монтировать лёгким скриптиком (или даже последовательностью команд в telnet) этот образ куда-нить (через mount -o offset=3211264 (0x310000 dec) и затем переключать корневую ФС в него с помощью pivot_root?

Это даст нам возможность кастомизировать прошивку (то есть грузиться она будет из штатной, а затем просто переключаться в нашу). Нет нужды модифицировать сток, соответственно риск брика минимален (проверить содержимое адресов перед установкой очень просто, хоть тем же dd+md5sum). Ну и плюс экономим память.

Отредактировано S-trace (2013-04-14 00:14:38)

23

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

Накропал тут скриптик для Expect, чтобы под Linux стартовать систему эту (а то виндуза проклятая имеет автоматизацию, а Linux православный - нет, непорядок!).

#!/usr/bin/expect -f
set password SuperPuperPasswd
set ipaddr router
set server 192.168.0.2

set timeout -1
spawn telnet $ipaddr
match_max 100000
expect "Password : "
send -- "$password\r"
expect "*KEENETIC 4G> *"
send "flash || sh\r"
expect "*~ #"
send "wget -O /tmp/start_wget.sh http://$server/start_wget.sh\r"
expect "*~ #"
send "chmod +x /tmp/start_wget.sh\r"
expect "*~ #"
send "/tmp/start_wget.sh http://$server/\r"
expect "*~ #"
send "sleep 5\r"
expect "*~ #"
send "mount /tmp/DISK_A1/system/web/ /web -o bind\r"
expect "*~ #"
send "exit\r"
expect "*KEENETIC 4G> *"
send "exit\r"
expect eof

Все настройки сохраняются вверху (password - пароль для telnet-доступа, ipaddr - адрес роутера (у меня имя - роутер в hosts прописан), server - HTTP-сервер где файлы лежат.

Уважаемый Dr.Acid, не могли ли Вы собрать аналогичным образом модули ядра для nfs-kernel-server для Keenetic 4G revB? Модули из пакета http://zyxel-keenetic-packages.googleco … enetic.ipk грузиться не хотят, а unfsd ограничивает скорость копирования по сети файлов на уровне 1.9 мегабайт, думаю с nfs-kernel-server поприличнее мало-мало скорость будет.

Кстати, с system_4g_keevi.rar обнаружено несколько проблем:
0. zyxel-keenetic-packages.googlecode.com отдаёт IPv6 адрес, который не поддерживается. Решение - прописать в /etc/hosts строчку

173.194.71.82 zyxel-keenetic-packages.googlecode.com

1. wget не находит libssl.so. Решение - удалить /media/DISK_A1/system/bin/wget, провести opkg update, поставить libopenssl и провести обновление wget.

24

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

S-trace:

Эм... А разве on-disk формат у ext3 не является обратно совместимым с ext2?

Нужен модуль ext3.ko - я пробовал собрать(давным-давно), но что-то не получилось у меня, тогда я собрал ext2 а на ext3 забил.

Кстати, пришла в голову невероятная идея

Попробуйте!
Я уже делал всякие эксперименты(правда, с 4ж А, а там флешка поменьше - 4Мб). Например, я сделал сильно урезанную прошивку(в надежде на переделанное ядро кинетика, которое больше, чем у 4ж), которая только монтировала диск, и передавала туда управление. На диске я положил прошивку от обычного кинетика. Таким образом, получилось, что грузится прошивка кинетика с флешки! Это работает+ "прошивку" можно безболезненно править, как надо, не боясь окирпичить роутер. (Вот только без флешки с прошивкой роутер не работает.)
Да и зачем такие сложности(автостартовать ведь это все-равно не будет?), если можно все на диске проделать? - места всё таки маловато там, как мне кажется.

Накропал тут скриптик для Expect, чтобы под Linux стартовать систему эту

Интересный скрипт, спасибо smile  Т.е. теперь и из под Линукса можно wget "толкать" - хорошо...

не могли ли Вы собрать аналогичным образом модули ядра для nfs-kernel-server для Keenetic 4G revB

Я (собственно, как и все другие, кроме авторов прошивок wink ) могу собирать модули только к 4ж и Лайту ревизий А.
Дать гарантию, что они заработают на рев В, я не могу. Вот модули от кинетика(простого) точно не работают на Лайт А и 4ж А (кроме tun.ko), а на Гиге все модули кинетика работают. На 4ж А не идут модули от Лайт А (во всяком случае, что я пробовал). Ладно - будет время, попробую собрать nfs-kernel-server (для 4ж А)
(Хотя, вы и сами это можете.)
Насчет keevi - да, возможно, есть там косячки(хотя работало у меня). Но сейчас, если честно, гораздо интересней было-бы прикрутить в инсталляционный пакет php версию - она более функциональна(сделать это можно, но уж больно утомительно будет "выдирать" это все...)

Отредактировано Dr.Acid (2013-04-14 18:26:01)

25

Re: Zyxel KEENETIC 4G с официальной(заводской) прошивкой

S-trace :

не могли ли Вы собрать аналогичным образом модули ядра для nfs-kernel-server для Keenetic 4G

А здесь http://forum.zyxmon.org/post3222.html#p3222 смотрели? Там, вроде есть (в папке Zyxel) - попробуйте.