Linux系統配置與最佳化經驗談

  作為linux愛好者,筆者安裝過各種linux發行套件。在每次安裝過程中,大量的配置最佳化工作花費了許多時間,並且容易造成一些細節的遺漏。本文以安裝與使用redhat 6.1為例,談一些自己的體會,與參加ibm“我愛linux”網上聚會活動的朋友交流。 關於硬碟分區

筆者的經驗是安裝linux時一定要建立單獨的分區,用於存儲用戶的私人數據,同時可以用於備份系統的配置檔案,便於以後配置。

編輯/etc/inittab檔案

大部分linux的發行套件都建立六個虛擬控制台,實際上三個已經足夠,並且可以節省可貴的記憶體空間。編輯/etc/inittab檔案,在下面三行的前面加上#。

4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

然後執行init q,使系統重新讀取/etc/inittab檔案,關閉tty4、tty5、tty6虛擬控制台。如果不考慮系統的安全,你可以利用第四個虛擬控制台來查看各種系統信息,編輯/etc/syslog.conf檔案,在最後一行加入:.?/dev/tty4

最後再執行killall -hup syslog。

編輯/etc/inputrc檔案

只要編輯/etc/inputrc檔案,設定inputrc的環境變數,利用tab鍵的命令補全功能,就可以實現類似於msdos的doskey的功能。這樣對檔案與目錄的各種操作,也一樣方便快捷。

編輯/etc/rc.local檔案

如果需要定製自己的登錄信息,注意要修改/etc/rc.d/rc.local檔案,因為每次執行/etc/rc.d/rc.local檔案,都需要修改/etc/issue與/etc/issue.net檔案,我們可以編輯定製自己的/etc/issue檔案,加快linux引導過程,並且加入以下內容:

echo "base=0xd8000000 size=0x800000 type=write-combining" >> /proc/mtrr
# enable
drive d: file="/dev/hda5"

這樣就可以執行mdir c:等命令。

拷貝各種配置檔案

根據機器的用途,編輯拷貝相應的配置檔案,例如:samba的配置檔案/etc/smb.conf,域名伺服器的配置檔案,dhcp的配置檔案/etc/dhcpd.conf等。一般情況下,這些檔案一旦配置好,很少發生改動,這樣可以節約許多時間。注意原來的配置檔案一定要做好備份,如果配置檔案發生改動也要做好備份!

編譯linux核心

一般各種linux系統套件安裝的核心,都適合大部分的機器,但缺點是大而全,套件中包含有許多自己根本不需要的模組。只有根據自己的需要及機器硬體條件來配置核心,才能達到最優。注意在編譯核心前,一定要對自己機器有一個全面的了解,這樣才能做到心中有數。

以下是編譯核心的簡要步驟:(以redhat6.1為例說明)

1.進入/usr/src/linux,編輯makefile檔案,修改extraversion= -xx,其中xx表示編譯的版本號,最好用數字,並且大於原來的數值。

2.根據自己機器的硬體配置,選擇相應的選項來配置核心。

#make menuconfig

3.理順各檔案的依存關係,清理以前生成的目標檔案及其他檔案。

#make clean ; make dep

4.編譯核心與安裝,並且安裝模組。

#make bzimage
#make modules; make modules_install

5.安裝核心。

# cp arch/i386/boot/bzimage /boot/vmlinuz-y.y.yy-xx
將核心複製到/boot目錄下,其中y.y.yy表示linux版本號,xx表示編譯的版本號。
# cp system.map /boot/system.map-y.y.yy-xx
# cd /boot
# ln -s system.map-y.y.yy-xx system.map
最後,編輯lilo的配置檔案/etc/lilo.conf即可。

6.測試新核心。

引導完成後,注意檢查/lib/modules/y.y.yy-xx目錄下,是否建立modules.dep檔案。如果檔案存在,可以修改/etc/rc.d/rc.sysinit,將有關執行模組依賴的命令的內容註解掉,這樣可以加快linux的啟動過程。

注意測試新核心之前,用戶最好保留原來的核心,這樣如果新建的核心引導linux不成功,可以利用舊的核心引導linux作業系統。