Как пользоваться empty ?
-
- Сообщения: 286
- Зарегистрирован: 28 окт 2015, 04:43
В прошлом году я интересовался по поводу использования empty (который мне предложиили как альтернативу expect, которого не было в entware) но ответа так и не было. В итоге я так и не вкурил, как использовать сие чудо программисткой мысли для автоматизации процесса авторизации т.к. информации по данной тулзе в сети кот наплакал (маны скудные, а примеров или мануалов практически нет).
Не так давно наткнулся на expect среди пакетов termux и на устройствах на андроиде 5+ я вопрос с авторизацией решил, а вот для более ранних ведёрок он остаётся открытым.
Не так давно наткнулся на expect среди пакетов termux и на устройствах на андроиде 5+ я вопрос с авторизацией решил, а вот для более ранних ведёрок он остаётся открытым.
Keenetic Omni II [v2.13.C.0.0-1]; Zyxel Keenetic [V1.00(BFW.4.4)D0]
-
- Сообщения: 223
- Зарегистрирован: 17 июл 2017, 00:29
Почему бы тогда не скомпилировать ваш любимый expect самостоятельно прямо в Entware?
Tcl в Entware есть. Заголовки найдете, если надо. Перед сборкой правите configure-скрипт
и, если хотите, исправляете /tmp-пути в exp_pty.c
Tcl в Entware есть. Заголовки найдете, если надо. Перед сборкой правите configure-скрипт
Код: Выделить всё
STTY_BIN=/opt/bin/stty
и, если хотите, исправляете /tmp-пути в exp_pty.c
-
- Сообщения: 286
- Зарегистрирован: 28 окт 2015, 04:43
kaztost, я уже (где-то) писал, что я не спец в сборке и что-то сложнее make врятли осилю. Правка исходников и выправление зависимостей - это не моё. По крайней мере на данный момент.
Да и разве получится собрать expect под entware-ng ? По моему это последний entware, который шуршит на андроидах 4.x Там разве есть всё необходимое ?
А вообще тема несколько о другом - я не против пользоваться empty как альтернативой. Я хочу понять как им пользоваться. Нужны рабочие примеры коннекта через ssh и телнет, с автоматизацией авторизации и последующей передачей управления (ака interact в expect) пользователю.
Да и разве получится собрать expect под entware-ng ? По моему это последний entware, который шуршит на андроидах 4.x Там разве есть всё необходимое ?
А вообще тема несколько о другом - я не против пользоваться empty как альтернативой. Я хочу понять как им пользоваться. Нужны рабочие примеры коннекта через ssh и телнет, с автоматизацией авторизации и последующей передачей управления (ака interact в expect) пользователю.
Keenetic Omni II [v2.13.C.0.0-1]; Zyxel Keenetic [V1.00(BFW.4.4)D0]
-
- Сообщения: 223
- Зарегистрирован: 17 июл 2017, 00:29
ZigZag писал(а):Источник цитаты Да и разве получится собрать expect под entware-ng ? По моему это последний entware, который шуршит на андроидах 4.x Там разве есть всё необходимое ?
При чем здесь версия андроида? И при чем здесь неподдерживаемая Entware-ng? Не говорите здесь больше про Entware-ng, только Entware.
Если имеете в виду ограничение по версии ядра то ветка http://bin.entware.net/armv7sf-k2.6 как раз для старых ядер, если что. И gcc там есть.
ну пользуйтесь, если можете. Вы же гуглили, примеров в сети мало, значит этим empty мало пользуются, маловероятно, что и здесь смогут серьезно помочь. Вот я и предлагал собрать нужный вам expect посколькуZigZag писал(а):Источник цитаты я не против пользоваться empty как альтернативой
1. собирают разные программы многие, многие смогут помочь, если что.
2. типичные ошибки сборки легко гуглятся.
3. такой подход будет более продуктивен в конечном итоге, поскольку научит собирать другие программы.
ZigZag писал(а):Источник цитаты примеры коннекта через ssh и телнет
telnet, серьезно? В наше время это уже не более чем тестовый инструмент, наподобие netcat, зачем там автозаполнение. Есть ssh, а ssh понимает и принимает ключи. Приведите реальный пример, когда без expect/empty не обойтись. Заинтересуйте потенциальных отвечателей, так сказать.
-
- Сообщения: 286
- Зарегистрирован: 28 окт 2015, 04:43
Да, про него. Просто мне казалось, что entware на старых ядрах не будут ваять и не отслеживал этот вопрос. А оно эвона как.Если имеете в виду ограничение по версии ядра то ветка http://bin.entware.net/armv7sf-k2.6 как раз для старых ядер, если что. И gcc там есть.
Ну, как бы мне его тут посоветовал Алексей Рыжков, а он как мне кажется, должен быть в курсе. Наверное надо ему в личку написать )))ну пользуйтесь, если можете. Вы же гуглили, примеров в сети мало, значит этим empty мало пользуются, маловероятно, что и здесь смогут серьезно помочь
Имхо, но смарт использовать для компиляции так себе вариант. Лучше уж тогда кросс-компиляция на ПК/vbox.И gcc там есть.
Тот же zyxel keenetic с прошивкой первого поколения, zyxel'и с прошивкой второго поколения с их cli, различная роутерная китайщина и т.д. и т.п.telnet, серьезно? В наше время это уже не более чем тестовый инструмент, наподобие netcat, зачем там автозаполнение.
Генерация ключей - лишний гемморой, требующий вороха лишних телодвижений. Мне проще написать expect-скрипт в 5 строчек, чем запиливать ключи для всего парка устройств.Есть ssh, а ssh понимает и принимает ключи. Приведите реальный пример, когда без expect/empty не обойтись. Заинтересуйте потенциальных отвечателей, так сказать.
По поводу примеров, вот банальное обломинго
Host 'xxx' is not in the trusted hosts file.
(fingerprint md5 xxx)
Do you want to continue connecting? (y/n)
Keenetic Omni II [v2.13.C.0.0-1]; Zyxel Keenetic [V1.00(BFW.4.4)D0]
-
- Сообщения: 223
- Зарегистрирован: 17 июл 2017, 00:29
ZigZag писал(а):Источник цитаты Host 'xxx' is not in the trusted hosts file.
(fingerprint md5 xxx)
Do you want to continue connecting? (y/n)
Код: Выделить всё
ssh -o "StrictHostKeyChecking=no" user@host
-
- Сообщения: 223
- Зарегистрирован: 17 июл 2017, 00:29
ZigZag писал(а):Источник цитаты Имхо, но смарт использовать для компиляции так себе вариант. Лучше уж тогда кросс-компиляция на ПК/vbox.
В случае с expect без разницы - компиляция (на Андроиде, но не для Entware) у меня заняла 2-3 минуты. На компе было бы 1-2 минуты. Но на нативной сборке в общем случае настаивать не буду)
-
- Сообщения: 223
- Зарегистрирован: 17 июл 2017, 00:29
ZigZag писал(а):Источник цитаты Тот же zyxel keenetic с прошивкой первого поколения, zyxel'и с прошивкой второго поколения с их cli, различная роутерная китайщина и т.д. и т.п.
Имхо, конечно, но избегать надо использования telnet в пользовательских целях. 21 век давно.
-
- Сообщения: 223
- Зарегистрирован: 17 июл 2017, 00:29
ZigZag писал(а):Источник цитаты а он как мне кажется, должен быть в курсе
может быть да, а может быть нет. Как я понял, empty без интерактивного режима типа interact, могу ошибаться)
-
- Сообщения: 223
- Зарегистрирован: 17 июл 2017, 00:29
kaztost писал(а):Источник цитаты компиляция (на Андроиде, но не для Entware) у меня заняла 2-3 минуты.
Скомпилированный expect кстати работает, по ssh авторизирует, что по паролю, что по парольной фразе ключа. Забава, короче, лично для меня остается забавой, серьезных для себя применений как не видел, так и не вижу. Ну может админам всяких серверов нужно подобное, чтобы одно и то же повторно не вносить.
Ну и напрягает еще зависимость от tcl. Ненужная сама по себе штука (все же не пЁрл или пАЙтон), на нем ничего интересного не написано больше. Пока меня забавляют мысли, как этот tcl статически привязать к expect.
Вернуться в «Entware/Qnapware/Optware/Zyxware - обсуждаем репозитории пакетов»
Кто сейчас на конференции
Всего 5 посетителей :: 0 зарегистрированных, 0 скрытых и 5 гостей (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (162) здесь было 16 ноя 2019, 18:33
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей