PDA

Bekijk de volledige versie : ADOS - замена Download Master



Pages : [1] 2 3 4 5 6 7

DINI
16-07-2007, 20:36
В соответствии с своим обещанием (http://wl500g.info/showthread.php?t=9274), выкладываю скрипт, который, надеюсь, станет полноценной заменой Download Master, как известно, не работающего на прошивках Олега.

Вот некоторые возможности моего скрипта:
Обработка неограниченного количества ссылок на файлы (в том числе поиск ссылок в тексте).
Многопользовательский режим работы с поддержкой учетных записей администраторов и обычных пользователей.
Запуск закачек по расписанию. Как вариант — принудительная привязка закачек к расписанию, чтобы, например, закачки производились только ночью.
Поддержка различных БД: как встроенной в PHP SQLite, так и популярной MySQL.
Поддержка различных программ-качалок (cURL, wget и др.). Для каждой закачки можно использовать свою программу.
Поддержка пользовательских каталогов. Каждый файл можно сохранять в определенную директорию в зависимости от его расширения или желания пользователя.
Поддержка аутентификации и переадресации. Полезная вещь для скачивания с FTP или при использовании платных аккаунтов.
Ограничение общей скорости закачек для каждого из пользователей.
Обновление состояния закачек в режиме реального времени.
Поддержка различных языков.


Описание и инструкции: части первая (http://wl500g.info/showpost.php?p=59590&postcount=27) и вторая (http://wl500g.info/showpost.php?p=59591&postcount=28).
Подготовка, установка и настройка: советы и рекомендации (http://wl500g.info/showpost.php?p=59637&postcount=42).

---------------
Текущая версия: 1.3.9 (сборка 74)

Ссылка на скачивание: http://download.dini.su/ados/stable (511 Кб)
md5: c301c8dabae7c7efee29f71cd146ba8c
Код обновления: jmcGL7BYBWoGwNpOwQle/gF+V7XDuoKk5YU=
Последнее обновление: 7 сентября 2008 года 21:20 мск

---------------
Внимание!

К сожалению, я больше не могу осуществлять (http://wl500g.info/showpost.php?p=110740&postcount=1197) техническую поддержку своего скрипта.
Возможно, ее будут осуществлять другие люди, если они захотят это делать. Поэтому, пожалуйста, проявляйте терпение, если у вас возникнут вопросы или проблемы, и относитесь с уважением к тем людям, которые захотят вам помочь. Спасибо.

Также вынужден сообщить, что дальнейшее развитие проекта моими силами маловероятно. По этой причине последняя версия скрипта распространяется по лицензии GPL v3 (http://www.gnu.org/licenses/gpl.html) (неофициальный перевод (http://gpl3rus.googlecode.com)). Если у кого-либо возникнет желание и появится возможность развивать мой проект, то теперь никаких правовых проблем возникать не должно.
Спасибо всем пользователям моего скрипта и спасибо всем за теплые отзывы о моей работе!

На личные сообщения я отвечать, скорее всего не буду, т.к. я здесь буду появляться редко и просто не буду знать о появлении новых сообщений. Тем не менее, по вопросам, связанным со скриптом (однако не связанным с его технической поддержкой), вы можете обращаться по электронному адресу: ados [собака] dini [точка] su (этот ящик я стараюсь просматривать пару раз в неделю, поэтому быстрого ответа тоже не ждите).

---------------
FAQ

В: Все установил(а) как надо, но ничего не работает.
О: Может быть, дело в кодировке (http://wl500g.info/showpost.php?p=69108&postcount=529)?

В: Постоянно выводится страница авторизации, даже если логин и пароль указаны верно.
О: Удалите все cookies, установленные системой, и переустановите ее. Во время установки поля "Домен, используемый в cookie" и "Путь, используемый в cookie" оставьте пустыми.

В: Файл вечно находится в состоянии "Закачивается".
О: Проверьте наличие ошибок (http://wl500g.info/showpost.php?p=64196&postcount=306) при выполнении заданий cron.

В: Будут ли поддерживаться торренты?
О: Скорее всего, не будут. Ведь уже есть программы, имеющие и WebUI, и даже GUI для Windows. Например, rTorrent (http://wl500g.info/showthread.php?t=12110).

Если у вас проблема со скачиванием файла по определенной ссылке, то эту ссылку отправляем мне в личку (http://wl500g.info/private.php?do=newpm&u=9955), а не пишем ее в теме!

При описании проблемы указывайте:
версию скрипта
название и версию модуля закачки, который вы используете
номер ошибки (смотрите в журнале)
название и версию вашего браузера
наиболее полное и подробное описание ситуации, при которой возникает ошибка

---------------
ОБЯЗАТЕЛЬНОЕ ДЕЙСТВИЕ:
Для того, чтобы не получать при установке такую ошибку:


Fatal error: This system requires PHP 5.1.3 or over. Your PHP version is
Необходимо проделать следующее:

В файле /opt/share/www/ados/install/index.php в строке 141 меняем "<" на ">"

т.е. if( strcmp( $phpver[1], "5.1.3" ) < 0 )

меняем на

if( strcmp( $phpver[1], "5.1.3" ) > 0 )
---------------
История версий

1.0.0 beta 1: первый публичный релиз.
1.0.0 beta 2: список изменений (http://wl500g.info/showpost.php?p=61453&postcount=195).
1.0.0 beta 3: список изменений (http://wl500g.info/showpost.php?p=61683&postcount=212).
1.0.0 beta 4: список изменений (http://wl500g.info/showpost.php?p=62271&postcount=278).
1.0.0 RC 1: список изменений (http://wl500g.info/showpost.php?p=64563&postcount=337).
1.0.0 RC 2: список изменений (http://wl500g.info/showpost.php?p=64647&postcount=345).
1.0.0 RC 3: список изменений (http://wl500g.info/showpost.php?p=64796&postcount=366).
1.0.0: список изменений (http://wl500g.info/showpost.php?p=65122&postcount=386).
1.0.1: список изменений (http://wl500g.info/showpost.php?p=65239&postcount=403).

1.1.0 beta 1: список изменений (http://wl500g.info/showpost.php?p=66085&postcount=442).
1.1.0: список изменений (http://wl500g.info/showpost.php?p=66874&postcount=458).
1.1.1: список изменений (http://wl500g.info/showpost.php?p=67307&postcount=479).
1.1.2: список изменений (http://wl500g.info/showpost.php?p=67478&postcount=489).
1.1.3: список изменений (http://wl500g.info/showpost.php?p=68038&postcount=517).
1.1.4: список изменений (http://wl500g.info/showpost.php?p=68548&postcount=519).

1.2.0 beta 1: список изменений (http://wl500g.info/showpost.php?p=69342&postcount=537).
1.2.0 beta 2: список изменений (http://wl500g.info/showpost.php?p=69487&postcount=540).
1.2.0 beta 3: список изменений (http://wl500g.info/showpost.php?p=70047&postcount=553).
1.2.0 beta 4: список изменений (http://wl500g.info/showpost.php?p=70373&postcount=566).
1.2.0 beta 5: список изменений (http://wl500g.info/showpost.php?p=71065&postcount=576).
1.2.0: список изменений (http://wl500g.info/showpost.php?p=71780&postcount=597).
1.2.1: список изменений (http://wl500g.info/showpost.php?p=73856&postcount=640).
1.2.2: список изменений (http://wl500g.info/showpost.php?p=74202&postcount=642).
1.2.3: список изменений (http://wl500g.info/showpost.php?p=76198&postcount=674).
1.2.4: список изменений (http://wl500g.info/showpost.php?p=77258&postcount=688).

1.3.0 beta 1: список изменений (http://wl500g.info/showpost.php?p=80389&postcount=759).
1.3.0 beta 2: список изменений (http://wl500g.info/showpost.php?p=80943&postcount=773).
1.3.0 beta 3: список изменений (http://wl500g.info/showpost.php?p=81284&postcount=787).
1.3.0 beta 4: список изменений (http://wl500g.info/showpost.php?p=81453&postcount=793).
1.3.0 beta 5: список изменений (http://wl500g.info/showpost.php?p=81880&postcount=803).
1.3.0: список изменений (http://wl500g.info/showpost.php?p=83205&postcount=823).
1.3.1: список изменений (http://wl500g.info/showpost.php?p=85253&postcount=878).
1.3.2: список изменений (http://wl500g.info/showpost.php?p=85873&postcount=928).
1.3.3: список изменений (http://wl500g.info/showpost.php?p=87412&postcount=978).
1.3.4: список изменений (http://wl500g.info/showpost.php?p=88403&postcount=984).
1.3.5: список изменений (http://wl500g.info/showpost.php?p=90172&postcount=1013).
1.3.6: список изменений (http://wl500g.info/showpost.php?p=91972&postcount=1036).
1.3.7: список изменений (http://wl500g.info/showpost.php?p=94235&postcount=1062).
1.3.8: список изменений (http://wl500g.info/showpost.php?p=94458&postcount=1063).
1.3.9: список изменений (http://wl500g.info/showpost.php?p=110753&postcount=1199)


P.S. Скрипт называется Automatic DOwnloading System (ADOS). Ничего оригинальнее и лучше не придумал, но и так, вроде, ничего :)
P.P.S. For English description and instructions go here (http://wl500g.info/showthread.php?t=13227).

Venik
17-07-2007, 12:00
ждёмс :rolleyes:

Reyter
17-07-2007, 15:32
Вау!!!
Только-только установил Download Engine (http://wl500g.info/showthread.php?t=9947) и начал потихоньку радоваться жизни, а тут еще такую вкуснятину обещают!
Ждем с нетерпением! :D

DINI
18-07-2007, 12:03
Вчера, к сожалению, уже не успевал выложить обещанные скрины, поэтому выкладываю сейчас:

tab_downloads.gif — Вкладка "Закачки"
tab_categories.gif — Вкладка "Категории"
tab_schedule.gif — Вкладка "Расписание"
tab_users.gif — Вкладка "Пользователи"
tab_menu_user.gif — Меню, доступное обычным пользователям (на предыдущих скринах видно меню для админа)

Есть, конечно, еще много интересных вещей, но я, к сожалению, могу прикрепить только 5 файлов. Поэтому ждите самого скрипта, чтобы все увидеть :)

Maximus43
18-07-2007, 14:44
Ни фига се!!
Чувствуется системный подход и солидный опыт создания web приложений. Дизайн безупречен, нечего сказать...
Респект!

Venik
18-07-2007, 14:44
судя по скринам довольно-таки прикольно ;)
ждём релиз. уже с нетерпением...

Reyter
18-07-2007, 15:43
А-ФИ-ГЕТЬ! :eek:
Неужели всех нас в скором будущем ожидает ТАКОЕ счастье?
Просто не верится. :D

SergeyVl
18-07-2007, 16:28
Судя по скринам - "внешность" и функциональность скрипта отличная. Надеюсь и качество, скорость работы и "безглючность" тоже будет на хорошем уровне :)

DINI
18-07-2007, 17:04
Спасибо за отзывы. Приятно, что мою работу уже оценили :)


Надеюсь и качество, скорость работы и "безглючность" тоже будет на хорошем уровнеСкорость работы целиком и полностью зависит от той белой коробки, куда скрипт будет установлен (я имею в виду роутер). В принципе, по количеству выполняемых функций скрипт приближается к форуму (например, этому), однако я старался не перегружать память, очищая ненужные переменные, и делать минимальное количество запросов к БД (будет использоваться SQLite).

Сейчас время работы скрипта составляет от 0.015 до 0.25 секунд, однако для управления списками элементов (т.е. множеством элементов сразу, особенно закачками) количество запросов и выполняемых в функциях циклов возрастает. Соответственно, чем большее количество элементов изменяется, тем медленнее работает скрипт.
Но, думаю, что видимые тормоза могут появиться только в том случае, если элементов будет более сотни или даже тысячи. Желающим протестировать быстродействие осталось дождаться бета-версии.

Что касается глюков, то их появление нельзя исключать, особенно на первых стадиях после публикации. Скрипт достаточно сложный и объемный (я сам точно не считал, но приблизительно я написал 15-20 тысяч строк кода), поэтому глюки, скорее всего, неизбежны.
Поэтому я надеюсь на помощь тех людей, которые поставят себе бета-версию скрипта.

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

alexhemp
18-07-2007, 22:45
Если добавить поддержку enchanced-ctorrent то цены ему не будет...

Там есть протокол управления, CTSC его использует.

DINI
18-07-2007, 23:00
Если добавить поддержку enchanced-ctorrent то цены ему не будет...В ближайшее время поддержку торрентов я точно добавлять не буду, т.к. задачи такой я перед собой не ставил и скрипт создавал для возможности управления обычными закачками и только.
Кроме того, насколько мне известно, уже существуют различные веб-интерфейсы для управления торрентами со всеми необходимыми функциями.

Тем не менее, в одной из будущих версий работа с торрентами может стать возможной, но обещать я не буду.

Reyter
19-07-2007, 07:52
Действительно, все клиенты торрентов уже имеют вполне функциональные web-интерфейсы, так что изобретать велосипед нет смысла.
Гораздо интереснее было бы написать интерфейс для MicroDC, вот тогда бы у нас был ПОЛНЫЙ комплект всех возможных качалок! ;)

Antonio_99RUS
19-07-2007, 09:33
Гораздо интереснее было бы написать интерфейс для MicroDC

Если не ошибаюсь, гораздо интереснее было бы "научить" его русскому языку.

Reyter
19-07-2007, 12:36
Если не ошибаюсь, гораздо интереснее было бы "научить" его русскому языку.
Вообще-то давать торрентам русские имена - это моветон. Но если появится нормальный интерфейс, наверное найдется кто-нть, кто сможет пропатчить микроДС на предмет русского языка.
Ладно, пошел оффтоп, завязываем. ;)

Antonio_99RUS
19-07-2007, 13:20
Это же вроде не торрент, а клиент DC++? А там на хабах царит полная анархия.

Mirage-net
19-07-2007, 14:56
Вообще-то давать торрентам русские имена - это моветон. Но если появится нормальный интерфейс, наверное найдется кто-нть, кто сможет пропатчить микроДС на предмет русского языка.
Ладно, пошел оффтоп, завязываем. ;) Давать русские имена торрентам это проблема тех кто размещает закачку ... Но это все равно есть и в enhanced-ctorrent все нормально пашет а для доступа к ним с ББ нужно использовать патченый vsftp здесь была тема где я выкладывал уже скомпиленный .... но этот топик не имеет отношения к торрентам также как и к DC

Reyter
19-07-2007, 15:24
Это же вроде не торрент, а клиент DC++? А там на хабах царит полная анархия.
Виноват, зарапортовался. :) Один фиг - веб-интерфейс не помешает

DINI
19-07-2007, 15:36
Давайте мы уже закончим обсуждать торренты и DC++. Последнего в моем скрипте не будет точно, а торренты, повторю, если и будут, то точно не в ближайшем будущем.

DINI
19-07-2007, 20:59
Скрипт полностью готов и переходит на альфа-стадию.

Завтра и в выходные буду самостоятельно искать глюки и баги. Может быть, еще что-то по ходу подкорректирую. А в понедельник, как и обещал, выложу уже бета-версию.

А пока еще немного скринов:

files_add_step_01 - 03.gif — процесс добавления ссылок. Количество необходимых усилий с вашей стороны сведено к минимуму. Достаточно просто вставить в поле текст, содержащий ссылки (первый скрин, сами ссылки выделены [выделил я в фотошопе, а не сам скрипт :)] ).
Затем скрипт обработает введенный текст и попытается найти в нем ссылки. Если таковых окажется две или более, будет предложено выбрать, какие именно следует скачивать (второй скрин).
Далее выведется окно (на третьем скрине видно, что его можно перемещать в окне браузера, если необходимо) с настройками первой из выбранных ссылок. Эти же настройки можно применить и для остальных ссылок (названия файлов в этом случае будут определяться автоматически) и сразу же начать закачку всех ссылок, выбрав соответствующие опции.

schedule_params.gif — временные ограничения в расписании. Можно задать промежутки времени, в течение которых закачки разрешены или запрещены. Более высокий приоритет имеют запрещающие промежутки, т.е. если время старта закачки попадает и в разрешающий, и в запрещающий промежутки, закачка будет заблокирована.

Hukuma
22-07-2007, 08:51
Прошу написать детальную инструкцию (насколько возможно) по установке дополнительных модулей для работы скрипта, самого скрипта, привести ссылки, это значительно расширит круг тестеров.

DINI
22-07-2007, 17:52
Прошу написать детальную инструкцию (насколько возможно) по установке дополнительных модулей для работы скрипта, самого скрипта, привести ссылки, это значительно расширит круг тестеров.А вы думаете, я буду действовать по принципу "вот вам скрипт и крутитесь как хотите?" :D

DINI
22-07-2007, 20:49
К сожалению, в выходные почти не было времени тестировать скрипт, поэтому тестированием я буду заниматься завтра. Завтра же мне предстоит написать установщик и мануал по работе со скриптом.

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

Извиняюсь за задержку, но я не хочу выкладывать сырой и недокументированный скрипт. Поэтому придется еще немного подождать.

midya
25-07-2007, 18:58
Друзья, а кто нибуть может прилипить ADOS+все нужные пакеты и создать прошивочку, то времени почти нет в никать в проблемы почему у меня пакеты не ставятся!!!!!!!!!!

DINI
25-07-2007, 23:14
Во время тестирования я нашел и устранил достаточно много багов, о возможном появлении которых я говорил раньше. Также внес небольшие изменения для большего удобства работы. Наконец, немного оптимизировал код для работы со списками файлов на странице закачек.

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

Сейчас я доделал установщика, а завтра (точнее, сегодня утром) я начну-таки писать мануал. Не уверен, что успею написать его полностью за сутки, но буду стараться.
Тем не менее, даже если мануал до вечера пятницы готов не будет, бету я все равно выложу. Именно в пятницу вечером. Уже точно не позже. В крайнем случае, обойдетесь без мануала пока ;)
Думаю, что с базовым функционалом можно разобраться самостоятельно достаточно быстро, а настройки всяких примочек можно постигать методами тыка, а также проб и ошибок. В принципе, для нахождения багов это даже полезно :)

В общем, ждите пятницы.

Reyter
26-07-2007, 07:20
Лично мне мануал не нужен. Lightppd, PHP5, wget, axel (ну и micro-perl на всякий случай) установлены и работают. Пробле с работой cgi и php нет. Да и у многих наверное такая же ситуация.

DINI
26-07-2007, 10:45
Я понимаю, что многие могут обойтись и без мануала. Многие, но не все. Знаю это на личном опыте.
Меня не будет две недели и помочь я вряд ли смогу чем-то, если кому-то что-то будет непонятно. Поэтому и стараюсь успеть написать мануал до завтра. Но уж если не успею, то извините.


Lightppd, PHP5, wget, axel (ну и micro-perl на всякий случай) установлены и работают.Кстати, еще нужен CRON и crontab для него.

DINI
27-07-2007, 19:41
Полноценного мануала пока нет, но краткие инструкции, пояснения и советы есть ниже.

Системные требования (для версий 1.3.x):
Сервер, поддерживающий POST-формы и cookie. Я использую lighttpd (http://wl500g.info/showthread.php?t=5247&highlight=lighttpd).
PHP 5.1.3 и выше
CRON (http://www.macsat.com/cron.php) и crontab.
SQLite 2.x (имеется встроенная поддержка в PHP), SQLite 3.x (см. примечание здесь (http://wl500g.info/showpost.php?p=80389&postcount=759)) или MySQL 4.x и выше (устанавливается отдельно).
Программа-качалка. По умолчанию скриптом поддерживаются cURL (http://wl500g.info/showpost.php?p=61683&postcount=212) (рекомендуется), wget (http://wl500g.info/showpost.php?p=62271&postcount=278) и axel (http://wl500g.info/showpost.php?p=8540&postcount=3).
Желающие могут написать модули для других качалок (инструкции находятся в файле HOWTO_MAKE_MODULE директории docs установочного архива).
Библиотека GD (http://wl500g.info/showpost.php?p=61683&postcount=212) для вывода графического прогресса закачки (опционально).
Библиотека mbstring (http://wl500g.info/showpost.php?p=81880&postcount=803) для обработки нелатинских символов в ссылках (опционально).
Браузер, поддерживающий JavaScript. Скрипт разрабатывался под Firefox 2.0 и выше, большая часть функций тестировалась и будет работать в IE 6.0 и выше, Opera 9.0 и выше, Safari 3.0.4 и выше. Не тестировалось, но, скорее всего, будет работать в Firefox 1.х, IE 5.х и Opera 8.х.


Установка:
Убедитесь в правильности установки и настройки перечисленных выше пакетов. Подробнее см. здесь (http://wl500g.info/showpost.php?p=59637&postcount=42)
Извлеките файлы из архива и скопируйте их в директорию на жестком диске, куда вы хотели бы произвести установку.
Откройте индексный файл этой директории, набрав соответствующий адрес в браузере. Например, если сервер работает на порте 8080, а файлы находятся в корневой директории хоста, то адрес будет http://my.router:8080.
Следуйте инструкциям программы установки.

Замечание: Каталог для сохранения файлов лучше указать отдельный. Например, создать директорию /opt/ados и указать этот путь. Туда и будут сохраняться скачиваемые файлы в различные подкаталоги в зависимости от пользователя, инициализировавшего закачку, и категории, выбранной им для сохранения.
Например, если я выберу для сохранения категорию video, то файл сохранится в директорию /opt/ados/dini/video.
Поэтому в настройках FTP можно смело расставлять пользователям локалки в качестве корневых директорий их поддиректории, чтобы быть уверенным, что они не получат доступ к чужим файлам.
Также будут созданы три стандартные поддиректории:
_tmp — для хранения временных файлов во время закачки
_log — для хранения логов выполнения CRON заданий и логов, записываемых модулем, выполняющим закачки. При успешной закачке лог стирается, т.к. он занимает достаточно много места.
_all — для сохранения общих файлов.

Настройка:
Сразу после окончания установки и входа в систему откройте вкладку "Настройки" и внимательно ознакомьтесь со списком всех настроек. При необходимости поменяйте их на нужные вам.

Замечание 1: SQLite 2.x, к сожалению, плохо поддерживает юникод, поэтому нелатинские символы записать в нее нельзя. Однако, можно закодировать строку в base64 и в базу записать ее. Именно это будет происходить, если включить проверку наличия нелатинских символов в настройках. Однако данные, закодированные в base64, занимают на 33% больше места, чем оригинал, а на кодирование и последующее раскодирование тратятся системные ресурсы (правда, незначительные, но все же). Поэтому если для вас критично, например, давать описания файлам на русском, то можете включить эту опцию.
Если используется БД SQLite 3.x или MySQL, опция будет недоступна, т.к эти базы данных имеют полноценную поддержку юникода.

Замечание 2: В журнал пока сохраняются только записи, относящиеся к классу управления файлами и закачками, классу управления CRON заданий и частично к самой вкладке журнала. Другие записи я пока просто не успел сделать.
Поэтому включать ведение журнала нужно только в том случае, если у вас возникают проблемы со скачиванием файлов.

Замечание 3: Не стоит устанавливать слишком большое количество одновременных закачек. Все работает нормально, но, например, axel создает много процессов, если установить для него закачку в несколько потоков; поэтому при большом количестве закачек создается большое количество процессов, что грузит систему и может привести к нехватке памяти. В этом случае поможет включение swap.
Тем не менее, у меня прекрасный результат дает комбинация 10 потоков для axel'а и 3 одновременных закачки.

Замечание 4: Я уже говорил, что чем больше список файлов, тем больше запросов идет в БД и тем дольше становится выполнение скрипта.
Особенно это заметно, если идет скачивание, т.к. в этом случае скрипт для всех скачиваемых файлов читает лог скачки для вывода текущего состояния: времени, процентов и т.д.
Поэтому советую обойтись без автоматического обновления информации или выставить его не чаще, чем раз в 30 секунд, если не хотите сами нажимать кнопку "Обновить".

Замечание 5: К сожалению, не хватило времени проверить работу скрипта для обычных пользователей. Для админов, понятно, почти нет ограничений, поэтому все работает. А вот при включенных ограничениях для пользователей учет этих ограничений, повторю, проверить не успел.
Поэтому не надо удивляться, если установленные в настройках ограничения для обычных пользователей работать не будут. Хотя должны :)

DINI
27-07-2007, 19:45
Авторизация посредством логина-пароля:
Если у вас есть аккаунты на платных файловых серверах типа RapidShare или FileFactory или если требуется авторизация на FTP серверах, то вы можете добавить список параметров авторизации в настройках.
Домен — это шаблон адресов, для которых требуется авторизация. Пример: httр://*.rapidsahre.com. Авторизация будет производиться на всех поддоменах домена rapidshare.com.
Другой пример: httр://rs200.rapidsahre.*. Авторизация будет производиться только на поддомене rs200, но независимо от доменной зоны (de, ru, com.ua).
Если хотите расшарить параметры авторизации для всех пользователей, то поставьте флажок в колонке "Общее".

Закачка:
Откройте вкладку "Закачки".
Нажмите кнопку "Добавить ссылки" (крайняя левая над списком файлов).
Введите одну или несколько ссылок, которые надо скачать. Можно просто вставить текст, содержащий нужные ссылки. Одно условие: ссылки должны отделяться друг от друга хотя бы одним пробелом, табом или переводом строки.
Если ссылка содержит пробелы или если необходимо задать ссылку явно, то ее необходимо заключить в тэг [url]...[ /url] (закрывающий тэг указывается без пробела).
Если для ссылки необходимо задать описание прямо при добавлении, то это можно сделать, заключив текст описания сразу после ссылки в тэг ....
Если ссылка одна, то см. следующий пункт.
Если ссылок много, то будет предложено уточнить их адреса и выбрать те из них, которые следует закачивать. Здесь же можно в более удобном виде добавить описание для каждой из ссылок, нажав на соответствующую кнопку справа от ссылки. Описания, введенные во время предыдущего шага, уже будут отображены.
Установите необходимые параметры:
- укажите имя файла, под которым он будет сохранен;
- выберите категорию, куда он будет сохранен;
- уточните, если необходимо, путь для сохранения;
- введите описание (если еще не сделали это раньше, но такое желание все-таки появилось);
- выберите модуль, который будет производить закачку (рекомендуется cURL);
- сделайте привязку (если необходимо) к одному из ранее созданных, но еще не выполненных событий расписания.
Если добавлялась одна ссылка, то можно сразу же начать закачку, нажав на соответствующую кнопку, или нажать на кнопку "Применить настройки" внизу формы для сохранения введенных параметров.
Если добавлялось много ссылок, то можно применить указанные параметры (категорию, путь для сохранения, модуль и привязку к расписанию) для всех введенных ранее ссылок. При этом имя файла для каждой ссылки будет получаться от сервера, с которого будет происходить закачка, а описание будет применяться то, что было указано на предыдущих шагах (если оно было дано).


Управление закачками:
Под управлением подразумевается изменения текущего состояния закачки на одно из следующих:
- закачка (выполнение)
- пауза (отмена закачки с сохранением закачанной информации и возможностью последующей докачки, если такая возможность поддерживается модулем)
- остановка (отмена закачки и удаление закачанной информации)
- удаление (остановка + удаление информации о закачки из БД)

Выделите те закачки, которыми вы хотите управлять (просто щелкайте по строкам в списке; для выделения нескольких строк подряд зажмите Ctrl, щелкните на первой строке и ведите курсор вниз, чтобы выделить нижеследующие строки).
Если выделена одна закачка, то можно нажать кнопку "Свойства закачки" и выполнять управления из открывшегося окна.
Если выделено несколько закачек, то для управления ими используйте первый блок кнопок управления (значки на фоне одного листа бумаги).
Для управления сразу всем списком используйте второй блок кнопок (значки на фоне двух листов бумаги).

Замечание: на изменение состояния может потребоваться время. В зависимости от объема списка файлов (см. выше).

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

Пользователям Internet Explorer 6 (и более ранних версий):
Браузером некорректно обрабатываются PNG файлы, имеющие альфа-канал (прозрачные участки). Именно такие изображения используются в скрипте.
Тем не менее, в скрипте применяется специальный алгоритм, позволяющий подкорректировать обработку альфа-канала. Минусом алгоритма является то, что коррекция производится в режиме реального времени после каждой загрузки (обновления) страницы. И чем больше элементов требуется обработать, тем больше времени это займет.

Для отключения обработки альфа-канала откройте в любом текстовом редакторе, поддерживающим кодировку UTF-8, файл index.php в корневом каталоге скрипта и найдите строку
define( 'PARSE_PNG' , TRUE ); Замените слово "TRUE" на "FALSE" (без кавычек) и сохраните файл.

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

Тем не менее, как я сказал выше, с основной задачей, возложенной мной на скрипт — скачиванием — он справляется. Увы, больше я не могу тратить так много времени, как я это делал последние полтора месяца, чтобы улучшать скрипт и налаживать и дополнять его функционал. Времени у меня вообще больше нет.

Поэтому вы можете писать сюда обо всех багах и глюках, с которыми вы столкнетесь, но я не гарантирую, что исправлю их так быстро, как вы и я этого хотели бы.
Я не знаю, когда я смогу выпустить финальную версию и буду ли я вносить изменения для оптимизации скрипта и добавления в него новых функций в будущем.

В общем, извините, если что не так.

Reyter
27-07-2007, 19:55
Я наверное чего-то не понял... А где ссылка на само это чудо? Откуда ADOS можно скачать?

DINI
27-07-2007, 20:07
Ссылка будет в ближайшие минуты, надеюсь. Я хочу залить его на RapidShare, но он у меня почему-то не грузится. Как только его работа восстановится, я залью архив и дам ссылку.

AJAN
27-07-2007, 20:09
axel через ipkg как ставить?

P.S. Лучше набей цепочку команд предустановки добавочных приложений.

DINI
27-07-2007, 20:10
axel через ipkg как ставить?

P.S. Лучше набей цепочку команд предустановки добавочных приложений.Ссылки на инструкции по установке всех требуемых программ я привел. Остается только пройти по ссылкам и прочитать эти инструкции.

AJAN
27-07-2007, 20:22
Ссылки на инструкции по установке всех требуемых программ я привел. Остается только пройти по ссылкам и прочитать эти инструкции.

По ссылке только архивы. Как их инсталировать?
P.S. Тут водятся не только люди знакомые Linux'ом...
Я распаковал из архива файл axel, записал его в /opt/bin
Но по команде:
axel он не запускается, говорит что нет такого...

DINI
27-07-2007, 20:27
По ссылке только архивы. Как их инсталировать?

Распаковать, например, в /opt/bin, как вы это и сделали.
Убедиться, что файл исполняемый
sh> chmod 0755 /opt/bin/axel
Запускать не надо (это будет делать скрипт), но если хочется проверить, то запускайте так:
sh> /opt/bin/axel

AJAN
27-07-2007, 20:46
Ok.
Просто эту часть я бы расписал подробней учитывая то, что axel нет в репозитории.

Установку самого скипта отложу до завтра...

DINI
27-07-2007, 20:49
Не знаю, что с рапидой. Архив прикрепил к посту (http://wl500g.info/showpost.php?p=59591&postcount=28).
Если кто-то установит скрипт в ближайшие 20-30 минут, отпишитесь, пожалуйста, чтобы я хотя бы знал, каковы первые результаты.

BraVo123
27-07-2007, 23:44
Вроде всё сделал по инструкции, Cron- поставил , AXEL - поставил , Sqlite поставил (ipkg install sqlite) , ligthttpd стоит , скрипт распаковал в /opt/share/www/ados/ - после обращения по адресу http://192.168.36.1:8083/ados выдаёт ошибку - Fatal error: Can not continue installation process because the system reqires SQLite support.
где мне ещё нужно подкрутить?

als
28-07-2007, 05:16
Сделал то же самое, что написано в предыдущем сообщении. Запускаю lighttpd, в разных браузерах пишу: http://192.168.1.1:8080/ados

Ошибка: "403 - Forbidden". Что проверить или подправить?

BraVo123
28-07-2007, 09:26
403 - это по идее нужно права на папку поставить 777 напимер ...

Reyter
28-07-2007, 09:53
Так-с... У меня кажись заработало :)

als
28-07-2007, 10:02
А как права поставить? "chmod 777 /opt/share/www/ados" не помогает...

Reyter
28-07-2007, 10:50
Приведенное ниже руководство по мере возможности периодически обновляется и корректируется. Reyter
Я тут приведу некоторые рекомендации по установке ADOS (http://wl500g.info/showpost.php?p=59016&postcount=1) для начинающих пользователей. Может быть не все здесь может абсолютно правильно, но тем не менее ОНО работает. ;)

Предварительно замечание общего характера. А именно - про те грабли, на которые наступает каждый новичок. Чтобы не иметь проблем с установкой и работой дополнительных пакетов, в обязательном порядке необходимо перейти на альтернативный репозитарий пакетов (http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/) и установить uclibc-opt. Ниже приведен скрипт, который поможет "одним махом" изменить конфигурацию ipkg на предмет работы с альтернативным репозитарием, установить uclibc-opt и переустановить (без этого никак не обойтись) все ранее установленные пакеты из "неправильного" репозитария (конфиги и настройки этих пакетов, если таковые были, при этом сохранятся).

echo "src unslung http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable" > /opt/etc/ipkg.conf
echo "dest root /" >> /opt/etc/ipkg.conf
ipkg update && ipkg install uclibc-opt && awk '/^Package:/{system("ipkg install -force-reinstall -force-defaults " $2)}' /opt/lib/ipkg/status
Если у Вас все уже было установлено из альтернативного репозитария, то описанный выше шаг можно смело пропустить.

Ну а теперь займемся установкой ADOS (http://wl500g.info/showpost.php?p=59016&postcount=1) и иже с ним.
Сначала устанавливаем cron, lighttpd, sglite, php-fcgi, php-gd, cURL, wget (если не был установлен ранее) и microperl (тоже может пригодиться):

ipkg update
ipkg install cron
ipkg install lighttpd
ipkg install php-fcgi
ipkg install sqlite
ipkg install php-gd
ipkg install libcurl
ipkg install wget
ipkg install microperl

Распаковываем содержимое дистрибутива и помещаем все в папку /opt/share/www/ados
Не забываем сначала эту самую папку создать:
mkdir /opt/share/www/ados

редактируем /opt/etc/lighttpd/lighttpd.conf
# добавляем:
dir-listing.activate = "enable"
# это чтобы можно было листать директории, не содержащие index.* и т.п. Т.е. таким образом можно будет элементарно скачивать файлы с роутера по http. Необходимо для торрента transmission.
# Раскомментируем (удаляем в начале строки #) строки:
"mod_access",
"mod_fastcgi",
"mod_cgi",
"mod_accesslog" )
# Исправляем:
server.document-root = "/opt/share/www/"
# (иначе не будет доступа в папки, отличные от "/opt/share/www/lighttpd/"
# исправляем порт доступа на тот, который нам нужен (Вы можете назначить тот порт, который пожелаете).
server.port = 8080
# раскоментируем и исправляем следующее (должен быть установлен пакет php-fcgi):

fastcgi.server = ( ".php" =>
( "localhost" =>
(
"min-procs" => 1,
"max-procs" => 1,
"max-load-per-proc" => 4,
"socket" => "/tmp/php-fastcgi.socket",
"bin-path" => "/opt/bin/php-fcgi"
)
)
)
# раскомментируем и исправляем следующее

cgi.assign = ( ".pl" => "/opt/bin/microperl",
".cgi" => "/opt/bin/microperl" )
# это чтобы у нас еще и *.cgi работали. Необходимо, в частности
# для того же transmission. Должен быть установлен пакет microperl
Далее редактируем (может это и лишнее, но все же...) /opt/etc/php.ini
Ищем секцию с перечислением extension (у меня это строка 539) и добавляем к ним

extension=pdo.so
extension=sqlite.so

Не забываем распаковать и скопировать Axel (http://wl500g.info/showpost.php?p=8540&postcount=3) в /opt/bin и сделать его исполняемым:
chmod 0755 /opt/bin/axel

Редактируем /opt/etc/crontab. Он должен выглядеть следующим образом:

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=""
HOME=/
# ---------- ---------- Default is Empty ---------- ---------- #
*/1 * * * * root /opt/bin/run-parts /opt/etc/cron.1min
*/5 * * * * root /opt/bin/run-parts /opt/etc/cron.5mins
01 * * * * root /opt/bin/run-parts /opt/etc/cron.hourly
02 4 * * * root /opt/bin/run-parts /opt/etc/cron.daily
22 4 * * 0 root /opt/bin/run-parts /opt/etc/cron.weekly
42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly

Внимание! Если вы заходите на роутер под логином admin (или еще каким), то замените в crontab "root" на "admin".

В папке /opt/bin создайте файл run-parts со следующим содержимым:

#!/bin/sh
#
# runparts.sh by macsat@macsat.com
# intended for use with cron
#
# based on rc.unslung by unslung guys :-)
#
if [ -z "$1" ]
then
echo "Usage : $0 "
fi

RUNDIR=$1"/*"

for i in $RUNDIR ;do

# Ignore dangling symlinks (if any).
[ ! -f "$i" ] && continue

case "$i" in
*.sh)
# Source shell script for speed.
(
trap - INT QUIT TSTP
set start
. $i
)
;;
*)
# No sh extension, so fork subprocess.
$i start
;;
esac
done

и сделайте его исполняемым: chmod +x /opt/bin/run-parts

Создайте все перечисленные здесь директории:

mkdir /opt/etc/cron.1min
mkdir /opt/etc/cron.5mins
mkdir /opt/etc/cron.hourly
mkdir /opt/etc/cron.daily
mkdir /opt/etc/cron.weekly
mkdir /opt/etc/cron.monthly
В эти директории можно будет класть скрипты с расширением *.sh, которые будут выполняться каждую минуту, каждые 5 минут и т.д. Естественно у них должен быть атрибут исполняемого файла.

Создайте дирректорию, куда будете закачивать файло. Например:
mkdir /tmp/harddisk/downloads

Перезапускаем lighttpd:
/opt/etc/init.d/S80lighttpd restart

Чтобы у вас автоматически запускались cron и lighttpd в файле post-mount должны быть (помимо всего прочего) такие строки:

#!/bin/sh
/opt/etc/init.d/S10cron
/opt/etc/init.d/S80lighttpd start

Пробуем зайти: http://my.router:8080/ados
Если все настроено верно, то начнется процес первичной инсталляции. В принципе там все понятно.
Настройки для ADOS
Путь к axel нужно указать полный, т.е. /opt/bin/axel ; корневой каталог для сохранения закачек тот, который вы создали, например /tmp/harddisk/downloads ; путь до исполняемого файла PHP /opt/bin/php-fcgi

А теперь упрощенная процедура с использованием прилагаемых файлов:
Устанавливаем пакеты и создаем необходимые каталоги:

ipkg update
ipkg update
ipkg install cron
ipkg install lighttpd
ipkg install php-fcgi
ipkg install sqlite
ipkg install php-gd
ipkg install libcurl
ipkg install wget
ipkg install microperl
mkdir /opt/share/www/ados
mkdir /tmp/harddisk/downloads
mkdir /opt/etc/cron.5mins
mkdir /opt/etc/cron.hourly
mkdir /opt/etc/cron.daily
mkdir /opt/etc/cron.weekly
mkdir /opt/etc/cron.monthly
Распаковываем содержимое дистрибутива в папку /opt/share/www/ados
Распаковываем содержимое for_ADOS.zip в папку /opt (если вы заходите на роутер под логином root, то потом положите поверх файл crontab из архива crontab_root.zip в папку /opt/etc . Если вы заходите не под admin и не под root, то самостоятельно отредактируйте crontab - замените в нем "admin" на свой логин).
Изменяем атрибуты файлов:

chmod +x /opt/bin/run-parts
chmod +x /opt/bin/axel
chmod 600 /opt/etc/crontab
Редактируем post-mount, там должны быть (помимо всего прочего) такие строки:

#!/bin/sh
/opt/etc/init.d/S10cron
/opt/etc/init.d/S80lighttpd start
Сохраняем post-mount и перегружаемся:

flashfs save && flashfs commit && flashfs enable && reboot
После перезагрузки пробуем зайти на http://my.router:8080/ados (вместо myrouter пропишите IP-адрес своего роутера). Если все выполнили правильно, то начнется процесс первичной инсталляции. Настройки для ADOS приведены чуть выше. После окончания настройки удалите (или куда-нибудь переместите) папку /opt/share/www/ados/install

Reyter
28-07-2007, 11:04
Первые глюки:
Не показывает размер больших файлов. Скачал файл ~35 мб, а в разделе "Готово" указан размер 0 кб. Для файла размером 0,82 мб все показано верно.

als
28-07-2007, 16:40
Спасибо за инструкции. Теперь все установилось.

Но не качает почему-то. Ввожу ссылку, вручную запускаю, задача перемещается в папку "Закачивается", правильно определяется размер файла - и ничего. Стоит. Не показывает ни оставшееся время, ни размер оставшегося не меняется. На диске тоже этот файл не появляется - ни в tmp, ни в других местах. Пробовал закачивать html, mp3 - та же проблема. В "свойствах закачки" - скорость - 0, закачано - 0.

Это странно как-то. Раз размер определяется, значит axeл вроде бы начинает работать?

Reyter
28-07-2007, 17:08
Имеет смысл в настройках "Журнал событий" установить "Вести журнал для отладки". И потом уже просматривать журнал на предмет что и как... На этапе тестирования я полагаю такую опцию всем необходимо включить.

BraVo123
28-07-2007, 17:20
Скрипт вроде тоже заработал, только нифига не качает, пишет в состоянии "скачивается" и всё на этом тишина , при чём если ту же закачку запустить из терминала то всё нормально качает ...

Marks
28-07-2007, 18:23
У кого это чудо работает? :confused:

Reyter
28-07-2007, 18:28
У кого это чудо работает? :confused:

У меня работает :)

Marks
28-07-2007, 18:50
У меня работает :)

:) Ага, уже интересно куда копать

373 MakcuM 15 0 676 676 508 R 99.9 2.2 0:00.49 top
1 MakcuM 8 0 500 368 368 S 0.0 1.2 0:01.43 init
3 MakcuM 19 19 0 0 0 S 0.0 0.0 0:08.89 ksoftirqd_CPU0
4 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.24 kswapd
5 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.00 bdflush
2 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.00 keventd
7 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.41 mtdblockd
59 MakcuM 9 0 240 160 160 S 0.0 0.5 0:00.00 telnetd
64 MakcuM 9 0 452 384 320 S 0.0 1.3 0:07.34 httpd
70 MakcuM 9 0 292 216 216 S 0.0 0.7 0:00.06 klogd
71 nobody 9 0 452 420 376 S 0.0 1.4 0:00.21 dnsmasq
72 MakcuM 9 0 336 268 240 S 0.0 0.9 0:00.05 syslogd
74 MakcuM 9 0 428 224 224 S 0.0 0.7 0:00.99 nas
77 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.00 khubd
86 MakcuM 9 0 252 184 184 S 0.0 0.6 0:00.10 lpd
88 MakcuM 9 0 244 184 184 S 0.0 0.6 0:00.00 p910nd
91 MakcuM 9 0 368 240 240 S 0.0 0.8 0:00.02 waveservermain
93 MakcuM 9 0 364 236 236 S 0.0 0.8 0:00.03 rcamdmain
97 MakcuM 9 0 0 0 0 S 0.0 0.0 0:01.28 usb-storage-0
98 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_0
109 MakcuM 9 0 368 328 264 S 0.0 1.1 0:00.03 udhcpc
110 MakcuM 9 0 420 328 272 S 0.0 1.1 0:00.02 pppd
112 MakcuM 9 0 352 276 268 S 0.0 0.9 0:00.09 infosvr
113 MakcuM 9 0 460 356 312 S 0.0 1.2 0:00.18 watchdog
116 MakcuM 8 0 368 240 240 S 0.0 0.8 0:00.03 ntp
133 MakcuM 9 0 356 288 276 S 0.0 1.0 0:00.10 dropbear
139 MakcuM 9 0 592 532 440 S 0.0 1.8 0:01.27 upnp
142 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.48 kjournald
144 MakcuM 9 0 868 664 560 S 0.0 2.2 0:00.14 nmbd
146 MakcuM 9 0 688 428 412 S 0.0 1.4 0:00.00 smbd
155 MakcuM 8 0 488 472 432 S 0.0 1.6 0:00.07 xinetd
225 MakcuM 9 0 3496 1876 1876 S 0.0 6.2 0:00.67 php-fcgi
226 MakcuM 9 0 3504 1880 1880 S 0.0 6.2 0:00.00 php-fcgi
288 MakcuM 9 0 1460 1156 844 S 0.0 3.8 0:02.22 lighttpd
289 MakcuM 9 0 3668 2056 2056 S 0.0 6.8 0:00.47 php-fcgi
290 MakcuM 9 0 4216 2604 2604 S 0.0 8.7 0:00.62 php-fcgi
291 MakcuM 9 0 3252 1640 1640 S 0.0 5.5 0:00.56 php-fcgi
292 MakcuM 9 0 3500 2032 2032 S 0.0 6.8 0:00.59 php-fcgi
293 MakcuM 9 0 3608 1992 1992 S 0.0 6.6 0:00.00 php-fcgi
294 MakcuM 9 0 4452 2936 2828 S 0.0 9.8 0:00.07 php-fcgi
295 MakcuM 9 0 3776 2160 2160 S 0.0 7.2 0:00.00 php-fcgi
296 MakcuM 9 0 5412 4732 4124 S 0.0 15.7 4:11.48 php-fcgi
366 MakcuM 9 0 1168 984 844 S 0.0 3.3 0:00.26 smbd
368 MakcuM 9 0 720 708 536 S 0.0 2.4 0:00.95 dropbear
369 MakcuM 9 0 560 556 428 S 0.0 1.8 0:00.05 sh
6 MakcuM 9 0 0 0 0 S 0.0 0.0 0:00.00 kupdated


adduser - 1.5.0-1 - a multi-call binary for login and user account administration
bzip2 - 1.0.4-1 - Very high-quality data compression program
cron - 4.1-5 - Standard vixie cron, with cron.d addition
cups - 1.2.10-2 -
cups - 1.2.12-1 -
cyrus-sasl-libs - 2.1.22-2 - Provides client or server side authentication (see RFC 2222).
e2fsprogs - 1.39-2 -
e2fsprogs - 1.40-1 -
file - 4.20-1 - Ubiquitous file identification utility.
gdbm - 1.8.3-2 - GNU dbm is a set of database routines that use extensible hashing. It works similar to the standard UNIX dbm routines.
glib - 2.6.6-6 - The GLib library of C routines.
gnutls - 1.6.2-1 -
ipkg - 0.99.149-2 -
ipkg-opt - 0.99.163-9 - The Itsy Package Manager
joe - 3.5-1 - Joe's own editor. A text editor with wordstar-like and emacs-like keybindings.
less - 394-3 - Less file browser
libdb - 4.2.52-3 - Berkeley DB Libraries
libgcrypt - 1.2.4-1 - GNU cryptography libray, needed by gnutls
libgpg-error - 1.4-1 - Error handling library for libgcrypt
libjpeg - 6b-2 - collection of jpeg tools
libpng - 1.2.18-1 - Portable Network Graphics Libraries
libtasn1 - 0.3.10-1 - ASN.1 structure parser library.
libtiff - 3.8.2-1 - Tag Image File Format Libraries
libuclibc++ - 0.2.2-4 - C++ standard library designed for use in embedded systems
libxml2 - 2.6.29-1 - Libxml2 is the XML C parser and toolkit developed for the Gnome project.
libxslt - 1.1.21-1 - An XML Stylesheet processor based on libxml2
lighttpd - 1.4.16-1 - A fast webserver with minimal memory footprint.
mc - 4.6.1-2 -
microperl - 5.8.8-11 - Microperl.
ncurses - 5.6-1 - NCurses libraries
ncursesw - 5.6-1 - NCurses libraries with wide char support.
nload - 0.6.0-2 - Nload is a console application which monitors network traffic and bandwidth usage in real time
openldap-libs - 2.3.35-1 -
openssl - 0.9.7m-2 - Openssl provides the ssl implementation in libraries libcrypto and libssl, and is needed by many other applications and librari
pcre - 7.2-1 - Perl-compatible regular expression library
php - 5.2.3-1 - The php scripting language
php-fcgi - 5.2.3-1 - The php scripting language, built as an fcgi module
php-thttpd - 2.25b-5.2.3-4 - php-thttpd is thttpd webserver with php support
popt - 1.7-2 - A C library for parsing command line parameters.
procps - 3.2.7-4 - PROCPS System Utilities
readline - 5.2-2 - The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are
samba - 3.0.25a-2 -
slang - 2.1.0-1 -
slang - 2.1.1-1 - S-Lang is a multi-platform library designed to allow a developer to create robust multi-platform software.
sqlite - 3.4.0-2 - SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine.
sudo - 1.6.8p12-7 -
termcap - 1.3.1-2 - Terminal emulation library
uclibc-opt - 0.9.28-12 - micro C library for embedded Linux systems
xinetd - 2.3.14-6 - Highly configurable, modular and secure inetd
zlib - 1.2.3-2 - zlib is a library implementing the 'deflate' compression system.

Reyter
28-07-2007, 19:06
Ну это все мало о чем говорит.
Гораздо интереснее, что пишется в /opt/var/log/lighttpd/error.log и в /tmp/harddisk/downloads/_log (ну или где вы там подобную директорию создали).
И учтите, что я такой же чайник как и вы :)

BraVo123
28-07-2007, 19:23
1.9.2.7-8-pre9
А откуда эта прошивка, вроде последняя 1.9.2.7-7g может в этом дело?

Marks
28-07-2007, 19:23
Ну это все мало о чем говорит.
Гораздо интереснее, что пишется в /opt/var/log/lighttpd/error.log и в /tmp/harddisk/downloads/_log (ну или где вы там подобную директорию создали).
И учтите, что я такой же чайник как и вы :)

:D Да, почти как в анекдоте: разговор глухого со слепым :D
LIGHTTPD исправно работает, в /opt/var/log/lighttpd ничего нет.
/tmp/harddisk/downloads/_log (ну или где вы там подобную директорию создали). тоже пусто :mad:
:confused: Может у меня криво lighttpd установился? Сам не запускается, только ручками, и директории /opt/var/log/lighttpd/error.log нет :confused:

BraVo123
28-07-2007, 19:28
Маркс, а в чём у тебя затык-то, даже не написал ...

Reyter
28-07-2007, 19:33
А откуда эта прошивка, вроде последняя 1.9.2.7-7g может в этом дело?
Прошивка эта отсюда (http://oleg.wl500g.info/500w/), но дело конечно не в этом.

Marks
28-07-2007, 19:35
Маркс, а в чём у тебя затык-то, даже не написал ...
Точь-в-точь как у тебя. Закача висит, а действий никаких. Сори за неинформативность...

Reyter
28-07-2007, 19:37
Маркс, а в чём у тебя затык-то, даже не написал ...
Вот именно. Получается не разговор слепого с глухим, а телепата с гадалкой. :)
И то, что lighttpd исправно работает, еще ни о чем не говорит. В еррорлог могут писАться ошибки PHP. Лично у меня такие ошибки вначале появлялись. Но потом почему-то перестали.

Marks
28-07-2007, 19:37
А откуда эта прошивка, вроде последняя 1.9.2.7-7g может в этом дело?

Прошивка таже, кстати

Marks
28-07-2007, 19:40
Вот именно. Получается не разговор слепого с глухим, а телепата с гадалкой. :)
И то, что lighttpd исправно работает, еще ни о чем не говорит. В еррорлог могут писАться ошибки PHP. Лично у меня такие ошибки вначале появлялись. Но потом почему-то перестали.
Нет там таких файлов:mad:

Reyter
28-07-2007, 19:47
Ну не знаю, в чем у вас дело.
Работает это все пока конечно не очень...
Когда добавляете закачку, можете на кнопку стар не нажимать. Один фиг закачка не запустится. Лучше нажмите "сохранить", а потом в общем списке выделите закачку и нажмите старт.

Reyter
28-07-2007, 19:56
Нет там таких файлов:mad:
Ну может просто пока ошибок не было :)
Но вообще-то как минимум папка /opt/var/log/lighttpd/ должна быть, потому как даже если нет ошибок, то туда все-равно пишется access.log.
Чтобы cron и веб-сервер запускались автоматом нужно в post-mount добавить:
/opt/etc/init.d/S10cron
/opt/etc/init.d/S80lighttpd start

Ну и не забыть потом
flashfs save && flashfs commit && flashfs enable

И я не понял - что, в папке downloads вообще нет директорий _all, _log, _tmp и папки с именем пользователя?

BraVo123
28-07-2007, 20:08
Ну не знаю, в чем у вас дело.
Работает это все пока конечно не очень...
Когда добавляете закачку, можете на кнопку стар не нажимать. Один фиг закачка не запустится. Лучше нажмите "сохранить", а потом в общем списке выделите закачку и нажмите старт.
Да по разному пробовал, дело в том что закачка вроде как стартует,
а всобытиях появляется запись : Сервер получил несуществующий или некорректный идентификатор файла из отправленной формы.

P.S. так всё же , где ты свою прошивку взял?

Marks
28-07-2007, 20:12
Чтобы cron и веб-сервер запускались автоматом нужно в post-mount добавить:
/opt/etc/init.d/S10cron
/opt/etc/init.d/S80lighttpd start

Может в post-boot?

Reyter
28-07-2007, 20:21
а всобытиях появляется запись : Сервер получил несуществующий или некорректный идентификатор файла из отправленной формы.
P.S. так всё же , где ты свою прошивку взял?
Хм... У меня такого не было. Даже и не знаю....
А ссылку на прошивку я уже давал выше. Только дело не в ней, это точно. Она ведь не содержит ни cron, ни всего остального. Все эти пакеты мы сами ставим.

Reyter
28-07-2007, 20:24
Может в post-boot?
Ни в коем случае. Запуск всех программ из папки /opt следует писать только в post-mount. Иначе они у вас попросту не запустятся, ведь когда выполняется post-boot, hdd еще не подмонтирован!

Marks
28-07-2007, 20:52
Ну может просто пока ошибок не было :)
Но вообще-то как минимум папка /opt/var/log/lighttpd/ должна быть, потому как даже если нет ошибок, то туда все-равно пишется access.log.
Чтобы cron и веб-сервер запускались автоматом нужно в post-mount добавить:
/opt/etc/init.d/S10cron
/opt/etc/init.d/S80lighttpd start

Ну и не забыть потом
flashfs save && flashfs commit && flashfs enable

И я не понял - что, в папке downloads вообще нет директорий _all, _log, _tmp и папки с именем пользователя?
Есть такие
Автоматом не запускются

BuHT
28-07-2007, 21:31
скрипт не хочет качать ссылку с указанием порта ftp и логана с паролем

а-ля


ftp://user:pass@megahost:port/file.bin

ругается то на недопустимый протокол, то сылки не видит :)

бага в скриптах, жестко парсит DINI в preg_match :) думаю над правкой регулярного выражения

а вообще видимо axel этого делать тоже не умеет. по крайней меер из командной строки он подумал.. и вылетел.

BraVo123
29-07-2007, 01:33
Я таки запустил, всё невнимательность, забыл добавить скрипт run-parts в /opt/bin/ ... :)

als
29-07-2007, 05:18
Ну вот. У меня тоже этот скрипт не был установлен. А не поделитесь "правильным" скриптом?

Я сделал, как здесь написано: http://wl500g.info/showthread.php?t=5909&highlight=cron

выглядит так:



#!/bin/sh
#
# runparts.sh by macsat@macsat.com
# intended for use with cron
#
# based on rc.unslung by unslung guys :-)
#
if [ -z "$1" ]
then
echo "Usage : $0 "
fi

RUNDIR=$1"/*"

for i in $RUNDIR ;do

# Ignore dangling symlinks (if any).
[ ! -f "$i" ] && continue

case "$i" in
*.sh)
# Source shell script for speed.
(
trap - INT QUIT TSTP
set start
. $i
)
;;
*)
# No sh extension, so fork subprocess.
$i start
;;
esac
done


Потом chmod +x /opt/bin/run-parts и flashfs save && flashfs commit && flashfs enable && reboot

Но ничего не изменилось. По прежнему закачка висит и не начинается.

Reyter
29-07-2007, 08:16
Автоматом не запускются
Возможно у тебя post-mount все-таки запускается до того, как /opt подмонтируется. У меня post-boot выглядит следующим образом:

#!/bin/sh
# Start SSH service
# test if USB disc has been attached
# if not - then insert needed modules
if [ ! -d /opt/etc ]
then
insmod scsi_mod && insmod sd_mod && insmod usb-storage && sleep 5s
fi

# Wait for /opt to mount
/bin/mount -o sync,noatime,rw /dev/discs/disc0/part2 /tmp/harddisk
/bin/mount -o bind,sync,noatime,rw /tmp/harddisk/opt /opt
i=0
while [ $i -le 30 ]
do
if [ -d /opt/etc ]
then
break
fi
sleep 1
i=`expr $i + 1`
done

# Activate swap
/sbin/swapon /dev/scsi/host0/bus0/target0/lun0/part1

Единственное, нужно поправить разделы, если они у тебя другие. Но даже и в током виде у меня не всегда правильно стартовал post-mount. Поэтому я после "/sbin/swapon...." еще повторно добавил:
/bin/mount -o bind,sync,noatime,rw /tmp/harddisk/opt /opt
/tmp/local/sbin/post-mount
Хоть и криво, но теперь у меня все железно стартует после перезагрузки.
А если вручную запустить post-mount - программы запускаются? И есть ли у тебя в самой первой строке post-mount

#!/bin/sh
?

Reyter
29-07-2007, 08:31
BuHT
скрипт не хочет качать ссылку с указанием порта ftp и логана с паролем
Гм... Неплохо бы было бы все-таки почитать краткое руководство автора. Цитирую:

Авторизация посредством логина-пароля:
Если у вас есть аккаунты на платных файловых серверах типа RapidShare или FileFactory или если требуется авторизация на FTP серверах, то вы можете добавить список параметров авторизации в настройках.
Домен — это шаблон адресов, для которых требуется авторизация. Пример: http://*.rapidsahre.com. Авторизация будет производиться на всех поддоменах домена rapidshare.com.
Другой пример: http://rs200.rapidsahre.*. Авторизация будет производиться только на поддомене rs200, но независимо от доменной зоны (de, ru, com.ua).
Если хотите расшарить параметры авторизации для всех пользователей, то поставьте флажок в колонке "Общее".

Вот по поводу порта пока ничего сказать не могу. Не пробовал.

бага в скриптах, жестко парсит DINI в preg_match думаю над правкой регулярного выражения

Да, баги есть. Из не может не быть. Попробуем поковыряться. Правда я не очень-то в этом соображаю, но... Слегка подправить готовый на 99% продукт гораздо проще, чем с нуля написать новый, не так ли? ;)
В любом случае - огромное спасибо автору за самоотверженный труд на благо общества! Результат судя по всему получился отменный. Осталось лишь чуть-чуть пофиксить баги и написать пошаговое руководство для чайников (и не только для них :) ).
У меня lighttpd в еррорлоге периодически пишет вот такое:

2007-07-28 22:25:03: (mod_fastcgi.c.2551) FastCGI-stderr: PHP Warning: sqlite_query() [<a href='fun
ction.sqlite-query'>function.sqlite-query</a>]: near &quot;AND&quot;: syntax error in /opt/share/www
/ados/classes/class_database.php on line 501
Пока не выяснял что там и к чему.
Не работает очистка журнала. Приходится выделять все записи и удалять их по другой кнопке. Ну и наверное много еще чего выплывет.

Marks
29-07-2007, 09:02
Возможно у тебя post-mount все-таки запускается до того, как /opt подмонтируется. ?Спасибо за внимание, теперь всё стартует само после перезагрузки, закачка попрежнему висит :mad:

Reyter
29-07-2007, 09:09
Ну вот. У меня тоже этот скрипт не был установлен. А не поделитесь "правильным" скриптом?

Я сделал, как здесь написано: http://wl500g.info/showthread.php?t=5909&highlight=cron

выглядит так:
skiped...
Но ничего не изменилось. По прежнему закачка висит и не начинается.
Да, скрипт именно так и выглядит.
Но закачка не начинается не поэтому. (Я так думаю). Cron скорее всего нужен для расписания (с которым я так и не разобрался как работать. Создал одну задачу, так не могу ее удалить. Оно все еще "выполняется).
Чтобы проверить, работает ли Cron можно создать скриптик, например test.sh

#!/bin/sh
logger Run-parts working fine!
и поместить его в /opt/etc/cron.1min. Если раз в минуту в системном логе будут появляться сообщения "Run-parts working fine!" значит все нормально. Скриптик лучше потом удалить :)

Таки я проверил бы в lighttpd.conf наличие строки:
server.errorlog = "/opt/var/log/lighttpd/error.log"
(она должна быть раскомментирована). В еррорлоге тоже может быть что-то интересное, без него трудно будет отловить ошибки php-скриптов.

BraVo123
29-07-2007, 12:18
Cron скорее всего нужен для расписания (с которым я так и не разобрался как работать. Создал одну задачу, так не могу ее удалить. Оно все еще "выполняется).

Нет, Cron, запускает и обычные закачки, которые без расписания, как раз из папки cron.1min ... скрипт создаёт задания на закачку и помещает их именно туда ...

Reyter
29-07-2007, 12:50
Нет, Cron, запускает и обычные закачки, которые без расписания, как раз из папки cron.1min ... скрипт создаёт задания на закачку и помещает их именно туда ...
Хм... Да, действительно. В таком случае советую тем, у кого закачки не стартуют, проверить работу cron с помощью скрипта как я описал выше, и убедиться, что в настройках ADOS в пункте "Путь до исполняемого файла PHP" указан путь "/opt/bin/php-fcgi" (без кавычек).
После того, как вы нажали кнопку "Начать (продолжить) закачки", у вас в папке /opt/etc/cron.1min должен появиться файл(ы) наподобие ados_61a856f0~9df2703f7.sh
Если у вас cron работает неправильно, то эти скрипты (а соответственно и закачки) не запустятся. Обратите внимание, что эти скрипты запускаются раз в минуту, а не сразу же после их создания. Т.е. для начала закачки придется немного подождать.

Marks
29-07-2007, 13:44
Бьюсь с cronом с утра, пока он побеждает :mad:, повидимому из-за этого:

Jan 1 03:00:20 /opt/sbin/cron[159]: (CRON) STARTUP (V5.0)
Jan 1 03:00:20 /opt/sbin/cron[159]: (*system*) BAD FILE MODE (/opt/etc/crontab)

Что я сделал не так :confused:

Mam(O)n
29-07-2007, 13:52
Что я сделал не так :confused:
chmod 600 /opt/etc/crontab

Marks
29-07-2007, 14:23
chmod 600 /opt/etc/crontab
Спасибо, чуть помогло. Однако тестовое задание не работает, при попытке запустить ручками run-parts ругается:

# ./run-parts
Usage : ./run-parts
/linuxrc: /linuxrc: 29: cannot open dev/null: No such file

[MakcuM@wl500g root]$

Mam(O)n
29-07-2007, 14:43
run-parts нельзя так запускать, ему нужен аргумент - папка, в которой лежат скрипты для выполнения. В твоем случае он стал выполнять скрипты из корневой папки.
А вообще, если не работает крон то смотри туториал (http://www.macsat.com/macsat/content/view/28/29/) и ищи свою ошибку.

als
29-07-2007, 14:52
Поставил в настройках "Путь до исполняемого файла PHP" "/opt/bin/php-fcgi" (было /opt/bin/php). Сделал тестовый скрипт. Он не запускается, в логе информации о нем нет. В error log такое:

2007-07-29 19:18:44: (mod_fastcgi.c.2551) FastCGI-stderr: PHP Warning: sqlite_query() [<a href='function.sqlite-query'>function.sqlite-query</a>]: near &quot;AND&quot;: syntax error in /opt/share/www/ados/classes/class_database.php on line 501

501 строка у меня такая:

$this->query_id = sqlite_query( $this->connection_id, $the_query );


Error log (продолжение):


2007-07-29 19:25:55: (log.c.135) server stopped
2007-07-29 19:25:56: (log.c.75) server started
2007-07-29 19:28:52: (mod_fastcgi.c.2551) FastCGI-stderr: PHP Warning: Cannot modify header information - headers already sent by (output started at /opt/share/www/ados/sections/section_download.php:563) in /opt/share/www/ados/classes/class_output.php on line 683

В общем, не знаю. Наверное, стоит подождать, пока кто-нибудь понимающий отладит, я-то просто копирую как мартышка. А вообще, жаль, что сразу не работает. Хоть как-нибудь. Буду пока пользоваться wget.

Reyter
29-07-2007, 15:59
Поставил в настройках "Путь до исполняемого файла PHP" "/opt/bin/php-fcgi" (было /opt/bin/php). Сделал тестовый скрипт. Он не запускается, в логе информации о нем нет. В error log такое:
skiped...
syntax error in /opt/share/www/ados/classes/class_database.php on line 501
skiped..
PHP Warning: Cannot modify header information - headers already sent by (output started at /opt/share/www/ados/sections/section_download.php:563) in /opt/share/www/ados/classes/class_output.php on line 683

Ковыряйте cron. Не работает он у вас, поэтому и закачки не стартуют.
Про ошибку на строке 501 у меня тоже сообщения бывают, но тем не менее на закачки это не влияет.
А вот последней ошибки у меня ни разу не вылезало.

Ну и проверьте, запускается ли test.sh вручную, и вообще-то - создал ли ADOS какие-нибудь скрипты в папке /opt/etc/cron.1min?

als
29-07-2007, 16:22
Ну и проверьте, запускается ли test.sh вручную, и вообще-то - создал ли ADOS какие-нибудь скрипты в папке /opt/etc/cron.1min?

test.sh и вручную не запускается, хотя и сделал его исполняемым. Пишет "not found". ADOS скрипты исправно создает в этой папке, для каждой закачки. Force-reinstalled cron, не помогло. Не знаю, что именно "ковырять" - сделал все по инструкции, установил. Переустановил. Не работает. Просто буду ждать новых инструкций.

Reyter
29-07-2007, 16:44
als а запускаются ли вручную скрипты, созданные ADOS. И если да, то каков результат?

Marks
29-07-2007, 17:26
test.sh и вручную не запускается, хотя и сделал его исполняемым. Пишет "not found". ADOS скрипты исправно создает в этой папке, для каждой закачки. Force-reinstalled cron, не помогло. Не знаю, что именно "ковырять" - сделал все по инструкции, установил. Переустановил. Не работает. Просто буду ждать новых инструкций. А через mc получается скрипты запускать?
И так, на всякий случай, что в файле crontab вместо root,
там должен быть логин под которым заходите в web морду:cool:

Reyter
29-07-2007, 17:38
И так, на всякий случай, что в файле crontab вместо root,там должен быть логин под которым заходите в web морду:cool:
Вай! Моя промашка. Забыл предупредить. Если кто заходит под admin, то замените root на него.
А вообще-то я настоятельно ркомендую поменять учетную запись admin на root. Избавитесь от проблем при установке некоторых пакетов. Того же screen например.

als
29-07-2007, 17:49
Спасибо за советы.

Поменял root на свой реальный логин - не помогло.

А вот вручную скрипты запускаются, да. Запустил mc, нажал на скрипт закачки и все пошло. В веб-интерфейсе появилось время, объем скачанного меняется, можно останавливать и возобновлять закачку. В свойствах закачки скорость при этом почему-то всегда 0 Кб/с, ну это мелочи.

Теперь бы сделать так, чтобы не вручную запускать, а как задумано.

Reyter
29-07-2007, 18:02
Теперь бы сделать так, чтобы не вручную запускать, а как задумано.
Разбирайся с Cron. Еще раз внимательно все перечитай. Может пропустил чего?
Попробуй выполнить в консоли:
/opt/bin/run-parts /opt/etc/cron.1min
и посмотри, что оно выдаст в ответ.

als
29-07-2007, 18:09
Попробуй выполнить в консоли:
/opt/bin/run-parts /opt/etc/cron.1min
и посмотри, что оно выдаст в ответ.

-sh: /opt/bin/run-parts: not found

Вручную из mc run-parts тоже не запускается, как и тестовый скрипт - "not found".

Marks
29-07-2007, 18:15
Вопрос такой: что надо прописать в поле Корневой каталог для сохранения закачек , сейчас там у меня . , при исполнении cron.1min в ручную получаю:
[MakcuM@wl500g root]$ /opt/bin/run-parts /opt/etc/cron.1min
/opt/bin/run-parts: /opt/etc/cron.1min/ados_a906bde73c529a3433105e3de39a85dd.sh: 3: cannot create ./_log/a906bde73c529a3433105e3de39a85dd.log: Directory nonexistent
/opt/bin/run-parts: /opt/etc/cron.1min/ados_a906bde73c529a3433105e3de39a85dd.sh: 5: cannot create ./_log/cron_end_download.log: Directory nonexistent
[MakcuM@wl500g root]$

Reyter
29-07-2007, 18:25
-sh: /opt/bin/run-parts: not found

Вручную из mc run-parts тоже не запускается, как и тестовый скрипт - "not found".

Чевой-то у тебя руки немного кривые ;)
Короче, прилагаю run-parts и test.sh.
run-parts кладешь в /op/bin, test.sh в /opt/etc/cron.1min
затем выполняешь:
chmod +x /opt/bin/run-parts
chmod +x /opt/etc/cron.1min/test.sh

На всякий случай прикладываю и crontab "переделанный" под admin. Его кладешь в /opt/etc и выполняешь
chmod 600 /opt/etc/crontab

Не забудь распаковать скрипты перед тем, как на роутер будешь сбрасывать :D

И смотришь, что получилось ;)

Reyter
29-07-2007, 18:31
Вопрос такой: что надо прописать в поле [I]Корневой каталог для сохранения закачек
Прописать нужно реально существующий каталог, в который ты хочешь закачивать файлы.
Например /tmp/harddisk/downloads
Если такого каталога нет, то его сначала нужно создать:
mkdir /tmp/harddisk/downloads

AJAN
29-07-2007, 19:04
Ну...
Поехали пожелания и хотелки ;)

Основное!!! Необходимо уметь ограничивать количество потоков с конкретных серверов. Порой это бывает крайне критично.

FTP браузер хочу... Но это вообще свинство с моей стороны ;)

P.S. Работает все таки довольно тормознуто... И не уверен, но ощущение, что основная функциональность стала подтормаживать.
Мне кажется, что в данной ситуации больший смысл имеет дэсктопный клиент скидывающий задания на рутер.

als
29-07-2007, 19:48
Чевой-то у тебя руки немного кривые ;)
Короче, прилагаю run-parts и test.sh.

(skipped)

И смотришь, что получилось ;)

Руки кривые, это да. С этим невозможно спорить. Ну и все же первый раз в жизни пришлось иметь дело с линуксом.

Заменил свои файлы приложенными. Выполнил команды. Есть прогресс! Скрипты test.sh и run-parts стали запускаться вручную!
Но даже после ручного запуска test.sh в журнале ничего по этому поводу не появляется.

Команда /opt/bin/run-parts /opt/etc/cron.1min в консоли тоже вроде выполняется, во всяком случае никаких сообщений нет, и вновь сразу появляется командная строка. Ну а больше ничего не изменилось - закачки как висели, так и висят. С ручным запуском все работает.

Reyter
29-07-2007, 19:59
als, а у тебя, извиняюсь за интимный вопрос, вообще-то cron запущен?
выполни-ка
top | grep cron
ну или, если grep не установлен (что вообще-то плохо), просто набери
top
и поищи в процессах "cron".
Чтобы остановить выполнение команды top (и многих других команд) нужно нажать CTRL+C

Marks
29-07-2007, 20:34
Ура, заработало! (с) Матроскин.
В дополнение инстукции от Reyter
При установке скрипта на вопрос (не помню как правильно) путь до исполняемого модуля ответ:
/opt/bin/axel

Reyter
29-07-2007, 20:53
Ура, заработало! (с) Матроскин.
В дополнение инстукции от Reyter
При установке скрипта на вопрос (не помню как правильно) путь до исполняемого модуля ответ:
/opt/bin/axel
Гм... Было бы неплохо повнимательнее читать мои инструкции. Несмотря на то, что я постоянно вношу туда поправки и дополнения, основываясь на всплывающих проблемах с установкой у неопытных пользователей, путь к axel я указал там с самого начала.
Но, как бы то ни было, поздравляю ;)

Marks
29-07-2007, 21:14
Спасибо, уже глазки плохо видят. Кстати, про неопытных пользователей очень полезен такой скриптик в /opt/etc/init.d
rc.unslung

#!/bin/sh

# Start all init scripts in /opt/etc/init.d
# executing them in numerical order.
#
for i in /opt/etc/init.d/S??* ;do

# Ignore dangling symlinks (if any).
[ ! -f "$i" ] && continue

case "$i" in
*.sh)
# Source shell script for speed.
(
trap - INT QUIT TSTP
set start
. $i
)
;;
*)
# No sh extension, so fork subprocess.
$i start
;;
esac
done

он запускает всё что исполняется и на букву s. Соответственно в postmount

#!/bin/sh
/opt/etc/init.d/rc.unslung

Reyter
29-07-2007, 21:39
Спасибо, уже глазки плохо видят. Кстати, про неопытных пользователей очень полезен такой скриптик в /opt/etc/init.d
rc.unslungон запускает всё что исполняется и на букву s.
Есть у меня такой скрипт.
Но во-первых: не все, что у меня лежит в init.d мне требуется запускать (устанавливал кое-что. пока отключил, не пользуюсь).
А во-вторых: некоторые скрипты необходимо запускать с ключом start, что rc.unslung делать не умеет. Да и умел бы, откуда он узнает что нужно запускать со start, а что нет?
Так что уж лучше ручками все самому в post-mount вносить. Оно так надежнее и все под контролем ;)

Marks
29-07-2007, 21:58
Offtopic
не все, что у меня лежит в init.d мне требуется запускать -переименовать
некоторые скрипты необходимо запускать с ключом start, что rc.unslung делать не умеет- не умеет, но почему-то запускает:D

BraVo123
29-07-2007, 22:03
Offtopic
не все, что у меня лежит в init.d мне требуется запускать -переименовать
некоторые скрипты необходимо запускать с ключом start, что rc.unslung делать не умеет- не умеет, но почему-то запускает:D
ну , у меня к примеру, кроме сабжевых служб там лежит ещё много чего запуск mySQL например ... и тоже на S начинается .. и всё это переименовывать? нет руками надёжнее ...

Mam(O)n
29-07-2007, 22:10
rc.unslung как раз и запускает с параметром 'start' скрипты из папки /opt/etc/init.d. А если какой-либо скрипт нужно вычеркнуть из автозагрузки, то достаточно в имени первую букву 'S' заменить над любую другую. Также этот скрипт игнорирует симлинки.
Кстати по-идее в папке init.d должны лежать скрипты для управления демонами. Принято запускать управляющий скрипт с параметром 'start' для запуска демона, 'stop' для его остановки и 'restart' для перезагрузки демона. Но так так некоторые сборщики пакетов халтурят многие скрипты управления игнорируют эти параметры.

Marks
29-07-2007, 22:15
ну , у меня к примеру, кроме сабжевых служб там лежит ещё много чего запуск mySQL например ... и тоже на S начинается .. и всё это переименовывать? нет руками надёжнее ...
Так, не понял, чего накинулись? Я ж написАл про неопытных пользователей , и что сложного переименовать через Samba? Я, как закоренелый виндузятник очень многие настройки роутера делаю в винде, ну удобней мне так:)

als
30-07-2007, 07:16
als, а у тебя, извиняюсь за интимный вопрос, вообще-то cron запущен?


Правильно, взрослые же люди. Не нужно стесняться самых откровенных вопросов.

Cron был как-то запущен. Ну и после всяких перезагрузок я его вручную запускаю, вроде все делаю, но все равно закачки так и висят. Ну и тестовый скрипт, кстати, тоже не выполняется.

Все, спасибо за помощь, но я недоволен и бросаю это дело. Я, конечно, полный чайник в линуксе, о чем громко заявил в теме "Помогите ламеру установить качалки", но все же установил и настроил mldonkey, CTCS torrents, сам придумал потрясяющий синтаксис для wget (см. соответствующую тему). А тут никак. Хватит. Баста.

Если серьезно, то действительно - не нравится, что как-то подтормаживает все. Хоть я и стремился к web-интерфейсу, но оказалось, что гораздо быстрее и проще пользовать wget со списком закачек.

Reyter
30-07-2007, 07:50
Все, спасибо за помощь, но я недоволен и бросаю это дело. Я, конечно, полный чайник в линуксе, о чем громко заявил в теме "Помогите ламеру установить качалки", но все же установил и настроил mldonkey, CTCS torrents, сам придумал потрясяющий синтаксис для wget (см. соответствующую тему). А тут никак. Хватит. Баста.
Если серьезно, то действительно - не нравится, что как-то подтормаживает все. Хоть я и стремился к web-интерфейсу, но оказалось, что гораздо быстрее и проще пользовать wget со списком закачек.
А вот отчаиваться не стОит. Сейчас я редактирую свои рекомендации на 3-й странице, постараюсь все предусмотреть и приложить все необходимые файлы. Чтобы даже у самого зеленого новичка не возникло вопросов. И в линуксе я такой же чайник как и ты. Но придется нам, чайникам, самим помогать друг другу ;)
Про потрясающий синтаксис для wget что-то не нашел...
А что касается тормозов - полагаю, они вызваны интенсивным использованием web-интерфейса ADOS с высокой частотой обновления страницы. Если (после того, как все удастся настроить) действовать по принципу "поставил закачку и забыл" с выходом из web-интерфейса, то тормозов быть не должно.

als
30-07-2007, 08:50
Ну ладно, уговорили, оставлю место надежде...

Тема про качалки: http://wl500g.info/showthread.php?t=9708
"Мой потрясяющий синтаксис" - http://wl500g.info/showpost.php?p=59059&postcount=32

Wget вроде по умолчанию каждые 50 kb пишет в лог, причем туда, куда у меня нет доступа по ftp. И я придумал, как это победить!!!

Вообще, странновато выглядит, но отлично работает. Сделал исполняемый файл для запуска этой команды. Если надо сделать паузу, то убиваю процесс с помощью команд top и kill, потом возобновляю. Мне кажется, что я молодец.

Reyter
30-07-2007, 09:10
Wget вроде по умолчанию каждые 50 kb пишет в лог, причем туда, куда у меня нет доступа по ftp. И я придумал, как это победить!!!
Вообще, странновато выглядит, но отлично работает. Сделал исполняемый файл для запуска этой команды. Если надо сделать паузу, то убиваю процесс с помощью команд top и kill, потом возобновляю. Мне кажется, что я молодец.
А я кажется закончил свои рекомендации по установке (http://wl500g.info/showpost.php?p=59637&postcount=42), можешь попробовать "облегченный" вариант в конце сообщения.
По поводу что "туда, куда у меня нет доступа по ftp", то это странно. Разве если выставить в web-интерфесе роутера "Allow Super User to Login?" "yes", а потом заходить по ftp с логином и паролем админа, то не предоставляется доступ ко всему содержимому роутера? Да и самбу можно настроить так, что можно получить полный доступ к роутеру.
Убивать процесс можно проще - командой "killall wget" или какой там у тебя процесс, не знаю.

als
30-07-2007, 09:35
А я кажется закончил свои рекомендации по установке (http://wl500g.info/showpost.php?p=59637&postcount=42), можешь попробовать "облегченный" вариант в конце сообщения.

Может быть попозже еще разок попробую прогнать все сначала, хотя (на первый взгляд) не увидел отличий от того, что я уже делал.


Разве если выставить в web-интерфесе роутера "Allow Super User to Login?" "yes", а потом заходить по ftp с логином и паролем админа, то не предоставляется доступ ко всему содержимому роутера? Да и самбу можно настроить так, что можно получить полный доступ к роутеру.

У меня так и стоит - Allow Super User. Но по ftp могу зайти только на /tmp/harddisk

По самбе вроде получалось везде зайти, но я ее пока запретил, так как не хочется разбираться с правами доступа. Тем более, что я пока не понимаю ее преимуществ (для себя) по сравнению с ftp.


Убивать процесс можно проще - командой "killall wget" или какой там у тебя процесс, не знаю.

Спасибо, попробую. Одним движением меньше.

ffk
30-07-2007, 20:34
Все поставил по инструкции, захожу на web страницу, заполняю данные
получаю:
Невозможно создать файл базы данных. Возвращаемая ошибка:
file is encrypted or is not a database

где я накосячил?

P.S. Еще если попробовать второй раз получаю:
Fatal error: Database query execution error
Query

CREATE TABLE categories_files ( file_id INTEGER PRIMARY KEY, file_name VARCHAR(255), file_cat INTEGER NOT NULL DEFAULT '0', file_link TEXT, file_path TEXT, file_user INTEGER, file_dl_id VARCHAR(32), file_dl_start INT(10), file_dl_last_start INT(10), file_dl_stop INT(10), file_dl_left INT(10), file_dl_time INT(10), file_dl_speed INTEGER, file_dl_module VARCHAR(255), file_state VARCHAR(10) NOT NULL DEFAULT 'idle', file_error TINYINT(1) NOT NULL DEFAULT '0', file_desc TEXT, file_size INTEGER, file_shared TINYINT(1) NOT NULL DEFAULT '0' )

Answer

disk I/O error

Reyter
31-07-2007, 06:35
ffk, попробуй удалить файлы /opt/share/www/ados/database.sqlite и /opt/share/www/ados/install.lock

_ab_
31-07-2007, 16:38
Все, вроде, установлено и по отдельности работает, но ADOS не позволяет добавлять закачки. Полез в журнал, там при попытке добавить закачку появляются ошибки: "ECF_006 31.07.2007 19:26 Изменение состояния закачки невозможно"

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

Кто нибудь сталкивался с такой ошибкой? И как ее лечить?
Спасибо.

ffk
31-07-2007, 18:30
ffk, попробуй удалить файлы /opt/share/www/ados/database.sqlite и /opt/share/www/ados/install.lock

/opt/share/www/ados/install.lock - такого у меня нет
opt/share/www/ados/database.sqlite удаляю - то же самое

zygoth
06-08-2007, 01:28
так кому-то удалось успешно установить этот пакет? :)

Reyter
06-08-2007, 08:47
так кому-то удалось успешно установить этот пакет? :)
Странный вопрос... Ну мне удалось.
Не все пока работает как надо, но ведь это первая тестовая версия.

zygoth
06-08-2007, 14:03
Странный вопрос... Ну мне удалось.
Не все пока работает как надо, но ведь это первая тестовая версия.

я просто сам, пока что, практически ничего исправлять не умею, а сбрасывать всё целиком, и потом заново настраивать - неохота. подожду тогда следующей версии.

кстати поставил axel... довольно хорошая скачивалка.

dimaka
11-08-2007, 12:00
установил, вроде все по инструкции от Reyter (спасибо! :) ), запустил, указал скрипту где axel и прочее что требуется, все вроде ок, но при попытке добавить закачку ADOS долго думает, закачка не добавляется, так и висит окно добавления закачки. После этих раздумий уже никуда зайти не получается, если снова залогинится, то вообще выдается пустая страница, опять-таки, после продолжительных раздумий.
Может у кого есть идеи, где копать?

DINI
11-08-2007, 15:11
всем привет!

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

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

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

DINI
11-08-2007, 15:44
Сейчас почитал тему повнимательнее и прежде всего хочу сказать большое спасибо Reyter'у за то, что он взял всю грязную работу, которая обычно появляется именно после первой публикации проги и от которой я просто ушел (хотя и вынужденно), на себя и помогал всем советами и даже составил инструкции по предустановке необходимых пакетов!

Также хочу вновь повторить то, что уже говорил: я не ставил перед собой цели сделать полноценную программу-качалку. Моей целью было создание удобного веб-интерфейса для добавления и управления закачками. При этом мой скрипт не выполняет эти закачки самостоятельно, он лишь генерирует необходимые команды для запуска закачек при помощи сторонних программ. Большего от скрипта ждать не следует.

Что касается быстродействия, то я тоже об этом очень подробно говорил в описании к первой бете: здесь (http://wl500g.info/showpost.php?p=59590&postcount=27) и здесь (http://wl500g.info/showpost.php?p=59591&postcount=28).
Вкратце все сводится к тому, что наилучшие результаты достигаются в случае, если автоматическое обновление страницы отключено, а одновременное количество выполняемых закачек находится в пределах 3-5 штук при 7-10 потоках на закачку.

Тормоза появляются из-за обработки текущего состояния закачек, т.к. для этого скрипт считывает и обрабатывает информацию из журнальных файлов закачек. Соответственно, чем больше закачек выполняются, тем дольше будет тормозить скрипт при загрузке или обновлении (в т.ч. автоматическом) вкладки "Закачки".
Если кто-то предложит более быстродействующий алгоритм проверки состояния закачки, то я без проблем добавлю его в скрипт, если, конечно, этот алгоритм будет работоспособен.
Если действовать по принципу "поставил на закачку и забыл", как заметил Reyter, то, думаю, особых проблем не будет.

Далее, судя по всему, основная масса ошибок возникает из-за неправильно установленных или настроенных сопутствующих пакетов. Здесь я еще раз говорю спасибо Reyter'у и советую всем прочитать его инструкции (http://wl500g.info/showpost.php?p=59637&postcount=42) перед установкой моего скрипта.


скрипт не хочет качать ссылку с указанием порта ftp и логана с паролемЕсть такое дело. Скрипт действительно проверяет адрес при помощи регулярных выражений. А возможное наличие портов я не учел. Взял на зметку.

В ближайшее время я добавлю описания и коды ошибок во все модули скрипта и сделаю возможность сохранения записей журнала не только в БД, но и в файл, чтобы можно было проще проследить за возникающими ошибками и, соответственно, быстрее устранить причины их возникновения.

Reyter
11-08-2007, 18:27
:)
Ну, все спасибы мне наверное несколько незаслуженны. У меня есть личная заинтересованность в успехе этого проекта, поскольку роутер покупал, чтобы на все 100% использовать безлимитный тариф (которого я пока, увы, лишился), а это значит - раздача инета через NAT и качалки, качалки, качалки...
Если с торрентом у нас все обстоит благополучно, то с ftp и http-качалками был полный караул (имеется в виду удобный web-интерфейс и расписание). Ну а microdc2 я пытаюсь сейчас победить на предмет русского языка, но это уже оффтоп.
А вот автору я почему-то особых спасиб не вижу. Боюсь большинство очень плохо себе представляет, какой большой объем работы этот человек проделал совершенно бескорыстно. И хотя пока еще не все работает как надо, тем не менее автора чрезвычайно важно поддерживать морально. И, что не менее важно, давать четкие и детальные описания багов (какой web-браузер, что нажал, куда вписал, что получилось, что в логах и т.п.), а не такие багрепорты типа "Уважаемая редакция! У меня уже который год в подвале за стенкой чего-то стучит. Скажите пожалуйста, что это такое?"

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

Ну раз автор наконец-то появился, будем писАть багрепорты по всем правилам. Вот уже завтра чего-нть отпишу. :)

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

Davis2k3
11-08-2007, 20:39
Поставил lighttpd,
но при открытии странички показывает ошибку 403, причем я не могу
открыть и свои странички. Да и после рестарта ротура вообще перестал "апатч" работать.
Как запустить хз. На команду
/opt/etc/init.d/S80lighttpd start пишет
-sh: /opt/etc/init.d/S80lighttpd: not found

sergicus
12-08-2007, 11:41
уважаемый Dini - большое вам спасибо за работу.
а вы не планируете добавлять в вашу программу что нибуть для закачки файлов с рапидшары или депозита (и других подобных сервисов)

DINI
12-08-2007, 17:24
уважаемый Dini - большое вам спасибо за работу.
а вы не планируете добавлять в вашу программу что нибуть для закачки файлов с рапидшары или депозита (и других подобных сервисов)Скрипт позволяет качать с платных серверов, если для них имеются аккаунты.
Никаких функций для автоматической расшифровки кодов для бесплатного скачивания с последующим получением прямых ссылок на файлы я добавлять не буду, т.к. применение таких функций запрещено правилами всех платных серверов, а мне проблемы не нужны.

puksa
12-08-2007, 17:57
я - еще один человек, который разобрался и у которого все заработало!

Товарищи, смотрите пристальнее на поведение логов. Моя проблема заключалась в неправильной конфигурации при установке. ИЗНАЧАЛЬНО ПРИ УСТАНОВКЕ указывайте куда будете класть файлы! и незабудьте chmod 777!

Спасибо автору. У меня вся семья довольна:)

sergicus
12-08-2007, 18:07
никаких функций для автоматической расшифровки кодов для бесплатного скачивания с последующим получением прямых ссылок на файлы я добавлять
извините я не правильно выразился. я имел в виду вводишь рапидшаровскую ссылку. потом выскакивает окошко с циферками. ввожу их и скачивание начинается. хорошо бы что бы если програма регулярно проверяла следующую ссылку и когда рапида снова разрешит с себя качать что бы вывела окно с циферками (автоматически) , и т.д.
т.е. никакого жульничества (хотя конечно если не будет их рекламы это хорошо)

imdex
12-08-2007, 18:28
извините я не правильно выразился. я имел в виду вводишь рапидшаровскую ссылку. потом выскакивает окошко с циферками. ввожу их и скачивание начинается. хорошо бы что бы если програма регулярно проверяла следующую ссылку и когда рапида снова разрешит с себя качать что бы вывела окно с циферками (автоматически) , и т.д.
т.е. никакого жульничества (хотя конечно если не будет их рекламы это хорошо)

USDownloader в помощь)

DINI
12-08-2007, 18:47
извините я не правильно выразился. я имел в виду вводишь рапидшаровскую ссылку. потом выскакивает окошко с циферками. ввожу их и скачивание начинается.Здесь действительно лучше использовать USDownloader.

Я опять повторю, что мой скрипт не является и не будет являться полноценной программой-качалкой. Это лишь веб-интерфейс для скачивания файлов при помощи сторонних программ.

sergicus
12-08-2007, 19:04
Здесь действительно лучше использовать USDownloader.

не является и не будет являться полноценной программой-качалкой. Это лишь веб-интерфейс для скачивания файлов при помощи сторонних программ.
Спасибо за ответ

Я его и использую - просто хотелось бы все в одном

abi
12-08-2007, 19:24
А вот этот файл можно скачать скриптом?
http://download.microsoft.com/download/c/6/2/c62f06c1-fb9e-4176-b99b-b46db7df170f/SQLEVAL.ISO
У меня вечное ожидание на нем. :(

DINI
12-08-2007, 20:06
Внимание: вышел второй билд беты скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.

Добавлено:
Проверка наличие порта в ссылках на файлы.

Обновлено:
Немного подчищен исходный код.
В установщике путь для сохранения файлов по умолчанию теперь /opt/ados.

Исправлено:
Установщик теперь создаст все необходимые директории, если их не существует (раньше он создавал директории только в том случае, если введенный путь для сохранения указывал на уже существующую директорию).

DINI
12-08-2007, 20:09
А вот этот файл можно скачать скриптом?Можно. Сейчас проверил: качает. Размер 0,87 Гб.

puksa
12-08-2007, 20:15
если стоит вечное ожидание - что-то не так настроил.

автор, лови баг:) не отображается размер файлов. конечно не принципиально, но тем не менее:) качаю гарепотера нового - показывает размер 0кб. осталось - пишет "--".

DINI
12-08-2007, 20:27
автор, лови баг:) не отображается размер файлов. конечно не принципиально, но тем не менее:) качаю гарепотера нового - показывает размер 0кб. осталось - пишет "--".Если бы еще ссылка была, тогда бы я смог проверить, что там с размером.
У меня пока все размеры отображаются как надо, если они, конечно, правильно выдаются серверами.

abi
12-08-2007, 20:28
маленький файл скачался, а на этом висит вечное ожидание :(

DINI
12-08-2007, 20:32
маленький файл скачался, а на этом висит вечное ожидание :(Выдели этот файл и нажми на кнопку старта.
Если не поможет, включи логи, еще раз нажми на старт и посмотри, не появилась ли запись об ошибке в журнале.

abi
12-08-2007, 20:42
выдели этот файл и нажми на кнопку старта.
если не поможет, включи логи, еще раз нажми на старт и посмотри, не появилась ли запись об ошибке в журнале.

нажал, не помогло. включил все ошибки, ничего не появилось.
скачал файл побольше, уже 2.6 мегабайт. скачался без проблем.

DINI
12-08-2007, 20:47
нажал, не помогло. включил все ошибки, ничего не появилось. Посмотри, создается ли файл с инструкциями для axel'я в папке CRON.

abi
12-08-2007, 20:54
Посмотри, создается ли файл с инструкциями для axel'я в папке CRON.

В папке cron ? Если небольшой sh-файл, который запускается раз в минуту, то он присутствует.
Скачал файл размеров в 26 мегабайт успешно :)

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

abi
12-08-2007, 21:00
виноват.
не создается!
для всех файлов, которые качались - создавался, а на этот - нет.
я убрал из ссылки середину, где куча всяких символов и запустил закачку - файл создался. конечно, ничего не скачалось - но он создался. в чем может быть проблема?
галочку о елатинских символах в запросах ставил - нет эффекта.

DINI
12-08-2007, 21:09
В папке cron ? Если небольшой sh-файл, который запускается раз в минуту, то он присутствует.Помимо ados.sh должны присутствовать другие .sh файлы. По одному на закачку.


И еще... Кажется, не качаются файл с http серверов с нестандартным номером порта, пишется что подходящих закачек не обнаружено при попытке добавить такие файлы.Да, с портами проблема все еще есть. Через пару минут выложу исправление.

DINI
12-08-2007, 21:11
я убрал из ссылки середину, где куча всяких символов и запустил закачку - файл создался. конечно, ничего не скачалось - но он создался. в чем может быть проблема?Хм... Даже не знаю. Раз у меня он создается без проблем, то, наверное, ошибка все же не в скрипте, а в чем-то еще. Например, в настройках PHP. Хотя здесь можно только гадать.

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

DINI
12-08-2007, 21:22
Внимание: вышел третий билд беты скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.
Для обновления необходимо заменить файлы на сервере файлами из архива.

Исправлено:
Проверка на порты (работала не для всех ссылок).
Переадресация с повторной авторизацией (авторизация работала только для первой ссылки из списка и не работала при переадресации).

abi
12-08-2007, 21:30
Хм... Даже не знаю. Раз у меня он создается без проблем, то, наверное, ошибка все же не в скрипте, а в чем-то еще. Например, в настройках PHP. Хотя здесь можно только гадать.

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

Изменил ссылку незначительно, на один символ и файл опять создался. Видимо, ему что-то не нравится в том, что сервер MS ему сообщает.
Вот засада...

php.ini взял из этой темы - ничего не поменялось.

DINI
12-08-2007, 21:31
Изменил ссылку незначительно, на один символ и файл опять создался.На какой именно символ?

abi
12-08-2007, 21:37
На какой именно символ?

Вместо download написал downloads
Вот бред :(
Тем не менее прогнал опыт несколько раз и подтверждаю: в первом случае файл не создается, а во втором - да. Кажется, в первом случае до axel'а дело не доходит, следовательно, это не сервер MS что=то нехорошее говорит?


_http://download.microsoft.com/download/c/6/2/c62f06c1-fb9e-4176-b99b-b46db7df170f/SQLEVAL.ISO


_http://download.microsoft.com/downloads/c/6/2/c62f06c1-fb9e-4176-b99b-b46db7df170f/SQLEVAL.ISO

DINI
12-08-2007, 21:49
Вот бред :(
Тем не менее прогнал опыт несколько раз и подтверждаю: в первом случае файл не создается, а во втором - да. Кажется, в первом случае до axel'а дело не доходит, следовательно, это не сервер MS что=то нехорошее говорит?Про бред согласен. Предлагаю оставить это до утра, т.к. сейчас я уже вряд ли смогу сделать что-то дельное.
Завтра попробую поковыряться и найти причину проблемы.

DINI
13-08-2007, 14:19
Внимание: вышел четвертый билд беты скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.
Для обновления необходимо заменить файлы на сервере файлами из архива. Файлы lang/ru/module_axel.lng и modules/module_axel.php необходимо заменить соответствующими файлами из архива install/ados_module_axel_1.0.0.tar.gz

Добавлено:
Обработка информации о файле при его загрузке с FTP: размер файла, скорость скачивания и т.д.

Обновлено:
Еще немного подчищен и оптимизирован исходный код.

Исправлено:
Запуск закачки из окна свойств при ее добавлении (раньше нажатие на кнопку запуска приводило лишь к переводу закачки в режим ожидания).
Обновление списка закачек после изменения состояния закачки (раньше список оставался неизменным и необходимо было обновить его вручную).
Обновление списка файлов при обновлении состояния закачки в окне свойств (раньше после обновления список файлов пропадал).
Определение скорости закачки (раньше в большинстве случаев она была равна 0 Кб/сек).

dimaka
13-08-2007, 16:47
Вот такое выдает в логе error.log lighttpd

2007-08-13 19:14:54: (log.c.75) server started
2007-08-13 19:16:57: (mod_fastcgi.c.2551) FastCGI-stderr: PHP Fatal error: Maximum execution time of 90 secon
ds exceeded in /opt/share/www/ados/classes/class_engine.php on line 1710
при этом выскакивет только окно ввода пароля и фсе :( дальше просто пустая страничка...

DINI
13-08-2007, 17:25
Тут уже были проблемы с сервером. Я лишь советую не устанавливать сразу несколько серверов, а ограничиться лишь одним.

Что касается ошибок, то иногда помогает разобраться не только лог сервера, но и системный лог (/tmp/syslog.log).

abi
13-08-2007, 18:27
а с моей проблемой что-то можно сделать, хотя бы понять причину?

DINI
13-08-2007, 18:32
а с моей проблемой что-то можно сделать, хотя бы понять причину?Честно говоря, так я и не понял, в чем тут дело. Несколько раз пробовал скачать сам по правильной ссылке: все работало нормально.

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

zygoth
14-08-2007, 15:31
Поставил четвёртый билд, до этого ничего не стояло. Делал по инструкции. Закачки добавляются, но остаются в ожидании, размер файла не определяется. Жму вручную старт, не помогает. В чём тут может быть проблема?

Беспокоит также штук 8 процессов php-fcgi в top'е, жрущих 12-18% памяти. Это нормально?

Reyter
14-08-2007, 16:08
Поставил четвёртый билд, до этого ничего не стояло. Делал по инструкции. Закачки добавляются, но остаются в ожидании, размер файла не определяется. Жму вручную старт, не помогает. В чём тут может быть проблема?

Беспокоит также штук 8 процессов php-fcgi в top'е, жрущих 12-18% памяти. Это нормально?
Появляются ли скрипты в /opt/etc/cron.1min?
Что пишется в /opt/var/log/lighttpd/error.log?
Здесь телепатов нет. ;)

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

zygoth
14-08-2007, 18:59
Появляются ли скрипты в /opt/etc/cron.1min?
Скриптов в /opt/etc/cron.1min кроме ados.sh нет и не появляется.


Что пишется в /opt/var/log/lighttpd/error.log?

Содержимое error.log:


2007-08-14 00:54:36: (log.c.75) server started
2007-08-14 02:08:00: (log.c.135) server stopped
2007-08-14 02:09:06: (log.c.75) server started
2007-08-14 02:29:59: (mod_fastcgi.c.2551) FastCGI-stderr: PHP Warning: Division by zero in /opt/share/www/ados/sections/section_download.php on line 687
2007-08-14 16:21:31: (log.c.135) server stopped
2007-08-14 16:21:33: (log.c.75) server started

Мне очень не нравится строка #4. Или это нормально? :)


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

Нет, а почему запущенных процессов php-fcgi аж 8 штук?

Reyter
14-08-2007, 19:05
а кстати. у меня такая же фигня. скрипты не создаются. это после переезда с версии 1.0 на 1.4

DINI
14-08-2007, 20:15
Мне очень не нравится строка #4. Или это нормально? :)Это, конечно, не нормально. Но в нормальной ситуации такой строки и не будет.
Деление на ноль происходит из-за нулевого размера файла. То есть, получается, что скачивается файл с нулевым размером.


Нет, а почему запущенных процессов php-fcgi аж 8 штук?Тоже хороший вопрос. Попробуй остановить и снова запустить сервер и PHP и посмотри, когда появляются лишние процессы.


скрипты не создаются.Смотри лог ошибок. Все описания ошибок, связанных с закачками, мной уже написаны и заносятся в лог. Поэтому если барахлит скрипт, то будет запись в логе.
И я недеюсь, что ты не забыл заменить файлы модуля для axel'я, о которых я говорил (http://wl500g.info/showpost.php?p=60717&postcount=144)?

stinger
14-08-2007, 21:31
Здравствуйте, уважаемый DINI!
Давно искал интерфейс, подобный Вашему ADOSу для установки на сервере под управлением FreeBSD.
Посмотрев системные требования и доустановив необходимое, попробовал его в деле.
Интерфейс, как ни странно, заработал с полпинка :-)
Однако, есть такая проблема.
Закачка создается, cron отрабатывает, логи пишутся, файл сохраняется в во временный каталог _tmp с расширением .ados. Однако, после окончания закачки он не переносится в нужный каталог. В логе закачки в это время все ОК, тоесть закачка 100%.
В интерфейсе при этом статус закачки "Закачивается".
Такое впечатление, что движок не совсем верно отслеживает окончание закачки axelем. Насколько я могу судить, используются номера запущенных процессов axel, и команда ps. А ее вывод может быть разным для разных систем.
Что можно предпринять или где посмотреть в данной ситуации?
Могу предложить скромную помощь в отладке Вашего ПО для FreeBSD, если есть такая необходимость.

DINI
14-08-2007, 21:50
Такое впечатление, что движок не совсем верно отслеживает окончание закачки axelем. Насколько я могу судить, используются номера запущенных процессов axel, и команда ps. А ее вывод может быть разным для разных систем.
Что можно предпринять или где посмотреть в данной ситуации?Честно говоря, писался скрипт именно под Линукс, однако его достаточно легко можно оптимизировать для работы как под Windows, так и под Unix-подобные системы.

Определение окончания закачки действительно происходит посредством выполнения команды ps и анализа возвращенного результата. Однако идентификаторы закачек используются непосредственно при скачивании файла для обновления информации о его текущем состоянии.
После окончания скачивания процессы, инициализированные axel'ем, завершаются, и именно по отсутствию этих процессов скрипт определяет, что закачка завершена.

В вашем случае я советую посмотреть записи в файлах _log/cron_end_download.log и _log/cron_schedule.log.

Правда это может быть и баг axel'я: если в папке _tmp при 100% загрузке помимо файла с расширением .ados также находится файл с аналогичным именем, но имеющий расширение .ados.st, то это и есть тот самый баг. Почему-то axel не всегда докачивает файл до конца, оставляя недокачанными всего-лишь несколько байт. При этом в логе закачки значится 100%. :confused:
Решением здесь является пауза и повторный запуск закачки. А по поводу исправления бага надо обращаться к автору axel'я.


Могу предложить скромную помощь в отладке Вашего ПО для FreeBSD, если есть такая необходимость. К сожалению, полноценная отладка пока невозможна, т.к. необходимо написать тексты ошибок, которые будут добавляться в лог. На это нужно время, которого у меня, увы, очень мало. Поэтому пока не могу точно сказать, когда будет готова версия для полноценного тестирования и отладки.
Тем не менее, спасибо за ваше предложение!

zygoth
15-08-2007, 00:12
То есть, получается, что скачивается файл с нулевым размером.
"Этого быть не может, потому что не может быть."©
Я качаю файл с сервака локальной сетки провайдера. Просто так axel'ем он качается, размер не нулевой. Я пробовал даже скачать картинку со стартовой страницы Firefox, не скачалось.


Тоже хороший вопрос. Попробуй остановить и снова запустить сервер и PHP и посмотри, когда появляются лишние процессы.
Сразу же. Я делаю killall lighttpd и killall php-fcgi, потом запускаю S80lighttpd start, и они появляются сразу же. Быть может, мне стоит удалить все файлы из папки /opt/share/www кроме папки с ados (там ещё есть lighttpd, images, cgi-bin)?

dimaka
15-08-2007, 08:32
У меня тоже 8 штук php-fcgi....
Полазил в инете и вычитал, что нужно добавить в lighttpd.conf в секцию fastcgi.server такие строки:

"min-procs" => 1,
"max-procs" => 1,
"max-load-per-proc" => 4,
теперь ps показывает 2 процесса php-fcgi (почему два, тоже неясно, но не восемь же! :) )
Однако, мою проблему это не решает, по прежнему в логе пишет

(mod_fastcgi.c.2551) FastCGI-stderr: PHP Fatal error: Maximum execution time of 90 secon
ds exceeded in /opt/share/www/ados/classes/class_engine.php on line 1710
системный лог ни о каких проблеммах не сообщает. Мне так и не удалось скачать с помощью этого чудо скрипта ни одного файла...
:(

DINI
15-08-2007, 08:55
Я пробовал даже скачать картинку со стартовой страницы Firefox, не скачалось.Всем, у кого возникли проблемы, я еще раз сообщаю: я не могу подъехать к вам, чтобы лично проследить, откуда возникают ошибки. Поэтому вам придется дожаться того момента, когда я добавлю тексты ошибок для записи в лог. Только после этого с помощью лога скрипта можно будет узнать причины ошибок. Пока же я могу лишь тыкать пальцем в небо.

Тем не менее, при правильной установке скрипт полностью работоспособен, т.к. он прекрасно работает у меня и у моих знакомых, которые также установили себе мой скрипт, следуя инструкциям.

stinger
15-08-2007, 10:57
В вашем случае я советую посмотреть записи в файлах _log/cron_end_download.log и _log/cron_schedule.log.


В файле _log/cron_schedule.log следующего вида записи:



...
/usr/local/www/data/html/classes/class_cron.php
/usr/local/www/data/html/classes/class_cron.php
/usr/local/www/data/html/classes/class_cron.php
...


Файл _log/cron_end_download.log не появился. А вот логи закачки от самого axelя имеются с ссответствующими именами типа

3c60c2a1b2b88d831d04e5e8dcc72fd0.log



Правда это может быть и баг axel'я: если в папке _tmp при 100% загрузке помимо файла с расширением .ados также находится файл с аналогичным именем, но имеющий расширение .ados.st, то это и есть тот самый баг. Почему-то axel не всегда докачивает файл до конца, оставляя недокачанными всего-лишь несколько байт. При этом в логе закачки значится 100%. :confused:


Все файлы, что качались, закачались полностью до последнего байта, файлов .ados.st после окончания не наблюдал.


Тем не менее, спасибо за ваше предложение!

Пожалуйста! :-)

И спасибо за Вашу работу!

DINI
15-08-2007, 11:07
Файл _log/cron_end_download.log не появился. А вот логи закачки от самого axelя имеются с ссответствующими именамиОпять-таки, нужно немного подождать новый билд, где будут добавлены записи ошибок для логов. Я постараюсь дописать их для класса управления закачками и для модуля уже сегодня.

stinger
15-08-2007, 14:50
спасибо, будем ждать!

DINI
15-08-2007, 19:46
Внимание: вышел пятый билд беты скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.
Для обновления необходимо заменить файлы на сервере файлами из архива. Файлы lang/ru/module_axel.lng и modules/module_axel.php необходимо заменить соответствующими файлами из архива install/ados_module_axel_1.0.0.tar.gz

Добавлено:
Коды и описания ошибок для классов управления закачками и модуля axel.

Обновлено:
В окне описания события журнала помимо прочего теперь также выводится код события.

Исправлено:
Вывод советов по устранению ошибок в окне описания событий в журнале (ранее вместо советов выводилась лишь пара ничего не значащих символов).
Waitbar (небольшой gif'чик с анимацией, появляющийся во время ожидания ответа от сервера) располагается строго по центру окна независимо от положения страницы в окне (ранее waitbar появлялся по центру окна только в том случае, если просматривался самый верх страницы). После обновления файлов на сервере нажмите Ctrl+R в браузере, чтобы обновить кэш со скриптами и увидеть изменения.

neprosto
17-08-2007, 05:20
Добрый день !
Хочу выразить свою благодарность Уважаемому DINI ! Ваш труд заслуживает похвалы ;) Вы молодец !

По делу. Установка ados у меня заняла около 2-х часов - причина невнимательное чтение инструкция и непонятки с php-fgci (нехватало 2х пакетов не указанных в инструкции), но это ерунда. Волнует такой момент в списке процессов висит 8 процессов /opt/bin/php-fcgi, один из которых занимает 14 мегабайт (остальные <1 мб). Как Вы упоминали ранее кол-во процессов должно б уменьшится при закрытии Веб интерфейса... но этого не происходит. Разъясните пожалуйста, это нормальная ситуация ?

DINI
17-08-2007, 09:07
Хочу выразить свою благодарность Уважаемому DINI !Спасибо! :)


Как Вы упоминали ранее кол-во процессов должно б уменьшится при закрытии Веб интерфейса... но этого не происходит. Разъясните пожалуйста, это нормальная ситуация ?Вы опять невнимательны: я нигде не говорил о том, что после закрытия скрипта должно уменьшиться количество процессов php-fcgi. Однако dimaka написал, как можно изначально (http://wl500g.info/showpost.php?p=60919&postcount=157) уменьшить количество этих процессов.

dimaka
17-08-2007, 09:15
DINI
Написать-то написал, но это ничего не изменило, значит не в этом проблема, а в чем я понять не могу...



...непонятки с php-fgci (нехватало 2х пакетов не указанных в инструкции), но это ерунда.

Нет уж, позвольте, это не ерунда, о каких пакетах идет речь?

DINI
17-08-2007, 09:27
Написать-то написал, но это ничего не изменило, значит не в этом Это у вас проблема не в этом. А у neprosto проблема именно в большом количестве процессов php-fcgi.

Ваша проблема заключается в том, что скрипту не хватает времени на выполнение (наверное, у вас там десятки тысяч файлов добавлены, т.к. другого логичного объяснения я найти не могу).
Откройте конфигурационный файл php.ini и поменяйте значения указанных строк на необходимые:

;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;

max_execution_time = 90 ; Можете установить здесь 180 или даже 300 для верности.
max_input_time = 60
memory_limit = 8M ; 8Мб стоит по умолчанию. Обычно этого хватает.

После редактирования перезапустите PHP.

dimaka
17-08-2007, 10:34
Спасибо за Ваш совет, но не помогло, просто увеличилось время ожидания до 180 сек...
Ни одного файла к закачке не добавлено, т.к. тормоза начинаются именно при попытке добавить файл в закачку.
На роутере еще крутятся Samba 3 и Stupid ftp, не думаю, что они влияют на php...
Может версия php не та? у меня установлено:
php - 5.2.3-1 - The php scripting language
php-fcgi - 5.2.3-1 - The php scripting language, built as an fcgi module

DINI
17-08-2007, 10:53
Ни одного файла к закачке не добавлено, т.к. тормоза начинаются именно при попытке добавить файл в закачку.После какого конкретного действия скрипт перестает работать и появляется ошибка?

dimaka
17-08-2007, 11:13
нажимаю "добавить ссылку"
появляется окошко "свойтсва файла", причем размер файла не определяется.
после нажатия коноки "применить настройки" или зеленой стрелочки, посередине экрана появляется бегущая полоска (ожидание), которая висит долгое время и в этот момент появляется упомянутая мной ошибка...

DINI
17-08-2007, 11:18
нажимаю "добавить ссылку"
появляется окошко "свойтсва файла", причем размер файла не определяется.
после нажатия коноки "применить настройки" или зеленой стрелочки, посередине экрана появляется бегущая полоска (ожидание), которая висит долгое время и в этот момент появляется упомянутая мной ошибка...В настройках для опции "Степень детализации журнала" выберите "Вести журнал для отладки" и посмотрите, какое событие будет последним записано в журнал при добавлении файла. (Должен быть установлен 5-й билд скрипта.)

neprosto
17-08-2007, 11:53
Каких пакетов не хватило отпишу вечером, из дому (там история сохранилась) а по поводу количества процессов php-fcgi у кого их сколько ? (у меня их 8) причем их 8 уже при старте роутера... эт нормально ?

neprosto
19-08-2007, 07:12
один из пакетов
ipkg install libiconv

zygoth
19-08-2007, 12:24
поставил пятую бету. всё равно ничего не качается. в журнале появляется ошибка ECD_006. вот полный текст окна с описанием.


Время возникновения 19.08.2007 15:09
Код ECD_006
Краткое сообщение Загрузка файла невозможна
Описание У пользователя недостаточно места для сохранения файла.
Возможная причина возникновения Пользователь исчерпал пространство на диске, выеделенное ему для сохранения закачанных файлов.
Пути решения

* Удалите уже закачанные файлы из ваших директорий или обратитесь к администратору с просьбой выделить дополнительное место на диске.

Дополнительная информация
Идентификатор файла 1
Имя файла fox1.gif
Размер файла, байт 7168

В описании пишет мол что нет места, но это неправда, потому как места у меня больше 200 гигов свободно на винте. быть может, недостаточно прав, но всё работает ведь под рутом?
и почему размер файла определён тут правильно, а в странице закачек как был 0, так и есть?

Megarem
19-08-2007, 12:47
багрепорты по пятой бете:
1. не добавляется новая категория. пишет "не указано название категории". естественно поле название заполнено.
2. стандартные категории не удаляются. или это фича? если фича, то очень неправильная.
3. та же ошибка, что и в предыдущем посте от zygoth

DINI
19-08-2007, 15:43
В описании пишет мол что нет места, но это неправдаВполне возможно, что это правда. Вы, скорее всего, не стали изучать настройки и поэтому не обратили внимания на настройку "Зарезервированное место на диске, МБ". Судя по всему, вы просто исчерпали зарезервированное место (по умолчанию это 10 Мб, если я не ошибаюсь).
Также проверьте, нет ли ограничений на место для пользователей системы.

1. не добавляется новая категория. пишет "не указано название категории". естественно поле название заполнено.
2. стандартные категории не удаляются. или это фича? если фича, то очень неправильная.Второй пункт не фича. Оба пункта проверю.

zygoth
19-08-2007, 18:10
разобрался, заработало. поставил в лимит сразу 102400 мегабайт. а каким образом у тебя подсчитывается исчерпал ли я его или нет? дело в том, что до повышения лимита я ничего этим менеджером не качал, но суммарный размер файлов в той папке, куда было настроено скачивание, был больше той цифры, которая стояла раньше в лимите.

DINI
19-08-2007, 18:18
суммарный размер файлов в той папке, куда было настроено скачивание, был больше той цифры, которая стояла раньше в лимите.Вот именно так и подсчитывается. Берется суммарный объем файлов в папке пользователя, который добавил закачку, и сравнивается а) с зарезервированным местом (в общих настройках) и б) с выделенным местом конкретно для данного пользователя (в настройках пользователей).

zygoth
19-08-2007, 18:46
Тогда ещё вопрос: при изменении этого пути все необходимые папки надо создавать/перемещать вручную, или менеджер это сделает автоматически?

Сначала я ведь просто сменил путь на несуществующую папку, но ничего качаться не начало. Когда путь создал, и скопировал _log, _tmp, _all и свою юзерскую папку, закачки пошли.

DINI
19-08-2007, 18:54
Тогда ещё вопрос: при изменении этого пути все необходимые папки надо создавать/перемещать вручную, или менеджер это сделает автоматически?При изменении какого пути?

Если изменяется настройка "Корневой каталог для сохранения закачек", то действие выполняется в соответствии с настройками группы "Изменение путей". Там уже на ваше усмотрение.

DINI
19-08-2007, 18:58
Внимание: вышел шестой билд беты скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.
Для обновления необходимо заменить файлы на сервере файлами из архива. После обновления скрипта выполните обновление модуля axel. (см. ниже)

Добавлено:
Перезапуск закачки в случае ее простоя (модуль axel). Время простоя указывается в настройках модуля.

Обновлено:
Изменение корневого каталога для закачек. Теперь при изменении пути до каталога создаются все отсутствующие директории, а уже существующие директории и файлы, не относящиеся к скрипту, остаются на месте.

Исправлено:
Отмена закачки файла при невозможности ее запуска (ранее при невозможности запуска закачки она оставалась в очереди на выполнение).
Добавление категорий (ранее добавление не работало) — спасибо Megarem за наводку.
Удаление категорий (ранее удаление тоже не работало) — спасибо Megarem за наводку.

Внимание: После обновления нажмите Ctrl+R в браузере для обновления кэша скриптов.

---
Инструкция по обновлению модуля:
Скопируйте файл ados_module_axel_1.0.0.tar.gz из директории install архива в корневую директорию скрипта.
Откройте вкладку "Модули" и нажмите кнопку "Установить модуль".
Убедитесь, что выбран флажок "Установить модуль", а в ниспадающем списке выбран пункт "Axel 1.0.0". Если флажков нет, то убедитесь в правильности выполнения первого пункта инструкции.
Включите флажок "Выполнить обновление модуля, если он уже установлен" и нажмите "Далее".
Удалите файл ados_module_axel_1.0.0.tar.gz из корневой директории после выполнения обновления.

zygoth
19-08-2007, 19:10
при изменении какого пути?

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

ну, вроде как, качает, дальше надоедать с дурацкими вопросами не буду. :) мне просто было интересно что делает действие "изменить пути на жёстком диске".

DINI
19-08-2007, 19:16
мне просто было интересно что делает действие "изменить пути на жёстком диске".Изменяет название корневой директории закачек на указанное. Соответственно, работает только в том случае, если существует директория уровнем выше и отсутствует новая директория.

То есть, если директория была "/opt/ados", а стала "/opt/new/download/ados", то, чтобы все сработало, должна существовать директория "/opt/new/download" и в этой директории должна отсутствовать поддиректория "ados". В следующем билде я исправлю ситуацию, чтобы не нужно было проверять, что есть, а чего нет.

Update: оказывается, никто шестой билд не скачал не успел, поэтому ситуация исправлена уже сейчас и необходимые изменения внесены в тот же шестой билд. Ссылки на скрипт и MD5-хэш обновлены.

zygoth
19-08-2007, 23:24
Извините за оффтопик, но у Вас на роутере работает программа unrar? А то у меня чего-то нет (отписал подробности в одной из соседних веток), и приходится извлекать всё в виндовсе, потом копировать через самбу на роутер.

Megarem
20-08-2007, 06:21
вы, скорее всего, не стали изучать настройки и поэтому не обратили внимания на настройку "зарезервированное место на диске, мб". судя по всему, вы просто исчерпали зарезервированное место (по умолчанию это 10 мб, если я не ошибаюсь).
Я бы посоветовал назвать этот параметр по другому ну или изменить описание. Я изучал настройки и понял этот параметр совсем по другому - как место на диске, которое нельзя занимать. Т.е. закачивать новые файлы можно до тех пор, пока свободное место на диске больше этой зарезервированной величины.

Reyter
20-08-2007, 07:05
Я бы посоветовал назвать этот параметр по другому ну или изменить описание. Я изучал настройки и понял этот параметр совсем по другому - как место на диске, которое нельзя занимать. Т.е. закачивать новые файлы можно до тех пор, пока свободное место на диске больше этой зарезервированной величины.

Присоединяюсь. Обычно это трактуется именно так. Я бы это назвал что-то типа "Зарезервировано для пользователя" или "Квота пользователя". Очень многие могут наступить на эти грабли.
Неплохо бы также в случае выставления значения параметра в "0" трактовать как "квота нелимитирована".

stinger
20-08-2007, 08:11
Здравствуйте, DINI!

К сожалению, не мог более оперативно посмотреть вашу новую версию, зато сразу установил шестой билд ;-)

В общем, ситуация с моей проблемой (закачивает, но не определяет окончание закачки) не слишком поменялась, хотя много замеченых глюков исчезло.

Если никого не напрягут скриншоты, я выложу пару видов интерфейса.

Это состояние закачки после того, как она уже закачалась минуту назад.

http://rm.foto.radikal.ru/0708/2d/42b3e3e68e57.png


Это информация из журнала об этой закачке. Все еще не докачано 16 килобайт.

http://rn.foto.radikal.ru/0708/e4/1cd54c25802d.png


А это через 20 минут после закачки при попытке обновления информации о закачке.

http://ro.foto.radikal.ru/0708/66/3488b6cf2752.png

Логи axelя невинно правильны и заканчиваютя на


[100%] [..................................................] [ 81.6KB/s] [00:00]

Downloaded 332.0 kilobytes in 4 seconds. (81.64 KB/s)


Что бы еще посмотреть на предмет устранения досадной ошибки?

DINI
20-08-2007, 09:18
Обычно это трактуется именно так. Я бы это назвал что-то типа "Зарезервировано для пользователя" или "Квота пользователя". Очень многие могут наступить на эти грабли.Обычно зарезервированное место трактуется как зарезервированное место, а не место про запас.
Системой резервируется указанное количество места на диске и используется для сохранения закачанных файлов. Что-то я никогда не видел такого, чтобы система резервировала место, чтобы его наоборот не использовать.


Что бы еще посмотреть на предмет устранения досадной ошибки?Буду думать, как исправить...

Reyter
20-08-2007, 12:29
Обычно зарезервированное место трактуется как зарезервированное место, а не место про запас.
Системой резервируется указанное количество места на диске и используется для сохранения закачанных файлов. Что-то я никогда не видел такого, чтобы система резервировала место, чтобы его наоборот не использовать.
Т.е., как я понимаю, если я правильно понял, выставляя, к примеру, "зарезервировано места на диске 100 МБ для пользователя CoolUser", мы гарантировано оставляем эти самые 100 МБ на диске исключительно для нужд CoolUser, и эти самые 100 МБ не сможет использовать никакой другой пользователь, ни даже система, даже если диск окажется в конце-концов полностью забит под завязку и система начнет падать, поскольку ей уже некуда будет писАть логи? Что-то я очень сильно сомневаюсь... Врядли такое можно сделать силами PHP, пусть даже и вместе с SQL ;)

Лимит и резерв - это прямо противоположные вещи. Если лимит ограничивает, то резерв наоборот - сохраняет дополнительные ресурсы для использования их в случае необходимости. Поинтересуйтесь в любом online Толковом словаре.

DINI
20-08-2007, 12:52
Т.е., как я понимаю, если я правильно понял, выставляя, к примеру, "зарезервировано места на диске 100 МБ для пользователя CoolUser", мы гарантировано оставляем эти самые 100 МБ на диске исключительно для нужд CoolUser, и эти самые 100 МБ не сможет использовать никакой другой пользователь, ни даже система, даже если диск окажется в конце-концов полностью забит под завязку и система начнет падать, поскольку ей уже некуда будет писАть логи? Что-то я очень сильно сомневаюсь...Я согласен, что слово "зарезервировано" можно трактовать по-разному и что в данном конкретном случае лучше будет использовать слово "лимит" или "ограничение". Это я подправлю в следующем билде.

Я лишь не согласен с такой трактовкой слова, приведенной Megarem:

Т.е. закачивать новые файлы можно до тех пор, пока свободное место на диске больше этой зарезервированной величины.Система не будет резервировать место, которое использовать также не будет. Даже если оставлять это место "про запас", оно все же будет использовано, как вы и сказали, в случае необходимости.
Резервируется всегда необходимое место, а не ненужное.

Reyter
20-08-2007, 13:31
Я согласен, что слово "зарезервировано" можно трактовать по-разному и что в данном конкретном случае лучше будет использовать слово "лимит" или "ограничение". Это я подправлю в следующем билде.
Я лишь не согласен с такой трактовкой слова, приведенной Megarem:
Система не будет резервировать место, которое использовать также не будет. Даже если оставлять это место "про запас", оно все же будет использовано, как вы и сказали, в случае необходимости.
Резервируется всегда необходимое место, а не ненужное.
Я думаю правильнее всего будет назвать этот параметр "Дисковая квота". Чайники вполне могут нажать F1 на рабочем столе своей винды и посмотреть, что это такое. А более продвинутым пользователям перевод не потребуется :)
А что касается трактовки Megarem, то я совершил такую же ошибку, как и он. Поскольку вот уже с неделю вожусь с MLDonkey, пытаясь заставить ее работать с Direct Conect. И мне там на глаза постоянно попадаются два параметра: "Mininum free space in MB on core directory" и "Mininum free space in MB on temp_directory". Да, согласен, что мы трактовали неверно скорее от собственой невнимательности, но... Наличие параметров, подобных двум, приведенным выше, для качалки очень важно. Иначе можно довести систему до неработоспособности. Может быть имеет смысл в перспективе добавить что-то подобное и для ADOS?
В данном случае резервирует место конечно не система, а программа для системы.

Полагаю на этом наш филологический спор имеет смысл закончить и перейти к более практическим вещам. ;)

Megarem
20-08-2007, 16:34
продолжаем искать глюки. в журнале событий не работает кнопка "очистить список". спрашивается подтверждение, но ничего не происходит. по одному удаляются без проблем.

DINI
20-08-2007, 16:43
продолжаем искать глюки. в журнале событий не работает кнопка "очистить список". спрашивается подтверждение, но ничего не происходит. по одному удаляются без проблем.Где именно эта кнопка не работает? Во всех разделах журнала или только в каких-то определенных?

Megarem
20-08-2007, 17:09
Где именно эта кнопка не работает? Во всех разделах журнала или только в каких-то определенных?
Во всех не работает. И еще один глюк вдогонку: не добавляет вот такую закачку: "http://www.technisat-daun.de/download/en/soft/1316.zip" Говорит поле формы не содержит ни одной ссылки на файл.

DINI
21-08-2007, 18:00
stinger, укажите, пожалуйста, следующее:
1. Обновление информации о закачке, при котором возникла ошибка, делали вы вручную во вкладке "закачки"?
2. Появились ли какие-либо записи об ошибках в файлах _log/cron_schedule.log и _log/cron_end_download.log после окончания закачки axel'ем?
3. Приведите, пожалуйста, список всех записей лога системы, которые относятся к данной закачке.

DINI
21-08-2007, 20:30
Внимание: вышла вторая бета скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.

Для обновления необходимо заменить файлы на сервере файлами из архива (обязательно скопируйте папку update) и запустить скрипт. Должна произойти переадресация на страницу обновления.
После обновления скрипта выполните обновление модуля axel. (см. ниже)

Добавлено:
Сохранение времени добавления закачки.
Определение размера файла сразу после добавления.
Проверка необходимости обновления БД после обновления файлов.

Обновлено:
Улучшен интерфейс: увеличина ширина таблицы, обновлены столбцы в списках.
Сортировка закачек по состоянию в правой колонке теперь соответствует сортировке в левой колонке.
Меню для операций над элементами списков теперь прикрепляется к границе окна, если оно выходит за пределы видимой области (Firefox 1.0+, Opera 7.0+, IE 7.0+).

Исправлено:
Подсчет времени, прошедшего с момента начала закачки (ранее в большинстве случаев оно подсчитывалось с 1 января 1970 года).
Обработка дефиса в ссылках для закачки (ранее наличие дефиса приводило к тому, что ссылка не обрабатывалась) — спасибо Megarem за наводку.
Очистка журнала (ранее работало только удаление событий, но не очистка) — спасибо Megarem за наводку.
Обновление списка событий журнала после открытия окна свойств (ранее в некоторых случаях список событий пропадал).
Вывод системных событий только пользователям, от имени которых они выполнялись (ранее любой пользователь мог увидеть все системные события без исключений).
Перезапуск закачки (модуль axel) (ранее мог не срабатывать или срабатывать некорректно).
Внесены корректировки в языковые файлы.
Подчищен и немного оптимизирован исходный код.

Известные ошибки:
Невозможность определения окончания закачки. Проблема не относилась непосредственно к скрипту.
После перезапуска начинается закачка, однако состояние файла отображается как "закачанное" [axel] (возникает не всегда; исправлю как только найду причину).
Невозможность сохранения текущих паролей пользователей после изменения параметров во вкладке "Пользователи". Проблема решена в третьей бете.

Внимание: После обновления нажмите Ctrl+R в браузере для обновления кэша скриптов и CSS.

---
Инструкция по обновлению модуля:
Скопируйте файл ados_module_axel_1.0.0.tar.gz из директории install архива в корневую директорию скрипта.
Откройте вкладку "Модули" и нажмите кнопку "Установить модуль".
Убедитесь, что выбран флажок "Установить модуль", а в ниспадающем списке выбран пункт "Axel 1.0.0". Если флажков нет, то убедитесь в правильности выполнения первого пункта инструкции.
Включите флажок "Выполнить обновление модуля, если он уже установлен" и нажмите "Далее".
Удалите файл ados_module_axel_1.0.0.tar.gz из корневой директории после выполнения обновления.

stinger
22-08-2007, 07:35
укажите, пожалуйста, следующее:
1. Обновление информации о закачке, при котором возникла ошибка, делали вы вручную во вкладке "закачки"?

Да.


2. Появились ли какие-либо записи об ошибках в файлах _log/cron_schedule.log и _log/cron_end_download.log после окончания закачки axel'ем?

Нет. В _log/cron_schedule.log ничего интересного. В этот файл у меня записываются только строки типа



...
/usr/local/www/data/ados.zgia.zp.ua/html/classes/class_cron.php
/usr/local/www/data/ados.zgia.zp.ua/html/classes/class_cron.php
/usr/local/www/data/ados.zgia.zp.ua/html/classes/class_cron.php
/usr/local/www/data/ados.zgia.zp.ua/html/classes/class_cron.php
/usr/local/www/data/ados.zgia.zp.ua/html/classes/class_cron.php
/usr/local/www/data/ados.zgia.zp.ua/html/classes/class_cron.php
/usr/local/www/data/ados.zgia.zp.ua/html/classes/class_cron.php
...


Файл _log/cron_end_download.log не создается и соответственно его я привести не могу.



3. Приведите, пожалуйста, список всех записей лога системы, которые относятся к данной закачке.

Если Вы имеете ввиду журнал, доступный из веб-интерфейса, то вот он
http://rh.foto.radikal.ru/0708/3e/3818c240f2e5.png

И отдельно по ошибке получения свойств закачки
http://rj.foto.radikal.ru/0708/b0/e3b705fa214b.png

К сожалению информации о той закачке не сохранилось, поэтому я добавил новую закачку, прдварительно очистив журнал.

И еще одно маленькое дополнение для тех, кто, быть может, захочет запустить эту систему на FreeBSD.

Axel, установленный из портов, отличается по набору параметров от того, который работает в Linux. Поэтому в файле ados_module_axel следует в строке 203 изменить параметры вызова:
--num-connections= на -n
--output= на -o
--alternate на -а

Только после этого axel будет нормально стартовать.

Для DINI.

Можно, кстати, добавить выбор типа параметров модуля в зависимости от ОС, например, при инсталляции, и ложить соответствующий файл с правильными параметрами. Или в самом модуле проверять перед вызовом.

Ну это только пожелание, можно оставить на совести пользователя...

DINI
22-08-2007, 08:37
stinger, не могу я все-таки понять, с чем связана ошибка.
После того, как axel закончит закачку и все вызванные им процессы будут завершены, CRON должен запустить на выполнение classes/class_cron.php, а его результат записать в файл _log/cron_end_download.log. Даже если никаких ошибок при выполнении не будет, этот файл все равно будет создан, но с нулевым размером.

Если у вас такого файла нет, то значит, что CRON не запускает скрипт после окончания закачки. И, скорее всего, причину дальнейшей ошибки, связанной с невозможностью получить информацию о закачке, надо искать здесь.

Косвенно об этом говорят записи в файле _log/cron_schedule.log, т.к. указанные строки скрипт не возвращает и откуда они берутся, непонятно.
Может, в FreeBSD необходимо как-то по-другому запускать на выполнение PHP скрипты? Откройте файл /etc/cron.1min и проанализируйте записи в файле ados.sh. Не надо ли там что-либо подправить для FreeBSD?

Если вам не будет сложно, то сделайте следующее:
1. Добавьте закачку и запустите ее.
2. Откройте папку /etc/cron.1min (или соответствующую ей в вашей системе) и скопируйте появившийся файл ados_...sh.
3. После запуска закачки axel'ем скопируйте файл database.sqlite из корневой директории скрипта.
4. После окончания закачки повторно скопируйте этот файл.
5. Наконец, скопируйте файл после появления ошибки.
Все скопированные файлы выложите, пожалуйста, где-нибудь, чтобы я смог их скачать и проанализировать.

Megarem
22-08-2007, 17:02
И это снова я :) Нажимаю кнопку новая закачка. Ввожу "http://www.nix.ru/price.zip", нажимаю далее, затем нажимаю "начать" и получаю ошибку: "Ссылка содержит недопустимый идентификатор протокола."
Кстати, а что понимается под "Поддержка авторизации". Я например в своем скрипте сделал настройки, когда можно задать шаблон урла, логин, пароль, и авторизация будет выполняться автоматически.

DINI
22-08-2007, 17:46
И это снова я :) Нажимаю кнопку новая закачка. Ввожу "http://www.nix.ru/price.zip", нажимаю далее, затем нажимаю "начать" и получаю ошибку: "Ссылка содержит недопустимый идентификатор протокола."И снова поправил шаблон для анализа ссылок :)


Кстати, а что понимается под "Поддержка авторизации". Я например в своем скрипте сделал настройки, когда можно задать шаблон урла, логин, пароль, и авторизация будет выполняться автоматически.А об этом я уже писал (http://wl500g.info/showpost.php?p=59591&postcount=28)

stinger
23-08-2007, 05:17
Если у вас такого файла нет, то значит, что CRON не запускает скрипт после окончания закачки. И, скорее всего, причину дальнейшей ошибки, связанной с невозможностью получить информацию о закачке, надо искать здесь.
Я также склоняюсь к тому, что как-то не так скрипт на шелле работает...
Хотя закачку он все-таки запускает...



1. Добавьте закачку и запустите ее.
2. Откройте папку /etc/cron.1min (или соответствующую ей в вашей системе) и скопируйте появившийся файл ados_...sh.
3. После запуска закачки axel'ем скопируйте файл database.sqlite из корневой директории скрипта.
4. После окончания закачки повторно скопируйте этот файл.
5. Наконец, скопируйте файл после появления ошибки.
Все скопированные файлы выложите, пожалуйста, где-нибудь, чтобы я смог их скачать и проанализировать.


Хорошо, как только я проделаю все действия, отпишусь.

Спасибо за оперативность и внимание к проблемам пользователей!
Не часто такое встретишь!

Alexbosh
23-08-2007, 16:08
Прошу помощи! Все установил дошел до настройки основных параметров и получаю вот это:

"Невозможно получить список запросов для БД.
Проверьте наличие файла queries.sql и убедитесь в том, что у системы есть права на чтение этого файла."

Файла такого действительно нет. Есть queries_update_01_beta2.sql в директории update и queries_install.sql в директории install.

Что я не так делаю? Подскажите.

DINI
23-08-2007, 16:12
Что я не так делаю? Подскажите.Вы все делаете правильно. Ошибка была с моей стороны. Я переименовал файл, но забыл поправить скрипт установки.

Вам надо удалить файл database.sql из корневой директории, переименовать файл queries_install.sql в queries.sql и запустить установочный скрипт заново.

Alexbosh
23-08-2007, 16:38
Продвинулся недалеко. Axel лежит в opt/bin, путь указываю и получаю :"Исполняемый файл модуля 'Axel 1.0.0' отсутствует или его версия не поддерживается."

DINI
23-08-2007, 16:43
Продвинулся недалеко. Axel лежит в opt/bin, путь указываю и получаю :"Исполняемый файл модуля 'Axel 1.0.0' отсутствует или его версия не поддерживается."Вы же ведь читали советы и рекомендации (http://wl500g.info/showpost.php?p=59637&postcount=42) по установке, ссылка на которые есть в самом первом сообщении?

Там, в частности, сказано:

Путь к axel нужно указать полный, т.е. /opt/bin/axel Да и я об этом уже говорил.

Alexbosh
23-08-2007, 16:52
Dini, спасибо! волшебная картика появилась. буду пробовать дальше.

kon-nor
23-08-2007, 19:10
маленькая, ни на что не влияющая опечатка в странице настроек:
провреять наличие нелатинских символов в

DINI
23-08-2007, 19:13
маленькая, ни на что не влияющая опечатка в странице настроекПоправил, спасибо.

Alexbosh
23-08-2007, 19:48
Добавляю закачку, глаз Hdd начинает весело мигать сек. 30, потом красный крест "ошибка закачки". пробовал несколько разных - результат тот же. Файлы во вложении.

DINI
23-08-2007, 19:59
пока я советую дождаться слудующей беты скрипта.
там будет исправлена запись в системный лог (сейчас пишутся только события, вызываемые пользователем) и можно будет понять, что произошло перед ошибкой и, соответственно, узнать причину ее возникновения.

Alexbosh
23-08-2007, 21:22
Добавляю закачку, глаз Hdd начинает весело мигать сек. 30, потом красный крест "ошибка закачки". пробовал несколько разных - результат тот же. Файлы во вложении.

Добавил скриншот.

DINI
24-08-2007, 14:40
Внимание!

Не изменяйте настройки пользователей во вкладке "Пользователи", т.к. при сохранении будут созданы неверные пароли для пользователей, у которых они имеются. Соответственно, зайти в систему после этого они не смогут.

Дождитесь выхода новой беты в течение сегодняшнего дня. В ней ошибка будет исправлена.

Если кто-то все-таки изменил настройки и в итоге получил неверный пароль, то остается только переустановить скрипт путем удаления файлов database.sqlite и install.lock из корневой директории.

DINI
24-08-2007, 16:24
Внимание: вышла третья бета скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.

Для обновления необходимо заменить файлы на сервере файлами из архива (обязательно скопируйте папку update) и запустить скрипт. Должна произойти переадресация на страницу обновления.
После обновления скрипта выполните обновление модуля axel. (см. ниже)

Добавлено:
Новый модуль для работы с cURL. Рекомендую установить его и сделать модулем по умолчанию, т.к. axel оказался достаточно глючным (по крайней мере, у меня).
Получение имени файла сразу после добавления (если ссылка на файл не содержит его имени и оно не было явно задано пользователем).
Возможность установки ограничения общей скорости закачек для каждого пользователя.
Графическое отображение прогресса закачки (при наличии подключенной библиотеки GD, см. ниже).

Обновлено:
Еще немного лучшен интерфейс: при обработке объемных списков закачек окно подтверждения выбора не будет слишком высоким, а кнопка "Далее" будет доступна без промотки списка.
Список файлов во вкладках "Закачки" и "Категории" после сортировки по указанному критерию будет также сортироваться по именам файлов.
При наличии директорий install и (или) update скрипт будет нормально работать (это сделано для возможности нормального выполнения CRON заданий). Однако администраторам будет выводиться сообщение с настоятельной просьбой удалить эти директории.
Для обновления скрипта нужно проходить авторизацию. Воспользоваться скриптом обновления могут только администраторы.

Исправлено:
Сохранение паролей пользователей при изменении параметров во вкладке "Пользователи" (ранее сохранялись неверные пароли).
Подсчет времени, прошедшего с момента начала закачки (в предыдущей бете был исправлен не полностью).
Обработка ссылок (ранее могли быть проблемы с обработкой доменов третьего и более высоких уровней и коротких доменных имен) — спасибо Megarem за наводку.
Обновление информации о закачке в окне свойств (ранее могла возникать ошибка) — спасибо stinger за наводку и помощь.
Правильное определение системных событий (ранее системными считались и пользовательские события).
Запись и вывод системных событий (ранее просмотр настоящих системных событий был недоступен).
Установка и обновление модуля возможна с использованием загруженного файла (ранее загрузка не работала).
Внесены корректировки в языковые файлы — спасибо kon-nor за помощь.
Подчищен и немного оптимизирован исходный код.

Известные ошибки:
При большом количестве элементов в списках PHP может не хватить памяти для их вывода. (исправлена во втором билде)
При возобновлении закачки после паузы скрипт может определить закачку как оконченную, хотя на самом деле закачка будет выполняться. (исправлю, как только найду причину возникновения)

Внимание: После обновления нажмите Ctrl+R в браузере для обновления кэша скриптов и CSS.

---
Инструкция по обновлению модулей

Вариант 1 (использование файла в корневой директории):
Скопируйте архив с модулем из директории install установочного архива в корневую директорию скрипта.
Откройте вкладку "Модули" и нажмите кнопку "Установить модуль".
Убедитесь, что выбран флажок "Установить модуль". Если флажков нет, то убедитесь в правильности выполнения первого пункта инструкции.
В ниспадающем меню выберите необходимый модуль.
Включите флажок "Выполнить обновление модуля, если он уже установлен" и нажмите "Далее".
Удалите архив с модулем из корневой директории после выполнения обновления.

Вариант 2 (загрузка файла):
Откройте вкладку "Модули" и нажмите кнопку "Установить модуль".
Убедитесь, что выбран флажок "Загрузить модуль", если он есть.
Укажите путь до архива с модулем на вашем компьютере (можно нажать кнопку "Обзор...").
Включите флажок "Выполнить обновление модуля, если он уже установлен" и нажмите "Далее".

---

Установка библиотеки GD
Откройте терминал:
Пуск -> Выполнить.
В открывшемся окне введите:
telnet
В открывшемся окне telnet введите:
open my.router
Укажите ваш логин и пароль от роутера.

В терминале введите:
ipkg install php-gd
После окончания установки перезапустите PHP:

/opt/etc/init.d/S45php stop
/opt/etc/init.d/S45php start

---

Рекомендации и просьбы

Всем еще раз рекомендую установить модуль cURL и для закачек использовать именно его.
Установка модуля производится аналогично обновлению с той лишь разницей, что не обязательно ставить флажок "Выполнить обновление модуля, если он уже установлен".
Тем, кто будет устанавливать скрипт с нуля, рекомендую при выборе модулей для установки указать cURL как модуль по умолчанию.

Для установки самой библиотеки cURL в терминале (см. выше) введите:

ipkg install libcurl

Просьба к Reyter обновить его инструкции (http://wl500g.info/showpost.php?p=59637&postcount=42) с тем, чтобы вместо или помимо описания установки axel'я дать описание установки cURL, а также библиотеки GD. Если, конечно, не сложно.

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

DINI
24-08-2007, 17:16
Уважаемые пользователи!

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

Как я уже говорил, времени на разработку этого скрипта у меня крайне мало и с каждой неделей становится все меньше. Тем не менее, я старался как можно быстрее исправлять появляющиеся ошибки и улучшать то, что уже было сделано.

Однако основной целью создания скрипта, как я уже неоднократно отмечал, для меня было предоставление всем владельцам роутеров ASUS с прошивкой Олега возможности легко скачивать файлы и управлять процессом закачки, т.е. создание замены программе Download Master от разработчиков роутера, которая на олеговой прошивке не работает.

Роутерами ASUS пользуются люди не только в России и странах СНГ, но и во многих других странах. И многие пользователи также устанвливают прошивку Олега и хотят иметь аналог Download Master.

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

Все языковые строки находятся в файлах директории lang/ru. Их (файлы) можно открыть в любом редакторе, который поддерживает кодировку UTF-8.
Строки имеют следующий вид:

['ключ_строки'] => "Собственно, строка для перевода";

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

Спасибо.

Alexbosh
24-08-2007, 19:11
Что то с модулями не получается. При установке сразу два не получилось. Какой путь указывать? Библиотеку cURL установил. В итоге прокатил только axel. При попытке добавить модуль (в корне лежат оба архива) axel обновляется до beta 2 и в названии появляется зеленая кнопка, а имя axel перечеркнуто. При нажатии на кнопку - "Невозможно получить текущую версию программы." и как следствие при добавлении закачки - "В системе нет включенных модулей для выполнения закачек."
Модуль curl добавить не получилось ни одним ни другим вариантом. Жмешь ДАЛЕЕ - пробегают полосочки и все остается как было.
DINI подскажите!

DINI
24-08-2007, 19:36
Что то с модулями не получается.Вы на какую версию скрипта делаете установку модулей?
Еще не плохо было бы посмотреть, какие записи были добавлены в лог, указать номера возникших ошибок. Написать, куда была произведена установка cURL и какие настройки были заданы для модулей.
А то, что вы мне тут в нескольких абзацах говорите о том, что установка не получилась, я еще из первого предложения вашего сообщения понял.

Alexbosh
24-08-2007, 19:43
ADOS 1.0.0 (beta 3) build 1 © 2007 DINI
Curl стоит. Вот такой лог в _log вместо закчки
/opt/bin/run-parts: /opt/etc/cron.1min/ados_65abb3ba675717c5a96c24636c18c050.sh: 3: /opt/bin/curl: Permission denied

DINI
24-08-2007, 20:14
Curl стоит. Вот такой лог в _log вместо закчки
/opt/bin/run-parts: /opt/etc/cron.1min/ados_65abb3ba675717c5a96c24636c18c050.sh: 3: /opt/bin/curl: Permission deniedЭто строки лога? Из какого файла?

Я вообще-то говорил про лог, который ведется самим скриптом и доступен во вкладке "Журнал".
Также скажите, куда вы установили cURL (где его исполняемый файл) и куда вы установили axel.

Вы обновляли скрипт до третьей беты или установили его заново?

Alexbosh
24-08-2007, 20:43
Скрипт ставил заново. Лог из /tmp/harddisk/downloads/_log, файл соответсвенно 65abb3ba675717c5a96c24636c18c050.log. Curl - /opt/bin/curl, axel - /opt/bin/axel

DINI
24-08-2007, 21:04
Скрипт ставил заново. Лог из /tmp/harddisk/downloads/_log, файл соответсвенно 65abb3ba675717c5a96c24636c18c050.log. Curl - /opt/bin/curl, axel - /opt/bin/axelЧестно говоря, я не понял строки, которую вы привели из лога. Я вижу лишь, что запрещен доступ непонятно чем и куда.
В логе выводится адрес установки cURL, но вы утверждаете, что модуль вы установить не смогли. Как же тогда вы смогли запустить закачку, используя этот модуль?
На изображении я вижу ошибки, связанные с закачками, а не с установкой модулей. Очистите журнал, попробуйте установить модуль заново и в случае возникновения ошибки вновь откройте журнал и на этот раз найдите ошибки, связанные с модулем.

Если же вы устанавливали скрипт заново, то вы имели возможность добавить необходимые модули сразу же во время установки. Зачем вам тогда понадобилось устанавливать модули уже непосредственно из скрипта? При установке скрипта модули тоже не установились?

DINI
24-08-2007, 22:29
Будьте осторожны с записью событий в журнал (лог).
Если у вас не возникают ошибки и (или) слишком подробный журнал вам не нужен, то в настройках для опции "степень детализации журнала" выберите первый, второй или третий вариант.

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

Ситуация будет исправлена в следующем билде: будет создано постраничное разделение с ограниченным количеством событий на страницу.

DINI
25-08-2007, 07:45
Внимание: вышел второй билд третьей беты скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.
Для обновления необходимо заменить файлы на сервере файлами из архива. Инструкции по обновлению модулей см. здесь (http://wl500g.info/showpost.php?p=61683&postcount=212)

Добавлено:
Разбиение объемных списков элементов вкладок "Закачки", "Журнал", "Категории" и "Расписание" по страницам.

Исправлено:
Удаление временного файла закачки после отмены этой закачки (ранее при удалении возникала ошибка).
Подсчет времени, прошедшего с момента начала закачки (третья попытка, надеюсь, последняя =).
Ошибка JavaScript, возникавшая в IE при запуске функции прикрепления меню к верхнему краю экрана.
Обновление информации о закачке [cURL] (ранее могло приводить к ошибке, если время до окончания закачки превышало 24 часа).

Внимание: После обновления нажмите Ctrl+R в браузере для обновления кэша скриптов.

---
Hotfix: (12:30 мск) Исправлена ошибка, возникающая при вводе номера страницы в соответствующее поле и отправке запроса. Ссылки на архив обновлены.

zygoth
25-08-2007, 12:05
Поставил второй билд третьей беты, старое удалил целиком. Не работают плавающие окна (в частности, добавление закачки, описание события в журнале, свойства модуля), в процессе самой установки не смог поставить модуль curl, говорил, что не хватает какого-то файла (curl стоит, запускается с /opt/bin/curl), так что галочку с него пришлось убрать.

Браузер - Firefox 2.0.0.6, скрипты включены.

Alexbosh
25-08-2007, 12:18
Все тоже самое. Opera 9.23.

imdex
25-08-2007, 17:14
Главным препятствием перед использованием моего скрипта иностранцами, конечно, является языковой барьер.
Мне не сложно перевести файлы на английский язык. Я обязательно это сделаю перед выпуском финальной версии. Однако в связи с уже упомянутой нехваткой времени я очень прошу помочь мне с переводом.

Все языковые строки находятся в файлах директории lang/ru. Их (файлы) можно открыть в любом редакторе, который поддерживает кодировку UTF-8.
Строки имеют следующий вид:

['ключ_строки'] => "Собственно, строка для перевода";

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

Спасибо.

Если никто за английский не возьмётся, я попробую))) Правда, литературности не обещаю, но надеюсь, что будет понятно)))
PS Сегодня поставил ADOS, впечатляет)) Спасибо!))

