亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1195 | 回復(fù): 1
打印 上一主題 下一主題

Sysklogd 系統(tǒng)日志記錄器 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2010-03-24 16:34 |只看該作者 |倒序瀏覽
概述
日志對于系統(tǒng)的重要性不言而喻,比如對于故障診斷和入侵檢測,沒有日志幾乎寸步難行。Linux系統(tǒng)當(dāng)中最流行的日志記錄器是 Sysklogd ,當(dāng)前最新版本是 1.5 。

Sysklogd 日志記錄器由兩個守護(hù)進(jìn)程(klogd syslogd)和一個配置文件(syslog.conf)組成。klogd 不使用配置文件,它負(fù)責(zé)截獲內(nèi)核消息,它既可以獨(dú)立使用也可以作為 syslogd 的客戶端運(yùn)行。syslogd 默認(rèn)使用 /etc/syslog.conf 作為配置文件,它負(fù)責(zé)截獲應(yīng)用程序消息,還可以截獲 klogd 向其轉(zhuǎn)發(fā)的內(nèi)核消息。支持 internet/unix domain sockets 的特性使得這兩個工具可以用于記錄本地和遠(yuǎn)程的日志。



重要信息
syslogd 守護(hù)進(jìn)程默認(rèn)情況下并不從 syslog/udp 端口接受任何消息,除非在命令行上使用了"-r"選項。此外,你還應(yīng)當(dāng)仔細(xì)看看"-l"和"-s"命令行選項。
syslogd 守護(hù)進(jìn)程默認(rèn)情況下并不轉(zhuǎn)發(fā)任何來自遠(yuǎn)程主機(jī)的消息,這是為了避免可能導(dǎo)致的日志無限循環(huán)。"-h"選項可以開啟轉(zhuǎn)發(fā)功能。
syslogd 會剝除來自同一個域范圍內(nèi)的主機(jī)中的每條消息中的本地域(local domain)信息。如果你使用了日志分析程序,請將這一特性牢記在心。
syslogd 不會更改任何文件的屬性,所以由它創(chuàng)建的文件將是全局可讀的。如果你不想這樣(比如"auth.*"被進(jìn)行了記錄),你必須手動事先創(chuàng)建這些文件并設(shè)置相應(yīng)的權(quán)限。
如果某些程序發(fā)送了大量的日志消息并且導(dǎo)致硬盤非常忙碌,你可以考慮在每一行后面關(guān)閉fsync()特性。不過這樣可能會導(dǎo)致系統(tǒng)崩潰以后丟失一些日志消息。
如果你使用 init 來直接啟動 klogd 或 syslogd ,那么需要在命令行上使用"-n"選項。
如果 System.map 文件存在并且在 klogd 命令行上使用了"-k"的話,那么它可以解碼 EIP 地址。這個特性對于診斷系統(tǒng)崩潰非常有用,但是你必須確保 System.map 文件正確無誤。
這兩個守護(hù)進(jìn)程都會嘗試在收到退出信號時刪除他們的 .pid 文件,不過如果系統(tǒng)崩潰或者進(jìn)程被"kill -9"結(jié)束,那么可能就會來不及清理。這樣,下次啟動時就有可能會獲得與以前殘留的 .pid 文件中的進(jìn)程號相同的PID,從而導(dǎo)致無法啟動(進(jìn)程號沖突)。解決這個問題的最佳方案是系統(tǒng)的啟動腳本(rc.*)自身能夠在系統(tǒng)啟動的最初就對這些 .pid 文件進(jìn)行清理(通常是清空 /var/run 目錄)。
大文件支持(可以寫入大于 2 GB 的日志)并不是 syslogd 的功能,而是 glibc 的功能(使用不同的內(nèi)核API進(jìn)行調(diào)用)。要啟用大文件支持,你必須將 Makefile 中的相應(yīng)注釋取消(兩個含有"-D_FILE_OFFSET_BITS"的行中的一個)。
內(nèi)核的控制臺日志等級
內(nèi)核的控制臺日志等級控制哪些內(nèi)核消息會在控制臺上顯示。有兩種途徑可以修改這個等級,不過建議的途徑是通過 sysctl 來控制,通常這個設(shè)置位于 /etc/sysctl.conf 中。比如:

  kernel/printk = 4 4 1 7安裝注意事項
仔細(xì)閱讀 README 和 man page 會減少你不少痛苦。目前所有文檔都已經(jīng)放在man page中了。
按照你的需求修改 Makefile 然后再進(jìn)行編譯。如果你沒有認(rèn)真對待第一步,那么可能會編譯出不合格的二進(jìn)制程序。
FSSTND(Linux文件系統(tǒng)標(biāo)準(zhǔn))要求二進(jìn)制文件和其配置文件必須位于不同的目錄。這個包默認(rèn)情況下遵守FSSTND的約定。你可以通過修改 Makefile 文件和源代碼來修改配置文件的位置。
建議讓這兩個守護(hù)進(jìn)程都以root身份運(yùn)行,如果你想了解更多安全方面的問題,請閱讀 man page 。
下面是 Makefile 文件開頭的一部分節(jié)選,這部分是在安裝是可能需要改動的:

CC= gcc
SKFLAGS= $(RPM_OPT_FLAGS) -O3 -DSYSV -fomit-frame-pointer -Wall -fno-strength-reduce
# 啟用大文件支持,根據(jù)你的系統(tǒng)是32位還是64位進(jìn)行選擇
# -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
# -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
# $(shell getconf LFS_SKFLAGS)
LDFLAGS= -s

# 指定 install 程序的位置
INSTALL = /usr/bin/install

# 安裝目錄
BINDIR = $(prefix)/usr/sbin
MANDIR = $(prefix)/usr/share/man

# 有bug報告說在一個純 ELF 系統(tǒng)上需要明確指定連接到 libresolv.a 庫。
# 如果你在連接 syslogd 時失敗,可以試一試取消下面的注釋。
# LIBS = /usr/lib/libresolv.a

# 如果你在 ALPHA 平臺上連接失敗,可以試一試取消下面的注釋。
# LIBS = ${LIBS} -linux

# 取消下面的注釋可以讓 klogd 實現(xiàn)啟動延遲,這在 klogd 和 syslogd 并行啟動或啟動順序靠的非常近的時候很有用。
# KLOGD_START_DELAY = -DKLOGD_DELAY=5

# 下面的定義表示文件位置遵守FSSTND標(biāo)準(zhǔn)。
FSSTND = -DFSSTND

# 下面的定義指定了 man page 的宿主和權(quán)限。
MAN_USER = root
MAN_GROUP = root
MAN_PERMS = 644

# 下面的定義指定了 syslogd 守護(hù)進(jìn)程的 .pid 文件名,
# 源代碼(paths.h)中默認(rèn)的文件名是"syslog.pid",但很多人認(rèn)為應(yīng)當(dāng)叫"syslogd.pid"。
# 你可以在這里指定你喜歡的名字。
SYSLOGD_PIDNAME = -DSYSLOGD_PIDNAME=\"syslogd.pid\"
syslog.conf
syslog.conf 是 syslogd 進(jìn)程的配置文件,將在程序啟動時讀取,默認(rèn)位置是 /etc/syslog.conf 。它指定了一系列日志記錄規(guī)則。規(guī)則的格式如下:

facility.level    action這個配置文件中的空白行和以"#"開頭的行將被忽略。"facility.level"部分也被稱為選擇符(seletor)。 seletor 和 action 之間使用一個或多個空白分隔。

選擇符(seletor)
選擇符由 facility 和 level 兩部分組成,之間用一個句點(diǎn)(.)連接。這兩部分將在后面 syslogd 小節(jié)中詳細(xì)描述。下面提到的名字和 /usr/include/syslog.h 中的 LOG_-values 相一致。

facility 指定了產(chǎn)生日志的子系統(tǒng),可以是下面的關(guān)鍵字之一:

auth                由 pam_pwdb 報告的認(rèn)證活動。
authpriv        包括私有信息(如用戶名)在內(nèi)的認(rèn)證活動
cron                與 cron 和 at 有關(guān)的信息。
daemon                與 inetd 守護(hù)進(jìn)程有關(guān)的信息。
ftp                與 FTP 有關(guān)的信息
kern                內(nèi)核信息,首先通過 klogd 傳遞。
lpr                與打印服務(wù)有關(guān)的信息。
mail                與電子郵件有關(guān)的信息
mark                syslog 內(nèi)部功能用于生成時間戳
news                來自新聞服務(wù)器的信息
syslog                由 syslog 生成的信息
user                由用戶程序生成的信息
uucp                由 uucp 生成的信息
local0 ~ local7        由自定義程序使用,例如使用 local5 做為 ssh 功能
*                通配符代表除了 mark 以外的所有功能
在大多數(shù)情況下,任何程序都可以通過任何 facility 發(fā)送日志消息,但是一般都遵守約定俗成的規(guī)則。比如,只有內(nèi)核才能使用"kern" facility 。

level 指定了消息的優(yōu)先級,可以是下面的關(guān)鍵字之一(降序排列,嚴(yán)重性越來越低):

