新聞中心
比較Unix和linux的歷史命令記錄
目前創(chuàng)新互聯(lián)公司已為上1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、羅山網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
這里使用的unix版本是sun的solaris9,linux版本是centos5.5,比較二者歷史命令記錄的一些異同點(diǎn)來。
Solaris有個(gè)極為有用的記賬功能,通過設(shè)置日志文件對(duì)每個(gè)用戶的每一條命令進(jìn)行記錄,這一功能默認(rèn)是不開啟的,為了打開它,需要執(zhí)行/usr/lib/acct/目錄下的accton文件,格式如下:/usr/lib/acct/accton /var/adm/pact。在sun手冊(cè)上,只有這一種用法,但這樣的缺點(diǎn)是明顯的,大多數(shù)有經(jīng)驗(yàn)的***者一定不會(huì)放過/var/adm和/var/log這兩個(gè)目錄,發(fā)現(xiàn)pacct文件,會(huì)獲取root用戶的命令歷史記錄,同時(shí)又可以刪除自己的記錄。這種情況其實(shí)有個(gè)很好的解決辦法,執(zhí)行/usr/lib/acct/accton,后面跟一個(gè)別的目錄和文件即可。如下面:/usr/lib/acct/accton /home/log/commandlog。管理員想查看記錄時(shí),只要把commandlog這個(gè)文件拷貝到/var/adm下,改為pacct,使用命令lastcomm命令就可以查看記錄了。如果想關(guān)閉,輸入/usr/lib/acct/accton.即可。
Linux下也有命令歷史記錄,默認(rèn)下用戶輸入的命令會(huì)被記錄在~/.bash_history(以默認(rèn)bash為例),可以用命令history來查看,每個(gè)用戶的命令歷史記錄都記錄在各自的文件里。
現(xiàn)在來說說說二者的不同,solaris里面是用syslogd來實(shí)現(xiàn)的記賬功能,記錄的每個(gè)用戶的每個(gè)命令,所有記錄都在同一個(gè)文件里,用lastcomm查看時(shí),能看到執(zhí)行命令的用戶和時(shí)間,但沒有記錄命令的參數(shù)。
Linux中的命令歷史記錄是由bash(以bash為默認(rèn)shell)來完成的,記錄是各自用戶的每個(gè)命令,并且記錄了命令的參數(shù),但默認(rèn)是沒有顯示執(zhí)行命令的時(shí)間的,可以通過設(shè)置,讓history命令顯示命令執(zhí)行的時(shí)間。如下面的設(shè)置:
# vi /etc/bashrc
添加下面三行
#讓系統(tǒng)記錄每條歷史命令的執(zhí)行時(shí)間。注意最后的"號(hào)前面要放個(gè)空格
export HISTTIMEFORMAT=""%Y-%m-%d_%H:%M:%S "
#設(shè)置保存歷史命令的文件大小
export HISTFILESIZE=1000000
#保存歷史命令條數(shù)
export HISTSIZE=2000
保存退出
執(zhí)行命令 source /etc/bashrc使配置立即生效。
網(wǎng)頁(yè)名稱:比較Unix和linux的歷史命令記錄
鏈接分享:http://www.dlmjj.cn/article/gghcph.html