10/20
Linux
Daemons 1.
( /etc/init.d/ )
Signal-control:這種 daemon 是透過訊號來管理的,只要有任何用戶端的需求進來, 他就會立即啟動去處理!例如印表機的服務 (cupsd)。
2.
Interval-control:這種 daemon 主要是『每隔一段時間就主動的去執行某項工作』 ,所 以你要做的是在設定檔指定服務要進行的時間與工作,該服務在指定的時間才會去完成工 作。atd 與 crond 就屬於這種類型的 daemon (每分鐘偵測一次設定檔) 出處:http://linux.vbird.org/linux_basic/0560daemons.php#daemon
控制方法: 控制服務程式:○ 1 service 2 ○
daemon
rcdaemon
[ status | stop | start| restart ]
[ status | stop | start| restart ] SuSE 獨有
設定服務啟動的層級:○ 1 insserv 2 ○
chkconfig
系統工作排程: 1.
僅一次執行 ( atd )
→ at
→ /var/spool/atjobs
→ /etc/at.deny /etc/at.allow
2.
例行式 ( crond )
→ crontab → /var/spool/cron
→ /etc/cron.deny /etc/cron.allow
指令
佇列
存取控制檔
at 定時服務:
1.
確定已安裝 at 定時服務 #rpm
2.
3.
-q
at
檢查服務狀態是否啟動 #rcatd
status
#rcatd
start
status )
將服務設定在啟動的執行層級上 #chkconfig
4.
( = service atd
--level
35
atd
( = insser atd )
at 定時服務的使用 格式:at #at
<時間>
now+2mintues
at> ls -alR at> touch at> #atq
^d
/ | /dev/tty2 /tmp/at.txt
( 結束 )
( =at
-l )
查詢目前的工作佇列項目
cron 工作排程服務:
1.
確定已安裝 cron 工作排程服務 #rpm
-q
cron
2.
檢查服務狀態是否啟動 #rccron
3.
status
將服務設定在啟動的執行層級上 #insser cron
4.
cron 工作排程的使用 #crontab */2
編輯
-e * *
* * root
date
+\%R | cat
>
dev/tty2
( /2 每隔兩分鐘 ) MIN
HOUR
DAY
MONTH
DOW
分
時
日
月
星期幾
00~59
00~23
1~31
1~12
0~7
單位
範圍
#crontab #vi
-r
刪除
/etc/cron.d/test */2
* *
* * root
touch
/tmp/test-`date +\%R`.txt
/etc/at.allow
/etc/at.deny
/etc/cron.allow
/etc/cron.deny
root 在 allow 不受限制
root 在 deny,會受到限制 ( 其他流派則否 )
Section
6
#uname -r
核心版本
#siga
自動產生報表 在 /tmp/siga
#sitar
自動產生報表 在 /tmp/sitar-……………………..
系統記錄檔:
syslogd
舊
syslog-ng
新
( syslog new generation )
Facilities
服務類別
Priorities
訊息等級
在 syslog.conf 中的每一筆設定佔用一行,至於設定格式如下: facility.level
action
欄 位 說 明 代表所要紀錄該服務的訊息類別為何,也就是紀錄的訊息來源是屬於哪方面的訊息。 常見的有: ˙kern:有關核心所產生的訊息。 ˙auth:有關安全事件方面的訊息。 ˙authpriv:有關存取控制方面的訊息。 ˙cron:有關 cron 排程服務方面的訊息。 facility ˙mail:有關郵件服務方面的訊息。 ˙lpr:有關列印服務方面的訊息。 ˙daemon:有些服務系統未分配其專屬的 facility 時,即可歸類為 daemon。 ˙syslog:由 syslogd 所產生的內部訊息。 ˙news:有關 news 服務方面的訊息。 另外 facility 如為「*」,則表示所有的 facility。 代表的是訊息出現的優先等級 (priority),從最緊急到最輕微的等級依序為: emerg → alert → crit → err → warning → notice → info → debug level level 如為「*」,則表示所有的 level ﹔level 如果為「none」,則表示要將此 facility 排 除在外。 表示依照前面設定所產生的訊息,要採取怎樣的紀錄動作。 action 一般最常見的是一個包含完整路徑的檔案,此外也可以是另一台主機名稱 action (@hostname)、使用者名稱 (多使用者時可以用「,」做區隔 ) 、終端機或 FIFO file (名 稱前面要加上「|」)。 action 如為「*」,則表示 all user。 出處:http://www.suse.url.tw/sles10/lesson9.htm#5 Sources 訊息來源
Filters 過濾器
Destinations 訊息目的
Log paths 日誌路徑
#vi
/etc/syslog-ng/syslog-ng.conf filter f_sshd { level(debug...emerg) and facility(authpriv); }; destination sshd { file(“var/log/sshd.log”); }; log { source(src); filter(f_sshd); destination(sshd); };
#vi
/etc/ssh/sshd_config SyslogFacility AUTHPRIV LogLevel
#service sshd #service syslog #tail
DEBUG
restart restart
-f /var/log/sshd.log
在其他 TTY 測試,使用 user1 帳號登入,故 意打錯密碼,看 /var/log/sshd.log 是否有紀 錄;有紀錄代表設定成功。