imdex
25-08-2007, 19:08
И у меня не работают всплывающие окна. Mozilla FF 2.0.0.6, IE 6.1, Konqueror 3.5.6. Остановлены все блокировки по содержимому и антирекламные модули.

imdex
25-08-2007, 19:55
Опечатка. В download.lng на строке 90:
'error_refresh_for_running' => "Обновление информации возможно только для закачиваемых в данный момент файолов.",

Уважаемый DINI, в архиве три переведённых файла. Оцените степень соответствия, если нормально, продолжу дальше)) Если нет, я не обижусь, побетатестерю хотя бы)

DINI
26-08-2007, 17:08
Поставил второй билд третьей беты, старое удалил целиком. Не работают плавающие окна (в частности, добавление закачки, описание события в журнале, свойства модуля)Странно. У меня плавающие окна везде работают (проверял в FF 2.0.0.6, IE 6 и IE 7, Opera 8.5 и Opera 9.23). Постараюсь проверить на другом компьютере.

Update: Ошибку нашел и исправил. Исправление будет доступно в новом билде сегодня.


в процессе самой установки не смог поставить модуль curl, говорил, что не хватает какого-то файла (curl стоит, запускается с /opt/bin/curl)А что именно он говорил? Можете ли вы установить модуль непосредственно из установленной системы (вкладка "Модули")?

