码迷,mamicode.com
首页 > 系统相关 > 详细

ubuntu 14.04安装pxe  

时间:2016-04-13 20:55:53      阅读:335      评论:0      收藏:0      [点我收藏+]

标签:pxe server 部署

环境,ubuntu14.04系统

参考文件https://www.maketecheasier.com/configure-pxe-server-ubuntu/

步骤

1 环境准备

2 安装配置dhcp  tftp nfs

3 PXE安装和配置

4 添加pxe镜像并且导出到nfs服务器上

5 安装时候碰到的问题总结

 

1 环境准备

 

1安装ubuntu系统 

2 配置固定ip地址

#interfaces(5) file used by ifup(8) and ifdown(8)

autolo

ifacelo inet loopback

autoeth0

ifaceeth0 inet static

address10.50.200.22

netmask255.255.255.0

gateway10.50.200.254

 

 

2 安装配置dhcp  tftp nfs

apt-getinstall isc-dhcp-Serverinetutils-inetd tftpd-hpa syslinux nfs-kernel-Server

 

1配置dhcp

vi  /vi /etc/default/isc-dhcp-server

INTERFACES="eth0"

 

vi/etc/dhcp/dhcpd.conf

subnet10.50.200.0 netmask 255.255.255.0 {

range10.50.200.8 10.50.200.10;

optionsubnet-mask 255.255.255.0;

optionrouters 10.50.200.22;   #最好给pxe ip 否则安装很慢

optionbroadcast-address 10.50.200.255;

filename"pxelinux.0";

next-Server10.50.200.22;  #tftp server ip

}

启动服务/etc/init.d/isc-dhcp-server start

2配置tftp服务

vi  /etc/inetd.conf
添加
tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s
/var/lib/tftpboot
vi /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="[:0.0.0.0:]:69"
TFTP_OPTIONS="--secure"
RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

 

update-inetd --enable BOOT

/etc/init.d/tftpd-hpastart

 

检查服务是否启动  netstat -lu

 

 

3 安装配置PXE

sudomkdir/var/lib/tftpboot
sudomkdir/var/lib/tftpboot/pxelinux.cfg
sudomkdir-p/var/lib/tftpboot/Ubuntu/14.04/amd64/
sudocp/usr/lib/syslinux/vesamenu.c32 /var/lib/tftpboot/
sudocp/usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot/

 

vi   /var/lib/tftpboot/pxelinux.cfg/default

 

DEFAULTvesamenu.c32

TIMEOUT100

PROMPT0

MENU INCLUDE pxelinux.cfg/pxe.conf

NOESCAPE1

LABELTry Ubuntu 14.04 Desktop

MENULABEL Try Ubuntu 14.04 Desktop

kernel Ubuntu/vmlinuz.efi

appendboot=casper netboot=nfs nfsroot=10.50.200.22:/var/lib/tftpboot/Ubuntu/14.04/amd64initrd=Ubuntu/initrd.lz quiet splash

ENDTEXT

LABELInstall Ubuntu 14.04 Desktop

MENULABEL Install Ubuntu 14.04 Desktop

kernel Ubuntu/vmlinuz.efi

appendboot=casper automatic-ubiquity netboot=nfs nfsroot=10.50.200.22:/var/lib/tftpboot/Ubuntu/14.04/amd64initrd=Ubuntu/initrd.lz quiet splash

ENDTEXT

 

vi  /var/lib/tftpboot/pxelinux.cfg/pxe.conf

MENU TITLE PXE Server
NOESCAPE 1
ALLOWOPTIONS 1
PROMPT 0
MENU WIDTH 80
MENU ROWS 14
MENU TABMSGROW 24
MENU MARGIN 10
MENU COLOR border 30;44#ffffffff #00000000 std

 

添加镜像

因为我们虚拟机默认挂载了ios  所以可以直接从cd下面cp

mount  /dev/cdrom  /media/

cp-r/media/*/var/lib/tftpboot/Ubuntu/14.04/amd64/
cp-r/media/.disk /var/lib/tftpboot/Ubuntu/14.04/amd64/
cp/media/casper/initrd.lz /media/casper/vmlinuz.efi /var/lib/tftpboot/Ubuntu/

 

vi /etc/exports

/var/lib/tftpboot/Ubuntu/14.04/amd64*(ro,async,no_root_squash,no_subtree_check)

 

exportfs -a
/etc/init.d/nfs-kernel-server start

 

 

PXE就是全部配置完成   可以用客户机连接安装系统了,

 

 

 

5 中间操作的时候出现的问题,

问题1  不能连接tftp   

是因为 tftp  设置错误  next-Server 10.50.200.22;  #tftp server ip

 

 

问题能进入安装安装界面但是一直提示  automstic boot in x second 一直循环,不能安装

是因为 不能加载 vmlinuz.efi 

 1  确定/var/lib/tftpboot/Ubuntu有这个文件

root@happy-virtual-machine:/var/lib/tftpboot/Ubuntu#ll

total27620

drwxrwxrwx3 root root        4096 Apr 13 16:10 ./

drwxrwxrwx4 root nogroup     4096 Apr 13 15:28 ../

drwxrwxrwx3 root root        4096 Apr 13 15:2814.04/

-r--r--r--1 root root    21699939 Apr 13 16:10initrd.lz

-r--r--r--1 root root     6567896 Apr 13 16:10 vmlinuz.efi

2 确定 /var/lib/tftpboot/pxelinux.cfg/default  中对应没有写错

kernel Ubuntu/vmlinuz.efi

 

问题3 能进行安装但是安装一直停在

end kernel panic  -not syncing: VFS :Unable  to monut root fs  on  unknown-block(2.0)

 

这个问题时因为/var/lib/tftpboot/pxelinux.cfg/default  中的这个是在同一行,而不是两行 (这个问题困扰了好久,才解决)

appendboot=casper netboot=nfs nfsroot=10.50.200.22:/var/lib/tftpboot/Ubuntu/14.04/amd64initrd=Ubuntu/initrd.lz quiet splash

 


ubuntu 14.04安装pxe  

标签:pxe server 部署

原文地址:http://527322.blog.51cto.com/517322/1763515

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!