第二十一章、系統設定工具(網路與印表機)與硬體偵測
21.1 CentOS 系統設定工具: setup
setup 其實只有在 Red Hat 的系列才有, 在其他的 Linuxdistributions 並不存在。
21.1.1 使用者身份驗證設定
/etc/sysconfig/authconfig
authconfig –test
其實 NIS 與 LDAP 等等的,都是一種網路通訊協定,我們可以透過網路通訊協定來進行資料的傳輸。使用者帳號資訊當然也能夠透過這個機制來管理囉!有興趣的朋友請繼續閱讀鳥哥寫的伺服器篇囉~ ^_^
21.1.2 網路設定項目(手動設定IP與自動取得)
[root@study sysconfig]# ls | egrep -inetwork
network
networking
network-scripts
21.1.3 防火牆設定
/etc/sysconfig/iptables
21.1.6 系統時鐘的時區設定
[root@study network-scripts]# cat/etc/sysconfig/clock
# The ZONE parameter is only evaluated bysystem-config-date.
# The timezone of the system is defined bythe contents of /etc/localtime.
ZONE="Asia/Harbin"
UTC=true
ARC=false
ZONE信息 => /usr/share/zoneinfo/
21.3 硬體資料收集與驅動,及 lm_sensors
21.3.2 驅動 USB 裝置
USB (Universal Serial Bus)
1. 關於 USB 的晶片版本
目前 USB 1.1版本的控制器主要有兩種規格,分別是:
· OHCI (Open Host ControllerInterface):主要由 Compaq 所發展,包括 Compaq, SiS, ALi 等等廠商發展的晶片都是用這個模組;
· UHCI (Universal Host ControllerInterface):主要由 Intel 所發展,包括 Intel, VIA 等等廠商發展的晶片都是使用這個模組。
至於 USB 2.0 在 Linux 上都以 Enhanced Host Controller Interface (EHCI) 來驅動的。
2. 啟動 USB 的隨身碟或快閃碟
我們之前談過 USB 的磁碟代號是: /dev/sd[a-p] 之類的,類似 SCSI 硬碟的代號,這是因為 USB 的磁碟裝置使用 SCSI 相關的裝置代號,因此,如果您要使用 USB 隨身碟的話,嘿嘿!那麼您的 Linux 主機就得要支援 SCSI 裝置才行~。
此外,為了讓 USB 磁碟裝置順利的被使用,因此,有時候還得要啟動 usb-storage 模組才行~所以囉,光是有 USB 的 uhci 模組還不行,還得要配合 usb-storage 啦~而一般 USB 的裝置都會被主動的偵測,核心也會主動的載入 USB 裝置的驅動模組,所以你應該不需要手動載入 usb-storage 才是。不過,如果老是無法驅動時,那麼不妨手動載入 usb-storage 試看看。
順利載入各個需要的模組之後,直接下達 fdisk -l 應該就可以看到您的 USB 隨身碟的裝置代號才是!一般來說,如果是第一個 USB 磁碟裝置的話,應該可以看到一個名為 /dev/sda1 的裝置,使用 mount 將他掛載起來即可啊!
在這裡要強調的是,如果你是使用類似筆記型電腦的 2.5 吋硬碟作為隨身硬碟的話,由於他就是硬碟的規格,因此你可以看到一個完整的 /dev/sda 之類的磁碟資訊,你也可以進行額外的分割。但如果是快閃碟的話,快閃碟並不是傳統的硬碟,他並不是使用磁碟讀取頭與磁碟盤來記錄資料,因此你只能使用 /dev/sda1 之類的檔名來掛載,理論上是無法進行額外分割的喔!這部份要特別強調一下。
21.3.3 使用 lm_sensors 取得溫度、電壓等資訊:sensors-detect, sensors
由於 lm_sensors 主要是依據『主機板晶片組的型號,帶入相關的模組後,再偵測其溫度、電壓』的,如果該主機板晶片組並不是 lm_sensors 所支援的模組,那自然就無法找出該晶片組的溫壓囉~所以啦,我們在使用 lm_sensors 之前,必須要確定主機板是有提供溫度、電壓的,再來,必須要載入主機板的驅動模組,然後才有辦法使用 lm_sensors 來進行偵測。
sensors-detect => 建立/etc/sysconfig/lm_sensors 的參數設定檔 => vi /etc/modprobe.conf => vi /etc/rc.d/rc.local => chkconfig--list lm_sensors => sensors
[root@www ~]# vi /etc/modprobe.conf alias char-major-89 i2c-dev # 將剛剛偵測到的模組給他寫入到這個檔案當中!
[root@www ~]# vi /etc/rc.d/rc.local # I2C adapter drivers modprobe i2c-sis630 modprobe i2c-isa # I2C chip drivers modprobe eeprom modprobe it87 sleep 2s /usr/bin/sensors -s
[root@www ~]# chkconfig --list lm_sensors lm_sensors 0:off 1:off 2:on 3:on 4:on 5:on 6:off # 確定 lm_sensors 預設開機會啟動即可!此時你可以重新 reboot , # 或者執行上述的 modprobe 之後,在進行底下的偵測囉! |
21.3.4 udev 與 hal 簡介
HAL(Hardware Abstraction Layer) 可以將系統目前的所有硬體進行快照,並持續檢視這個快照的內容(註5)。如果有新的 PnP 硬體插入時, HAL 就會發現目前的硬體與快照不同,此時就會通知 udev 進行新的裝置的建置了!如此一來,兩者的配合就能夠讓你的裝置 PnP 囉!
目前這兩個咚咚在 CentOS 上面都會是啟動的,其中 udev 是在 /etc/rc.d/rc.sysinit 就啟動了,而 hal 則是在 /etc/init.d/haldaemon 這個服務才啟動。讓我們檢查看看是否真的有啟動啊!
[root@www ~]# pstree -p | egrep '(udevd|hal)' |-hald(4814)---hald-runner(4815)-+-hald-addon-acpi(4822) | |-hald-addon-keyb(4827) | `-hald-addon-stor(4837) |-udevd(401) # 確實有啟動喔!一個是 udevd 一個是 hald 啦! |