/var/admin/wtmp文件記錄所有用戶的登陸信息,隨着時間會增長到很大,/var/adm/wtmp文件太大該怎麼辦呢?
先來看看/var/adm/wtmp文件的屬性:
testterm1:/#ls -l /var/adm/wtmp
-rw-rw-r-- 1 adm adm 5184 Aug 03 15:47 /var/adm/wtmp
由上可知,/var/adm/wtmp屬主爲adm用戶,屬adm組,權限爲664。
查看/var/adm/wtmp文件類型:
testterm1:/#file /var/adm/wtmp
/var/adm/wtmp: data or International Language text
1、如果不需要保存所有用戶的登陸信息,可以把/var/adm/wtmp文件清零
testterm1:/#cat /dev/null > /var/adm/wtmp
testterm1:/#ls -l /var/adm/wtmp
-rw-rw-r-- 1 adm adm 0 Aug 03 23:17 /var/adm/wtmp
由上可知,/var/adm/wtmp文件大小爲“0”字節。
以下命令同樣能把/var/adm/wtmp文件大小清零:
testterm1:/#cp /dev/null /var/adm/wtmp
或者:
testterm1:/# > /var/adm/wtmp #“>”後面跟一個空格。
2、如果爲以後審計等原因需要保留所有用戶的登陸信息,可以把/var/adm/wtmp文件備份,然後再清零
testterm1:/#cp /var/adm/wtmp /var/adm/wtmp.bak
testterm1:/#cat /dev/null > /var/adm/wtmp
3、如何查看/var/adm/wtmp文件
因/var/adm/wtmp是二進制格式文件,使用cat或vi命令查看顯示亂碼,需把/var/adm/wtmp文件轉換成ASCII碼格式文件:
testterm1:/#/usr/sbin/acct/fwtmp </var/adm/wtmp > /var/adm/wtmp.log
testterm1:/#file /var/adm/wtmp.log
/var/adm/wtmp.log: commands text
testterm1:/#cat /var/adm/wtmp.log
pts/1 pts/1 6 20240 0000 0000 1186155102 localhost Fri Aug 3 23:31:42 BEIST 2007
root pts/1 pts/1 7 20240 0000 0000 1186155107 localhost Fri Aug 3 23:31:47 BEIST 2007
pts/1 pts/1 8 20240 0000 0000 1186155111 Fri Aug 3 23:31:51 BEIST 2007
同樣可以把已轉換成ASCII碼格式文件/var/adm/wtmp.log再轉換回/var/adm/wtmp二進制格式文件:
testterm1:/#rm /var/adm/wtmp
testterm1:/#/usr/sbin/acct/fwtmp -ic < /var/adm/wtmp.log > /var/adm/wtmp
testterm1:/#ls -l /var/adm/wtmp
-rw-r--r-- 1 root system 1944 Aug 03 23:36 /var/adm/wtmp
testterm1:/#file /var/adm/wtmp
/var/adm/wtmp: data or International Language text
testterm1:/#chown adm:adm /var/adm/wtmp
testterm1:/#chmod 664 /var/adm/wtmp
testterm1:/#ls -l /var/adm/wtmp
-rw-rw-r-- 1 adm adm 1944 Aug 03 23:36 /var/adm/wtmp
testterm1:/#cat /var/adm/wtmp
pts/1pts/1OF矹^localhostrootpts/1pts/1OF矹clocalhostpts/1pts/1F矹gtestterm1:/#
由上可知,當用cat顯示二進制格式文件/var/adm/wtmp時,結果顯示亂碼。