inputattach после пробуждения от приостановки
В Ubuntu 16.04 у меня работает серийная мышь. Он может быть запущен из терминала с помощью команды sudo inputattach --daemon --intellimouse /dev/ttyS0 и запускается в процессе загрузки, имея строку inputattach --intellimouse /dev/ttyS0 в /etc/rc.local
Это правильно, но мне не удалось найти способ автоматического перезапуска после выхода из режима ожидания. По предложению для другого последовательного устройства я добавил исполняемый скрипт 99_sermouse_restart в папку /lib/systemd/system-sleep/ с содержимым
#!/bin/bash
# suspend_inputattach() {
# inputattach automatically stops on suspend, so no need
# usr/sbin/inputattach
#}
echo "Elindult..." > /tmp/inputattach_teszt
resume_inputattach() {
echo "most ugrik..." >> /tmp/inputattach_teszt
# restart input attach program
# sleep 10s && inputattach --daemon --intellimouse /dev/ttyS0
# sleep 10s && inputattach --intellimouse /dev/ttyS0 &
killall inputattach && sleep 10s && inputattach --intellimouse /dev/ttyS0 &
# inputattach --intellimouse /dev/ttyS0 &
#echo "ugrott..." >> /tmp/inputattach_teszt
}
case "$1" in
post)
resume_inputattach
#echo "benne volt..." >> /tmp/inputattach_teszt
;;
*)
echo "nincs benne..." >> /tmp/inputattach_teszt
;;
esac
echo $? >> /tmp/inputattach_teszt
echo "befejezte..." >> /tmp/inputattach_teszt
exit $?
По /tmp/inputattach_teszt
Elindult...
most ugrik...
0
befejezte...
очевидно, inputattach в нем работает без ошибок, но мышь не работает (должны быть активированы описанной командой терминала). Я провел испытания с модификацией строки inputattach скрипта, но безуспешно (некоторые из них есть в скрипте в качестве комментариев).
Я нашел фрагменты журнала (/var/log/Xorg.0.log), сгенерированные до, во время и после ввода. Последние строки перед ним (из предыдущего приостановки) убирали мышь и ее модуль. iputattach сам генерирует строки, описывающие процесс присоединения. Более поздние шаги пробуждения добавили конец его юзабилити:
[ 62187.541] (II) config/udev: removing device Microsoft MZ Mouse
[ 62187.560] (II) evdev: Microsoft MZ Mouse: Close
[ 62187.561] (II) UnloadModule: "evdev"
Боюсь, сценарий запускается раньше, чем он будет оптимальным.
Мои вопросы: (1) как поместить сценарий в более позднюю точку возобновления или (2) как избежать последнего описанного шага пробуждения? Спасибо.