1

Тема: "Полноценный" linux + dropbear + система установки opkg на Keenetic

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



Посты в топике сохранены для истории. В настоящий момент все инструкции опубликованы в wiki на googlecode. Читаем http://code.google.com/p/zyxel-keenetic … ki/Welcome


Неплохая статья на 3dnews об установке пакетов: Расширяем функциональность ZyXel Keenetic

В этом топике будет публиковаться информация о новых пакетах. Можно тут задавать вопросы по готовым пакетам.
-------------------------------------------------------------------------------------------------------------------------
Далее идут старые посты, сохранены для истории.

Начну с того, что все нижеизложенное основано на одном заброшенном проекте, автор которого не я.

Итак.
1. Берем носитель с файловой системой ext2 или ext3 и помещаем в папку DISK_A1/system/bin исполняемый файл
ext_init.sh из архива (пост номер 21 - далее в этом топике).
Файл должен иметь атрибут исполнения. Можно этот файл поместить на носитель, подключенный к кинетику.

2. Перемонтируем носитель (если был подключен к кинетику) или просто подключаем к usb кинетика и ждем минуту-другую, пока в логе не появится

root    Downloading busybox
root    Unpacking busybox
root    Downloading system
root    Unpacking system
root    Generating rsa/dss keys for dropbear
root    Starting dropbear
dropbear[4261]    Running in background 

3. Подключаемся к кинетику по ssh. Логин root, пароль из пяти букв, начинающийся на z.
Выполняем к консоли
finish_install.sh
и ждем пока все завершится (создастся swap файл):

/media/DISK_A1/system/root # finish_install.sh
Creating swap file. Please wait...
128+0 records in
128+0 records out
Setting up swapspace version 1, size = 134213633 bytes 

4. Скачиваем список уже собранных пакетов командой "opkg update" и смотрим список "opkg list".

5. Устанавливаем то, что нужно. Например mc:
opkg install mc

Я думаю те, кто сами умеют собирать пакеты, разберутся, как ставить свои.

51

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

видимо пакеты криво скачал, форматнул флэшку все переустановил, сервер запустился, но не видит ни одного файла. в картинках разделяет по папкам (камера, дата), но сами файлы не видит.

52

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

roman-sln :

что не так сделал, как исправить?

Криво распаковались файлы.

roman-sln :

в картинках разделяет по папкам (камера, дата), но сами файлы не видит.

Пишите понятнее, я ничего не понял. Вы, наверное, о minidlna? Другие приложения ставятся, работают? Может флешку криво форматируете? А по minidlna я не подскажу, не использую его.

53

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

roman-sln :

но не видит ни одного файла

В файле /system/etc/minidlna.conf надо прописать пути к своему медиа контенту, напр.: media_dir=V,/media/DISK_A1/_Videos, грохнуть файл /system/tmp/minidlna/files.db и перезапустить приложение, сканирование каталогов можно определить по загрузке CPU Кинетика. Minidlna не должен ничего видеть, это сервер, а видеть должен клиент (напр. телевизор или медиа проигрыватель), м.б. это ус-во клинит, можно подсунуть ему флешку, считать содержимое, а потом перейти к виртуальным каталогам сервера minidlna.

Отредактировано vovic67 (2011-06-10 23:18:15)

54

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Ну да не сервер, а клиент, не так выразился. Клиент - Sony PS3. Сервер просканировал каталоги, нашел файлы (16 картинок). Клиент в соньке разделяет картинки но некоторым папкам (по дате, и по камере, на которую снята фотография). Дак вот при подключении к серверу, в картинках появляются наименования камер, но везде "Дорожки отсутствуют".
Дело в клиенте? т.е. у клиента PS3 проблемы с сервером minidlna? Или это может быть в чем-нибудь другом проблема?

55

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

roman-sln

Дело в клиенте? т.е. у клиента PS3 проблемы с сервером minidlna?

Быстрый поиск в google показал, что дело обстоит именно так, у многих не поддерживается PS3. Под PS3 подходит Fuppes медиа сервер, но его нет в code.google.com, я его собирал, но он заточен под PS3 и Xbox 360 и не заработал у меня с TV LG, Philips и WDTV Live, и я его забросил. Раз вы под dropbear, то попробуйте mediatomb - http://code.google.com/p/zyxel-keenetic … Fmediatomb , должен работать с PS3 "прямо из коробки". В его конфиге посмотрите что-то связанное с PS3 и попробуйте разремарить, web-морда - http://192.168.1.1:49153 .

Но если судить по описанию, то minidlna все-таки поддерживает PS3, можно попробовать новую версию - http://code.google.com/p/zyxel-keenetic … lna-1.0.20 , или, еще проще,  взять здесь - http://forum.ixbt.com/topic.cgi?id=14:54600-12#365 бинарник и просто подсунуть в .../bin, удалить и пересканировать базы.

Отредактировано vovic67 (2011-06-11 16:45:24)

56

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

mediatomb уже попробовал, катринки тож не увидела сонька, видео файлы увидела но запускать не стала (((. Попробовал к конфиге поменять

<protocolInfo extend="yes"/><!-- For PS3 support change to "yes" -->

перестала выдеть и видео файлы (.
Жаль, а так хотел запустить сервер на keenetic'e.
Может быть есть еще готовые DLNA для него?

57

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

roman-sln

видео файлы увидела но запускать не стала

Немного дополнил предыдущее сообщение.
MediaTomb затачивал под ТВ, возможно Mimetype не подходит, вот, например: http://welinux.ru/post/3093/ , должно получиться. Но если без транскодирования не получится - тогда засада.

Попробуйте Fuppes под Windows - http://fuppes.ulrich-voelkel.de/download/ , если нормально заработает, то попробую восстановить, то, что делал под Кинетик.

Отредактировано vovic67 (2011-06-11 17:06:26)

58

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Собран и выложен nfs-kernel-server.
Для работы необходим запущенный portmap. Запускается с помощью
/media/DISK_A1/system/etc/init.d/S19portmap start
"Шары" настраиваются в файле
/media/DISK_A1/system/etc/exports
Для запуска используйте скрипт
/media/DISK_A1/system/etc/init.d/K20nfsd start

Замеченная проблема с текущими настройками
Если у "расшариваемого"файла нет разрешений для остальных (прочих, others), то на клиенте получим "Permission denied". Скорее всего исправляется настройками в /media/DISK_A1/system/etc/exports. Я не очень гуглил на эту тему, кто найдет, как это исправить - отпишите.
Если прописать exports приблизительно так

/media/DISK_A1  *(ro,no_subtree_check,no_root_squash,insecure,sync,anonuid=0,anongid=0)

то удаленный root получает доступ ко всем файлам.

PS Ядро у кинетика собрано без CONFIG_FS_POSIX_ACL, требуемого для nfsd.ko. Поэтому добавил пару файлов к этому модулю ядра при сборке (target/linux/generic/patches-2.6.23/40-keenetic_nfsd.patch). Есть и менее кривые решения, может быть в будущем переделаю.

59

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Обновлен minidlna до версии 1.0.20. Все говорим спасибо vovic67.
Возможно стоит в конфигурации minidlna уеличить значение notify_interval до 90 или более секунд.

60

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Собран sftp-server (пакет openssh-sftp-server). Работает, проверялось в Windows с помощью WinSCP.
Установленный dropbear автоматически запускает sftp-server при соответствующих запросах.

61

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Запустил на кинетике Pyload - http://pyload.org/ с web интерфейсом. Памяти ему нужно изрядно. Подтормаживает и работает. Выйдет Keenetic Giga - на нем нужно смотреть. Скриншот с кинетика
http://keenetic.zyxmon.org/files/pyload.jpg
Пожалуй, пакеты собирать не буду. Но исходники в trunc оставлю. tesseract-ocr там недоделанный.

62

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

pyload уже давно выложен в репозитарий. По его установке и настройке читаем отдельную тему.

Выложены

aria2 (консольная download программа, может даже скачивать и раздавать торренты).
В моей конфигурации железа работает только с флагом '--async-dns=false'. Почему так - не разобрался.

transmission-2.32
Еесли используете предыдущую версию transmission-2.13 из репозитария, то следует или использовать новый файл /media/DISK_A1/system/var/transmission/settings.json или в своем старом добавить слеш в конце строки

"rpc-url": "/transmission/",

63

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Если новый transmission 2.32 начинает падать с собщениями "kernel transmission-da: page allocation failure", то пытаемся вылечить проблему так:
В исполняемый скрипт init.d/S??* прописываем команды

echo "1048576" > /proc/sys/net/core/wmem_max
echo "4194304" > /proc/sys/net/core/rmem_max

(Эти команды используются в прошивке от zyxel с новым transmission).
И команду

echo "2048" > /proc/sys/vm/min_free_kbytes

Вместо 2048 может быть другое число, подобранное экспериментально. Вполне возможно, хватит и меньшего значения.

64

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Здравствуйте. У меня следующая проблема. Необходим шейпер. Сейчас стоит Asus WL500G2 с прошивкой dd-wrt. Шейпер там настроил скриптом:

TCA="tc class add dev br0"
TFA="tc filter add dev br0"
TQA="tc qdisc add dev br0"
SFQ="sfq perturb 10 quantum 1500"
Ipt="iptables -t mangle -A POSTROUTING "
tc qdisc del dev br0 root default 2
tc qdisc add dev br0 root handle 1: htb
tc class add dev br0 parent 1: classid 1:1 htb rate 12000kbit
$TCA parent 1:1 classid 1:10 htb rate 500kbit ceil 9000kbit prio 1
$TCA parent 1:1 classid 1:11 htb rate 300kbit ceil 1800kbit prio 0
$TCA parent 1:1 classid 1:12 htb rate 300kbit ceil 1800kbit prio 0
$TCA parent 1:1 classid 1:13 htb rate 200kbit ceil 1800kbit prio 0
$TCA parent 1:1 classid 1:14 htb rate 200kbit ceil 1800kbit prio 0
$TCA parent 1:1 classid 1:15 htb rate 500kbit ceil 3500kbit prio 1
$TCA parent 1:1 classid 1:16 htb rate 150kbit ceil 500kbit prio 1
$TCA parent 1:1 classid 1:17 htb rate 150kbit ceil 300kbit prio 1
$TCA parent 1:1 classid 1:18 htb rate 150kbit ceil 300kbit prio 1
$TCA parent 1:1 classid 1:19 htb rate 150kbit ceil 300kbit prio 1
$TCA parent 1:1 classid 1:24 htb rate 500kbit ceil 1800kbit prio 1
$TQA parent 1:10 handle 10: $SFQ
$TQA parent 1:11 handle 11: $SFQ
$TQA parent 1:12 handle 12: $SFQ
$TQA parent 1:13 handle 13: $SFQ
$TQA parent 1:14 handle 14: $SFQ
$TQA parent 1:15 handle 15: $SFQ
$TQA parent 1:16 handle 16: $SFQ
$TQA parent 1:17 handle 17: $SFQ
$TQA parent 1:18 handle 18: $SFQ
$TQA parent 1:19 handle 19: $SFQ
$TQA parent 1:24 handle 24: $SFQ
$TFA parent 1:0 prio 1 protocol ip handle 10 fw flowid 1:10
$TFA parent 1:0 prio 0 protocol ip handle 11 fw flowid 1:11
$TFA parent 1:0 prio 0 protocol ip handle 12 fw flowid 1:12
$TFA parent 1:0 prio 0 protocol ip handle 13 fw flowid 1:13
$TFA parent 1:0 prio 0 protocol ip handle 14 fw flowid 1:14
$TFA parent 1:0 prio 1 protocol ip handle 15 fw flowid 1:15
$TFA parent 1:0 prio 1 protocol ip handle 16 fw flowid 1:16
$TFA parent 1:0 prio 1 protocol ip handle 17 fw flowid 1:17
$TFA parent 1:0 prio 1 protocol ip handle 18 fw flowid 1:18
$TFA parent 1:0 prio 1 protocol ip handle 19 fw flowid 1:19
$TFA parent 1:0 prio 1 protocol ip handle 24 fw flowid 1:24
$Ipt -d 192.168.1.2 -s ! 192.168.1.0/24 -p tcp --dport ! 2369 --dport !63283 -j MARK --set-mark 10
$Ipt -d 192.168.1.14 -s ! 192.168.1.0/24 -j MARK --set-mark 11
$Ipt -d 192.168.1.5 -s ! 192.168.1.0/24 -j MARK --set-mark 12
$Ipt -d 192.168.1.12 -s ! 192.168.1.0/24 -j MARK --set-mark 13
$Ipt -d 192.168.1.17 -s ! 192.168.1.0/24 -j MARK --set-mark 14
$Ipt -d 192.168.1.107 -s ! 192.168.1.0/24 -j MARK --set-mark 15
$Ipt -d 192.168.1.105 -s ! 192.168.1.0/24 -j MARK --set-mark 16
$Ipt -d 192.168.1.135 -s ! 192.168.1.0/24 -j MARK --set-mark 17
$Ipt -d 192.168.1.136 -s ! 192.168.1.0/24 -j MARK --set-mark 18
$Ipt -d 192.168.1.125 -s ! 192.168.1.0/24 -j MARK --set-mark 19
$Ipt -d 192.168.1.118 -s ! 192.168.1.0/24 -j MARK --set-mark 24
$Ipt -d 192.168.1.110 -s ! 192.168.1.0/24 -j MARK --set-mark 24
$Ipt -d 192.168.1.120 -s ! 192.168.1.0/24 -j MARK --set-mark 24
$Ipt -d 192.168.1.111 -s ! 192.168.1.0/24 -j MARK --set-mark 24
$Ipt -d 192.168.1.117 -s ! 192.168.1.0/24 -j MARK --set-mark 24          

Сейчас провайдер подкинул скорость до 36mbit и asus с ней не справляется. Возможно ли это реализовать на Zyxel Keenetic?
В linux не силен особо не пинайте.
Не нашел в ваших репозиториях tc и iptables как их установить.

65

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

AtlanticTver, iptables в прошивке. Не уверен, что с имеющимся пропатченным ядром можно реализовать полноценный шейпер.
Некоторая "приоритезация" трафика (Diffserv) есть в кинетике, поизучайте файл /bin/firewall.sh, а в нем функцию set_tos().

66

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

В репозитарии обновлены версии transmission, lighttpd. Добавлены subversion (сервер и клиент), fdisk, cfdisk, ....

67

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Обновлены пакеты mc и minidlna.

68

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Zyxmon :

AtlanticTver, iptables в прошивке. Не уверен, что с имеющимся пропатченным ядром можно реализовать полноценный шейпер.
Некоторая "приоритезация" трафика (Diffserv) есть в кинетике, поизучайте файл /bin/firewall.sh, а в нем функцию set_tos().

А sfq есть в ядре? Можно было бы попробовать прикрутить http://wl500g.info/showthread.php?t=13609

69

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

AndreyUA :

А sfq есть в ядре?

Вроде есть:

CONFIG_NET_SCHED=y
CONFIG_NET_SCH_FIFO=y

# 
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=y
CONFIG_NET_SCH_HTB=y
....
CONFIG_NET_SCH_SFQ=y
....

Собрал tc (это userspace приложение). Желающие могут пробовать
Тут была ссылка, она удалена, все давно в репозитарии!!!!
PS Аппаратный NAT при "пробах" отключать.

70

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Zyxmon :
AndreyUA :

А sfq есть в ядре?

Вроде есть:

CONFIG_NET_SCHED=y
CONFIG_NET_SCH_FIFO=y

# 
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=y
CONFIG_NET_SCH_HTB=y
....
CONFIG_NET_SCH_SFQ=y
....

Собрал tc (это userspace приложение). Желающие могут пробовать
Тут была ссылка, она удалена, все давно в репозитарии!!!!

PS Аппаратный NAT при "пробах" отключать.

Для меня шейпер - темный лес smile. Дай ссылку в тему на хоботе, мож кто заинтересуется?

71

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

AndreyUA :

Дай ссылку в тему на хоботе, мож кто заинтересуется?

Думаю заинтересованные и понимающие сюда сами заглядывают. Большого смысла давать ссылку сюда на ixbt не вижу.

72

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

Имею связку Zyxel Kуутуешс + HDD WD USB2.0 на 2ТБ.

Диск разбит на несколько разделов.
Раздел с фильмами в ext2 форматнут.

ставлю minidlna, запускаю скан и через некоторое время кинетик намертво виснет. путем экспериментов определил, что виснет из-за minidlna, при сканировании некоторых фильмов.
поставил mediatomb ситуация та же - виснет намертво на некоторых фильмах.

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

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

73

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

И еще такой вопрос - где можно взять утилиту renice для Кинетика?
хочу, чтобы автоматом для samba приоритет менялся на 0, иначе фильмы тормозят в просмотре, т.к. по сети смотрю.

или как запустить самбу с заданным приоритетом?

74

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

axi01 :

И еще такой вопрос - где можно взять утилиту renice для Кинетика?

Многих утилит нет, ну и что?

axi01 :

как запустить самбу с заданным приоритетом?

Изучите /bin/setup_samba.sh
запускайте самбу из скрипта /media/DISK_A1/....., отключив в web конфигураторе. nice - присутствует.

75

Re: "Полноценный" linux + dropbear + система установки opkg на Keenetic

axi01 :

ставлю minidlna, запускаю скан и через некоторое время кинетик намертво виснет

Надо, чтобы и папка "system" располагалась на разделе с EXT2 (DISK_A1). В minidlna пропускать файлы нельзя.

Добавлено
Или установить mediatomb, скомпилированный без ffmpeg, самое "железобетонное" решение. Бинарник можно взять здесь: http://forum.ixbt.com/topic.cgi?id=14:53260:4716#4716 (ссылка на upwap.ru).

Отредактировано vovic67 (2011-08-08 09:17:49)