關鍵字:開發(fā)環(huán)境搭建 開源軟件
本文主要介紹一些小組開發(fā)環(huán)境搭建中經常會遇到一些服務器服務設置,這些服務很多都是鑒于大部分的開發(fā)客戶端仍然是Windows設置的,每個服務都提供了簡單的基本配置示范。包括:
IP管理(DHCP):服務器IP地址的管理和解析(結合SAMBA的WINS服務),開發(fā)客戶端的IP管理;
WEB服務(APACHE):文檔共享,CVS的WEB界面瀏覽,論壇工具等;
FTP服務(FTP):用于文件下載/共享;
版本控制(CVS):程序源代碼和文檔的版本控制;
文件共享(SAMBA):基于NETBIOS的文件共享,方便WINDOWS客戶端的訪問(比如一些工具的安裝等);
數(shù)據庫服務器(MYSQL):一些應用的后臺數(shù)據庫服務;
備份機制(wget + rsync):備份
很多設置是缺省按照在bash環(huán)境中,在tcsh環(huán)境中,有一些設置不太一致。
服務器規(guī)劃如下:
硬件準備:至少要2臺服務器
從理論上說,任何系統(tǒng)的崩潰只是時間問題,而且誰也不能保證開發(fā)者不犯錯誤;
解決以上問題的辦法只有:備份,備份,備份……
操作系統(tǒng)準備
FreeBSD或GNU/Linux,系統(tǒng)安裝時,本文的配置主要以在RedHat 8上運行為例。注意:安裝時要將“開發(fā)工具”大類選上,后面的很多工具都需要使用GCC進行編譯,有的應用腳本運行用到了perl。2臺主服務器分別使用 IP地址192.168.0.200和192.168.0.201
語言環(huán)境缺省設置:
vi /etc/sysconfig/i18n
刪除UTF-8相關設置:
LANG="en_US"
SUPPORTED="en_US:en"
SYSFONT="latarcyrheb-sun16"
GNU/Linux安裝完后:經常有很多不必要的服務需要刪除,但根據服務器的不同,要刪除的服務也不一樣:本來是想總結一個統(tǒng)一的腳本,后來發(fā)現(xiàn)是需要刪除的服務比需要保留的服務多,而且缺省有那些服務和系統(tǒng)版本,安裝的模式也相關。這里我總結的了一個簡單的方法來刪除不必要的服務:
首先:備份原始服務設置:
#chkconfig --list > chkconfig.orig
生成刪除腳本:把所有在LEVEL 3啟動的服務過濾出來,并生成chkconfig service off 這樣的命令
#chkconfig --list | grep 3:on | awk ’{print "chkconfig "$1" off"}’
chkconfig kudzu offchkconfig syslog off
chkconfig netfs offchkconfig network off
chkconfig random off
chkconfig rawdevices off
chkconfig pcmcia off
chkconfig keytable off
chkconfig apmd off
chkconfig atd off
chkconfig gpm off
chkconfig autofs off
chkconfig iptables off
chkconfig isdn off
chkconfig sshd off
chkconfig portmap off
chkconfig nfslock off
chkconfig sendmail off
chkconfig rhnsd off
chkconfig crond off
chkconfig anacron off
chkconfig xfs off
chkconfig xinetd off
我們把需要保留的服務從這個列表中刪除:
一般WEB服務器只留network sshd crond atd syslog
刪掉相應的行以后生成了不需要的服務刪除腳本:
chkconfig kudzu off
chkconfig syslog off
chkconfig netfs off
chkconfig rawdevices off
chkconfig pcmcia off
chkconfig keytable off
chkconfig apmd off
chkconfig gpm off
chkconfig autofs off
chkconfig iptables off
chkconfig isdn off
chkconfig portmap off
chkconfig nfslock off
chkconfig sendmail off
chkconfig rhnsd off
chkconfig xfs off
chkconfig xinetd off
2臺機器上都安裝的服務:SSH FTP DHCP服務
SSH
基本的登陸服務,對于內部分開發(fā)來說一般用缺省的可以了,但是建議將/etc/ssh/sshd_config中的:
PermitRootLogin yes改成PermitRootLogin no
FTP
建議用proftpd代替原有的ftp服務:http://www.proftpd.org/ 當然如果是vsftpd不用換了
安裝:tar zxf proftpd-version.tar.gz; cd proftpd-version/; ./configure; make; make install
缺省配置/usr/local/etc/proftpd.conf