日期:2013-07-30  浏览次数:20833 次

四、主要的软件安装

  前面说过,我的习惯是,装系统的时候就安装一个内核和编译系统,得到了一个干净的系统后,再安装其他的软件就比较清晰。另一点,除非搞不到源代码版本,一般情况下我都会下载官方版本的源代码文件,来重新编译之。同样的,选择软件版本要根据该软件的Release Note来决定,并非越新越好。这就是为什么很多软件都是几个版本齐头并进的发展之原因。这些软件不同版本之间的安装方法会有少许不同,安装前一定要仔细阅读目录中的README文件和INSTALL文件,否则这些少许不同会造成不少得麻烦。下面描述的安装过程都核版本号紧密相关。另外,所有的软件都把程序文件的包拷贝到/usr/local/src目录中再解压缩,这是习惯。因为在Linux中习惯于把后来的软件装在/usr/local中。

  (1)安装DNS服务器

  1、从www.isc.org下载bind 域名服务器软件。我们这里用的是bind8.3.0,bind8分支和bind9分支是并行发展的。根据自己的实际情况选择合适的bind版本。

  2、mkdir /usr/src/bind83

  3、下载的文件叫bind-src.tar.gz,复制到/usr/local/src/bind83目录下。

  4、cd /usr/local/src/bind83

  5、tar zxvf bind-src.tar.gz

  6、cd src

  7、make stdlinks

  8、make clean

  9、make depend

  10、make all

  11、make install

  12、编辑配置文件:/etc/named.conf内容如下,需要更改的部分用黑体标出:


  /*
   * This is a worthless, nonrunnable example of a named.conf file that has
   * every conceivable syntax element in use. We use it to test the parser.
   * It could also be used as a conceptual template for users of new features.
   */

  /*
   * C-style comments are OK
   */

  // So are C++-style comments

  # So are shell-style comments

  // watch out for ";" -- it's important!

  options {
directory "/var/named";
      // use current directory
named-xfer "/usr/libexec/named-xfer";
      // _PATH_XFER
dump-file "named_dump.db";
      // _PATH_DUMPFILE
pid-file "/var/run/named.pid";
      // _PATH_PIDFILE
statistics-file "named.stats";
      // _PATH_STATS
memstatistics-file "named.memstats";
      // _PATH_MEMSTATS
check-names master fail;
check-names slave warn;
check-names response ignore;
host-statistics no;
deallocate-on-exit no;
      // Painstakingly deallocate all
      // objects when exiting instead of
      // letting the OS clean up for us.
      // Useful a memory leak is suspected.
// Final statistics are written to the
// memstatistics-file.
datasize default;
stacksize default;
coresize default;
files unlimited;
recursion yes;
fetch-glue yes;
fake-iquery no;
notify yes;
     // send NOTIFY messages. You can set
// notify on a zone-by-zone
// basis in the "zone" statement
// see (below)
serial-queries 4;
     // number of parallel SOA queries
// we can have outstanding for master
// zone change testing purposes
auth-nxdomain yes;
// always set AA on NXDOMAIN.
// don't set this to 'no' unless
// you know what you're doing -- older
// servers won't like it.
multiple-cnames no;
   // if yes, then a name my have more
// than one CNAME RR. This use
// is non-standard and is not
// recommended, but it is available
// because previous releases supported
// it and it was used by large sites
// for load balancing.
allow-query { any; };
allow-transfer { any; };
transfers-in 10;
     // DEFAULT_XFERS_RUNNING, cannot be
   // set > than MAX_XFERS_RUNNING (20)
transfers-per-ns 2;
// DEFAULT_XFERS_PER_NS
transfers-out 0;
// not implemented
max-transfer-time-in 120;
// MAX_XFER_TIME; the default number
// of minutes an inbound