NMT-200 ЧаВо

Немного предыстории – что есть LundmanShell и зачем он нужен.
Исторически так сложилось, что несмотря на народную любовь к продуктам Syabas с маркой PopcornHour, NMT новой 200й серии, оказались лишены достаточно важного инструмента. Дело в том, что ядро OS Linux для них собрано без поддержки драйвера псевдотерминального устройства PTY. То есть – нет возможности по сети запустить консольный доступ к устройству через сеть.

Чем это грозило сообществу пользователей?
Большинству – ничем. Мало кто из пользователей когда-нибудь задумывался о доступе с помощью Telnet или SSH во внутренности бортового Linux. И они по-своему правы. Хорошие правила: работает – не трожь, и от добра добра не ищут.
При этом 80% из этих счастливых обладателей увидят в NMT только HDD-плеер, а где-то 20% будут пользоваться его дополнительными функциями NAS и возможностью проигрывать контент по сети.
И только малая толика из состава владельцев NMT будут упорно считать его не только прибором для развлечений, а еще и специализированным компьютером. И поиск новых применений NMT идет постоянно.

Появились сторонние приложения.
Весьма полезные, но и небезглючные. Вот например, кто бы смог догадаться в здравом уме, что все дополнительные приложения на NMT запускаются под пользователем root, а доступ по-умолчанию к папке /share/Apps снаружи по протоколам Samba и FTP предоставлен только для пользователя nmt?
И в результате ну никак не сменишь настройки в файле конфигурации свежего Transmission. Permission Deny и все тут!
Причем владельцы A-200 даже более свободны в такой ситуации – им никто не запрещает заменить содержимое файла, подключив свой девайс через USB-slave кабель к компу.

Откуда у Lundman родилась гениальная мысль с простейшим воплощением – история умалчивает (хотя, сдается мне, корни ее уходят в глубину хакерских времен).
Реализация Lundman Shell выглядит как установка на NMT прослушивателя TCP-порта 2222, который принимает весь попавший на него ввод (символьный), и пытается его вызвать как исполняемый OS файл. В случае вызова командной оболочки /bin/sh, его стандартный вывод направляется в открытое LundmanShell соединение, а стандартный ввод подбирается с этого сетевого соединения.

Но не обошлось без ограничений. Нельзя посылать в установившейся сессии управляющие последовательности Telnet, а также последовательность отработки нажатия Enter в конце строки не должна вызывать код CR + LF. То есть Telnet использовать нельзя!

Что же взамен?
Есть простейшая утилита http://ru.wikipedia.org/wiki/Netcat, практически родная для Linux, он же nc, netcat, ncat, pnetcat (скомпилированный для Windows Netconnect приложен в файлОсвалке).

Установка LundmanShell
На сегодня доступна единственная версия 0.1, и ее установка предпочтительна через NMT CSI.

Использование LundmanShell
Например, для Windows.
Запускаем NetConnect через Пуск > Выполнить как

nc.exe <IP C-200> 2222

(например C:\nc111nt\nc.exe 192.168.0.2 2222)
На приглашение “Enter command to run:” вводим 2 строчки:

<em>Enter command to run:</em>
<strong>/bin/sh</strong>
<em>Cmd is '/bin/sh'
Spawning.</em>
<strong>sh -i</strong>
sh-3.00#

Первая строка – вызов командной оболочки /bin/sh
Вторая (sh -i) необязательная – вывод более привычной командной строки с мигающим курсором.

Примечания
1) Количество сессий к оболочке неограниченно.
2) Ввиду полнейшей самодостаточности сессии командной оболочки, запущенной из LundmanShell, обрыв соединения от PC до NMT не влечет остановки выполнения запущенной программы. Сессия будет жить сколь угодно долго, до перезагрузки NMT, либо до ручного уничтожения наплодившихся процессов с помощью kill. Поэтому, если вы за экономию памяти NMT, то не побрезгуйте подать ему команду exit до обрыва сессии.
3) Воздержитесь от использования Ctrl-комбинаций кнопок. Практически у всего софта Linux есть и буквенные кнопки выхода (например у top это q), а Ctrl+C оборвет сессию. Если нет комбинации – сбейте программу с соседней сессии через pkill <имя процесса> или kill -15 <ID процесса>.

8 комментариев к этой записи

  • Александр

    Что-то я так и не нашел ни в СЦылкосвалке ни в гугле нигде… откуда же можно скачать саму програмку NetConnect?)

    • WildFlexy

      Ты прав, и тут последствия “быстрого переезда” сказались – СЦылкосвалка сменилась на файлОсвалку, так что загляни именно туда – там он точно лежит.
      Можно сказать – вторая правка ошибок за сегодня. Такое чувство, что раньше никто сюда и не смотрел :)

  • Александр

    О, спасибо большое :) Ну ресурс довольно хороший, было странно не найти там того что искал :)

  • Александр

    Снова я… попробовал подконектиться к а200, зашел в прогу вписал ip 2222 и но сразу закрывает окно…
    зашел в putty выбрал режим raw и тоже самое… в чем может быть дело?

    • WildFlexy

      а LundmanShell точно запущен? Через CSI проверь.
      Если запущен и не конектится – перезагрузи плеер (Power+Eject), снова проверь через NMT CSI и попробуй зацепиться.
      Putty и не получится – только этим Netconnect.

  • Александр

    напишу сюда все свои проблемы т.к. с Вами уже начал обсуждать…
    1. почему-то плеер не видит инет, настройки апи все в порядку, инет вообще есть. ( на плеере он был только один раз, не знаю по какой причине… )
    2. Не могу установить приложения в мастере настройки плеера… возможно из-за боков с инетом… хотя пишет что все установлено и все ок… но ничего нет.
    3. Скачал CSI начал подключаться, ввел апи плеера( которй пингую с ноута ), версию плеера, ftpuser, 1234 – пишет нет коннетка к фтп…
    прошивка сентябрьская…

    • WildFlexy

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

  • GafferZV

    правильный login nmt, а не ftpuser

2010–2017 © NMT-200 ЧаВо