Есть более простой способ через xfconf-query
Ага
$ xfconf-query -c xfce4-session -np '/shutdown/ShowSuspend' -t 'bool' -s 'false'
$ date && xfce4-session-logout --suspend && date && echo "Привет, заждался?"
Вт сен 26 08:56:23 +03 2017
Вт сен 26 08:57:03 +03 2017
Привет, заждался?
Тут юмор в том, что выход из сессии через этот xfce4-session-logout и работает, а управлять им можно как угодно, или кликом мышки через опцию Выход, или командой из терминала. Результат будет один и от же. Поэтому чтобы suspend был невозможен в принципе, нужно не только убрать кнопку, но и запретить. Но проблема в том, что экшн в Xfce для этого, один на всё. Поэтому, либо разрешено всё, либо разрешён только выход из сессии, с перезагрузкой или выключением через *dm.
В принципе, чтобы предотвратить запуск xfce4-session-logout из терминала, можно и Х-терминал из меню убрать и опцию Запустить приложение. Но этого будет мало, надо убирать все tty кроме Х-сового. Но это уже будет винда.
И тут с tty есть ещё одна лазейка чтобы воспользоваться suspend/hibernate не root-ом:
- Если запуск xfce4-pm-helper разрешён через pkexec, то пользователь через xinit запустив Х-терминал в дисплей :1 всё же сможет усыпить компьютер. Суть тут в том, что пользователю нужен хоть какой-нибудь терминал, а остальное он сделает даже если кнопки поубирали.