Update: Тоже ошибку нашел и исправил.


Оцените степень соответствия, если нормально, продолжу дальше))Все очень даже хорошо, но есть три небольших замечания: В файле categories.lng вы забыли перевести строку 38 с ключем 'category_desc'.
Слово "Внимание", идущее в начале строки, лучше переводить как "Warning".
Внутри строк нельзя ставить двойные кавычки. (Например, в строке To view file properties select file in the list and press "Properties" button in the menu above the list. Используйте, пожалуйста, одинарные кавычки.Тем не менее, большое спасибо за вашу помощь в переводе!

DINI
26-08-2007, 19:40
Внимание: вышел третий билд третьей беты скрипта.
См. обновленные ссылки в первом посте (http://wl500g.info/showpost.php?p=59016&postcount=1) темы.
Для обновления необходимо заменить файлы на сервере файлами из архива. Инструкции по обновлению модулей см. здесь (http://wl500g.info/showpost.php?p=61683&postcount=212)

Исправлено:
Ошибки в установочных файлах скрипта:
- Невозможность установки сразу нескольких модулей — спасибо Alexbosh и zygoth за наводку.
- Необходимость обновления сразу после установки.
Меню навигации по страницам в Opera (ранее последняя кнопка меню вылезала за его пределы).
Ошибка со всплывающими окнами (ранее они могли не показываться) — спасибо Alexbosh, zygoth и imdex за наводку.

Внимание:
После обновления нажмите Ctrl+R в браузере для обновления кэша скриптов.
Пользователям, произведшим установку второй или третьей беты с нуля, необходимо проверить правильность указанного при установке пути во вкладке "Настройки" (опция "Корневой каталог для сохранения закачек").

---
Hotfixes:

(27.08.2007 01:30 мск)
Исправлена ошибка с открытием всплывающих окон у пользователей, произведших установку системы с нуля — спасибо Alexbosh за наводку и помощь.
Подправлен алгоритм определения размеров всплывающих окон.
(27.08.2007 03:20 мск)
Исправлена ошибка при удалении оконченных закачек (ранее после удаления список закачек не обновлялся автоматичеки).
Ссылка на архив обновлена.

Alexbosh
26-08-2007, 20:33
Модули действительно устанавливаются. А окна так и не работают.(IE7,Opera 9.23, Mozila 2.0). При нажатии на кнопку добавления закачек справа появляется полоска скролинга и снизу добавляется пустое место, как будто окно открывается там.

DINI
26-08-2007, 20:39
А окна так и не работают.Вы обновили кэш скриптов (нажмите Ctrl+R в браузере при открытой странице со скриптом)?
Если да, то откройте консоль JavaScript (В Firefox Инструменты -> Консоль ошибок; в Opera Инструменты -> Дополнительно -> Консоль ошибок после того, как открытие окна не произойдет, и скопируйте, пожалуйста, сюда описания появившихся ошибок.

Alexbosh
26-08-2007, 20:49
вот кажется это он.

Alexbosh
26-08-2007, 20:57
А вот с Mozila. Три первых предупреждения после запуска, а четвертое после попытки открыть окно.

DINI
26-08-2007, 21:04
Alexbosh, спасибо. Ошибку исправил.
Чуть позже выложу новый билд. Нужно еще пару ошибок исправить с выводом окон в Опере.

zygoth
26-08-2007, 21:36
если есть необходимость, могу присоединиться к переводу на английский. есть опыт перевода с английского на русский, в том числе и программ. могу также корректировать перевод на самые заметные случаи опечаток и дословностей (перевод от imdex ими слегка страдает ;) ). прикладываю свой вариант users.lng. обратно в формат юникс не перегонял.

DINI
26-08-2007, 21:49
Ошибки с JavaScript я исправил. Новый билд делать не стал, обновил старый.
После обновления файлов нажмите Ctrl+R в браузере для обновления кэша скриптов.


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

Безусловно, наличие опыта в переводе программ (пусть и с английского на русский) — это большой плюс. Поэтому, если у вас есть время и желание заняться переводом, а также если imdex не будет против, то я буду рад добавить ваш перевод в свой скрипт.

Тем не менее, я думаю, что необходимо вначале поинтересоваться мнением imdex, т.к. он первым изъявил желание выполнить перевод.
В крайнем случае возьмем вас корректором, если тут уже не будете против вы :)

zygoth
26-08-2007, 21:58
В крайнем случае возьмем вас корректором, если тут уже не будете против вы :)
можно и так. я, собственно, почему сразу не предложил свои услуги: из-за банальной нехватки времени. а на исправление ошибок его требуется гораздо меньше, чем на полный перевод. но, опять-таки, если imdex не против.

DINI
26-08-2007, 22:00
я, собственно, почему сразу не предложил свои услуги: из-за банальной нехватки времени.Да, мне это очень знакомо :)
Подождем, что скажет imdex.

imdex
27-08-2007, 09:52
Конечно же, я не против)) Особенно здорово будет, если укажете на мои самые типичные ошибки, я учту) Тем более, если есть опыт перевода программ, для меня это первая попытка)

PS Я завтра на сутки выхожу, там продолжу. Может, сегодня тоже что-нибудь успею сделать.

На всякий случай приложил исправленные categories и download (кавычки и description).

stinger
27-08-2007, 13:24
Спасибо DINI за проделанную работу!

Заработало и с axelем и c curlом!

Проблема с окончанием закачек была как всегда в кривых руках.

Грабли были с файлом cron.lock в корневой директории сайта.

Этот файл у меня оказался почему-то директорией и скрипт из крона отрабатывал не до конца.

Параллельно возник небольшой такой вопрос.
Допустим, я пускаю пользователя на этот сайт.
Он ставит закачку.
Она закачивается и перемещается в его папку.
А как теперь достать этот файл.
Есть конечно же вариант предоставить ftp.
А может быть добавить возможность забирать файл, допустим, посредством php?
Или есть какой-нибудь штатный способ?

DINI
27-08-2007, 14:04
Конечно же, я не против)) Особенно здорово будет, если укажете на мои самые типичные ошибки, я учту) Тем более, если есть опыт перевода программ, для меня это первая попытка)Тогда давайте вы будете переводить и отсылать результат zygoth на проверку и коррекцию. Наверное, этот вариант будет оптимальным.


