RHEL 6 8 printk列印到虛擬終端

2021-08-07 17:45:42 字數 1629 閱讀 1194

linux核心通過 printk() 輸出的資訊具有日誌級別,核心中共提供了八種不同的日誌級別,

在 linux/kernel.h 中有相應的巨集對應。

#define kern_emerg    "<0>"    /* system is unusable */

#define kern_alert    "<1>"    /* action must be taken immediately */

#define kern_crit     "<2>"    /* critical conditions */

#define kern_err      "<3>"    /* error conditions */

#define kern_warning  "<4>"    /* warning conditions */

#define kern_notice   "<5>"    /* normal but significant */

#define kern_info     "<6>"    /* informational */

#define kern_debug    "<7>"    /* debug-level messages */    

通過讀寫/proc/sys/kernel/printk檔案可以讀取、修改控制台的日誌級別。

檢視這個檔案:

cat /proc/sys/kernel/printk 

上面顯示的數字:6、7、1、6分別對應控制台日誌級別、預設的訊息日誌級別、最低的控制台日

志級別和預設的控制台日誌級別。

下面介紹一下linux下日誌管理,linux下的日誌採用先分類,然後在每個類別下分級的管理模式。

主要的七種日誌分類:

名稱含義

authpriv

安全認證相關

cron

at和cron定時任務相關

deamon

定時任務相關

kern

核心產生

lpr列印系統產生

mail

郵件系統產生

syslog

日誌服務本身

八種日誌級別(按照由低到高順序排列):

級別含義

debug

排錯資訊

info

正常資訊

notice

稍微要注意的

warn

警告err(error)

錯誤crit(critical)

關鍵的錯誤

alert

警報警惕

emerg(emergence)

緊急突發事件

在rhel6中日誌由系統服務rsyslog進行管理和控制。最小化安裝rhel6後,rsyslog服務預設是開啟的。

chkconfig --list | grep rsyslog

rsyslog         0:off   1:off   2:on    3:on    4:on    5:on    6:off

配置檔案/etc/rsyslog.conf,管理了日誌列印的相應配置。

若想printk列印到虛擬終端,需配置:

kern.alert      -/dev/pts/0

便會將printk列印的訊息輸出到虛擬終端0上。

printk列印等級

預設等級 cat proc sys kernel printk 7 4 1 7 一次性修改等級 echo 5 4 1 7 proc sys kernel printk 例子 假設當 proc sys kernel printk 中的列印等級為 4 4 1 7時 printk kern emerg k...

更改printk列印級別

1 檢視當前控制台的列印級別 cat proc sys kernel printk 4 4 1 7 其中第乙個 4 表示核心列印函式printk的列印級別,只有級別比他高的資訊才能在控制台上列印出來,既 0 3級別的資訊 2 修改列印 echo 新的列印級別 4 1 7 proc sys kerne...

更改printk列印級別

1 檢視當前控制台的列印級別 cat proc sys kernel printk 4 4 1 7 其中第乙個 4 表示核心列印函式printk的列印級別,只有級別比他高的資訊才能在控制台上列印出來,既 0 3級別的資訊 2 修改列印 echo 新的列印級別 4 1 7 proc sys kerne...