У меня есть сценарий, который запрашивает числовой ввод от пользователя при загрузке компьютера. На компьютере установлена Fedora 16. Раньше он работал на Fedora 13, но после обновления
read INTEGER
немедленно возвращается, не улавливая никаких действий пользователя. Я попытался
read INTEGER
wait $!
но (как и ожидалось) это тоже не работает. Скрипт запускается из служебного файла systemd (см. Комментарии ниже). Это должен запускаться как root, и должен запускается до того, как пользователь входит в систему. В настоящее время он вызывает bash в качестве своего интерпретатора, но с некоторыми усилиями это можно изменить. Может ли кто-нибудь помочь вернуть этот скрипт в нормальное состояние?
Дополнительный кредит: в F13 он использовался для остановки загрузки при вводе пользователем (по желанию), но ввод не отображался при вводе пользователем. Есть ли способ добавить эту функциональность?
В качестве альтернативы я мог бы указать графический интерфейс (например, из tkinter / Python), чтобы запросить INTEGER
после graphical.target
нагрузки. Есть мысли о том, как я могу это сделать? Легко ли загружать вещи с окнами до загрузки рабочего стола?
Использовать systemd-ask-password
command и systemd позаботятся о том, чтобы запрашивать у пользователя ввод соответствующим образом, используя текстовую или графическую подсказку.