Linux 无盘服务器 简明架设指南

假设有一台服务器装有 Debian GNU/Linux。有两块网卡
网卡 eth0 (对外) IP 10.0.2.15 netmask 255.255.255.0 gateway 10.0.2.2
网卡 eth1 (对内) IP 192.168.1.1 netmask 255.255.255.0
网络结构如下:
NIC NIC IP Clients
+-----------------------------+
| |
|+-- [eth0] 10.0.2.15 +- to WAN
| |
|+-- [eth1] 192.168.1.1 +- to clients
| | IP from 192.168.1.2 - 192.168.1.254
+-----------------------------+



以 root 用户登录,执行:

1. 建需要的目录
#mkdir /diskless
#mkdir /diskless/nfsroot
#mkdir /diskless/tftpboot
#mkdir /diskless/tftpboot/pxelinux.cfg

2. 装需要的软件
#apt-get install dhcp3-server
#apt-get install tftpd-hpa
#apt-get install nfs-kernel-server
#apt-get install syslinux
#apt-get install debootstrap

3. 建无盘机用的根文件系统
#debootstrap lenny /diskless/nfsroot http://mirrors.163.com/debian
#chroot /diskless/nfsroot
#apt-get install linux-image-2.6.26-2-686
#exit

4. 配置 DHCP 服务
#nano /etc/dhcp3/dhcpd.conf

/etc/dhcp3/dhcpd.conf 文件加上如下内容:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.2 192.168.1.254;
next-server 192.168.1.1;
filename "pxelinux.0";
option domain-name "diskless.abc.com";
option domain-name-servers 202.88.124.188;
option routers 192.168.1.1;
}


#/etc/init.d/dhcp3-server restart


5. 配置 TFTP 服务
#cp /diskless/nfsroot/boot/vmlinuz-2.6.26-2-686 /diskless/tftpboot/vmlinuz
#cp /diskless/nfsroot/boot/initrd.img-2.6.26-2-686 /diskless/tftpboot/initrd.img
#cp /usr/lib/syslinux/pxelinux.0 /diskless/tftpboot
#nano /diskless/tftpboot/pxelinux.cfg/default

/diskless/tftpboot/pxelinux.cfg/default 文件内容如下:
label Debian Linux
kernel vmlinuz
append initrd=initrd.img boot=nfs nfsroot=/diskless/nfsroot ip=dhcp rw

#nano /etc/default/tftpd-hpa

/etc/default/tftpd-hpa 文件内容如下:
RUN_DAEMON="yes"
OPTIONS="-l -s /diskless/tftpboot"

#/etc/init.d/tftpd-hpa restart

6. 配置 NFS 服务
#nano /etc/exports

/etc/exports 文件内容如下:
/diskless/nfsroot *(rw,async,no_subtree_check,no_root_squash)


#/etc/init.d/nfs-kernel-server restart


7. OK! 无盘机可以通过 PXE 启动了。


实现以下菜单功能只要修改一下 /diskless/tftpboot/pxelinux.cfg/default
就可以了。详情可参考网上资料。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 无盘工作站及其原理 1.1 无盘工作站 无盘工作站是没有硬盘的计算机终端。它本身不含有硬存储设备,机器引导时需要借助网络上的服务器来传输操作系统启动文件到本地内存,才可以完成启动。因此,无盘工作站必须具有CPU、主板、内存、网卡和远程启动设备。远程启动设备主要以芯片的形式固化或接插在网卡上,在系统启动时负责连接服务器,获取IP地址,指导服务器上的操作系统启动文件到本地内存的传输。目前,远程启动芯片主要有RPL和PXE两种,后者为前者的升级版,目前正在被广泛使用。 1.2 PXE芯片启动原理 PXE芯片在远程启动时,首先要进行一个DHCP会话过程来获取一个IP地址和相关信息,以便进行后续的文件传送;IP地址获取成功后,PXE芯片触发TFTP会话过程,根据DHCP过程获取的相关信息向服务器请求启动文件,服务器接到请求后,根据本地策略,发送相应的启动文件,工作站接收到启动文件后,开始本地启动过程。 以上是PXE芯片无盘工作站启动过程的简单描述,DHCP协议的相关内容可参考RFC2131标准化文档,TFTP协议的相关内容可参考RFC1350标准化文档。 对于Linux操作系统来说,PXE所需要下载的启动文件是配置文件和内核文件。其中,配置文件在DHCP应答报文中包含,通过TFTP会话过程获取;内核文件的名称和位置在配置文件中给出,同样需要通过TFTP会话过程获取;内核文件获取成功后,系统开始进行本地启动,当启动过程进行到需要装载文件系统时,PXE会根据配置文件,向服务器请求连接根文件系统(该文件系统为NFS网络根文件系统)所对应的服务器目录,若成功,则启动结束。下页图1-1给出了这一过程的交互模型。 Linux无盘工作站的详细启动流程如下: Step 1 工作站加电,PXE芯片进行自检; Step 2 准备启动,PXE芯片发送DHCP请求; Step 3 服务器收到工作站送出的请求,发送DHCP应答,内容包括客户端的IP地址,预设网关,DNS服务器及开机映象文件(配置文件和内核)位置; Step 4 工作站上的PXE芯片根据配置文件位置,开始TFTP会话请求下载该文件; Step 5 加载映象文件,开始本地启动,挂载NFS网络根文件系统; Step 6 出现Login行,启动成功。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值