winPE的PXE引导,大批量维护和安装系统

前言

优先看上一篇:【纯净的windows官方WinPE制作】

一般个人PC可自制启动盘启动PE做维护或者安装系统。这一篇主要针对批量部署、维护场景。

几种通过PXE启动的server工具(主要针对windows网络启动场景)

1、AOMEI PXE Boot Tool

官网:https://www.ubackup.com/pxetool.html

2、Serva

官网:https://vercot.com/~serva/default.html

3、hanewinshcp

官网:https://www.hanewin.net/dhcp-e.htm

4、WDS(Windows Deployment Services,windows部署服务)

官网:https://docs.microsoft.com/en-us/windows/win32/wds/windows-deployment-services-portal

5、Tiny PXE Server 

官网:http://reboot.pro/files/file/303-tiny-pxe-server/

PXE Server部署

在实现PXE启动之前需要部署对应的服务。因环境限制,这里Server的环境使用CentOS6.3。

1、dhcp:yum install dhcp -y配置dhcp:vim /etc/dhcp/dhcpd.conf

# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#   see 'man 5 dhcpd.conf'

authoritative;
ddns-update-style interim;
allow booting;
allow bootp;
ignore client-updates;
set vendorclass = option vendor-class-identifier;
default-lease-time 180;

subnet xxxx netmask 255.255.255.0 {     //声明一个网段
}

subnet xxxx netmask 255.255.255.0
{
     option routers             xxxx;    //网关
     option subnet-mask         255.255.255.0;    //子网
     range dynamic-bootp        xxxx xxxx;    //声明提供的IP地址范围
     filename "/pxelinux.0";    //pxe专用启动引导文件,在tftp的根目录
     next-server xxx;    //TFTP服务器地址,因都在一台机器部署,这里填本机
}

启动服务:/etc/init.d/dhcpd start

2、tftp-server:yum install tftp-server -y,默认安装根目录:/var/lib/tftpboot

3、守护进程xinetd:yum install xinetd -y,主要是管理tftp-server

配置xineted:vim /etc/xinetd.d/tftp

# default: off
# description: The tftp server serves files using the trivial file transfer \
#   protocol.  The tftp protocol is often used to boot diskless \
#   workstations, download configuration files to network-aware printers, \
#   and to start the installation process for some operating systems.
service tftp
{
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -s /var/lib/tftpboot -m /var/lib/tftpboot/tftpd.remap -vvv --blocksize 1024
    disable         = no
    per_source      = 11
    cps         = 100 2
}

/var/lib/tftpboot/tftpd.remap内容:gr \\ /

启动xineted:/etc/init.d/xinetd start

4、因其他场景需要,安装nginx:yum install nginx -y

配置nginx:/etc/nginx/conf.d/default.conf,监听ipv6参数加:listen [::]:80 ipv6only=on。

server {
        listen       80 default_server;
        listen [::]:80 ipv6only=on;
        server_name  _;

        access_log  /var/log/nginx/hybird.access.log  main;

        location /upload {
                root /data/www;
                autoindex on;
                dav_methods PUT DELETE MKCOL COPY MOVE;
                create_full_put_path on;
                dav_access group:rw all:r;
        }

        location / {
                root   /data/www;
        }
}

PXE网络启动WinPE(熟悉PXE原理)

1、从上一篇得到WinPE的iso文件:WinPE_amd64,这里我们用UltraISO(软碟通)提取解压后找到boot.wim:C:\WinPE_amd64\sources\boot.wim

2、这里推荐打包和编辑wim镜像的工具Dism++:https://www.chuyu.me/zh-Hans/

点击文件,挂载映像,点击打开会话,就可以自定义wim映像。

 在挂载目录找到启动文件:C:\Users\Administrator\Desktop\mount_wim\Windows\Boot\PXE

3、在WinPE目录找到winpe.wim、BCD、boot.sdi

C:\Users\Administrator\Desktop\install_tools\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\en-us\winpe.wim

C:\Users\Administrator\Desktop\install_tools\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\Media\Boot\BCD

C:\Users\Administrator\Desktop\install_tools\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\Media\Boot\boot.sdi

4、以上几个文件都放到PXE Server的tftp目录。

5、 启动文件

linux的启动文件是yum install syslinux后,syslinux复制的pxelinux.0:cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

这里windows的pxe启动文件就是:pxeboot.n12。这里重命名并放到:/var/lib/tftpboot/Boot/startrom.0

bootmgr.exe放到/var/lib/tftpboot

6、配置文件生成

/var/lib/tftpboot/pxelinux.cfg是配置文件目录。配置文件可以代码生成或者是自定义。根据pxe找配置文件顺序规则(自定pxe官网寻找),这里命名为01-xxx(pxe会找对应的mac地址命名)。

windows的模板:

default 1
prompt 1
label 1
timeout 10
kernel Boot/startrom.0
append -

7、上述配置结束后启动流程

pxelinux.cfg/01-xxx—> /var/lib/tftpboot/Boot/startrom.0 —> /var/lib/tftpboot/bootmgr.exe —> / var/lib/tftpboot/Boot/BCD —> /var/lib/tftpboot/Boot/boot.sdi —> /var/lib/tftpboot/Boot/WinPE.wim —> winload.exe 执⾏PE2.0 的启动。

