在 ssh 登入上執行腳本

在 ssh 登入上執行腳本

我有一個開發環境。有 4 個用戶,我希望能夠記錄他們的登入時間,因為他們是在家工作的承包商。

我不知道該怎麼做,我的系統管理員這個週末離開了我,我在這裡迷路了。我希望每天能夠僅在首次登入時運行腳本或命令。如果可能的話,當他們註銷時。

例子:

今天@ 上午8 點user1 登入:執行指令/path/command.sh 今天@ 上午9 點user2 登入:今天執行指令/path/command.sh @ 下午2 點user1 今天登出@ 下午3 點user1 登入:今天什麼都不做@ 下午4 點user1 登入(第二個 shell 視窗):什麼都不做等...

我想我可以使用 .profile 文件,但我不確定,謝謝

在 ubuntu 伺服器 12.04 上運行

答案1

要追蹤他們登入的時間,您無需執行任何操作。該last命令會告訴您他們何時登錄,甚至是一周半後。 IT 也會告訴您他們何時註銷,您可能會發現這很有用。

至於運行命令,您可以使用該.profile文件,但最大的問題是許多程式設計師會修改該文件以設定他們喜歡的環境,這可能會消除您的更改。請不要告訴他們他們不能這樣做 - 透過點文件設定個人環境只是工作的一部分。你充其量看起來在技術上缺乏經驗,我們不會討論最糟糕的部分。

老實說,我建議尋找另一種方法來透過執行該命令來完成您正在做的事情。這是人事/社會學/管理問題,試圖透過技術手段解決這些問題…不好。而且,正如 @Vinz 指出的那樣,僅在他們登入時進行記錄並不意味著您可以獲得有關他們正在做的工作的有用資訊。

答案2

您可以使用幾個簡單的命令來查看它們目前正在執行的操作。

  • 最新紀錄#查看上次登入時間
  • 世界衛生組織#查看目前有誰連接到該機器
  • ps -U 使用者名稱#顯示他們正在使用哪些進程
  • lsof | grep 使用者名稱 #顯示他們正在使用哪些字段

但這看起來更像是管理問題,甚至可能是信任問題?

相關內容