shell學習:Linux系統日誌的相關命令、檔案和管理工具
日誌檔案是Linux系統維必不可少的部分,日誌檔案會隨著時間的推移變的越來越大,需要使用一種被稱為輪替的技術來限制日誌的體積,一旦超過了限制的大小,就對它的內容進行抽取,同時將日誌檔案中的舊條目儲存到歸檔檔案中,以便日後的查閱。
logrotate命令
logrotate命令是一個日誌檔案管理工具,能夠將日誌檔案的大小限制在給定的範圍之內,各種應用程式會將資訊新增到日誌檔案中,最新新增的資訊總是儲存在日誌檔案的尾部,logrotate根據配置檔案掃描特定的日誌檔案。
logrotate的配置目錄位於/etc/logrotate.d/,這個目錄中已經包含了還能多其他程式的日誌檔案配置,開啟就可以發現。
logrotate命令示例
【示例】建立一個日誌檔案配置:
cat /etc/logrotate.d/test /var/log/test.log { missingok notifempty size 30k commpress weekly rotate 5 create 0600 root root }
以上是全部配置,其中/var/log/test.log是指定了日誌檔案路徑,舊的日誌檔案歸檔之後也放在同一個目錄下,引數解釋:
missingok
如果日誌檔案丟失,則忽略,然後返回(不對日誌檔案進行輪替)。notifempty
僅當源日誌檔案非空時才會對其進行輪替。size 30k
限制實施輪替的日誌檔案的大小,可以用1M表示1MB。commpress
允許用gzip對較舊的日誌進行壓縮。weekly
指定進行輪替的時間間隔,可以是weekly、yearly、daily。rotate 5
需要儲存的就日誌歸檔數量,這裡是5,歸檔後的檔名將會是test.log.1.gz、test.log.2.gz....create 0600 root root
指定所要建立的歸檔檔案的模式、使用者、使用者組。
logrotate命令引數
引數 | 功能 |
---|---|
compress | 通過gzip壓縮轉儲以後的日誌。 |
nocompress | 不需要壓縮時,用這個引數。 |
copytruncate | 用於還在開啟中的日誌檔案,把當前日誌備份並截斷。 |
nocopytruncate | 備份日誌檔案但是不截斷。 |
create mode owner group | 轉儲檔案,使用指定的檔案模式建立新的日誌檔案。 |
nocreate | 不建立新的日誌檔案。 |
delaycompress和compress | 一起使用時,轉儲的日誌檔案到下一次轉儲時才壓縮。 |
nodelaycompress | 覆蓋delaycompress選項,轉儲同時壓縮。 |
errors address | 專儲時的錯誤資訊傳送到指定的Email地址。 |
ifempty | 即使是空檔案也轉儲,這個是logrotate的預設選項。 |
notifempty | 如果是空檔案的話,不轉儲。 |
mail address | 把轉儲的日誌檔案傳送到指定的E-mail地址。 |
nomail | 轉儲時不傳送日誌檔案。 |
olddir directory | 轉儲後的日誌檔案放入指定的目錄,必須和當前日誌檔案在同一個檔案系統。 |
noolddir | 轉儲後的日誌檔案和當前日誌檔案放在同一個目錄下。 |
prerotate/endscript | 在轉儲以前需要執行的命令可以放入這個對,這兩個關鍵字必須單獨成行。 |
postrotate/endscript | 在轉儲以後需要執行的命令可以放入這個對,這兩個關鍵字必須單獨成行。 |
daily | 指定轉儲週期為每天。 |
weekly | 指定轉儲週期為每週。 |
monthly | 指定轉儲週期為每月。 |
rotate count | 指定日誌檔案刪除之前轉儲的次數,0指沒有備份,5指保留5個備份。 |
tabootext [+] list | 讓logrotate 不轉儲指定副檔名的檔案,預設的副檔名是:.rpm-orig, .rpmsave, v, 和 ~。 |
size size功能 | 當日志文件到達指定的大小時才轉儲,Size 可以指定 bytes (預設)以及KB (sizek)或者MB (sizem)。 |
用syslog記錄日誌
日誌檔案有助於幫助我們推斷系統出現的故障,因此在系統管理中要善於分析日誌,在編寫指令碼、程式時,應當將程式執行過程記錄在日誌檔案中。syslog日誌配置檔案位置:/etc/syslog.conf
日誌的級別
日誌的級別分為七級,從緊急程度由高到底:
emerg
系統已經不可用,級別為緊急。alert
警報,需要立即處理和解決。crit
既將發生,得需要預防,事件就要發生。warnig
警告。err
錯誤資訊,普通的錯誤資訊。notice
提醒資訊,很重要的資訊。info
通知資訊,屬於一般資訊。debug
這是除錯類資訊。
系統常見重要日誌
/var/log/boot.log
系統引導事件,就是開機自檢過程資訊。/var/log/messages
釋出核心啟動資訊。/var/log/audit/audit.log
使用者認證日誌。/var/log/dmesg
系統啟動資訊。/var/log/cron
該日誌檔案記錄crontab守護程序crond所派生的子程序的動作。/var/log/maillog
記錄了傳送到系統或從系統發出的郵件。/var/log/xferlog
FTP會話日誌,記錄使用者向FTP伺服器或從伺服器拷貝了什麼檔案。/var/log/kernlog
核心訊息,預設沒有開啟。需要在/etc/syslog.conf
檔案中開啟。/var/log/Xorg.0.log
X-Window服務日誌。
使用者登入情況
/var/log/lastlog
記錄最近成功登入事件和最後一次登入失敗事件,由login生成。/var/log/wtmp
永久記錄每個使用者登入、登出及系統的啟動、停機事件。/var/run/utmp
當前登入使用者資訊。隨著使用者登入登出不斷變化,只保留當時聯機的使用者記錄,不永久保留。
logger命令
在/var/log
中建立並寫入日誌資訊是由syslog協議處理的,是由守護程序sylogd負責執行。每個標準的程序都可以用syslog記錄日誌。可以使用logger
命令通過syslogd記錄日誌。
【示例】要向syslog檔案/var/log/messages
中記錄日誌資訊:
logger this is a test log line
輸出:
tail -n 1 messages
Jan 5 10:07:03 localhost root: this is a test log line
如果要記錄特定的標記(tag)可以使用:
logger -t TAG this is a test log line
輸出:
tail -n 1 messages
Jan 5 10:37:14 localhost TAG: this is a test log line
相關推薦
shell學習:Linux系統日誌的相關命令、檔案和管理工具
日誌檔案是Linux系統維必不可少的部分,日誌檔案會隨著時間的推移變的越來越大,需要使用一種被稱為輪替的技術來限制日誌的體積,一旦超過了限制的大小,就對它的內容進行抽取,同時將日誌檔案中的舊條目儲存到歸檔檔案中,以便日後的查閱。 logrotate命令 logrotat
Linux系統下python學習筆記——Linux系統資訊相關命令
系統資訊相關命令 目的:主要是為了方便通過遠端終端維護伺服器時,檢視伺服器上當前的 系統日期 和 時間/磁碟空間佔用情況/ 程式執行情況。基本都是查詢命令,通過這些命令可以對系統資源的使用情況有個瞭解。 1、時間和日期 date&nbs
linux系統日誌的介紹、檢視和儲存
幾個關於日誌檔案的介紹 Linux使用者登入記錄日誌和相關檢視命令彙總:https://blog.csdn.net/jsd2honey/article/details/78404337 linux系統日誌的介紹、檢視和儲存:https://blog.csdn.net/hh5820/article/deta
學習筆記:Linux系統網絡命令常用匯總
services 統計 ant 查看本機 modprobe tun 所有 自動 使用 在Linux系統,DNS 主機 IP 的設定在 /etc/resolv.conf 文件裏確認Linux 核心是否捕捉到網絡卡:指令 demesg | grep -in eth或者透過
Linux系統下python學習筆記——Linux系統使用者許可權命令
1、基本概念 使用者是Linux系統工作中重要的一環,使用者管理包括使用者與組管理。在Linux系統中,不論是由本機或是遠端登入系統,每個系統都必須擁有一個賬號,並且對於不同的系統資源擁有不同的使用許可權。在Linux中,可以指定每一個使用者針對不同的檔案或者目錄的不同許可權。 對檔案/目錄
linux系統使用vi命令進入檔案後修改儲存資料
以下是VI有關檔案修改與儲存的命令:插入命令i 在當前位置生前插入I 在當前行首插入a 在當前位置後插入A 在當前行尾插入o 在當前行之後插入一行O 在當前行之前插入一行查詢命令/text 查詢text,按n健查詢下一個,按N健查詢前一個。?text 查詢text,反向
linux--系統中的簡單分區和管理
分盤 分區 磁盤一、添加文件系統空間簡單分區和文件系統1.認識1> 存儲是每個計算機系統的基本需求。 Red Hat EnterpriseLinux 提供了一些強大的工具 , 它們能在大量的場景中管理多種類型的存儲設備2> disk 是用於管理磁盤分區的實用程序。您可以通過選擇 -l選項和指定磁
在Linux系統上安裝JDK、MySQL和Tomcat
很多初次接觸Linux系統的人不太清楚JDK、MySQL和Tomcat的安裝,在這裡我做一個簡要的步驟,希望可以幫到你們。 安裝之前你要確保你已經安裝過遠端連線工具,遠端連線工具是為了將JDK、MyS
Linux基本命令、檔案目錄管理
任務:2.1-2.13 目錄結構,檔案系統,檔案型別,相對和絕對路徑,環境變數PATH,ls, cd, alias, mkdir, rmdir, cp, mv, cat, more, less, head, tail。 目錄結構 Linux的檔案和磁
《Linux學習並不難》Linux字符界面(4):重啟Linux系統之reboot命令
Linux 重啟 3.4 《Linux學習並不難》Linux字符界面(4):重啟Linux系統之reboot命令reboot的工作過程與halt相似,不過reboot是引發計算機重啟﹐而halt是引發計算機關閉。它的選項與halt相似。命令語法:reboot [選項] 命令中各選項的含義如
《Linux學習並不難》Linux字符界面(2):關閉和重啟Linux系統之shutdown命令
Linux shutdown 關機 3.2 《Linux學習並不難》Linux字符界面(2):關閉和重啟Linux系統之shutdown命令shutdown命令可以安全地關閉或重啟Linux系統,有些用戶會使用直接斷掉電源的方式來關閉計算機,這是十分危險的。Linux系統與Windows不同,其
Linux學習(五)——系統資訊相關命令
系統資訊相關命令 本節內容主要是為了方便通過遠端終端維護伺服器時,檢視伺服器上當前 系統日期和時間 / 磁碟空間佔用情況 / 程式執行情況 本小結學習的終端命令基本都是查詢命令,通過這些命令對系統資源的使用情況有個瞭解 目標 時間和日期 date
linux基礎(七)----linux命令系統學習----系統安全相關命令
系統安全相關命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo、ps、who; 雖然Linux和Windows NT/2000系統一樣是一個多使用者
Linux學習筆記:Linux系統的進程調度(任務調度)
任務 調度 今天我們學習了Linux系統的進程調度,進程調度是為了在未來某個時間點,讓系統自動執行我們事先編寫好的命令或腳本的列表,從而使得即使用戶不在計算機旁邊也可以按時完成任務。這樣有利於我們更好的進行任務計劃以及在需要執行任務的時候自動完成我們設定好的命令,從而完成任務。 當然為
第一次項目上Linux服務器(三:安裝Tomcat及相關命令)
切換 總結 情況 xshel TP tomcat日誌 跟蹤 src down 一、下載Tomcat 去官網:http://tomcat.apache.org/ 找到要下載的Tomcat 本人下載的是apache-tomcat-8.5.29.tar.gz,百
Linux系統下python學習筆記——Linux系統其他命令
Linux系統其他命令 一、查詢檔案 find 通常用來在特定目錄下搜尋符合條件的檔案 find [路徑] -name "*.py" 查詢指定路徑下副檔名是.py的檔案,包括子目錄(*為萬用字元) 如果省略路徑,表示在當前資料夾下查
Linux系統下python學習筆記——Linux系統遠端管理命令
Linux系統遠端管理常用命令 一、關機/重啟shutdown 格式:shutdown 選項 時間 選項:-r :重新啟動 時間:now(立刻關閉) 22:45 +10(十分鐘之後執行 ) 不指定選項和引數,預設一分鐘之後關閉電腦 遠端維護伺服器時,
linux系統時間相關的命令
1.uptime命令 輸出:16:11:40 up 59 days, 4:21, 2 users, load average: 0.00, 0.01, 0.00 2.檢視/proc/uptime檔案計算系統啟動時間 cat /proc/uptime 輸出: 5113396.94 5759
Redis學習(一):Linux系統環境下安裝及編譯Redis
一、簡介 Redis(Remote Dictionary Server)是由義大利人Salvatore Sanfilippo(網名:antirez)開發的一款記憶體快取記憶體資料庫。它是一個key-value儲存系統,它支援豐富的資料型別,如:String
nmcli 命令:Linux 系統的命令列網路管理器
要想在 Linux 命令下對網路進行相關設定,總的來說不外乎兩類方法:其一乃寫配置檔案,如 /etc/network/interfaces 進行網路介面配置,其二直接在終端呼叫 Linux 網路管理命令,在終端間接同文件打交道。 首先為大家所熟知的,ifconfig 命令和 iwconf