8、服务器从pxe启动即可。

不同文件的作用

startrom.0:也可以是pxeboot.0,实际是由pxeboot.com或者pxeboot.n12改名而来,这个文件对应WinXPPE中的startrom.n12文件(这里命名startrom.0沿用了xp的思想不推荐,可自定义)。这个文件主要作用是加载TFTP根目录下的bootmgr.exe文件。

bootmgr.exe:它也必须放到TFTP服务器的根目录下(与WinXPPE中的setupldr.exe对应)。它的作用主要是读取启动配置文件也就是BCD,根据BCD的配置进一步加载boot.sdi文件。

BCD:这是bootmgr的启动菜单配置文件,和windows启动菜单配置文件没有什么区别(它主要对应NT的boot.ini文件),由系统自带程序bcdedit.exe来进行配置和修改(PXE引导WinPE就用PE的bcdedit.exe)。

boot.sdi:boot.sdi是启动WIM必须的文件,没有会无法启动WIM文件。必须放到TFTP服务器/Boot目录下。可以“看做"空的ntfs镜像,虚拟X盘符的硬盘,WIM内核挂载到它上面。SDI格式相当于IMG格式,只是SDI格式在IMG文件前加了一个文件头。

WinPE.wim:这就是WinPE的主映像文件了,也要放到/Boot目录下。

应用场景

       可以自定义PE和启动脚本,实现大批量的PXE启动WinPE进行系统安装和系统维护。

       比如批量安装目标OS,基本思路是自定义PE里面的工具、自启动脚本,PXE启动PE后执行自脚本拉取windows系统的启动分区gho文件和系统分区的gho文件,使用ghost.exe进行ghost还原做大批量windows部署安装。详细参考ghost命令详解:http://www.upanok.com/jiaocheng/83.html

Ghost32.exe -clone,mode=pload,src=w:\boot.gho:1,dst=c:\:1 -fx -sure

Ghost32.exe -clone,mode=pload,src=w:\sys.gho:1,dst=c\:2 -fx -sure

       个人目前有这些场景的实践经验,后面有机会再写一篇。

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 一、用户需求简介 实训室管理系统是为了满足实训室管理人员和学生的管理需求而开发的一款系统。该系统主要分为两大模块:管理员模块和学生模块。管理员模块主要包括实训室信息管理、设备信息管理、预约管理、使用记录管理、用户管理等功能;学生模块主要包括实训室预约、使用记录查询等功能。 二、用户需求详细分析 1. 实训室信息管理 管理员可以添加、删除、修改实训室信息,包括实训室名称、所在地点、容纳人数、实训室描述等。 2. 设备信息管理 管理员可以添加、删除、修改设备信息,包括设备名称、设备型号、设备数量、设备描述等。 3. 预约管理 管理员可以查看实训室的预约情况,包括预约时间、预约人数、预约状态等。管理员还可以审核预约申请,同意或拒绝预约申请。 4. 使用记录管理 管理员可以查看实训室的使用情况,包括使用时间、使用人数、使用状态等。管理员还可以录入使用记录,包括使用人员、使用设备等信息。 5. 用户管理 管理员可以添加、删除、修改用户信息,包括用户名、密码、用户类型等。管理员还可以查看用户的预约和使用记录。 6. 实训室预约 学生可以在系统中预约实训室,包括预约时间、预约人数等信息。 7. 使用记录查询 学生可以在系统中查询自己的实训室使用记录,包括使用时间、使用设备等信息。 三、用户需求总结 综上所述,实训室管理系统的用户需求包括实训室信息管理、设备信息管理、预约管理、使用记录管理、用户管理、实训室预约、使用记录查询等功能。该系统旨在提高实训室的管理效率,方便管理人员进行实训室管理,同时也方便学生进行实训室预约和使用记录查询。 ### 回答2: php实训室管理系统的用户需求分析是对系统所需功能和特性的详细描述和分析。用户需求是指用户使用系统时所期望的功能、性能和使用界面等方面的要求。 首先,实训室管理系统的用户需求之一是管理人员需要能够创建和管理实训室的信息,包括实训室名称、位置、容量等。管理人员还希望能够对实训室进行分组或分类管理,以便更好地组织和查询。 其次,教师用户希望能够预约实训室进行教学活动。他们需要能够选择可用的实训室和时间,并且能够在系统中查看实训室的预约情况和使用情况。教师还希望能够随时取消或修改自己的预约。 学生用户主要是通过系统查询实训室的可用情况和预约情况。他们需要能够看到实训室的基本信息和预约的时间,以便合理安排自己的实训活动。 此外,系统还要提供日志记录功能,方便管理员查看用户的操作记录和系统的使用情况,以便对系统进行管理和优化。 对于用户界面的设计,系统应该具有良好的可用性,界面简洁明了,操作简单方便。用户能够直观地进行操作,减少学习成本和使用难度。 总之,通过对实训室管理系统用户需求的分析,可以明确系统应该具备的功能和性能要求,以便进行后续的系统设计和开发工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值