Где я могу разместить скрипт выхода для LightDM?

12

Ранее в Karmic мы создали сценарий выхода из системы, который выполняет некоторую работу в фоновом режиме при резервном копировании домашнего каталога пользователей, этот сценарий был помещен в /etc/GDM/PostSessionкаталог.

Я не могу понять, куда поместить скрипт, который я хочу запустить во время выхода из системы в LightDM.

Я искал и нашел много людей, которые ищут этот ответ, поэтому любая помощь будет принята с благодарностью.

Кевин Дейли
источник

Ответы:

10

По крайней мере, начиная с Ubuntu 12.04, теперь есть опция, session-cleanup-scriptкоторую можно добавить в раздел [SeatDefaults] /etc/lightdm/lightdm.conf. /usr/share/doc/lightdm/lightdm.conf.gzэто документация:

# session-cleanup-script = Script to run when quitting a user session (runs as root)

Не забудьте chmod +x yourscriptдать вашему сценарию разрешение на выполнение.

После изменения значения в lightdm.conf оно вступает в силу только после перезапуска lightdm. Вы можете перезагрузиться или войти в консоль (Ctrl + Alt + F1) и запустить sudo restart lightdm.

(Спасибо Krytarik, который разместил этот ответ на http://ubuntuforums.org/showthread.php?t=1918649 )

elmicha
источник
1
Если вы добавите скрипт очистки и выйдите из системы, он не будет работать сразу. Кажется, что вы должны перезагрузиться в первую очередь.
поясничный
1
Вам нужно только перезапустить Lightdm. Я отредактирую свой ответ.
elmicha
Да, я так и думал, но я не думал об этом и пытался 15 раз выйти из системы и войти снова. К счастью , я не удалял мой тестовый сценарий , и после перезагрузки (я отказался уже) он работал ... :)
lumbric
В Ubuntu 16.04 это может вызвать побочные эффекты. session-cleanup-script также вызывается, если пользователь ввел неправильное имя пользователя или пароль. В настоящее время я ищу другой способ настройки сценария выхода из системы, который действительно вызывается, только если пользователь выходит из системы.
Майкл
3

добавлять

session-setup-script = Script to run when starting a user session (runs as root)

session-cleanup-script = Script to run when quitting a user session (runs as root)

в /etc/lightdm/lightdm.confфайле.

Источники:

user55822
источник