文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Linux简明系统维护手册(三)

Linux简明系统维护手册(三)

时间:2007-02-17  来源:PHP爱好者

(3)安装DHCP服务器
  1、源程序下载地址是:ftp://ftp.isc.org/isc/dhcp/dhcp-3.0.tar.gz ,我们的版本是:dhcpd-3.0chin a i t p oe er . co mPp1rw
  2、复制到:/usr/local/scr后解压:tar zxvf dhcp-3.0.tar.gzchin a i t p oe er . co mPp1rw
  3、cd /usr/local/src/dhcp-3.0.tar.gzchin a i t p oe er . co mPp1rw
  4、./configurechin a i t p oe er . co mPp1rw
  5、make(如果不是第一次编译,先make clean)chin a i t p oe er . co mPp1rw
  6、make installchin a i t p oe er . co mPp1rw
  7、cp ./server/dhcpd.conf /etcchin a i t p oe er . co mPp1rw
  8、编辑这个文件,看起来类似下面这样:(要更改的地方用粗体标出)chin a i t p oe er . co mPp1rw
  # dhcpd.conf
  #
  # Sample configuration file for ISC dhcpd
  #
  # option definitions common to all supported networks...
  option domain-name "rd.xxx.com";
  option domain-name-servers compaq.rd.xxx.com;
  default-lease-time 86400;
  max-lease-time 172800;
  ddns-update-style ad-hoc;
  # If this DHCP server is the official DHCP server for the local
  # network, the authoritative directive should be uncommented.
  #authoritative;
  # Use this to send dhcp log messages to a different log file (you also
  # have to hack syslog.conf to complete the redirection).
  log-facility local7;
  # No service will be given on this subnet, but declaring it helps the
  # DHCP server to understand the network topology.
  # This is a very basic subnet declaration.
  subnet 21.9.22.0 netmask 255.255.255.224 {
    range 21.9.22.2 21.9.22.6;
    option routers 21.9.22.1;
  }
  # This declaration allows BOOTP clients to get dynamic addresses,
  # which we don't really recommend.
  #subnet 10.254.239.32 netmask 255.255.255.224   {
    # range dynamic-bootp 10.254.239.40 10.254.239.60;
    # option broadcast-address 10.254.239.31;
    # option routers rtr-239-32-1.example.org;
  #}
  # A slightly different configuration for an internal subnet.
  #subnet 10.5.5.0 netmask 255.255.255.224 {
  # range 10.5.5.26 10.5.5.30;
  # option domain-name-servers ns1.internal.example.org;
  # option domain-name "internal.example.org";
  # option routers 10.5.5.1;
  # option broadcast-address 10.5.5.31;
  # default-lease-time 600;
  # max-lease-time 7200;
  #}
  # Hosts which require special configuration options can be listed in
  # host statements. If no address is specified, the address will be
  # allocated dynamically (if possible), but the host-specific information
  # will still come from the host declaration.
  #host passacaglia {
  # hardware ethernet 0:0:c0:5d:bd:95;
  # filename "vmunix.passacaglia";
  # server-name "toccata.fugue.com";
  #}
  # Fixed IP addresses can also be specified for hosts. These addresses
  # should not also be listed as being available for dynamic assignment.
  # Hosts for which fixed IP addresses have been specified can boot using
  # BOOTP or DHCP. Hosts for which no fixed address is specified can only
  # be booted with DHCP, unless there is an address range on the subnet
  # to which a BOOTP client is connected which has the dynamic-bootp flag
  # set.
  #host fantasia {
  # hardware ethernet 08:00:07:26:c0:a5;
  # fixed-address fantasia.fugue.com;
  #}
  # You can declare a class of clients and then do address allocation
  # based on that. The example below shows a case where all clients
  # in a certain class get addresses on the 10.17.224/24 subnet, and all
  # other clients get addresses on the 10.0.29/24 subnet.
  
  #class "foo" {
  # match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
  #}
  #shared-network 224-29 {
  # subnet 10.17.224.0 netmask 255.255.255.0 {
  # option routers rtr-224.example.org;
  # }
  # subnet 10.0.29.0 netmask 255.255.255.0 {
  # option routers rtr-29.example.org;
  # }
  # pool {
  # allow members of "foo";
  # range 10.17.224.10 10.17.224.250;
  # }
  # pool {
  # deny members of "foo";
  # range 10.0.29.10 10.0.29.230;
  # }
  上面这个文件中后面都是注释,是原来系统给你的配置做的例子,可以不要。当然除非你用到它们,并且清楚它们的含义。chin a i t p oe er . co mPp1rw
  9、建立空文件:touch /var/state/dhcp/dhcpd.leases空文件chin a i t p oe er . co mPp1rw
  10、检查内核编译选项:Networking options-----Packet socket: mmapped IO和Socket Filtering选项是否被选中(不知道怎么看?看看前面的文章,用make menuconfig呀),如果没有就需要重新编译内核了。chin a i t p oe er . co mPp1rw
  11、route add -host 255.255.255.255 dev eth0chin a i t p oe er . co mPp1rw
  12、roote add -host localhost dev eth0chin a i t p oe er . co mPp1rw
  13、在/etc/rc.d/rc.local最后增加一行route add -host 255.255.255.255 dev eth0chin a i t p oe er . co mPp1rw
  14、reboot系统chin a i t p oe er . co mPp1rw
  15、用dhcpd命令启动DHCP,用其他的机器试试看能不能自动配置网络了。chin a i t p oe er . co mPp1rw
