LINUX.ORG.RU

Запуск команды во время загрузки по нажатию определенной клавиши

 ,


0

1

Добрый день! Собираю специализированный дистрибутив. Встала такая задача. Во время загрузке необходимо чтобы при нажатии определенной клавиши на клавиатуре (например Del) загрузка прерывалась и запускалась определенная программа (в моем случае настройка параметров и дальнейшая загрузка). В древнем Red Hat такое было точно и после запуска init была надпись, что то типа «Press I for interactive load». Как можно такое реализовать или делают обычно?



Последнее исправление: koto (всего исправлений: 1)

В RH основной скрипт работал в фоне, а на переднем плане «висела» команда getkey, создающая файл. При завершении скрипта он «убивал» getkey. Как то так:

echo Press I
{
sleep 1 
swapon
dmesg > /var/log/dmesg
sleep 1
kill -TERM `/sbin/pidof getkey` >/dev/null 2>&1
}&

/sbin/getkey i && touch /var/run/confirm

wait

И нажатие клавиши ″I″ фактчески отрабатывалось уже после того, как выполился весь /etc/rc.d/rc.

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

mky ★★★★★
()

Судя по уровню вопроса, просто бросай это дело...

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.