歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

Linux如何使用內置的跟蹤工具last命令

  last是Linux系統內置的跟蹤工具,能夠列出登入用戶的相關信息,通過輸入運行,不需獨立安裝,下面小編將針對last命令的用法給大家做個詳細介紹,以便你有個了解。

  last命令的功能是什麼

  last顯示的是自/var/log/wtmp文件創建起所有登錄(和登出)的用戶。這個文件是二進制文件,它不能被文本編輯器浏覽,比如vi、Joe或者其他軟件。這是非常有用的,因為用戶(或者root)不能像他們希望的那樣修改這個文件。

  last會給出所有已登錄用戶的用戶名、tty、IP地址(如果用戶是遠程連接的話)、日期-時間和用戶已經登錄的時間。

  如何運行last

  你只要在控制台中輸入last即可。這是個例子:

  $ last

  leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)

  pungki tty1 Mon Dec 2 09:31 still logged in

  reboot system boot 2.6.32-358.23.2 Mon Dec 2 09:20 - 13:25 (04:05)

  這裡是如何閱讀last信息:

  第一列告訴誰是用戶

  第二列給出了用戶如何連接的信息

  pts/0 (偽終端) 意味著從諸如SSH或telnet的遠程連接的用戶

  tty (teletypewriter) 意味著直接連接到計算機或者本地連接的用戶

  除了重啟活動,所有狀態會在啟動時顯示

  第三列顯示用戶來自哪裡。如果用戶來自於遠程計算機,你會看到一個主機名或者IP地址。如果你看見:0.0 或者什麼都沒有,這意味著用戶通過本地終端連接。除了重啟活動,內核版本會顯示在狀態中。

  剩下的列顯示日志活動發生在何時。括號中的數字告訴我們連接持續了多少小時和分鐘。

  日常操作中last的一些示例

  限制顯示行的數目

  當你有很多行要顯示時,你可以限制你想看到的行的數目。使用 -n 參數來這麼做。

  $ last -n 3

  leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)

  pungki tty1 Mon Dec 2 09:31 still logged in

  reboot system boot 2.6.32-358.23.2 Mon Dec 2 09:20 - 13:25 (04:05)

  -n 參數會使last顯示從當前時間到以後的3條記錄。

  不顯示主機名

  使用 -R 參數來這麼做。這裡是例子 :

  $ last -R

  leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53)

  pungki tty1 Mon Dec 2 09:31 still logged in

  reboot system boot Mon Dec 2 09:20 - 13:25 (04:05)

  如你所見,現在在也沒有關於主機或者IP地址的信息了。

  最後一列顯示主機名

  要這麼做,我們使用 -a參數

  $ last -a

  leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53) 10.0.76.162

  pungki tty1 Mon Dec 2 09:31 still logged in :0.0

  reboot system boot Mon Dec 2 09:20 - 13:25 (04:05) 2.6.32-358.23.2.el6.i686

  現在主機信息諸如10.0.76.162 會放在最後一列。

  顯示完整登入登出時間日期

  對於此,你可以使用 -F 參數。這個是個示例:

  $ last -F

  leni pts/0 10.0.76.162 Mon Dec 2 12:32:24 2013 – Mon Dec 2013 13:25:24 2013 (00:53)

  打印特定的用戶名

  如果你想要追蹤特定的用戶,你可以特別打印它。在last命令後面輸入用戶名。

  $ last leni

  leni tty1 Mon Dec 2 18-42 still logged in

  leni pts/0 Mon Dec 2 12:32 - 13:25 (00:53) 10.0.76.162

  或者你想要知道reboot何時完成,你也可以這樣顯示它:

  $ last reboot

  reboot system boot Mon Dec 2 09:20 - 16:55 (07:34)

  reboot system boot Sun Dec 1 04:26 - 04:27 (00:01)

  reboot system boot Wed Nov 27 20:27 - 01:24 (04:57)

  reboot system boot Tue Nov 26 21:06 - 06:13 (09:06)

  打印特定 / pts

  last同樣可以打印特定tty/pts的信息。 只要在last命令後面輸入tty名字或者pty名字。

  這裡有一些例子:

  $ last tty1

  pungki tty1 Mon Dec 2 09:31 still logged in

  pungki tty1 Mon Dec 2 04:26 – down (00:00)

  pungki tty1 Mon Dec 2 04:07 – down (00:00)

  pungki tty1 Sun Dec 1 18:55 – 04:07 (09:12)

  $ last pts/0

  leni pts/0 10.0.76.162 Mon Dec 2 12:32 - 13:25 (00:53)

  pungki pts/0 :0.0 Wed Nov 27 20:28 – down (04:56)

  當你看到 down 的值 - 比如上面的第二行,它意味著用戶從某個時間登錄直到系統重啟或關機。

  使用另一個文件而不是 /var/log/wtmp

  默認上,last命令會從/var/log/wtmp中解析信息。如果你想要last命令從另外一個文件解析,你可以使用-f 參數。比如,當日志切割後,讓我們假設切割後,之前的文件名變為/var/log/wtmp.1。那麼last命令會像這樣。

  $ last -f /var/log/wtmp.1

  顯示運行級別改變

  這裡有個-x參數來顯示運行級別。這裡示例輸出:

  pungki tty1 Mon Dec 2 19:21 still logged in

  runlevel (to lvl 3) 2.6.32-358.23.2 Mon Dec 2 19:20 – 19:29 (00:08)

  reboot system boot 2.6.32-358.23.2 Mon Dec 2 19:20 – 19:29 (00:08)

  shutdown system down 2.6.32-358.23.2 Mon Dec 2 18:56 – 19:20 (00:23)

  runlevel (to lvl 0) 2.6.32-358.23.2 Mon Dec 2 18:56 – 18:56 (00:00)

  leni tty1 Mon Dec 2 18:42 – down (00:00)

  你可以看到這裡有兩個運行級別。運行級別to lvl 3的條目意味著系統運行在完整的控制台模式,而沒在X window或者GUI中。同時,當系統關機時,實際上是切換為運行級別0,這就是為什麼last會顯示to lvl 0。

  查看失敗登錄

  last命令用了記錄成功登錄,而 lastb 命令記錄失敗的登錄嘗試。你必須擁有root權限才能運行lastb命令。這裡有一個lastb命令的示例輸出。lastb會解析/var/log/btmp的信息。

  # lastb

  leni tty1 Mon Dec 2 22:12 – 22:12 (00:00)

  rahma tty1 Mon Dec 2 22:11 – 22:11 (00:00)

  切割日志

  因為/var/log/wtmp記錄每次的登錄活動,文件的大小可能會快速地增長。默認上,Linux會每月切割 /var/log/wtmp/。切割的策略放在/etc/logrotate.conf 文件中。這裡是我/etc/logrotate.conf*文件的內容。

  /var/log/wtmp {

  monthly

  create 0664 root umtp

  minsize 1M

  rotate 1

  }

  對於 /var/log/btmp, 這裡是默認的倒換活動配置

  /var/log/btmp {

  missingok

  monthly

  create 0600 root umtp

  minsize 1M

  rotate 1

  }

  你可以根據需要自己修改。

  總結

  你可以結合這些參數來自定義last和lastb的輸出。所有可以運行於last命令的參數都可運行在lastb命令上。更多細節,請通過在控制台輸入man last來訪問。

  上面就是Linux使用last命令的介紹了,通過last命令,你能夠限制顯示行的數目,顯示用戶登入登出的時間日期,查看失敗登錄等。

Copyright © Linux教程網 All Rights Reserved