(4) 安装apache+mysql+php+gd+png+zlib+jpeg+freetype+sslmod chin a i t p oe er . co mPp1rw
  这么一大堆东西为什么要一块说呢?因为他们中间是有紧密联系的,尤其是那个PHP,用到其他所有的模块。要想PHP功能全,只能一步步来了。chin a i t p oe er . co mPp1rw
  1、首先安装MYSQL:从http://www.mysql.com/downloads/index.html下载自己觉得合适的版本。这里用3.23.42版本。chin a i t p oe er . co mPp1rw
  2、进入目录/usr/local/src(这个以后就不用说了吧?)解压缩:tar zxvf mysql-3.23.42.tar.gzchin a i t p oe er . co mPp1rw
  3、cd mysql-3.23.42/chin a i t p oe er . co mPp1rw
  4、configure --prefix=/usr/local/mysqlchin a i t p oe er . co mPp1rw
  5、makechin a i t p oe er . co mPp1rw
  6、make installchin a i t p oe er . co mPp1rw
  7、useradd mysql ; groupadd mysql ; su mysql ;(建立命名为mysql的用户和组,并切换为mysql身份)chin a i t p oe er . co mPp1rw
  8、scripts/mysql_install_db (建立数据库结构)chin a i t p oe er . co mPp1rw
  9、cd /usr/local/mysql/binchin a i t p oe er . co mPp1rw
  10、./safe_mysqld & (启动了)chin a i t p oe er . co mPp1rw
  11、./mysqladmin -u root password "new-password"(你的新密码,记住MYSQL的密码核系统密码是独立的,缺省是没有密码)chin a i t p oe er . co mPp1rw
  12、用mysql程序试试看。chin a i t p oe er . co mPp1rw
  下面的步骤都很程式化,我尽量简洁地写出。chin a i t p oe er . co mPp1rw
  13、下载相关的软件包:地址表格如下chin a i t p oe er . co mPp1rw
  软件     版本     地址
