Я бы предпочел решение, которое не касается системных каталогов или файлов и будет запускать ловушку выхода из системы в рамках текущего сеанса пользователя и его привилегий.
ниже мое решение:
сценарий создания ~/.local/bin/xfce4-session-logout
со следующим содержимым:
#!/bin/bash
PRELOGOUT=${HOME}/scripts/pre-logout.sh
RESULT=RES_`echo -e "logout\nrestart\nshutdown\nsuspend" | zenity --height=250 --list --title "Logout from $USER" --column "What do You want to do?"`
case $RESULT in
RES_logout)
[ -x $PRELOGOUT] && $PRELOGOUT
/usr/bin/xfce4-session-logout --fast --logout
;;
RES_restart)
[ -x $PRELOGOUT] && $PRELOGOUT
/usr/bin/xfce4-session-logout --fast --reboot
;;
RES_shutdown)
[ -x $PRELOGOUT] && $PRELOGOUT
/usr/bin/xfce4-session-logout --fast --halt
;;
RES_suspend)
/usr/bin/xfce4-session-logout --suspend
;;
*)
exit 1
;;
esac
и сделайте его исполняемым:
chmod u+x ~/.local/bin/xfce4-session-logout
Теперь поместите все, что вам нужно выполнить при выходе из системы, на ~/scripts/pre-logout.sh
и сделайте его исполняемым
chmod u+x ~/scripts/pre-logout.sh
после повторного входа либо menu > logout button
, либо Alt+f3: "logout"
выведет простой диалог для выхода из текущего сеанса
Примечание: нажатие Alt+F4
не работает с ним, но, возможно, некоторые пользователи xfce4 с черным поясом предложат