- Не написал с _какой_ прошивки переходил
- лучше постить в http://wl500g.info/showthread.php?t=17136
- сразу после перенастройки сохрани nvram+flashfs, если проблема повториться - восстанови и проверь
- upnp включен?
- Не написал с _какой_ прошивки переходил
- лучше постить в http://wl500g.info/showthread.php?t=17136
- сразу после перенастройки сохрани nvram+flashfs, если проблема повториться - восстанови и проверь
- upnp включен?
Те же проблемы, Корбина Москва, прошивка последняя Олеговская, так что дело здесь не в прошивке, из-за ошибок роутер считает что потерянно соединение а L2TP продолжает держать тунель, наблюдается при загрузке канала близкой к максимальной и большом количестве соединений
С количеством соединений взаимосвязи есть однозначно, но насчет непричасности роутера - сомневаюсь, безобразие появилось после обновления прошивки ... пробуем откатиться ... =)
Откатился на 1.9.2.7-10 - уже несколько часов раздают и торрент и ослик на ВСЕ корбиновские 5 мегабит в обе стороны... ИМХО что-то было в прошивке...
Last edited by bobah_spb; 27-05-2009 at 23:22. Reason: Дополнение
с текущим svn невозможно обновиться через web интерфейс.
подозреваю, что что-то поломано c html/js компрессором
ASUS WL5xx: FW 1.9.2.7-d-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | bip irc proxy
ASUS RT-N1x: FW 1.9.2.7-rtn-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | fake ident daemon
Со сборкой прошивки разобрался. Теперь вопрос относительно изменений -
как сделать так что бы сразу после прошивки в папке /tmp/local/... появлялись нужные мне скрипты с возможностью их исправить при необходимости ? (с добавлением бинарников через router/Addon разобрался уже)
выглядит это так, что выполняется pre-shutdown, но write не запускается.странно, у меня получается
а как выглядит ошибка?
Причем, через раз --- иногда срабатывает иногда нет. Иногда вторая попытка записи без перезагрузки бывает успешной. Как минимум один раз проблема наблюдалась на r285, так что не факт, что она связана именно с компрессором. В консоли выдается такое сообщение:
PHP Code:
/ # nfsd: last server has exited
nfsd: unexporting all filesystems
rpciod: active tasks at shutdown?!
usb.c: deregistering driver usblp
ehci_hcd 01:03.2: remove state 1
usb.c: USB disconnect on device 01:03.2-0 address 1
usb.c: USB disconnect on device 01:03.2-1 address 2
usb.c: USB disconnect on device 01:03.2-1.1 address 3
usb.c: USB disconnect on device 01:03.2-1.7 address 4
Unable to disconnect USB device from the SCSI subsystem
usb.c: USB bus 3 deregistered
usb.c: USB disconnect on device 01:03.0-0 address 1
hub.c: usb_hub_port_status (1) failed (err = -19)
hub.c: connect-debounce failed, port 1 disabled
hub.c: cannot disable port 1 of hub 1 (err = -19)
hub.c: usb_hub_port_status (1) failed (err = -19)
hub.c: get_hub_status failed
usb.c: USB bus 1 deregistered
usb.c: USB disconnect on device 01:03.1-0 address 1
usb.c: USB bus 2 deregistered
Device 08:02 not ready.
I/O error: dev 08:02, sector 2668600
Когда-то работал с ASP.NET'ом и тоже оптимайзил контент по размеру, во времена dial-up'ов это было особенно актуально =)
Вобщем предлагаю такой вариант:
1) отказ от поддержки НУ СОВСЕМ старых браузеров.
2) весь HTML контент жмется gzip'ом и в этом сжатом виде присутствует в прошивке(!). При HTTP GET посылается клиенту этот сжатый контент с HTTP хедером(!) 'Content-encoding: gzip'. Современные бродилке уже много лет поддерживают сей хедер. Толку от зиповки больше чем от вырезания пробельчиков =)
3)а динамический контент вынести из Server Side Includes формы в генерируемый .js скрипт, который юзая DHTML обновляет контролы в соответствии с nvram
4) Можно еще чекать клиентский HTTP хедер 'Accept-encoding' для редиректа на страничку где предлагают обновить залежавшийся с 95-го года браузер =)
5) Ну и самая дичь - загнать все в одну страницу (со скрытыми контролами\дивами), но это тока после выполнения вышеперечисленных пунктов можно сделать. Еще больше java-script, еще лучше сжатие.
для понимания механизма нагуглил первую попавшуюся ссылку - http://betterexplained.com/articles/...p-compression/
PS. во вложении один файлик умеет HTML режексами жать, другой - Java-Script жать, тоже режексами, тока написано на C#, но думаю знатокам проблем не составит на sed перевести сиё безобразие =)
первое вроде как уже выполнено, второе смысла не имеет, т.к. веб морда лежит в squashfs, а она сжата lzma. А остальное --- так это ж делать надо. А желающих как то не заметно...
Еще вариант - можно переделать вэб-морду на Silverlight. Тогда работу по формированию\редактированию nvram можно будет переложить на апплет + можно будет с легкостью создавать графики и пр. приблуды которые будут eye-candy =) + удобно будет мэйнтейнить сию морду для РАЗНЫХ рутеров, а то щас в жаваскрипты посмотрел и как-то совсем грустно стало =)
Если сильверлайт приемлим (Mac OS и еще какие-то оськи поддерживаются официально МСом, остальные - через Moonlight ) то как спец по .NET'у/Mono мог бы попробовать освоить еще одно направление и заодно вам помочь. Только перед тем как открещиваясь говорить нет советую повнимательнее присмотреться к сему чуду.
Учитывая кол-во фанов/фанатиков никсов всех мастей на этом форуме, я попросил 'ПОВНИМАТЕЛЬНЕЕ ПРИСМОТРЕТЬСЯ К СЕМУ ЧУДУ'. Даже 8МБ хватит Silverlight контрол разместить, поверь =))) ибо никаких .NET/Mono на рутер ставить не нуно.
от рутера единственное что нужно будет - уметь выдавать nvram (по HTTP например, как сейчас http://192.168.1.1/WL500g.PremiumV2.CFG ) и принимать измененый (HTTP POST). Далее - одна страничка с Silverlight контролом, который в виде одного *.xap (сжатая .NET DLL с ресурсами ) файла будет присутствовать на рутере. Вся веселуха будет происходить на клиенте (проверка валидности введеных параметров и т.д. ).
С помощью бесплатного VS Express 2008 это безобразие можно будет собрать и править логику отработки контролов
С помощью Expression Blend можно наворить UI без распухания размеров бинарей.
Еще раз говорю - могу попробовать если технология будет приемлима для клиентов, посему и спросил про приемлимость на ваших машинах и машинах потенциальных юзверей рутера.... а так у меня есть время куда девать - я щас с помощью MS Phoenix Framework и LLVM C#-подобный, но более высоко и низкоуровневый компилер делаю =) т.е. с высокоуровневым шаблонным метапрограммированием ( часть идей и паттернов из C++ boost взята ) и ассемблерными вставками, веселуха одним словом )))
Здравствуйте! На машинке WL-500gP со 128 мегабайтами памяти и прошивкой с http://code.google.com/p/wl500g/ столкнулся с проблемой недостаточного максимального количества открытых файлов на процесс. Выражается это в нехватке файловых дескрипторов для запущенного rtorrent с разнообразными проявлениями этой нехватки, в зависимости от того, на что не хватило - разрывы соединений, отваливание веб-морды (отдельное СПАСИБО Novik за веб-интерфейс, великолепное творение!) и прочие подобные неприятности.
По умолчанию ulimit -n говорит циферку 1024. И я никак не могу придумать, как можно увеличить ее для rtorrent'а. Rtorrent выполняется от непривилегированного пользователя p2p, переход под которого происходит в стартовом скрипте. Соответственно, сам пользователь p2p сделать ulimit -n 8192 не может. Пользователь с uid=0 изменить значение может, но оно не наследуется при переходе под пользователя p2p (что в общем, тоже логично). Ничего похожего на /etc/security/limits.conf, как во взрослых linux на glibc, я не обнаружил (попытки положить limits.conf в /etc/security и /opt/etc/security успехом не увенчались).
После всех попыток вопрос остается открытым - каким образом глобально для всех пользователей или для конкретного непривилегированного пользователя (это предпочтительней) можно задать ulimit -n?
Last edited by FiXXXeR_wl500gP; 24-07-2009 at 15:52.
можно попробовать как то так:
Code:/ # su -pc "ulimit -a" - admin time(seconds) unlimited file(blocks) unlimited data(kb) unlimited stack(kb) 8192 coredump(blocks) 0 memory(kb) unlimited locked memory(kb) unlimited process 256 nofiles 1024 vmemory(kb) unlimited locks unlimited
ASUS WL5xx: FW 1.9.2.7-d-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | bip irc proxy
ASUS RT-N1x: FW 1.9.2.7-rtn-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | fake ident daemon
Лимиты все-таки не переменные окружения, и с ними такой фокус не проходит, к сожалению... Вот иллюстрация проделанного эксперимента:
su ... изменило лимит открытых файлов, но для пользователя root, под которым и выполнялся ulimit... Для непривилегрованного пользователя alex облегчения не наступило....Code:[alex@gw alex]$ id && ulimit -a && su -pc "id && ulimit -n 8192 && ulimit -a" - root && id && ulimit -a uid=1000(alex) gid=500(users) groups=500(users),0(root),14(uucp),501(smbusers),1002(sendsms) time(seconds) unlimited file(blocks) unlimited data(kb) unlimited stack(kb) 8192 coredump(blocks) 0 memory(kb) unlimited locked memory(kb) unlimited process 1024 nofiles 1024 vmemory(kb) unlimited locks unlimited Password: #запрос пароля от su uid=0(root) gid=0(root) groups=0(root),1002(sendsms) time(seconds) unlimited file(blocks) unlimited data(kb) unlimited stack(kb) 8192 coredump(blocks) 0 memory(kb) unlimited locked memory(kb) unlimited process 1024 nofiles 8192 vmemory(kb) unlimited locks unlimited uid=1000(alex) gid=500(users) groups=500(users),0(root),14(uucp),501(smbusers),1002(sendsms) time(seconds) unlimited file(blocks) unlimited data(kb) unlimited stack(kb) 8192 coredump(blocks) 0 memory(kb) unlimited locked memory(kb) unlimited process 1024 nofiles 1024 vmemory(kb) unlimited locks unlimited
А откуда вообще у нас берется это 1024? Не зашито ли оно в одном из заголовочных файлов uClibc? Может, попробовать это глобально поменять пересборкой uClibc, раз внешние рычаги воздействия отсутствуют?...