На всякий случай приложил исправленные categories и download (кавычки и description).Кавычки вы подправили только в download.lng, а в categories.lng они остались.
Еще в download.lng в 41-й строке (ключ 'download_run_all') вы забыли закрывающую скобку.
В остальном, вроде, все в порядке.


Параллельно возник небольшой такой вопрос.
Допустим, я пускаю пользователя на этот сайт.
Он ставит закачку.
Она закачивается и перемещается в его папку.
А как теперь достать этот файл.
Есть конечно же вариант предоставить ftp.
А может быть добавить возможность забирать файл, допустим, посредством php?
Или есть какой-нибудь штатный способ?Я предполагал раздачу именно по FTP.

Но можно раздавать и по HTTP.
Допустим, у нас имеется такая структура директорий:


/opt
|- home (корневая директория виртуального хоста для порта 8080)
| |- ados
| | |- ajax
| | |- classes
| | `- ...
| `- savedir1 (см. описание первого варианта)
| |- user1
| |- user2
| `- ...
`- savedir2 (корневая директория виртуального хоста для порта 8081, см. описание второго варианта)
|- user1
|- user2
`- ...


Первый вариант: сохранять файлы в ту же директорию, в которой находится скрипт (или в одну из поддиректорий).

Например, можно каталогом сохранения сделать одну из поддиректорий виртуального хоста, на котором установлен ADOS.
Тогда, если сам ADOS доступен по адресу http://my.router:8080/ados, то файл file.rar пользователя User1, сохраненный в его каталог archives, будет в соответствии с приведенной выше структурой доступен по адресу http://my.router:8080/savedir1/user1/archives/file.rar.
Минусом здесь является то, что пользователи смогут также получать файлы других пользователей, если они знают их имена и пути сохранения файлов.
Если применяется не lighttpd, а, например, Apache, то можно ограничить доступ в директории по IP пользователей с помощью файлов .htaccess, но lighttpd таких ограничений, по-моему, не поддерживает. Если это не так, то поправьте меня, пожалуйста.

Второй вариант: сохранять файлы в директорию другого виртуального хоста.

Например, можно каталогом сохранения сделать директорию savedir2, которая является корневой для виртуального хоста, работающего на порте 8081.
Тогда, если сам ADOS доступен по адресу http://my.router:8080/ados, то файл file.rar пользователя User1, сохраненный в его каталог archives, будет в соответствии с приведенной выше структурой доступен по адресу http://my.router:8081/user1/archives/file.rar.
Минус здесь такой же, как и у предыдущего способа.

Третий вариант: сохранять файлы в любую из предложенных выше директорий, но сделать управление доступом к файлам с помощью скрипта.

Скрипт, написанный, например, на PHP, может выдавать ссылки на скачанные файлы пользователя только в том случае, если IP адрес зашедшего на страницу человека совпадает с IP пользователя, выполнившего загрузку.
Таким образом, решаются проблемы предыдущих способов. Однако данный вариант подразумевает знание PHP или подобных языков :)

imdex
27-08-2007, 14:31
Ок)) В categories ещё нашёл пару ошибок, кроме указанных. Невнимательность штука вредная)

zygoth - как мне лучше выкладывать? Здесь или куда-нибудь ещё?
Старые версии стёр.

dimaka
27-08-2007, 15:52
а у меня опять вылезла проблема со скриптом, причем появилась в последних двух билдах, 2 и 3. Скрипт ставлю с нуля, устаеовка проходит нормально, после сообщения об удалении папки install войти никуда не удается, в логе lighttpd пишется следующее:

2007-08-27 18:10:01: (mod_fastcgi.c.2551) FastCGI-stderr: PHP Fatal error: Maximum execution time of 180 seconds exceeded in /opt/share/www/ados/sections/section_download.php on line 984

первый билд работал нормально, маленькие файлы качал, на некоторые ругался: "Ссылка содержит недопустимый идентификатор протокола", как с этим бороться, тоже неясно, хотя я может что-то и пропустил...

Alexbosh
27-08-2007, 16:24
А у меня проблема. Скрипт работает как положено (спасибо DINI!), но после добавления закачки происходит следующее: в папке cron.1min появляется файл, допустим ados_0ae4616155fa381654cb16f6d8b18c2e.sh (cron работает, проверял), а папке /downloads/_log через несолько сек. образуется файл
0ae4616155fa381654cb16f6d8b18c2e.log с одержимым:/opt/bin/run-parts: /opt/etc/cron.1min/ados_0ae4616155fa381654cb16f6d8b18c2e.sh: 3: /opt/bin/axel: Permission denied либо /opt/bin/run-parts: /opt/etc/cron.1min/ados_0ae4616155fa381654cb16f6d8b18c2e.sh: 3: /opt/bin/curl: Permission denied взависимости от выбранного модуля закачки.
И больше ничего не происходит. Скриншоты прилагаются. Может это провайдер глушит. Дальше не знаю куда копать? Может подскажете.
Да, кстати cron.lock я у себя не нашел ни в каком виде.

zygoth
27-08-2007, 16:39
Ок)) В categories ещё нашёл пару ошибок, кроме указанных. Невнимательность штука вредная)

zygoth - как мне лучше выкладывать? Здесь или куда-нибудь ещё?
Старые версии стёр.

клади сюда. если ты редактируешь в винде, не перегоняй в юникс перед выкладыванием, ок? файл скачал, сейчас откорректирую.

Marks
27-08-2007, 16:41
Вот такая проблемка - не получается добавить в закачку ссылки такого вида:
http://musicmp3.spb.ru/download/180202/?%F5%3Eij%81%BA%BE%8B%91%0C%C1%D5%B5%B8%09%83%BDH% EF%BA%27%40%BF%7F%40%E5%CC-%D1
или
ftp://ftp.nccom.ru/Soft/OS/Windows/Service%20Pack/Windows%20XP/SP2%20Rus/WinXPSP2%20RUS.exe (вторая в локалке, с и-нета можно не пробывать) появляется окно "Поле формы не содержит ни одной ссылки на файл". Вопрос - я одинок в этой проблеме?

imdex
27-08-2007, 17:27
Опечатка. files.lng, строка 92.
'error_cant_load_file_module' => "Нвозможно подключить ассоциированный с файлом модуль для выполнения закачки.",

Сделал file.lng

PS Редактирую Akelpad, он меняет перенос строки чтоль?

DINI
27-08-2007, 18:36
Скрипт ставлю с нуля, устаеовка проходит нормально, после сообщения об удалении папки install войти никуда не удается, в логе lighttpd пишется следующее:

2007-08-27 18:10:01: (mod_fastcgi.c.2551) FastCGI-stderr: PHP Fatal error: Maximum execution time of 180 seconds exceeded in /opt/share/www/ados/sections/section_download.php on line 984
Здесь я ничем помочь не могу, т.к. я, к сожалению, не догадываюсь, почему за 180 секунд PHP не может обработать скрипт.

первый билд работал нормально, маленькие файлы качал, на некоторые ругался: "Ссылка содержит недопустимый идентификатор протокола", как с этим бороться, тоже неясно, хотя я может что-то и пропустил...Обработку ссылок я исправил, поэтому все нормальные ссылки (см. ниже) должны нормально обрабатываться.


образуется файл
0ae4616155fa381654cb16f6d8b18c2e.log с одержимым:/opt/bin/run-parts: /opt/etc/cron.1min/ados_0ae4616155fa381654cb16f6d8b18c2e.sh: 3: /opt/bin/axel: Permission denied либо /opt/bin/run-parts: /opt/etc/cron.1min/ados_0ae4616155fa381654cb16f6d8b18c2e.sh: 3: /opt/bin/curl: Permission denied взависимости от выбранного модуля закачки. Проверьте разрешения для файлов /opt/bin/axel и /opt/bin/curl. Процесс, от имени которого выполняется скрипт, должен иметь право на выполнение этих файлов. В крайнем случае поменяйте CHMOD этих файлов на 0755 или 0777.

Да, кстати cron.lock я у себя не нашел ни в каком виде.Вы его найдете только если вам очень повезет, т.к. этот файл создается только на время выполнения задания, запущенного CRON'ом, и стирается сразу по окончании выполнения.


Вот такая проблемка - не получается добавить в закачку ссылки такого вида: Ссылки такого вида добавить не получится, т.к. они содержат недопустимые символы. Вам необходимо производить конвертацию ссылок в безопасный вид (недопустимые символы заменяются URL идентификаторами — %XX).
Сам скрипт конвертацию производить не будет, т.к. ссылка может быть составлена таким образом, что станет небезопасной для обработки скриптом.

Немного поискав нашел эту страницу: http://www.blooberry.com/indexdot/html/topics/urlencoding.htm. В самом ее низу есть поле для ввода. Копируйте туда ссылки (по одной), выбирайте опцию "URL-Safe Encoding" (под полем справа) и жмите "<--Convert-->". В поле появится ссылка, которую скрипт должен нормально обработать.

Update. Нашел еще одну страницу: http://javascript.internet.com/navigation/url-decode-encode.html. На ней в верхнее поле ("Enter a string") вводите ссылку и сразу же в нижнем поле ("URL encoded data") получаете ее безопасный аналог.


Опечатка. files.lng, строка 92.Ок, спасибо.

prosmith
27-08-2007, 18:57
а как насчет инструкции для чайников? Начиная с момента подключения диска и заканчивая работой самого ados'a

DINI
27-08-2007, 19:16
а как насчет инструкции для чайников? Начиная с момента подключения диска и заканчивая работой самого ados'aИнструкции для чайников, к сожалению, очень объемные. К тому же, к ним надо картинки делать и сноски писать. А на это требуется много времени. Поэтому в ближайшие недели не ждите. Как смогу, так сделаю.
В любом случае, инструкция будет в финальной версии скрипта. А уж когда она выйдет, я пока не знаю.

Marks
27-08-2007, 20:06
Ссылки такого вида добавить не получится, т.к. они содержат недопустимые символы. Вам необходимо производить конвертацию ссылок в безопасный вид (недопустимые символы заменяются URL идентификаторами — %XX).
Сам скрипт конвертацию производить не будет, т.к. ссылка может быть составлена таким образом, что станет небезопасной для обработки скриптом.

Немного поискав нашел эту страницу: http://www.blooberry.com/indexdot/html/topics/urlencoding.htm. В самом ее низу есть поле для ввода. Копируйте туда ссылки (по одной), выбирайте опцию "URL-Safe Encoding" (под полем справа) и жмите "<--Convert-->". В поле появится ссылка, которую скрипт должен нормально обработать.

Update. Нашел еще одну страницу: http://javascript.internet.com/navigation/url-decode-encode.html. На ней в верхнее поле ("Enter a string") вводите ссылку и сразу же в нижнем поле ("URL encoded data") получаете ее безопасный аналог.
К сожалению обе конвертилки дают такой же результат - появляется окно "Поле формы не содержит ни одной ссылки на файл". И если первая моя ссылка уже просрочена, то вторая - живее всех живых. Может кто попробует скачать любую mp3 c http://musicmp3.spb.ru ,а то боюсь что я с кодировками на Asus-e напартачил
Забыл добавить, ранними версиями ADOS качалось, но криво, закаченный файл имел имя типа 20%AB_ и т.д. и не имел расширения, неправильный объём и нулевые куски внутри