Linux伺服器安裝好後如何進行最佳化 我們的伺服器並不是安裝完成後就可直接託管到機房了,而是需要進行一系列的最佳化配置和安全配置等 1、關閉不需要的服務 這個應該很容易理解的,凡是我們的系統不需要的服務,一概關閉,這樣一個好處是減少記憶體和CPU時間的佔用,另一個好處相對可以提高安全性 那麼哪些服務是肯定要保留的呢? 在linux機器上通常有四項服務是必須保留的 iptables linux下強大的防火牆,只要機器需要連到網上,哪裡離得開它 network linux機器的網路,如果不上網可以關閉,只要上網當然要開啟它 sshd 這是openssh server,如果你的機器不是本地操作,而是託管到IDC機房, 那麼訪問機器時需要通過這個sshd服務進行 syslog 這是linux系統的日誌系統,必須要有, 否則機器出現問題時會找不到原因 除了這四項必需的服務之外,其他的服務需要保留哪些呢? 這時就可以根據系統的用途而定,比如:資料庫伺服器,就需要啟用mysqld(或oracle) web伺服器,就需要啟用apache 2、關閉不需要的tty 請編輯你的/etc/inittab 找到如下一段: 1:2345:respawn:/sbin/mingetty tty12:2345:respawn:/sbin/mingetty tty23:2345:respawn:/sbin/mingetty tty34:2345:respawn:/sbin/mingetty tty45:2345:respawn:/sbin/mingetty tty56:2345:respawn:/sbin/mingetty tty6這段命令使init為你開啟了6個控制台,分別可以用alt+f1到alt+f6進行訪問 此6個控制台預設都駐留在記憶體中,事實上沒有必要使用這麼多的 你用ps auxf這個命令可以看到,是六個進程 root 3004 0.0 0.0 1892 412 tty1 Ss+ Jun29 0:00 /sbin/mingetty tty1root 3037 0.0 0.0 2492 412 tty2 Ss+ Jun29 0:00 /sbin/mingetty tty2root 3038 0.0 0.0 2308 412 tty3 Ss+ Jun29 0:00 /sbin/mingetty tty3root 3051 0.0 0.0 1812 412 tty4 Ss+ Jun29 0:00 /sbin/mingetty tty4root 3056 0.0 0.0 2116 412 tty5 Ss+ Jun29 0:00 /sbin/mingetty tty5root 3117 0.0 0.0 2396 412 tty6 Ss+ Jun29 0:00 /sbin/mingetty tty6 如何關閉這些進程? 通常我們保留前2個控制台就可以了, 把後面4個用#注釋掉就可以了 然後無需重啟機器,只需要執行 init q 這個命令即可 init q q作為參數的含義:重新執行/etc/inittab中的命令 修改完成後需重啟機器使之生效 3、如何關閉atime? 一個linux檔案預設有3個時間: atime:對此檔案的訪問時間 ctime:此檔案inode發生變化的時間 mtime:此檔案的修改時間 如果有多個小檔案時通常沒有必要記錄檔案的訪問時間, 這樣可以減少磁碟的io,比如web伺服器的頁面上有多個小圖片 如何進行設定呢? 修改檔案系統的設定檔:vi /etc/fstab 在包含大量小檔案的分區中使用noatime,nodiratime兩項 例如: /dev/md5 /data/pics1 ext3 noatime,nodiratime 0 0 這樣檔案被訪問時就不會再產生寫磁碟的io 4、一定要讓你的伺服器運行在level 3上 做法: vi /etc/inittab id:3:initdefault: 讓伺服器運行X是沒有必要的 5、最佳化sshd X11Forwarding no //不進行x圖形的轉寄 UseDNS no //不對IP地址做反向的解析 6、最佳化shell 修改命令history記錄 # vi /etc/profile 找到 HISTSIZE=1000 改為 HISTSIZE=100 然後 source /etc/profile