使用 TTY 1-6 [*]上的虚拟终端时,有时很容易忘记注销:屏幕过一会儿就变黑了,但我仍然登录 - 不需要密码,任何人都可以使用我的帐户。(或者我切换到另一个 TTY,而忘记了另一个……)
我想要一个类似屏幕保护程序的功能,在 3 分钟后锁定终端,然后要求输入密码。我该如何设置?
[*] 对于 TTY 1-6,我的意思是CTRLALTF1-CTRLALTF6 (没有 X 服务器)
答案1
我知道这已经过时了,但我在谷歌上发现你在搜索同样的问题。
如果您使用 bash,则没有问题。只需使用环境变量“TMOUT”,bash 会使用该变量在给定的秒数内自动注销(注销!不是锁定)。
您可以在任何 bash 中输入“TMOUT=5”看看会发生什么。
对于我的 bashrc 中的配置,我使用
# 30 分钟后自动退出 tty1-6 如果 [[ $(tty) =~ /dev\/tty[1-6] ]]; 则 TMOUT=1800; fi
所以我不会在通常位于 /dev/pty/# 上的终端仿真器上注销,并且已经被我的屏幕保护程序锁定为桌面的一部分
答案2
以这种方式为 TTY 实现屏幕保护程序很困难,因为您无法向 X 服务器查询空闲时间。
如果您自律,您可以使用vlock
命令明确锁定终端。
超时方法的一个解决方法是 ssh 到本地主机,让 ssh 连接超时处理其余问题。超时在LoginGraceTime
in下指定/etc/ssh/sshd_config
,默认为 120 秒。
如果您运行exec ssh localhost
,则当 ssh 连接超时时,您将自动注销。要让您的程序在超时后继续运行,您可以通过 运行它们screen
。