第九野,DJ野,学习,休闲,生活,分享,社区,~~~,路人乙,很高兴你能来这里! SiteMap | About Us | Guest Book | Contact Us | Search | Tags | Rss
第九野(DJ野)~生活学习休闲情感分享社区~分享一切~All for me , All for you !
Search 
<< Diskless Linux with PXE HOWTO无盘网吧,网吧机器分为服务器和无盘客户机两个部分 >>

Linux无盘工作站架设实例 

字体大小:   
  架设Linux无盘工作站实例,服务器和客户端都使用Linux。主要涉及:DHCP TFTP SYSLINUX NFS

  客户端是支持PXE方式启动的刀片,用Linux作为服务器,服务器配置如下:

  1、安装DHCP服务器dhcpd

  2、配置/etc/dhcpd.conf文件,下面是我机器上的文件

max-lease-time -1;
default-lease-time -1;      #注:IP地址永不过期
option subnet-mask 255.0.0.0;
option routers 10.0.0.1;
option domain-name-servers 10.10.10.10;
# option netbios-name-servers 10.10.10.10;
option broadcast-address 10.255.255.255;
# option dhcp-class-identifier "PXEClient";
# option vendor-encapsulated-options 01:04:00:00:00:00:ff;
# option option-135 "start";

subnet 10.0.0.0 netmask 255.0.0.0 {
  range 10.10.12.131 10.10.12.150;

  host blade01 {
    hardware ethernet 00:e0:43:00:02:00;
    fixed-address 10.10.12.131;
    filename "/tftpboot/pxelinux.0";    #注:启动映象文件
  }

  host blade02 {
hardware ethernet 00:e0:43:00:02:02;
fixed-address 10.10.12.132;
filename "/tftpboot/pxelinux.0";
}

  host blade03 {
    hardware ethernet 00:e0:43:00:02:04;
    fixed-address 10.10.12.133;
    filename "/tftpboot/pxelinux.0";
  }

  host blade04 {
    hardware ethernet 00:e0:43:00:02:06;
    fixed-address 10.10.12.134;
    filename "/tftpboot/pxelinux.0";
  }

  host blade05 {
    hardware ethernet 00:e0:43:00:02:08;
    fixed-address 10.10.12.135;
    filename "/tftpboot/pxelinux.0";
  }
}

  说明:dhcp客户得到IP地址后用TFTP协议从服务器上下载启动映象文件。我用syslinux


  工具包里边的pxelinux来作为远程启动的loder.

  3、配置tftp server

  使用pxelinux作引导工具需要支持TSIZE参数的tftp server。

  通过xinetd来使用tftp服务,我的/etc/xinetd.conf文件如下

......
service tftp
{
  socket_type   = dgram
  protocol    = udp
  wait      = yes
  user      = root
  server     = /usr/sbin/in.tftpd
}

  4、配置PXELINUX

  先安装syslinux软件包。

  将pxelinux.0拷贝到/tftpboot/目录下,然后建立/tftpboot/syslinux.cfg/目录。该目录下存放配置文件。

  pxelinux使用ip地址的十六进制表示来作为该ip地址的配置文件的文件名。如blade01的

  ip地址为10.10.12.131,配置文件名为0A0A0C83,内容为:

  default linux

  label linux
  kernel vmlinuz
  append ip=dhcp root=/dev/nfsroot nfsroot=10.10.11.120:/remote/blade01 vga=normal

  5、配置nfs

  为每个刀片建立一个根目录,在该刀片的pxelinux配置文件里指定了从这个nfs export的目录启动。

  该根目录里应把标准的目录都建好,另外需要重新mount的usr, home, public等目录也要export。

  我的 /etc/exports文件:

  # /etc/exports: the access control list for filesystems which may be exported
  # to NFS clients. See exports(5).

  /remote/blade01 blade01(rw,async,no_root_squash)
  /remote/blade02 blade02(rw,async,no_root_squash)
  /remote/blade03 blade03(rw,async,no_root_squash)
  /remote/blade04 blade04(rw,async,no_root_squash)
  /remote/blade05 blade05(rw,async,no_root_squash)
  /remote/root *(rw,async,no_root_squash)
  /remote/home *(rw,async,no_root_squash)
  /usr *(ro,async,no_root_squash)
  /sbin *(ro,async,no_root_squash)
  /bin *(ro,async,no_root_squash)
  /lib *(ro,async,no_root_squash)
  /home *(ro,async,no_root_squash)

、为每个刀片修改它的/etc/fstab文件,以blade01为例,它的nfs root是/remote/blade01
/remote/blade01/etc/fstab文件如下:


  # /etc/fstab: static file system information.
  #
  #
  10.10.11.120:/remote/blade01  /    nfs   defaults,intr  0  1
  10.10.11.120:/remote/root    /root  nfs   defaults,intr  0  1
  10.10.11.120:/remote/home    /home  nfs   defaults,intr  0  1
  10.10.11.120:/bin        /bin  nfs   defaults,intr  0  1
  10.10.11.120:/usr        /usr  nfs   defaults,intr  0  1
  10.10.11.120:/sbin       /sbin nfs   defaults,intr  0  1
  10.10.11.120:/lib        /lib  nfs   defaults,intr  0  1
  none          /proc  proc  defaults,intr  0   1

  同时还要为每个刀片修改它的网络配置文件,配置ip地址,启动两块网卡等等。。

  7、编译内核

  刀片用的内核,应该支持Kernel Level Auto Configuration的DHCP协议,支持NFS,支持NFS ROOT,

  假设编译好的内核为vmlinuz,将它拷贝到/tftpboot/目录下。
<< Diskless Linux with PXE HOWTO无盘网吧,网吧机器分为服务器和无盘客户机两个部分 >>

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站地图 | 合作伙伴 | 隐私保护 | 版权声明 | 商业合作 | 联系我们