Linux

如何控制使用者花費的時間

  • May 31, 2020

我需要一個允許我控制每個使用者在電腦上花費的時間的解決方案,不包括空閒時間(某種家長控制)。我試過timekpr,但它在 Ubuntu 13.10 上不起作用。pam_time不是我要找的…

以下是我在實踐中的情況:

系統中有幾個使用者的賬號,我們稱它們為U1、U2和U3。我想知道他們每個人的活動時間和時間,但是如果 ie U2 不執行任何操作(只是空閒登錄)或在不註銷的情況下鎖定他的帳戶,則不應計入總數他在電腦上花費的時間。如果使用者超過分配給他的帳戶的時間限制,我希望能夠執行 bash 腳本(當他嘗試在某些指定時間使用電腦時也是如此)。

我的電腦作為伺服器工作,因此多個使用者可以同時使用它。使用者無需使用終端即可在圖形模式(Unity、X Window System)下工作。

是否有任何第三方軟體、系統命令、一些建議我可以使用什麼來開發自己的解決方案等等

`w U1` - login informations for example for user U1 you can see in output something like this
User     tty           login@  idle   JCPU   PCPU  what

您也可以製作一個 bash 腳本並放入 crontab 中,例如每天執行幾次,使用變數 w U1、w U2、w U3 並將一些 otput 放入文件中

`/var/run/utmp` - List of current login sessions.


`/var/log/wtmp` - List of previous login sessions
`/var/log/btmp` - List all the bad login attempt

對於限制花費的總時間,我沒有任何答案。但是,根據一天中的幾個小時進行限制pam_time可能是您想要的。

從手冊頁:

  The pam_time PAM module does not authenticate the user, but instead it
  restricts access to a system and or specific applications at various
  times of the day and on specific days or over various terminal lines.
  This module can be configured to deny access to (individual) users
  based on their name, the time of day, the day of week, the service they
  are applying for and their terminal from which they are making their
  request.

引用自:https://unix.stackexchange.com/questions/109148