FreeBSD作服务器安装Ubuntu 8.04 Desktop PXE无盘工作站

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
oldwood_hmgh
帖子: 7
注册时间: 2008-09-13 21:59

FreeBSD作服务器安装Ubuntu 8.04 Desktop PXE无盘工作站

#1

帖子 oldwood_hmgh » 2008-09-13 22:02

FreeBSD作服务器安装Ubuntu 8.04 Desktop PXE无盘工作站

用linux作服务器安装Ubuntu PXE无盘站的的文章很多,我是用FreeBSD作服务器来安装的。FreeBSD的一些必要的网络服务设置比较容易,而且FreeBSD是十分稳定高效的操作系统。

一、服务器的安装和配置
1 、安装服务器操作系统
安装FreeBSD 7.0,为求简洁不必安装有关X的东西,但ports要装上。
以下操作都需要root权限。
2、执行以下命令安装DHCP服务:
cd /usr/ports/net/isc-dhcp3-server
make install
安装完成后,执行以下命令配置服务:
cd /usr/local/etc
cp dhcpd.conf.sample dhcpd.conf
编辑/usr/local/etc/dhcpd.conf,内容如下:(每行#后面的不要输入,仅是说明)
authoritative;
ddns-update-style none;
subnet 192.168.1.0 netmask 255.255.255.0 { # 网络和子网掩码,按照你自己的网络参数修改
range 192.168.1.100 192.168.1.120; # 分配给无盘客户机的地址范围
option domain-name-servers 192.168.1.1; # 指定客户机的域名解析服务器地址
option routers 192.168.1.1; # 指定客户机的网关
option broadcast-address 192.168.1.255; # 广播地址
default-lease-time 600;
max-lease-time 7200;
}
host ubuntu { # ubuntu是客户机器名
hardware ethernet 00:0C:29:4A:D5:EE; # 客户机启动网卡MAC地址,
filename "pxelinux.0"; # 客户机启动文件名
server-name "192.168.1.5"; # TFTP服务器地址,无此行即默认是本机
} # 如有多个无盘站,可参照以上五行添加它们。
3、配置TFTP服务
编辑文件/etc/inetd.conf,删除包含tftp的两行前面的注释符号#
创建TFTP服务目录
mkdir /tftpboot
mkdir /tftpboot/pxelinux.cfg
准备启动文件
下载syslinux-3.71.tar.gz http://www.kernel.org/pub/linux/utils/b ... .71.tar.gz
解压到/root/
tar xvzf syslinux-3.71.tar.gz -C /root/
把启动文件pxelinux.0拷贝到/tftpboot下
cp /root/syslinux-3.71/core/pxelinux.0 /tftpboot/
创建pxelinux.0的配置文件/tftpboot/pxelinux.cfg/default,内容如下:
DEFAULT Ubuntu
LABEL Ubuntu
kernel vmlinuz
append initrd=initrd.img root=/dev/nfs nfsroot=192.168.1.5:/exports ip=dhcp rw
PROMPT 1
TIMEOUT 3
4、配置NFS服务
创建NFS服务目录
mkdir /exports
这个目录要保证有足够的空间,以便容纳无盘站的所有文件,最好是把单独一块磁盘挂载到这个目录。
编辑NFS服务配置文件/etc/exports, 内容如下:
/exports -maproot=0 -network 192.168.1.0 -mask 255.255.255.0
5、设置以上服务在开机时自动运行
编辑/etc/rc.conf文件,内容如下:

defaultrouter="192.168.1.1"
hostname="FB7.mydomain"
ifconfig_em0="inet 192.168.1.5 netmask 255.255.255.0"
dhcpd_enable="YES"
inetd_enable="YES"
rpcbind_enable="YES"
nfs_server_enable="YES"
至此,服务器配置完成,把服务器重新启动一次。

二、工作站的设置
1、安装系统
安装一台有盘的Ubuntu 8.04 Desktop,配置好网络,使用DHCP或固定IP地址均可,用新立得软件管理程序安装好需要的软件,配置汉语支持等,特别要安装NFS客户端软件nfs-common以便用来把工作站系统文件上传到服务器,安装initramfs-tools以便生成initrd.img文件。
2、生成适合网络启动的initrd.img
首先配置/etc/initramfs-tools/initramfs.conf, 文件内容如下:
MODULES=netboot
BUSYBOX=y
BOOT=nfs
DEVICE=eth0
NFSROOT=auto
存盘后执行下面命令:
mkinitramfs -o /root/initrd.img
这样在/root目录下生成了适合网络启动的initrd.img。
3、把 工作站系统文件上传到服务器
服务器开机后 ,在工作站端执行以下命令挂载网络文件系统:
mount 192.168.1.5:/exports /mnt
把工作站系统文件上传到服务器
cp -ax /. /mnt/.
cp -ax /dev/. /mnt/dev/.
4、修改网络卡的设置
编辑 /mnt/etc/network/interfaces,内容如下:
auto lo
iface lo inet loopback
iface eth0 inet manual
5、修改文件挂载表
编辑/mnt/etc/fstab, 内容如下:
# /etc/fstab: static file system information.
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/nfs / nfs defaults 1 1
然后执行下面命令卸载网络文件系统:
umount /mnt

三、服务器端的最后设置
在服务器上用root帐户登录,执行以下命令:
cp /exports/vmlinuz /tftpboot/
cp /exports/root/initrd.img /tftpboot/
重新启动服务器,摘掉工作站的硬盘,开机后设置bios为PXE启动,工作站应该启动到图形登录界面。

四、交换设备的设置
以上启动成功的无盘工作站是没有交换设备的,运行某些大型程序时会有问题,可按如下方法添加交换设备:
在终端上执行下列命令:
dd if=/dev/zero of=$HOME/swapfile bs=1024 count=512000
sudo losetup /dev/loop0 $HOME/swapfile
sudo mkswap /dev/loop0
sudo swapon /dev/loop0
swapon -s
应该看到有512M的交换设备可供使用了,如果有本地硬盘作交换设备性能会更好些。

五、注意事项
多个无盘站它们的显示卡型号应该相同,否则X窗口可能会启动失败,在无盘工作站上不能再鼓捣网络设置,否则会中断与NFS服务器的连接,把无盘站弄死,最好把网络设置工具隐藏起来。
chasye
帖子: 333
注册时间: 2007-05-13 15:20

#2

帖子 chasye » 2008-09-13 23:05

有没有想过多个客户开机/var可能会冲突呢?
oldwood_hmgh
帖子: 7
注册时间: 2008-09-13 21:59

回复二楼

#3

帖子 oldwood_hmgh » 2008-09-13 23:20

应该是有这个问题,能改进一下吗?
chasye
帖子: 333
注册时间: 2007-05-13 15:20

#4

帖子 chasye » 2008-09-14 13:02

基本提示 tmpfs
头像
冲浪板
论坛版主
帖子: 7513
注册时间: 2007-05-06 8:19

#5

帖子 冲浪板 » 2008-09-14 19:19

不对不对,记得是每个客户机会被建立它自己的几个文件夹,来存放各自的配置文件,什么冲突不冲突的想象根本就不存在。
回复