Почему мой экран не блокируется в XFCE?


20

Я пробую XFCE на Arch Linux, и по какой-то причине опция Блокировка экрана в меню сеанса ничего не делает. Также не работает xflock4в командной строке (он выходит из 0 без вывода).

xfce4-session бежит.

Нужно ли устанавливать скринсейвер или что-то еще?

Ответы:


15
Нужно ли устанавливать скринсейвер или что-то еще?

Да, согласно вики , вам нужно выбрать и установить шкафчик. xflock4затем активировать его.


1
На самом деле, gnome-screensaver установлен, и он работал под Gnome. Нужно ли как-то его активировать?
CJM

2
Хорошо, проблема, кажется, в том, что gnome-screensaver-commandсуществует, но gnome-screensaverне работает. xflock4запускает gnome-screensaver-command --lock, который ничего не делает, но выходит 0, поэтому xflock4думает, что это сделано.
CJM

Я предпочитаю i3lock как простую блокировку экрана, которая не поддерживается напрямую xflock4, поэтому я написал простой скрипт-обертку, /usr/bin/xscreensaver-commandкоторый вызывается i3lock. Так как xflock4пытается xscreensaver-commandраньше gnome-screensaver-command, это решает проблему.
CJM

4
slockеще проще и теперь поставляется с функцией: цвет!
Джейсонвриан

1
@jasonwryan: Тьфу, просто бесполезная тенденция. Цветной дисплей не более полезен, чем наличие более 640 Кб оперативной памяти ...
Марк К Коуэн,

5

Отредактируйте /usr/bin/xflock4 и добавьте light-locker-command -lили dm-tool lockк списку.

for lock_cmd in \
"xscreensaver-command -lock" \
"gnome-screensaver-command --lock" \
"light-locker-command -l"\
"dm-tool lock"

1
Это также работает для Linux Mint 19, если кто-то ищет это.
Кев

4

Первая установка light-locker.

$ xfconf-query -c xfce4-session -p /general/LockCommand -s "light-locker-command -l"

или если у вас еще нет переменной:

$ xfconf-query -c xfce4-session -p /general/LockCommand -s "light-locker-command -l" --create -t string



Старые вещи:

Похоже, xflock4теперь поддерживает внешний конфиг. Что я сделал, это:

$ xfconf-query -c xfce4-session -p /general/LockCommand -s "dm-tool lock"

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

Это для XFCE. Если у вас еще нет этого свойства, вы добавляете его:

$ xfconf-query -c xfce4-session -p /general/LockCommand -s "dm-tool lock" --create -t string

ОЧЕНЬ ВАЖНО: вам нужна работающая заставка для надежной блокировки экрана. light-lockerэто один выбор. В конце убедитесь, что переключение консолей с помощью ctrl + alt + F1 или другого F # не позволяет обойти экран блокировки. Видеть:


Благодарность! Я перехожу с XFCE4 на BSPWM, теперь i3lock прекрасно работает!
Начопро

1

Ответ Case_of был близок для меня, но dm-tool уже был в моем списке /usr/local/bin/xflock4. Но попробовал xscreensaver-commandи gnome-screensaver-commandпервым. Я переместил их во второй цикл for и переместил dm-tool вверх как единственную опцию (удалив первый цикл for):

dm-tool lock >/dev/null 4>&1 && exit

# else run another access locking utility, if installed
for lock_cmd in \
  "xscreensaver-command -lock" \
  "gnome-screensaver-command --lock"
  "xlock -mode blank" \
  "slock"
  do
    set -- $lock_cmd
    if command -v -- $1 >/dev/null 2>&1; then
        $lock_cmd >/dev/null 2>&1 &
    # turn off display backlight:
    xset dpms force off
        exit
    fi
done

Я также сопоставил его с Win+ L, чтобы быть как Windows.


0

Я только (январь 2018) пытался заставить блокировку экрана работать под XFCE. Я немного удивлен, что по умолчанию это не сработало. Сначала я пытался установить light-lockerи , xscreensaverно ни один не работал.

То, что работало для меня, состояло в том, чтобы установить xlockmoreпакет, который предоставил, /usr/bin/xlockкоторый, кажется, работает отлично. Теперь, когда эта команда установлена, я смог настроить сеанс xfce для ее использования:

xfconf-query -c xfce4-session -p /general/LockCommand -s "xlock"

или если у вас еще нет переменной:

xfconf-query -c xfce4-session -p /general/LockCommand -s "xlock" --create -t string

Мой /usr/bin/xflock4сценарий уже обращает внимание на эту LockCommandнастройку, поэтому нет необходимости редактировать сценарий, как только я применил настройку.

Xlock имеет множество различных режимов и настроек, которые по умолчанию случайны. Я остановился на:

xlock -mode goop -erasedelay 0

Чтобы проверить их, используйте:

xlock -mode ... -nolock
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.