loginctl enable-linger / disable-linger… но читает статус linger?


16

Я знаю, как включить / отключить задержку с loginctl.

Но до сих пор я не нашел способа запросить статус пользователя.

Я хочу знать: включено ли задержание для пользователя foo?

Как я могу получить доступ к этой информации?

Ответы:


22

Вы можете показать список длительных пользователей с

ls /var/lib/systemd/linger

потому что

loginctl enable-linger $USER
loginctl disable-linger $USER

сделать эквивалент

touch /var/lib/systemd/linger/$USER
rm /var/lib/systemd/linger/$USER

8

loginctl user-status foo показывает статус задержки.


2
Я не уверен, если это действительно работает. Несколько минут назад это напечатало дерево для тестового пользователя, у которого не было задержки. Теперь, несколько минут спустя, выводится «Не удалось получить пользователя: ни один пользователь« 1003 »не известен или не вошел в систему». Я буду использовать решение от Маркуса Куна (проверьте, существует ли файл / var / lib / systemd / linger / $ USER)
guettli

5

Лучшее, что я нашел для проверки в скриптах (программно):

loginctl show-user $USER --property=Linger 2>/dev/null | grep -q 'yes'

Почему бы не использовать это: «проверить существование / var / lib / systemd / linger»?
Геттли

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