谁知道用LINUX做网吧服务器的无盘系统怎么做?
客户端是支持PXE方式启动的刀片,用Linux作为服务器,服务器配置如下:
1) 安装DHCP服务器dhcpd
2) 配置/etc/dhcpdconf文件,下面是我机器上的文件
max-lease-time -1;
default-lease-time -1; #注:IP地址永不过期
option subnet-mask 255000;
option routers 10001;
option domain-name-servers 10101010;
# option netbios-name-servers 10101010;
option broadcast-address 10255255255;
# option dhcp-class-identifier "XEClient";
# option vendor-encapsulated-options 01:04:00:00:00:00:ff;
# option option-135 "start";
subnet 10000 netmask 255000 {
range 101012131 101012150;
host blade01 {
hardware ethernet 00:e0:43:00:02:00;
fixed-address 101012131;
filename "/tftpboot/pxelinux0"; #注:启动映象文件
}
host blade02 {
hardware ethernet 00:e0:43:00:02:02;
fixed-address 101012132;
filename "/tftpboot/pxelinux0";
}
host blade03 {
hardware ethernet 00:e0:43:00:02:04;
fixed-address 101012133;
filename "/tftpboot/pxelinux0";
}
host blade04 {
hardware ethernet 00:e0:43:00:02:06;
fixed-address 101012134;
filename "/tftpboot/pxelinux0";
}
host blade05 {
hardware ethernet 00:e0:43:00:02:08;
fixed-address 101012135;
filename "/tftpboot/pxelinux0";
}
}
说明:dhcp客户得到IP地址后用TFTP协议从服务器上下载启动映象文件。我用syslinux
工具包里边的pxelinux来作为远程启动的loder
3) 配置tftp server
使用pxelinux作引导工具需要支持TSIZE参数的tftp server。可从http://wwwkernelorg/pub/software/network/tftp/下载。
通过xinetd来使用tftp服务,我的/etc/xinetdconf文件如下
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/intftpd
}
4) 配置PXELINUX
先安装syslinux软件包。可从http://wwwkernelorg/pub/linux/utils/boot/syslinux/下载。
将pxelinux0拷贝到/tftpboot/目录下,然后建立/tftpboot/syslinuxcfg/目录。该目录下存放配置文件。
pxelinux使用ip地址的十六进制表示来作为该ip地址的配置文件的文件名。如blade01的
ip地址为101012131,配置文件名为0A0A0C83,内容为:
default linux
label linux
kernel vmlinuz
append ip=dhcp root=/dev/nfsroot nfsroot=101011120:/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)
6)为每个刀片修改它的/etc/fstab文件,以blade01为例,它的nfs root是/remote/blade01
/remote/blade01/etc/fstab文件如下:
# /etc/fstab: static file system information
#
#
101011120:/remote/blade01 / nfs defaults,intr 0 1
101011120:/remote/root /root nfs defaults,intr 0 1
101011120:/remote/home /home nfs defaults,intr 0 1
101011120:/bin /bin nfs defaults,intr 0 1
101011120:/usr /usr nfs defaults,intr 0 1
101011120:/sbin /sbin nfs defaults,intr 0 1
101011120:/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/目录下。
其实很简单的,先在客户机上装好系统,还有驱动,然后再装上无盘软件,在服务器上建立客户机的IMG镜像文件,把刚建的IMG镜像文件挂在你做系统那个机子上,客户机就可以上传系统了。但是不知道你是那个无盘这个是锐起的,估计都差不多
首先你去网上下载一个无盘的万能镜像包,解压了有一个img的东西。然后打开无盘服务器端的磁盘管理啦,所有无盘都有这个选项的;其次呢选择打开映像文件了,找到你刚刚的那个img,磁盘选择为启动盘,还原点开启,因为你可能去客户机改改设置啥的,这里注意一下,记得去服务端刷新一下IP哦
0条评论