Добрый день, форумчане.
Сейчас в работе проект, который никак не могу доделать по причине, думаю, плохого знания ОС FreeBSD.
Проект представляет собой одинокостоящую машинку с упомянутой ОС, без монитора, но с кастрированной клавиатурой - имеются только клавиши 1, 2, 3, 4, 5, 6, 7, 8, 9.
Кроме того, на морду машинки выведен один разъем USB. При подключении туда флешки происходит копирование файлов, а вот каких - должно определяться нажатиями тех самых клавиш.
Весь алгоритм работы описан shell-скриптом. При подключении флешки выполняется автомонтирование, далее необходим ответ от оператора. И вот тут проблема:
- вход в систему не выполнен, следовательно на экране, который не видно по причине его отсутствия, выведено приглашение к вводу имени пользователя.
- нажатие этой кастрированной клавиатуры будет восприниматься, как ввод логина, а мне нужно, чтоб это нажатие направлялось в работающий скрипт.
- клавиша Enter отсутствует, а значит ввод должен быть realtime или как это еще назвать...
Может еще что-то нужно подсказать, чтоб попросить помощи в решении проблемы?
Обработка нажатия клавиш на удаленном сервере
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- проходил мимо
- Сообщения: 1
- Зарегистрирован: 2014-06-17 6:54:57
Обработка нажатия клавиш на удаленном сервере
Последний раз редактировалось f_andrey 2014-06-17 7:23:23, всего редактировалось 1 раз.
Причина: Автору. пожалуйста, выбирайте соответствующий раздел форума.
Причина: Автору. пожалуйста, выбирайте соответствующий раздел форума.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- сержант
- Сообщения: 160
- Зарегистрирован: 2007-11-19 10:47:09
Re: Обработка нажатия клавиш на удаленном сервере
Имхо не с той стороны заходишь
Автологин во фряху + автозапуск иксов (соответствующим образом кастрированных ) + автозапуск self_made_gui_tool, развернутой во весь экран с надписями на окне чё какая кнопка делает. В этой же self_made_gui_tool ловить нажатия клавиш и обрабатывать (да хоть шеллскрипты запускать соответствующие).
self_made_gui_tool я бы лично писал на python + PyQT (пара минут в qt designer + пару десятков строчек кода)
С тем же успехом можно заюзать c# mono + gtk#/winforms, си, плюсы, перловку etc
Особых знаний языков не нужно - реально нагуглить с нуля за полдня.
ps. Надо только как то опасаться клавиатур в USB вход подключаемых.
Автологин во фряху + автозапуск иксов (соответствующим образом кастрированных ) + автозапуск self_made_gui_tool, развернутой во весь экран с надписями на окне чё какая кнопка делает. В этой же self_made_gui_tool ловить нажатия клавиш и обрабатывать (да хоть шеллскрипты запускать соответствующие).
self_made_gui_tool я бы лично писал на python + PyQT (пара минут в qt designer + пару десятков строчек кода)
С тем же успехом можно заюзать c# mono + gtk#/winforms, си, плюсы, перловку etc
Особых знаний языков не нужно - реально нагуглить с нуля за полдня.
ps. Надо только как то опасаться клавиатур в USB вход подключаемых.
-
- проходил мимо
Re: Обработка нажатия клавиш на удаленном сервере
alm604,
полагаю, что вам необходимо в оси исключить иксы и всё, что связано с графикой, и напротив - так или иначе задействовать автологин для НЕпривилегированного пользователя, притом - при старте оси. Ну а ваш скрипт автоматом стартует в автозагрузке (ну или демоном его заделать...)
Поскольку в ТЗ как будто явно указано, что машинка будет работать без моника и нормальной клавы, всяческие телодвижения (включая и данные в ответе suspender) окажутся по меньшей мере лишним гимором, а по сути излишними сущностями, вообще никак не способствующими решению задачи...
Как то так навскидку
полагаю, что вам необходимо в оси исключить иксы и всё, что связано с графикой, и напротив - так или иначе задействовать автологин для НЕпривилегированного пользователя, притом - при старте оси. Ну а ваш скрипт автоматом стартует в автозагрузке (ну или демоном его заделать...)
Поскольку в ТЗ как будто явно указано, что машинка будет работать без моника и нормальной клавы, всяческие телодвижения (включая и данные в ответе suspender) окажутся по меньшей мере лишним гимором, а по сути излишними сущностями, вообще никак не способствующими решению задачи...
Как то так навскидку
-
- проходил мимо
Re: Обработка нажатия клавиш на удаленном сервере
ЗЫ, но suspender абсолютно прав, что нужно как-то добиться невозможности подключения юсб-клавы (скорее всего выключением сервиса для клавы: только не спрашивате меня, как конкретно ето сделать... выступаю тут типичным консалтинговым филином! ) к етому... гм, недоПК - бо иначе кулхацкеры вам похозяйничают в нём (несмотря на непривилегированного юзера, попортить из консоли можно многое...)
Note. Должно быть, коли вы назвали хозяйство "сервером", управлять им будете по сетке (ssh?) через хорошо настроенную и крепко запароленную рутовую учётку... не правда ли?
Note. Должно быть, коли вы назвали хозяйство "сервером", управлять им будете по сетке (ssh?) через хорошо настроенную и крепко запароленную рутовую учётку... не правда ли?
-
- проходил мимо
Re: Обработка нажатия клавиш на удаленном сервере
А немного пораскинув мозгами, могу посоветовать простое и надежное решение насчёт безопасности: непривилег. юзара создайте без возможности шелла. Точка! Кулхацкер пусть хоть повесится на шнурке принесённой клавы, ничего навредить не сможет!
На в скрипт, считывающий нажатия цифровых клавиш, лучше заделать демоном...
На в скрипт, считывающий нажатия цифровых клавиш, лучше заделать демоном...