Linux 日誌檔案utmp、wtmp、lastlog、messages

Dus發表於2015-02-23
        1、有關當前登入使用者的資訊記錄在檔案utmp中;==who命令

  2、登入進入和退出紀錄在檔案wtmp中;==w命令

  3、最後一次登入檔案可以用lastlog命令察看;

  4、messages======從syslog中記錄資訊

  注意:wtmp和utmp檔案都是二進位制檔案,他們不能被諸如tail命令剪貼或合併(使用cat命令)。使用者

  需要使用who、w、users、last和ac來使用這兩個檔案包含的資訊。

  例子:
  last命令往回搜尋wtmp來顯示自從檔案第一次建立以來登入過的使用者

  users用單獨的一行列印出當前登入的使用者,每個顯示的使用者名稱對應一個登入會話

  w命令查詢utmp檔案並顯示當前系統中每個使用者和它所執行的程式資訊

  who命令查詢utmp檔案並報告當前登入的每個使用者

  ac命令根據當前的/var/log/wtmp檔案中的登入進入和退出來報告使用者連結的時間(小時)

  utmp檔案,它記錄當前登入進系統的各個使用者; 

  包含下列結構的一個二進位制記錄寫入這兩個檔案中: 
  struct utmp { 
  char ut_line[8]; /* tty line: "ttyh0", "ttyd0", "ttyp0", ... */ 
  char ut_name[8]; /* login name */ 
  long ut_time; /* seconds since Epoch */ 
  }; 

  登入時,login程式填寫這樣一個結構,然後將其寫入到utmp檔案中,同時也將其添寫到wtmp檔案中。登出時, init程式將utmp檔案中相應的記錄擦除(每個位元組都填以0 ),並將一個新記錄添寫到wtmp檔案中。讀wtmp檔案中的該登出記錄,其ut_name欄位清除為0。在系統再啟動時,以及更改系統時間和日期的前後,都在wtmp檔案中添寫特殊的記錄項。who( 1 )程式讀utmp檔案,並以可讀格式列印其內容。後來的UNIX版本提供last( 1 )命令,它讀wtmp檔案並列印所選擇的記錄。wtmp檔案,它跟蹤各個登入和登出事件。

  wted 
  wtmp/utmp日誌編輯程式。你可以使用這個工具編輯所有wtmp或者utmp型別的檔案。

  z2 
  utmp/wtmp/lastlog日誌清理工具。可以刪除utmp/wtmp/lastlog日誌檔案中有關某個使用者名稱的所有條目。不過,如果用於Linux系統需要手工修改其原始碼,設定日誌檔案的位置。

本文出自 “我的世界,我的夢” 部落格,請務必保留此出處http://itshine.blog.51cto.com/648476/489687

相關文章