免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
linux 一些啟動服務(wù)配置詳解

init 服務(wù)

init 進程是所有進程的發(fā)起者和控制者。因為在任何基于 Unix 的系統(tǒng)(比如 linux)中,它都是第一個 運行的進程,所以 init 進程的編號(Process ID,PID)永遠是 1。如果 init 出現(xiàn)了問題,系統(tǒng)的其余部分 也就隨之而垮掉了。

init 進程有兩個作用。第一個作用是扮演終結(jié)父進程的角色。因為 init 進程永遠不會被終止,所以系統(tǒng) 總是可以確信它的存在,并在必要的時候以它為參照。如果某個進程在它衍生出來的全部子進程結(jié)束之前 被終止,就會出現(xiàn)必須以 init 為參照的情況。此時那些失去了父進程的子進程就都會以 init 作為它們的父 進程??焖賵?zhí)行一下 ps -af 命令,可以列出許多父進程 ID(Parent Process ID,PPID)為 1 的進程來。

init 的第二個角色是在進入某個特定的運行級別(Runlevel)時運行相應(yīng)的程序,以此對各種運行級別 進行管理。它的這個作用是由/etc/inittab 文件定義的。

1. /etc/inittab 文件

/etc/inittab 文件中包括了所有 init 啟動運行級別所必須的信息。這個文件中的每一行語句的格式如下所 示:

id : runlevels: action : process

注意:以#開始的語句是注釋語句??纯茨阕约旱?etc/inittab 文件就可以發(fā)現(xiàn)其中充斥了大量的注釋語句。 如果確實需要對/etc/inittab 文件進行什么改動(一般不會出現(xiàn)這種情況的),記住加上一些注釋語句,解釋 為什么要做那些修改。

2. Telinit命令

通知 init 在什么時候切換系統(tǒng)運行級別的神秘力量實際上就是 Telinit 命令。這個命令有兩個命令行參數(shù): 一個參數(shù)用來通知 init 準備切換過去的運行級別;另外一個是 -tsec,其中的 sec 是在通知 init 之前需要等 待的、以秒計算的時間。

注意:init 是否真的切換運行級別是由它自己決定的。很明顯,它經(jīng)常切換,否則這個命令就不會那么有 用了。在大多數(shù) Unix 操作系統(tǒng)的具體實現(xiàn)(包括 linux)中,Telinit命令實際上只是一個對 init 程序的符號 鏈接?;诖?,許多人更喜歡使用 init 直接切換到他們想去的運行級別而不是使用 Telinit。就個人而言, 我發(fā)現(xiàn)使用 Telinit切換運行級別更便于理解和記憶。

inetd 進程

inetd 程序是一個守護進程。您可能已經(jīng)知道守護進程是一些特殊的程序:它們在被啟動之后,自愿放 棄對調(diào)用自己終端的控制權(quán)。守護進程與系統(tǒng)其余部分的接口只有依靠進程間通信( Interprocess Communication,IPC)通道、或者依靠向系統(tǒng)全局性日志文件(Log File)才能發(fā)送數(shù)據(jù)項。

inetd 的角色是作為 Telnet和 FTP 等與網(wǎng)絡(luò)服務(wù)器相關(guān)的進程的“超級服務(wù)器”。這是一個簡單的道理: 并不是全部的服務(wù)器進程(包括那些接受新的 Telnet和 FTP 連接的進程)都會如此頻繁地被調(diào)用,以至于 必須要有一個程序隨時運行在內(nèi)存中。因此為了避免出現(xiàn)可能有幾十種服務(wù)都運行在內(nèi)存中準備被使用的 情況,它們都列在 inetd 的配置文件/etc/inetd.conf 中。而代替它們的是 inetd 監(jiān)聽著進入的連接。這樣只

需要有一個進程在內(nèi)存中就可以了。

inetd 的另外一個優(yōu)點是程序員并不想把需要網(wǎng)絡(luò)連接的進程都編寫到系統(tǒng)中去。inetd 程序?qū)⑻幚砭W(wǎng)絡(luò)

代碼,并把進入的網(wǎng)絡(luò)數(shù)據(jù)流作為各個進程的標準輸入( Standard-In,即 Stdin)傳遞到其中。這些進程 的輸出(Stdout)將會被送回連接到該進程的主機去。

注意:除非你正在進行編程,否則是不需要連接到 inetd 的 Stdin/Stdout 功能上。從另一方面來說,如 果有人打算編寫一個簡單的命令腳本程序并讓它出現(xiàn)在網(wǎng)絡(luò)中,就值得深入研究這個極為強大的功能。

1.etc/inetd.conf 文件

etc/inetd.conf 文件是 inetd 的配置文件。它的結(jié)構(gòu)很簡單:每一行語句代表一種服務(wù)。服務(wù)定義語句

的格式如下所示:

srvce_name sock_type protocol [no]wait user srvr_prog srvr_prog_args 2.安全性與 inetd.conf 文件

你將會發(fā)現(xiàn)在大多數(shù)的 linux 安裝中,許多服務(wù)在缺省的情況下是打開的。如果你的系統(tǒng)將向因特網(wǎng)開 放(包括通過撥號點對點協(xié)議被連通),你想做的第一件事就會是把一切都關(guān)閉!決不要假設(shè)因為你的系統(tǒng) 沒有對公眾進行宣傳,別人就不會找到它。從相反的方向看,尋找存在安全性攻擊隱患系統(tǒng)的工具軟件是 既容易找到又容易使用的。

關(guān)閉服務(wù)的第一個步驟是把 etc/inetd.conf 文件里所有用不著的服務(wù)性說明語句都改為注釋語句。一般 來說,你會發(fā)現(xiàn)下面的方法更容易使用:先把全部東西都改為注釋語句(徹底關(guān)閉網(wǎng)絡(luò)服務(wù)),再有選擇地 打開需要的服務(wù)。在完成對 etc/inetd.conf 文件的修改之后,需要向守護進程報告其配置文件已經(jīng)被修改了。 這是通過向該守護進程發(fā)送 HUP 信號來實現(xiàn)的。先使用下面的命令找出 inetd.conf 對應(yīng)的進程 ID:

[ root@ford /root ] # ps auxw | grep inetd | grep -v grep

這個命令的輸出類似于下面的內(nèi)容:

root 359 0.0 0.1 1232 168 ? S Jun21 0 : 00 inetd

root 359 0.0 0.1 1232 168 ? S Jun21 0 : 00 inetd

輸出中的第二列告訴我們進程 ID 號(這里就是 359)。為了發(fā)送 HUP 信號,我們需要使用 Kill 命令(把 這個程序叫做 Kill 多少有些誤導。實際上,它只是向進程發(fā)送信號而已。缺省的情況下,它會發(fā)出請求某 個程序終止運行的信號)。

下面是使用 Kill 命令發(fā)送 HUP 信號的方法: $ kil -1 359 應(yīng)該把上面命令中的 359 換成從你的系統(tǒng)上得到的進程編號。

syslogd 守護進程

在同一時間會發(fā)生許許多多的事情,而在終端窗口中斷開連接的網(wǎng)絡(luò)服務(wù)就更是如此了。因此,提供一 個記錄特殊事件和消息的標準機制就非常有必要了。linux 使用 syslogd 守護進程來提供這個服務(wù)。

syslogd 守護進程提供了一個對系統(tǒng)活動和消息進行記錄的標準方法。許多其他種類的 Unix 操作系統(tǒng)也 使用了兼容的守護進程。這就提供了一個在網(wǎng)絡(luò)中跨平臺記錄的方法。在大型的網(wǎng)絡(luò)環(huán)境里,這更具有價

值。因為在那樣的環(huán)境里,集中收集各種記錄數(shù)據(jù)以獲得系統(tǒng)運轉(zhuǎn)的準確情況是很有必要的。你可以把這 種記錄功能子系統(tǒng)比作 Windows NT 的 SystemLogger。

syslogd 保存數(shù)據(jù)用的記錄文件都是簡明的文本文件,一般都存放在 /var/log 子目錄中。每個數(shù)據(jù)項構(gòu) 成一行,包括日期、時間、主機名、進程名、進程的 PID,以及來自該進程的消息。標準 C 函數(shù)庫中的一 個全局性的函數(shù)提供了生成記錄消息的簡單機制。如果不喜歡編寫程序代碼,但是又想在記錄文件中生成 數(shù)據(jù)項,可以選擇使用 Logger 命令。可以想象,像 syslogd 這樣重要的工具應(yīng)該是作為開機引導命令腳本 程序的一部分來啟動的。你準備在服務(wù)器環(huán)境中使用的任何一個 linux 發(fā)行版本都已經(jīng)為你設(shè)置好了。

1.調(diào)用 syslogd

如果需要手動啟動 syslogd,或者需要修改開機引導時啟動它的命令腳本程序,你就必須注意 syslogd

的命令行參數(shù),請大家參看有關(guān)書籍,這里不做詳細介紹。 2./etc/syslog.conf 文件

/etc/syslog.conf 文件包含了 syslogd 需要運行的配置信息。這個文件的格式有些不尋常,但是現(xiàn)有的缺 省配置文件將足以滿足使用需要了,除非你需要在特定的文件中查找特定的信息,或者需要把這些信息發(fā) 送到遠程記錄計算機去。

● 記錄信息分類

在我們掌握/etc/syslog.conf 文件格式本身之前,需要先了解記錄消息是如何分類的。每個消息都有一 個功能值(Facility)和一個優(yōu)先權(quán)值(Priority)。功能值告訴我們這條消息是由哪個子系統(tǒng)產(chǎn)生的,而優(yōu)先 權(quán)值則告訴我們這個消息有多重要。這兩個值由句號分隔而且都有等價的字符串,從而容易記憶。

● /etc/syslog.conf 文件的格式

下面是配置文件里各語句的格式:

facility/priority combinations separated by commas file /process/host to log to

舉例如下:

kern.info /ver/log/kerned

syslogd 還可以靈活地把記錄消息發(fā)送到多種不同的保存目的地去。它可以把消息保存為文件、把消息 發(fā)送到 FIFO 隊列、發(fā)送到一組用戶、或者(在大型站點集中記錄消息的情況下)發(fā)送到一個中心記錄主機 中。為了區(qū)分這些目的地,在目的地入口使用了下面的規(guī)則:

◆ 如果保存目的地的開始字符是斜杠字符(/),消息將發(fā)送到某個文件。

◆ 如果保存目的地的開始字符是垂直字符(|),消息將發(fā)送到某個 FIFO 隊列。

◆ 如果保存目的地的開始字符是“@”字符,消息將發(fā)送到某個主機。

cron 進程

cron 進程為用戶提供一種可以計劃在一定時間間隔后自動執(zhí)行任務(wù)的功能。cron 通常還會負責 at 隊列

中作業(yè)的啟動。該進程從 crontab 文件中得到信息,對于每個用戶都會有一個獨立的 crontab 文件。運行 crontab -l 命令,就可以查看已排列的命令列表。

如果要更改 cron 信息,必須創(chuàng)建一個 crontab 文件。crontab 有固定的格式,有效行包括六個區(qū)域,即: 分鐘(0-59),小時(0-23),日(1-31),月(1-12),星期(0-7,0 和 7 都代表周日),命令(要運行的 任務(wù))

每個區(qū)域都可能帶一個星號,表示整個區(qū)間,每個區(qū)域也可以使用 x-y的形式包含一個范圍,也可能包含 一個用逗號隔開的列表。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
AIX TCP/IP網(wǎng)絡(luò)管理命令
hp unix如何關(guān)syslog中的ftp日志記錄
計算機硬件知識——故障解析(七)SUN Solaris常見問題集錦
Ubuntu系統(tǒng)目錄結(jié)構(gòu)
HP-UX安全手冊
ubuntu10.04虛擬機建立tftp服務(wù)器
更多類似文章 >>
生活服務(wù)
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服