歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> Linux服務器日志管理詳解(2)

Linux服務器日志管理詳解(2)

日期:2017/3/6 15:13:53   编辑:關於Unix
每次有一個用戶登錄時,login程序在文件lastlog中察看用戶的UID。如果找到了,則把用戶上次登錄、退出時間和主機名寫到標准輸出中,然後login程序在lastlog中紀錄新的登錄時間。在新的lastlog紀錄寫入後,utmp文件打開並插入用戶的utmp紀錄。該紀錄一直用到 每次有一個用戶登錄時,login程序在文件lastlog中察看用戶的UID。如果找到了,則把用戶上次登錄、退出時間和主機名寫到標准輸出中,然後login程序在lastlog中紀錄新的登錄時間。在新的lastlog紀錄寫入後,utmp文件打開並插入用戶的utmp紀錄。該紀錄一直用到用戶登錄退出時刪除。utmp文件被各種命令文件使用,包括who、w、users和finger。

  下一步,login程序打開文件wtmp附加用戶的utmp紀錄。當用戶登錄退出時,具有更新時間戳的同一utmp紀錄附加到文件中。wtmp文件被程序last和ac使用。

  具體命令

  wtmp和utmp文件都是二進制文件,他們不能被諸如tail命令剪貼或合並(使用cat命令)。用戶需要使用who、w、users、last和ac來使用這兩個文件包含的信息。

  who:who命令查詢utmp文件並報告當前登錄的每個用戶。Who的缺省輸出包括用戶名、終端類型、登錄日期及遠程主機。例如:who(回車)顯示

  chyang    pts/0 Aug     18 15:06
  ynguo     pts/2 Aug     18 15:32
  ynguo     pts/3 Aug     18 13:55
  lewis     pts/4 Aug     18 13:35
  ynguo     pts/7 Aug     18 14:12
  ylou     pts/8 Aug     18 14:15

  如果指明了wtmp文件名,則who命令查詢所有以前的紀錄。命令who /var/log/wtmp將報告自從wtmp文件創建或刪改以來的每一次登錄。

  w:w命令查詢utmp文件並顯示當前系統中每個用戶和它所運行的進程信息。例如:w(回車)顯示:3:36pm up 1 day, 22:34, 6 users, load average: 0.23, 0.29, 0.27。

USERTTYFROMLOGIN@ IDLE JCPU PCPUWHATchyang pts/0202.38.68.2423:06pm2:04 0.08s 0.04s-bashynguo pts/2202.38.79.473:32pm0.00s 0.14s 0.05 wlewis pts/3202.38.64.2331:55pm30:39 0.27s 0.22s-bashlewis pts/4202.38.64.2331:35pm6.00s 4.03s 0.01ssh /home/users/ynguo pts/7simba.nic.ustc.e2:12pm0.00s 0.47s 0.24ste.net mailylou pts/8202.38.64.2352:15pm1:09m 0.10s 0.04s-bash
  users:users用單獨的一行打印出當前登錄的用戶,每個顯示的用戶名對應一個登錄會話。如果一個用戶有不止一個登錄會話,那他的用戶名將顯示相同的次數。例如:users(回車)顯示:chyang lewis lewis ylou ynguo ynguo

  last:last命令往回搜索wtmp來顯示自從文件第一次創建以來登錄過的用戶。例如:

  chyang pts/9  202.38.68.242 Tue Aug 1 08:34 - 11:23 (02:49)
  cfan  pts/6  202.38.64.224 Tue Aug 1 08:33 - 08:48 (00:14)
  chyang pts/4  202.38.68.242 Tue Aug 1 08:32 - 12:13 (03:40)
  lewis pts/3   202.38.64.233 Tue Aug 1 08:06 - 11:09 (03:03)
  lewis pts/2   202.38.64.233 Tue Aug 1 07:56 - 11:09 (03:12)

Copyright © Linux教程網 All Rights Reserved