在 Linux 中,如何在空闲期后注销用户,即使他们仍在程序中

Rya*_*yan 2 linux bash logoff

我正在尝试执行一项策略,将空闲用户从 bash shell 会话中注销,即使他们处于活动进程(如基于脚本的菜单或 vi 会话)中也是如此。

我曾尝试使用“export TMOUT=x”,其中 x 是秒数,但这只会在用户在 bash shell 提示符下空闲时将其注销。

是否有我可以运行的 bash 脚本或任何 C 代码来检查哪些用户空闲时间过长,然后停止该用户运行的所有进程,并将它们注销?

谢谢

瑞安

Dav*_*sta 5

在 bash

w | tr -s " " | cut -d" " -f1,5 | tail -n+3
Run Code Online (Sandbox Code Playgroud)

为每个 shell 提供一个用户名/空闲时间对。您可以使用此信息设置 cronjob 以注销正确的人员。空闲时间是自上次直接在外壳程序(而不是应用程序)中击键以来的时间。