UOS PXE单机部署
一、基础环境
1、PXE服务器设备
有网卡用于提供pxe/tftp/nfs服务
2、PXE客户端设备
支持网络启动
确保能正常连接网络,有MAC地址
如果是龙芯的设备,其固件版本必须在4.00.0024以上
注意:PXE客户端 bios设置如下(昆仑固件)
高级-网络栈配置-网络栈-启用
3、PXE工作原理
注意:
(1)设置拥有pxe功能的客户端主机开机启动项为网络启动,一般默认都此选项,如果没有可自行设置bios启动项。
(2)客户端开机之后进入网络启动,此时客户端没有IP地址需要发送广播报文(pxe网卡内置dhcp客户端程序),dhcp服务器相应客户端请求,分配给客户端相应的IP地址与掩码等信息。
(3)客户端得到IP地址之后,与tftp通信,下载bootnetaa64.efi文件,根据grub.cfg指定的vmlinuz,initrd.img启动系统内核。
(4)根据grub启动菜单选择共享服务器nfs上面下载系统安装包开始安装系统。
二、软件准备
1、服务端
通过apt-get install命令从仓库安装,需root权限:
软件列表 | 软件功能 |
---|---|
debian-installer-10-netboot-arm64 | 提供 grub引导 ⽂件及 pxe 图形菜单模块 |
dnsmasq | 提供dhcp、dns、tftp功能 |
nfs-kernel-server | 提供nfs功能 |
net-tools | 提供 ifconfig 命令 |
uos@uos-PC:~$ useradd -s /usr/sbin/nologin dnsmasq
uos@uos-PC:~$ groupadd dnsmasq
三、NFS配置
创建⽬录并添加该⽬录到 exports ⽂件,然后重启nfs服务
sudo mkdir /var/nfs
echo '/var/nfs *(ro,sync,no_subtree_check)' |sudo tee -a /etc/exports
sudo systemctl restart nfs-kernel-server
拷⻉光盘内容到nfs⽬录并修改对应权限
1、Arm配置
sudo mkdir /var/nfs/deepin
# 假设光盘挂载⽬录 /media/cdrom
sudo cp -r /media/cdrom/* /var/nfs/deepin/
sudo cp -r /media/cdrom/.disk /var/nfs/deepin/
sudo chown root:root /var/nfs/deepin -R
find /var/nfs/deepin -type d -exec sudo chmod 755 {
} \;
2、Mips配置
sudo mkdir -p /var/nfs/mips64el
挂载光盘镜像文件并拷贝镜像文件:
uos@uos-PC:~$ mount oem-lx.iso /mnt/
uos@uos-PC:~$ sudo cp -r /mnt/* /var/nfs/mips64el/
uos@uos-PC:~$ sudo cp<