锁定用户会话并在延迟分钟后登录到另一个会话

锁定用户会话并在延迟分钟后登录到另一个会话

我有两个账户:admin有密码的和user无密码的。

当我以管理员身份登录时,我想锁定并在空闲约 10 分钟时admin切换到。user

很多教程都提到了登录控制台或手动点击界面。在我的问题中,我考虑的是 GUI,但通过脚本来实现。

编写脚本时我应该寻找什么?

我认为您需要检测空闲 10 分钟并执行例如将阻止admin并切换到的bash 脚本user

答案1

解决此问题的方法是命令loginctlxidle

$ loginctl list-sessions
SESSION  UID USER   SEAT  TTY
      2 1020 user   seat0 tty2
      5 1044 admin  seat0 tty3

获取会话 ID 后我们切换到已登录帐户:

$ loginctl activate 2

上述命令锁定会话admin并立即切换到帐户user

对于用户空闲检测我使用xidle

xidle -timeout 120 -program "/usr/bin/sh /switch_user.sh"

switch_用户.sh:

#!/bin/bash
id=$(loginctl list-sessions | grep user | awk -F' ' '{print $1}')
loginctl activate "$id"

相关内容