jpegsrc.v6b.tar.gz  6b ftp://ftp.uu.net/graphics/jpeg
zlib.tar.gz 1.1.3 ftp://ftp.uu.net/graphics/png/src
freetype-2.0.8.tar.gz 2.0.8 http://www.freetype.org
libpng-1.0.10.tar.gz 1.0.10 ftp://ftp.uu.net/graphics/png/src
gd-1.8.4.tar.gz 1.8.4 http://www.boutell.com/gd
apache_1.3.23.tar.gz 1.3.23 http://www.apache.org
php-4.1.1.tar.gz 4.1.1 http://www.php.net
number4.tar.gz 4 http://www.php.net/extra
rsaref20.tar.Z 2.0 ftp://ftp.ai.mit.edu/pub/deberg
openssl-engine-0.9.6c.tar.gz 0.9.6c http://www.openssl.org/source
mod_ssl-2.8.6-1.3.23.tar.gz 2.8.6 http://www.modssl.org
  下齐了就放在/usr/local/src目录下,除了number4.tar.gz和rsaref20.tar.Z以外,其他一律用tar zxvf XXXX.tar.gz解压缩。(过瘾吧?)chin a i t p oe er . co mPp1rw
  特殊的,rsaref20.tar.Z 需要先建立一个rsaref-2.0目录,然后把rsaref20.tar.Z复制到改目录下用tar zxvf rsaref30.tar.Z释放压缩。Number4.tar.gz需要复制到php-4.1.1目录内,然后用tar zxvf number4.tar.gz解压缩。chin a i t p oe er . co mPp1rw
  下面的描述我想简单一点,只写出进入目录后执行的命令。那些目录都是释放的时候自己建立的,如果你这些操作都在/usr/local/src下面执行,所有的目录就都在这里面。最好按照顺序执行。再罗嗦一句:如果不是第一次编译,一般情况请执行一次make clean后再编译。chin a i t p oe er . co mPp1rw
  14、[jpeg-6b]:生成JPEG图像的函数库。chin a i t p oe er . co mPp1rw
  ./configure
  make
  make test
  make install
  15、[zlib-1.1.3]:压缩算法库,是PNG和JPEG需要的chin a i t p oe er . co mPp1rw
  make test
  make install
  16、[freetype-2.0.8]:字体库,在图像上使用字体的时候需要用到,chin a i t p oe er . co mPp1rw
  ./configure --prefix=/usr/local
  make
  make install
  17、[libpng-1.0.10]:生成PNG图像的函数库chin a i t p oe er . co mPp1rw
  cp scripts/makefile.linux makefile
  make test
  pngtest pngnow.png
  (如果都通过测试了,请继续。否则,看看错误提示,改正错误)
  make install
  18、[gd-1.8.4]:GD库,用来动态生成图像用,这里主要是配合PHP生成图像。chin a i t p oe er . co mPp1rw
  编辑Makefile 文件:chin a i t p oe er . co mPp1rw
  把下列行取消注释符号(#):chin a i t p oe er . co mPp1rw
  CFLAGS=-O -DHAVE_LIBXPM -DHAVE_LIBPNG -DHAVE_LIBJPEG
  -DHAVE_LIBFREETYPE -DHAVE_LIBTTF
  LIBS=-lgd -lpng -lz -ljpeg -lfreetype -lm -lttf
  注释下列行(增加#):
  CFLAGS=-O -DHAVE_LIBPNG -DHAVE_LIBJPEG
  LIBS=-lgd -lpng -lz -lm
  修改下列行:
  INCLUDEDIRS=-I. -I/usr/local/include/freetype2 -I/usr/include/X11
    -I/usr/X11R6/include/X11 -I/usr/local/include
     -I/usr/include/freetype
  保存后执行:chin a i t p oe er . co mPp1rw
  make
  make install
  19、[apache_1.3.23]:步骤一 ./configure --prefix=/usr/local/apachechin a i t p oe er . co mPp1rw
  20、[php-4.1.1]:chin a i t p oe er . co mPp1rw
  如果不是第一次安装,请删除:config.cache文件,然后执行先执行make cleanchin a i t p oe er . co mPp1rw
  接下来配置环境,输入一个比较长的命令:chin a i t p oe er . co mPp1rw
  ./configure
    --with-apache=/usr/local/src/apache_1.3.23
    --with-config-file-path=/local/apache/conf
    --with-enable-versioning
    --with-mysql=/usr/local/mysql
    --with-ftp
    --with-gd=/usr/local/src/gd-1.8.4
    --with-enabled-bcmath=yes
    --with-disable-debug
    --enable-memory-limit=yes
    --enable-track-vars
    --with-zlib
    --with-jpeg-dir=/usr/local/src/jpeg-6b
    --with-png-dir=/usr/local/src/libpng-1.0.10
    --with-freetype-dir=/usr//local/src/freetype-2.0.8
  当然你也可以实现准备一个含有上述命令的sh文件,这样改起来方便些。我就是这样做的。chin a i t p oe er . co mPp1rw
  make
  make install
  21、[rsaref-2.0]:RSA加密模块chin a i t p oe er . co mPp1rw
  前面说过,这个目录的释放是特殊的,先见目录后释放,希望你是这样做的。chin a i t p oe er . co mPp1rw
  cp -rp install/unix local
  cd local
  make
  mv rsaref.a librsaref.a
  22、[openssl-engine-0.9.6c]:openssl引擎chin a i t p oe er . co mPp1rw
  ./config -prefix=/usr/local/ssl -L`pwd`/../rsaref-2.0/local/ rsaref –fPIC
  make
  make test
  make install
  23、[mod_ssl-2.8.6-1.3.23]chin a i t p oe er . co mPp1rw
  ./configure --with-apache=../apache_1.3.23
  24、[apache_1.3.23]步骤二chin a i t p oe er . co mPp1rw
  ./configure --prefix=/usr/local/apache --enable-shared=ssl
     --enable-module=ssl --activate-module=src/modules/php4/libphp4.a
  make
  make certificate TYPE=custom(回答一些问题)
  make install
  25、收尾工作:chin a i t p oe er . co mPp1rw
  编辑/usr/local/apache/conf/httpd.conf文件,增加一行:chin a i t p oe er . co mPp1rw
  AddType application/x-httpd-php .php
  26、用命令/usr/local/apache/bin/apachectl configtest检查一下配置文件的正确性。chin a i t p oe er . co mPp1rw
  27、用/usr/lcoal/apache/bin/apachectl start启动apache服务器chin a i t p oe er . co mPp1rw
  28、在/usr/local/apache/htdocs建立一个test.php文件包含下列内容:chin a i t p oe er . co mPp1rw
  <?php>
    phpinfo();
  ?>
  29、在别的机器上用浏览器看一下这个机器:http://xxx.xxx.xxx.xxx/test.php会出现php的配置总汇,看看前面编译的模块都在不在。chin a i t p oe er . co mPp1rw
  30、检验ssl很麻烦,需要用apachectl startssl启动apache然后还要生成一大堆证书。这里就不讨论了。chin a i t p oe er . co mPp1rw
  31、把/usr/local/apache/bin/apachectl文件复制到/etc/rc.d/init.d中,然后在/etc/rc.d/rd3.d中建立个符号连接指向/etc/rc.d/init.d中的上述文件:chin a i t p oe er . co mPp1rw
  ln -s ../init.d/apachectl S70apachectl
  这样系统启动的时候就可以自动启动apache和她的哪一大堆模块了。chin a i t p oe er . co mPp1rw
  呼~~~~(喘口气)到这里,就基本上完成了一个功能很全的WEB服务器系统了。chin a i t p oe er . co mPp1rw
  (5)安装 ftp 服务器chin a i t p oe er . co mPp1rw
  (6)安装 pop3服务器chin a i t p oe er . co mPp1rw
  有的邮件服务器自己带pop3功能(比如Qmail、Xmail),如果你用这几种邮件服务器软件,当然就不用安装pop3了。目前,常用的邮件服务器里面不带pop3的好象只有sendmail和postfix等少数几种。这几种邮件服务器软件使用的都是系统用户,而我们安装的pop3也只是对系统用户的邮件进行弹出操作的。这里我们使用的版本和下载地址是:chin a i t p oe er . co mPp1rw
  qpopper4.0.3.tar.gz   
  http://www.eudora.com/qpopper_general/
  同样的,把文件下载到/usr/local/src中,按照下列步骤安装:chin a i t p oe er . co mPp1rw
  tar zxvf qpopper4.0.3.tar.gz
  cd qpopper4.0.3
  ./configure
  make
  make install
  完成后,qpopper安装在/usr/local/sbin中(如果你愿意把它放在其他地方,可以在前面用./configure –prefix=/your_path指定),文件名叫作popper。通常情况下,popper是作为一个inetd(超级网络服务进程)的子进程加载的。这样需要编辑文件/etc/inetd.conf并做下面改动: ...chin a i t p oe er . co mPp1rw
  # POP3 mail server
  #pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d
  pop-3 stream tcp nowait root /usr/local/sbin/popper qpopper –s
  ...
  增加黑体的这一行,注释掉原来的(上面这一行),注意,如果你的安装路经不同,记着改过来呀。然后,用下面的命令得到inetd的进程号:chin a i t p oe er . co mPp1rw
  ps –ax | grep inetd
  得到结果类似:chin a i t p oe er . co mPp1rw
  248 ? S 0:00 inetd
  什么?哪个是进程号?就是最前面那个数字。然后用下面的命令重新启动inetd:chin a i t p oe er . co mPp1rw
  kill –HUP 248
  用下面的命令看看pop3是不是启动了。chin a i t p oe er . co mPp1rw
  netstat -ln|grep 110
  如果结果是这样,就恭喜了。chin a i t p oe er . co mPp1rw
  tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN
  这里还要补充一点,少数情况下,pop3进程需要独立的监听端口,也就是不作为inetd的子进程装载,上面过程需要做如下改动:chin a i t p oe er . co mPp1rw
  ./configure的时候加上--enable-standalone参数。chin a i t p oe er . co mPp1rw
  编辑/etc/inetd.conf不增加黑体一行,但需要注释掉原来的pop-3一行(如果有的话)。chin a i t p oe er . co mPp1rw
  启动的时候,直接运行/usr/local/sbin/popper xxx.xxx.xxx.xxx:110即可。后面的参数是本地需要几监听的IP地址和端口。注意,没有特殊需要,端口必须是110。最后要说的是:其实最简单的办法就是用你使用的Linux发行包带的pop3软件,安装的时候直接选上即可。chin a i t p oe er . co mPp1rw
php爱好 者站 http://www.phpfans.net php基础|php进阶|php模板.
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载