The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Запуск команды во время загрузки по нажатию определенной клавиш"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Система)
Изначальное сообщение [ Отслеживать ]

"Запуск команды во время загрузки по нажатию определенной клавиш"  –1 +/
Сообщение от koto (??) on 15-Май-15, 16:12 
Добрый день!
Собираю специализированный дистрибутив. Встала такая задача. Во время загрузке необходимо чтобы при нажатии определенной клавиши на клавиатуре (например Del) загрузка прерывалась и запускалась определенная программа (в моем случае настройка параметров и дальнейшая загрузка).
В древнем Red Hat такое было точно и после запуска init была надпись, что то типа «Press I for interactive load». Как можно такое реализовать или делают обычно?
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от Павел Самсонов email on 17-Май-15, 11:17 
> Добрый день!
> Собираю специализированный дистрибутив. Встала такая задача. Во время загрузке необходимо
> чтобы при нажатии определенной клавиши на клавиатуре (например Del) загрузка прерывалась
> и запускалась определенная программа (в моем случае настройка параметров и дальнейшая
> загрузка).
> В древнем Red Hat такое было точно и после запуска init была
> надпись, что то типа «Press I for interactive load». Как можно
> такое реализовать или делают обычно?

Скорее всего в sysv надо смотреть /etc/inittab. Во всяком случае ctrl alt del обрабатываются там.


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от koto (??) on 17-Май-15, 16:22 
> Скорее всего в sysv надо смотреть /etc/inittab. Во всяком случае ctrl alt
> del обрабатываются там.

Первая мысль и мне тоже пришла туда посмотреть, но насмотрел только это
kb::kbrequest:/usr/bin/wall "Keyboard Request -- edit /etc/inittab to customize"
причем заработать так и не заставил.
Непонятно как кастомизировать сочетание клавиш, а дефолтное alt+up_arrow не заработало в слаке.

Хотелось бы какого то более элегантного решения не привязанного к init.
Может какая программа есть которая бы ловила сочетание клавишь какое то время?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от fantom (ok) on 18-Май-15, 10:15 
>> Скорее всего в sysv надо смотреть /etc/inittab. Во всяком случае ctrl alt
>> del обрабатываются там.
> Первая мысль и мне тоже пришла туда посмотреть, но насмотрел только это
> kb::kbrequest:/usr/bin/wall "Keyboard Request -- edit /etc/inittab to customize"
> причем заработать так и не заставил.
> Непонятно как кастомизировать сочетание клавиш, а дефолтное alt+up_arrow не заработало
> в слаке.
> Хотелось бы какого то более элегантного решения не привязанного к init.
> Может какая программа есть которая бы ловила сочетание клавишь какое то время?

Для systemd - пишете прогу-хватальщик (вплоть да bash скрипта) и формируете соотв. unit. собственно в теории и все....

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от koto (??) on 18-Май-15, 15:24 
> Для systemd - пишете прогу-хватальщик (вплоть да bash скрипта) и формируете соотв.
> unit. собственно в теории и все....

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

Гугление свелось к тому что либо системд либо модуль!!!! ядра... мда...
Простого решения не оказалось...

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от fantom (ok) on 18-Май-15, 15:38 
>> Для systemd - пишете прогу-хватальщик (вплоть да bash скрипта) и формируете соотв.
>> unit. собственно в теории и все....
> Так и знал что к systemd все сведется, но не желательно его
> использовать, так как дистрибутив должен быть маленький и init уже вшит
> в busybox, а системд отдельный пакет, да и что греха таить
> о системд я имею смутные представления, так как я динозавр.
> Гугление свелось к тому что либо системд либо модуль!!!! ядра... мда...
> Простого решения не оказалось...

А заставить init выполнять ваш скрипт инициализации первым????
Инит - он же типа выполняет по порядку набор скриптов, причем ПОСЛЕДОВАТЕЛЬНО... Вроде как...

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от koto (??) on 22-Май-15, 14:19 
> А заставить init выполнять ваш скрипт инициализации первым????
> Инит - он же типа выполняет по порядку набор скриптов, причем ПОСЛЕДОВАТЕЛЬНО...
> Вроде как...

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

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

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от Andrey Mitrofanov on 22-Май-15, 15:31 
> Если коротко для чего это нужно. Есть дистрибутив на основе thinstation. Я
> сейчас делаю готовый продукт для терминальных систем, чтобы обычный продвинутый пользователь
> мог менять настройки терминала не лазия в конфигурационные файлы.

А ещё можно в тетрис поиграть, пока оно грузится!

Plymouth.SetKeyboardInputFunction() ? http://www.freedesktop.org/wiki/Software/Plymouth/Scripts/#p...

Нет, дальше не знаю.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

6. "Запуск команды во время загрузки по нажатию определенной клавиш"  +/
Сообщение от Павел Самсонов email on 18-Май-15, 16:07 
>> Скорее всего в sysv надо смотреть /etc/inittab. Во всяком случае ctrl alt
>> del обрабатываются там.
> Первая мысль и мне тоже пришла туда посмотреть, но насмотрел только это
> kb::kbrequest:/usr/bin/wall "Keyboard Request -- edit /etc/inittab to customize"
> причем заработать так и не заставил.
> Непонятно как кастомизировать сочетание клавиш, а дефолтное alt+up_arrow не заработало
> в слаке.
> Хотелось бы какого то более элегантного решения не привязанного к init.
> Может какая программа есть которая бы ловила сочетание клавишь какое то время?

Это именно то что Вам надо и именно должно быть в init
Добавьте строку
kb:2345:kbrequest:/путь_к_вашему_сценарию_загрузки
И привяжите нажатие клавиш к KeyboardSignal в настройке kbd
(Это как я не подскажу, погуглите)

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру