атвоматизировать процесс, если ядро отвалилось
Можно попробовать так:
1. Создаем скрипт. Открываем терминал (
Ctr+Alt+T), выполняем в нем команду:
sudo nano /opt/my_psmouse_restart.sh
В окне терминала запустится консольный текстовый редатор nano. Вставляем в него такой текст:
#!/bin/bash
rmmod -f psmouse
sleep 2
modprobe psmouse
Готово. Нажимаем
Ctrl+X чтобы выйти,
Y чтобы подтвердить изменения,
Enter чтобы подтвердить имя сохраняемого файла
/opt/my_psmouse_restart.sh. Вновь видим приветствие командной строки. Для проверки вводим в терминал
cat /opt/my_psmouse_restart.sh
Должен появиться только что введенный нами в файл текст. Дадим теперь нашему текстовому файлу my_psmouse_restart.sh права на исполнение, чтобы сделать из него полноценный скрипт:
sudo chmod +x /opt/my_psmouse_restart.sh
Обратите внимание на команду "sleep 2" в скрипте. Это задержка в 2 секунды, которую мы специально вносим между отключением модуля ядра и его повторной загрузкой. Если у Вас что-то по завершении всех манипуляций не отрабатывает нормально следует попытаться подобрать данное значение: попробуйте поставить больше или меньше, и проверьте результат путем эксперимента.
Со скриптом пока закончили. Но это не все. Надо еще чтобы он запускался автоматически.
2. Выполняем в терминале команду:
sudo nano /etc/systemd/system/restart_psmouse.service
В окне терминала запустится знакомый уже консольный текстовый редатор nano. Вставляем в него такой текст:
[Unit]
Description=Restart psmouse kernel module after suspend
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target
[Service]
Type=oneshot
ExecStart=/opt/my_psmouse_restart.sh
[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target
Нажимаем
Ctrl+X чтобы выйти,
Y чтобы подтвердить изменения,
Enter чтобы подтвердить имя сохраняемого файла
/etc/systemd/system/restart_psmouse.service. Как и ранее, проверяем что файл сохранился путем вывода его содержимого в терминал:
cat /etc/systemd/system/restart_psmouse.service
должен быть выведен ранее введенный Вами текст. Проверьте еше раз - все ли верно сделано. Если все так - выполняем команды:
systemctl daemon-reload
systemctl enable restart_psmouse.service
systemctl start restart_psmouse.service
systemctl status restart_psmouse.service
При вводе последней команды Вы получите текущий статус сервиса. Он по идее должен быть "Loaded: loaded" и "Active: inactive (dead)". Последней строчкой будет "Started Restart psmouse kernel module after suspend". Если там что-то не так - прошу показать этот вывод. И да: лог будет отображаться в терминале до тех пор, пока Вы не нажмете на клавиатуре клавишу
Q в окне терминала.
Если ошибок не видно, - можно попробовать "уснуть" и "проснуться"...
Пользователь добавил сообщение 21 Февраля 2020, 12:49:29:
тоже смогу стать профессионалом
Тоже - вместе с кем?! Если Вы обо мне - то я простой пользователь, и никак не более.