emerg        系統(tǒng)不可用
alert        需要立即被修改的條件
crit        阻止某些工具或子系統(tǒng)功能實現(xiàn)的錯誤條件
err        阻止工具或某些子系統(tǒng)部分功能實現(xiàn)的錯誤條件
warning        預(yù)警信息
notice        具有重要性的普通條件
info        提供信息的消息
debug        不包含函數(shù)條件或問題的其他信息
none        沒有優(yōu)先級,通常用于排錯
*        除了none之外的所有級別
facility 部分可以是用逗號(,)分隔的多個子系統(tǒng),而多個 seletor 之間也可以通過分號(組合在一起。需要注意的是,多個組合在一起的選擇符,后面的會覆蓋前面的,這樣就允許從模式中排除一些優(yōu)先級。

默認(rèn)將對指定級別以及更嚴(yán)重級別的消息進(jìn)行操作,但是可以通過下面2個操作符進(jìn)行修改。

等于操作符(=)表示僅對這個級別的消息進(jìn)行操作,不等操作符(!)表示忽略這個級別以及更嚴(yán)重級別的消息。這兩個操作符可以同時使用,不過"!"必須出現(xiàn)在"="的前面。

動作(action)
這個字段定義了對符合條件的消息進(jìn)行何種操作,可以選擇下列操作之一:

普通文件
將消息記錄到這個文件中,必須使用絕對路徑。如果在文件名之前加上減號(-),則表示不將日志信息同步刷新到磁盤上(使用寫入緩存),這樣可以提高日志寫入性能,但是增加了系統(tǒng)崩潰后丟失日志的風(fēng)險。
命名管道
在絕對路徑表示的FIFO文件(使用mkfifo命令創(chuàng)建)前加上管道符號(|)即可。通常用于調(diào)試。比如:|/usr/adm/debug
終端或者控制臺
比如:/dev/tty1 或 /dev/console
遠(yuǎn)程主機(jī)
syslogd 能夠?qū)⑾l(fā)送到遠(yuǎn)程主機(jī)或從遠(yuǎn)程主機(jī)接收消息,不過默認(rèn)并不轉(zhuǎn)發(fā)接收到的消息。要將消息發(fā)送到遠(yuǎn)程主機(jī),可以在主機(jī)名前加一個"@"即可。
逗號分隔的用戶名列表
critical 級別的消息除了記錄到日志之外,通常還轉(zhuǎn)發(fā)到root用戶。
所有當(dāng)前登錄的用戶
如果寫上一個星號(*)則表示向當(dāng)前所有登錄的用戶顯示這條消息。
實例
下面的例子來自于實踐,希望能夠?qū)ι厦娴膬?nèi)容做一個很好的示范以幫助理解。

              # 將所有 crit 級別的消息(排除所有內(nèi)核消息)記錄在 critical 文件中
              #
              *.=crit;kern.none            /var/adm/critical

              # 首先記錄所有內(nèi)核消息到 kernel 文件,
              # crit 級別以上的消息轉(zhuǎn)發(fā)到遠(yuǎn)程同時在本地控制臺也顯示
              # 最后將info(包含)~err(不含)范圍的內(nèi)核消息記錄到kernel-info文件(err和更高的級別被忽略)
              #
              kern.*                       /var/adm/kernel
              kern.crit                    @finlandia
              kern.crit                    /dev/console
              kern.info;kern.!err          /var/adm/kernel-info

              # 將恰好等于mail.info的消息顯示在第12個終端(tcpd默認(rèn)使用mail.info)
              #
              mail.=info                   /dev/tty12

              # 將除mail.info之外的所有mail子系統(tǒng)消息記錄到mail文件
              #
              mail.*;mail.!=info           /var/adm/mail

              # 將所有mail.info和news.info消息記錄到info文件
              #
              mail,news.=info              /var/adm/info

              # 記錄所有info和notice級別的消息,來自mail子系統(tǒng)的除外
              #
              *.=info;*.=notice;mail.none  /var/log/messages

              # 記錄所有info級別的消息,來自mail和news子系統(tǒng)的除外
              #
              *.=info;mail,news.none       /var/log/messages

              # 向所有登錄用戶通知emerg級別的消息
              #
              *.=emerg                     *

              # 將所有alert以及更高級別的消息轉(zhuǎn)發(fā)到root,joey用戶的終端上(如果他們已經(jīng)登錄)
              #
              *.alert                      root,joey

              # 將所有子系統(tǒng)的所有消息都發(fā)送到遠(yuǎn)程名為"finlandia"的主機(jī)
              *.*                          @finlandia

                  浦華眾誠培訓(xùn)網(wǎng)技術(shù)學(xué)院 轉(zhuǎn)載

論壇徽章:
34
亥豬
日期:2015-03-20 13:55:11戌狗
日期:2015-03-20 13:57:01酉雞
日期:2015-03-20 14:03:56未羊
日期:2015-03-20 14:18:30子鼠
日期:2015-03-20 14:20:14丑牛
日期:2015-03-20 14:20:31辰龍
日期:2015-03-20 14:35:34巳蛇
日期:2015-03-20 14:35:56操作系統(tǒng)版塊每日發(fā)帖之星
日期:2015-11-06 06:20:00操作系統(tǒng)版塊每日發(fā)帖之星
日期:2015-11-08 06:20:00操作系統(tǒng)版塊每日發(fā)帖之星
日期:2015-11-19 06:20:00黃金圣斗士
日期:2015-11-24 10:43:13
2 [報告]
發(fā)表于 2010-03-24 17:19 |只看該作者
就開過 cron ……
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP