星期三, 9月 19, 2007

Fedora chconfig Notes

Fedora chconfig Notes

簡介:

* chkconfig 是文字模式下用來設定開機會啟動之服務的工具。
* 適用 Red-Hat, Fedora, CentOS 等 Linux distribution。
* 類似的工具有 ntsysv (文字視窗), setup 等。

此系列的 Linux 在開機時,會依照 /etc/inittab 裡設定的 run level 來載入服務,
吾人可以透過修改 id:3:default: 這個值,來設定開機時預設的 run level。

run level:
0 - halt (不可設為預設值)
1 - 單機模式
2 - 多人模式(文字),但沒有 NFS (無網路)
3 - 多人模式(文字)
4 - 保留未使用
5 - X-Window 介面(圖形)
6 - reboot (不可設為預設值)


語法:

chkconfig --list [name]
chkconfig --add name
chkconfig --del name
chkconfig --override name
chkconfig [--level levels] name <on|off|reset|resetpriorities>
chkconfig [--level levels] name


範例:

# 當伺服器最好只使用文字模式,編輯 /etc/inittab 檔
# 確定 initdefault 是 3
cat /etc/inittab | grep :initdefault
id:3:initdefault:

# 可使用下面指令來檢查哪些是開啟的服務
chkconfig --list | grep :on

# 查詢現在正在跑的服務
service --status-all | grep running

# 下面的指令可以關掉所有服務 (利用 off_list 暫存檔)
chkconfig --list | grep :on | cut -c0-16  > /tmp/off_list
for i in $(cat /tmp/off_list);do chkconfig $i off;done
rm -f /tmp/off_list

# 關掉所有服務 (利用變數儲存)
# 將列表改用變數存放,我不知道服務過多時會不會有問題,為了保險還是用暫存檔。
service_on=`chkconfig --list | grep :on | cut -c0-16`
for i in $service_on;do;chkconfig $i off;#service $i stop;done

# 開啟必要的服務:
chkconfig cpuspeed on
chkconfig crond on
chkconfig iptables on
chkconfig network on
chkconfig sshd on
chkconfig syslog on
chkconfig yum-updatesd on

沒有留言: