Выполнение скрипта при выключении

Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
Аватара пользователя

Автор темы
di_mok
Сообщения: 5469
Зарегистрирован: 27 авг 2016, 19:06
Решено: 32
Откуда: Арзамас
Благодарил (а): 1593 раза
Поблагодарили: 1276 раз
Контактная информация:

Выполнение скрипта при выключении

#1

29 мар 2017, 21:30

Растолкуйте, как сделать что бы скрипт срабатывал при выключении, выходе и перезагрузке. На просторах несметное количество мануалов, противоречащих друг другу и не срабатывающих у меня. Речь о LM18
Настоящая водка — это не пьянство, а ключ к своей совести, с нее-то и начинается настоящая мудрость. (c)
Изображение

Аватара пользователя

Chocobo
Сообщения: 10015
Зарегистрирован: 27 авг 2016, 22:57
Решено: 215
Откуда: НН
Благодарил (а): 815 раз
Поблагодарили: 3008 раз
Контактная информация:

Выполнение скрипта при выключении

#2

29 мар 2017, 22:37

di_mok, есть пара вариантов навскидку силами systemd, в зависимости от того что должен делать скрипт.

Вариант 1. кинуть в /lib/systemd/system-shutdown/, но он исполняется очень поздно, перед самым выключением, все фс уже будут в ридонли. если нужно что-то писать - то в том же скрипте нужно будет предусмотреть ремаунт раздела в rw и обратно

Вариант 2. Завести фейковый сервис, который ничего не делает, но останов его (Exec_Stop) под общее завершение сессии будет ссылаться на нужный скрипт, например /lib/systemd/system/before_shutdown.service примерно такой конструкции

Код: Выделить всё

[Unit]
Description=Script to exec on shutdown

[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/bin/true
ExecStop=/home/di_mok/before_shutdown_script.sh

[Install]
WantedBy=multi-user.target
и задействовать его с

Код: Выделить всё

sudo systemctl daemon-reload
sudo systemctl enable before_shutdown.service
 sudo systemctl start before_shutdown.service
Изображение
   
Изображение

Закрыто

Вернуться в «Параметры и оптимизация»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей