Skip to content Skip to main navigation Skip to footer

Linux:通过网络方式安装 Debian 7(Wheezy)

本教程将指引你直接通过使用DNSMASQ作为PXE服务器(预启动执行环境),以网络方式安装Debian 7(Wheezy),此种情况是假定你的服务器不提供任何CD/DVD/USB介质驱动器,或者它只能通过相连的监视器、键盘和鼠标操作。

Linux:通过网络方式安装 Debian 7(Wheezy)
Linux:通过网络方式安装 Debian 7(Wheezy)

客户机上的Debian 7网络安装

DNSMASQ是一个轻量级网络基础架构服务器,它可以通过内建的DNS、DHCP和TFTP服务器提供如DNS、DHCP和网络启动等关键服务。

一旦PXE服务器启动并运行,你可以指示你所有的客户机直接从网络启动,前提是你的客户机必须拥有一张支持网络启动的网卡,网络启动可以从BIOS的网络启动或启动服务选项中启用。

前置阅读

步骤1: 安装及配置DNSMASQ服务器

1. 首先,在安装Debian服务器后,要确保你的系统使用的是静态IP地址。因为除了网络启动之外,也要为你的整个网段提供DHCP服务。设置好静态IP地址后,以root帐号或具有root权力的用户来运行以下命令,进行DNSMASQ服务器的安装。

# apt-get install dnsmasq
Linux:通过网络方式安装 Debian 7(Wheezy)
Linux:通过网络方式安装 Debian 7(Wheezy)

安装Dnsmasq包

2. 安装好DNSMASQ包后,你可以开始编辑配置文件。首先创建一个主配置文件的备份,然后使用下面的命令对dnsmasq.conf文件进行编辑。

# mv /etc/dnsmasq.conf  /etc/dnsmasq.conf.backup
# nano /etc/dnsmasq.conf
Linux:通过网络方式安装 Debian 7(Wheezy)
Linux:通过网络方式安装 Debian 7(Wheezy)

备份Dnsmasq配置

3. 上面的备份过程适合重命名配置文件,所以新的文件应该是空,你可以使用以下描述的DNSMASQ配置文件节录。

interface=eth0
domain=debian.lan
dhcp-range=192.168.1.3,192.168.1.253,255.255.255.0,1h
dhcp-boot=pxelinux.0,pxeserver,192.168.1.100
pxe-prompt="Press F8 for menu.", 60
#pxe-service types: x86PC, PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI
pxe-service=x86PC, "Install Debian 7 Linux from network server 192.168.1.100", pxelinux
enable-tftp
tftp-root=/srv/tftp
Linux:通过网络方式安装 Debian 7(Wheezy)
Linux:通过网络方式安装 Debian 7(Wheezy)

Dnsmasq配置

  • interface – 服务器监听的网络接口。
  • domain – 用你自己的域名替换。
  • dhcp-range – 用你自己的网络掩码定义的网络IP地址范围。
  • dhcp-boot – 保持默认,但使用你自己的服务器IP地址替换IP声明。
  • pxe-prompt – 保持默认 – 要求在敲击F8键 进入菜单时等待60秒。
  • pxe=service – 使用x86PC作为32位/64位架构,并进入引号字符串的菜单描述提示。其它值类型可能是:PC98,IA64EFI,Alpha,Arcx86,IntelLeanClient,IA32EFI, BCEFI,XscaleEFI和 X86-64EFI。
  • enable-tftp – 启用内建TFTP服务器。
  • tftp-root – 使用/srv/tftp作为Debian网络启动文件的存放位置。

步骤2: 下载Debian网络启动文件并打开防火墙连接

4. 现在,该下载Debian网络启动文件了。首先,修改你当前工作目录路径到TFTP根目录位置,此位置由最后的配置语句定义(/srv/tftp系统路径)。

转到Debian网络安装网络启动部分的官方页面镜像,抓取以下文件,要抓取的文件取决于你想要安装到客户端的系统架构。

下载好netboot.tar.gz文件后,同时提取归档(该过程描述只适用于64位,但对于其它系统架构也基本相同)。

# cd /srv/tftp/
# wget http://ftp.nl.debian.org/debian/dists/wheezy/main/installer-amd64/current/images/netboot/netboot.tar.gz
# tar xfz netboot.tar.gz
# wget http://ftp.nl.debian.org/debian/dists/wheezy/main/installer-amd64/current/images/SHA256SUMS
# wget http://ftp.nl.debian.org/debian/dists/wheezy/Release
# wget http://ftp.nl.debian.org/debian/dists/wheezy/Release.gpg

同时,必须确保TFTP目录中的所有文件都可让TFTP服务器读取。

# chmod -R 755 /srv/tftp/
Linux:通过网络方式安装 Debian 7(Wheezy)
Linux:通过网络方式安装 Debian 7(Wheezy)

下载Debian网络启动文件

使用以下变量用于Debian网络安装镜像和架构。

# wget http://"$YOURMIRROR"/debian/dists/wheezy/main/installer-"$ARCH"/current/images/netboot/netboot.tar.gz
# wget http://"$YOURMIRROR"/debian/dists/wheezy/main/installer-"$ARCH"/current/images/SHA256SUMS
# wget http://"$YOURMIRROR"/debian/dists/wheezy/Release
# wget http://"$YOURMIRROR"/debian/dists/wheezy/Release.gpg

5. 下一步,启动或重启DNSMASQ守护进程,并运行netstat命令来获取服务器监听的端口列表。

# service dnsmasq restart
# netstat -tulpn | grep dnsmasq
Linux:通过网络方式安装 Debian 7(Wheezy)
Linux:通过网络方式安装 Debian 7(Wheezy)

启动Dnsmasq服务

6. 基于Debian的发行版通常附带了UFW防火墙包。使用以下命令来打开需要的DNSMASQ端口号:67(Bootps),69(TFTP),53(DNS)4011(代理DHCP)udp和53 tcp(DNS)。

# ufw allow 69/udp
# ufw allow 4011/udp   ## Only if you have a ProxyDHCP on the network
# ufw allow 67/udp
# ufw allow 53/tcp
# ufw allow 53/udp
Linux:通过网络方式安装 Debian 7(Wheezy)
Linux:通过网络方式安装 Debian 7(Wheezy)

开启Dnsmasq端口

现在,位于你的客户机网络接口上的PXE加载器将使用按以下顺序从/srv/tftp/pxelinux.cfg目录加载pxelinux配置文件。

  • GUID文件
  • MAC文件
  • 默认文件

来源:https://linux.cn/article-4146-1.html

0 Comments

There are no comments yet

Leave a comment

Your email address will not be published.