u盘安装 windows无法从无人参与应答文件读取

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了u盘安装 windows无法从无人参与应答文件读取相关的知识,希望对你有一定的参考价值。

请别再说去掉软驱,是我在现实电脑上装的,不是在虚拟机!

刚才在虚拟机中安装Win8消费者预览版出现“Windows无法从无人参与应答文件读取<ProductKey>设置”,现在把解决方法提供给大家!

在vmware 8中安装Windows 8 Consumer Preview版或Dev
Preview版时碰到下面的提示:

“ windows cannot read the product key from the unattended
answer file”

“Windows无法从无人参与应答文件读取<ProductKey>设置”

原因:

VMware 自动开启软驱(floppy
disk)并装载了“autoinst.flp”文件。

解决方案:

在设置中关闭软驱(floppy disk),然后重试成功!追问

草你妹,没看我已经说过了吗?别再跟我说去掉软驱这种办法!我不是在虚拟机上安装,我是在现实机上安装?懂???

参考技术A 你的u盘是不是在mac系统下使用bootcamp制作的?不是的话要用bootcamp制作,否则会导致驱动程序找不到 参考技术B 把光驱里的光盘拿出来就好了,因为系统去读了光盘,没读到文件,微软做的东西很傻逼的 参考技术C 今天安装win10也遇到这样的问题了,前面安装了三台机器-台式机,都是没有挂光驱的,挂了光驱就不行了,遇到楼主说的问题,后来把光驱的数据线拔了,再次安装,就不会弹出那个窗口了,可以正常的安装,这只是我的解决方法,你们可以尝试下,希望可以帮到更多人。。。

kickstart无人值守

以前是怎么安装系统的

1.光盘(ISO文件,光盘的镜像文件) à每一台物理机都得给一个光驱,如果用外置光驱的话,每台机器都需要插一下

 

2.U盘:ISO镜像刻录到U盘à需要每台机器都需要插一下

 

3.并行安装à网络安装


批量自动安装


实现原理:将手动安装的所有的详细步骤记录到一个文件中,然后有一种软件通过读取这个文件就可以实现自动化安装系统


kickstart原理及组件


技术分享图片





技术分享图片


kickstart原理


kickstart是一种无人值守的安装方式。它的工作原理是在安装过程中记录人工干预填写的各种参数,并生成一个名为ks.cfg的文件。

PXEDHCP发送请求--DHCP服务器提供信息--PXE客户端请求下载启动文件--TFTP响应客户端请求并传送文件--PXE请求下载自动应答文件


环境准备


[[email protected] ~]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[[email protected] ~]# uname -r

3.10.0-693.el7.x86_64

[[email protected] ~]# getenforce

Disabled

[[email protected] ~]# systemctl status firewalld.service

firewalld.service - firewalld - dynamic firewall daemon

   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)

   Active: inactive (dead)

     Docs: man:firewalld(1)

[[email protected] ~]# hostname -I

10.0.0.201 172.16.1.201


kickstart无人值守部署

安装DHCP服务

DHCPDynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、网关地址、DNS服务器地址等信息,并能够提升地址的使用率。DHCP服务



[[email protected] ~]# yum install -y dhcp

 

Installed:

  dhcp.x86_64 12:4.2.5-58.el7.centos


修改dhcp配置文件


cat >>/etc/dhcp/dhcpd.conf<<EOF

subnet  172.16.1.0 netmask 255.255.255.0 {  #服务端本机IP

        range 172.16.1.100 172.16.1.199;   # 可分配的起始IP-结束IP

        option subnet-mask 255.255.255.0;  # 设定netmask

        default-lease-time 21600;          # 设置默认的IP租用期限

        max-lease-time 43200;            # 设置最大的IP租用期限

        next-server 172.16.1.201;          # 告知客户端TFTP服务器的ip

        filename "/pxelinux.0";             # 告知客户端从TFTP根目录下载pxelinux.0文件

}

EOF


启动服务



[[email protected] ~]# systemctl start dhcpd

[[email protected] ~]# systemctl status dhcpd

dhcpd.service - DHCPv4 Server Daemon

   Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; disabled; vendor preset: disabled)

   Active: active (running) since Mon 2018-01-08 09:35:15 CST; 11s ago

     Docs: man:dhcpd(8)

           man:dhcpd.conf(5)

 Main PID: 1398 (dhcpd)

   Status: "Dispatching packets..."

   CGroup: /system.slice/dhcpd.service

           └─1398 /usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid

Jan 08 09:35:15 oldboylnb dhcpd[1398]: Sending on   LPF/eth1/00:0c:29:52:4d:f5/172.16.1.0/24

Jan 08 09:35:15 oldboylnb dhcpd[1398]:

Jan 08 09:35:15 oldboylnb dhcpd[1398]: No subnet declaration for eth0 (10.0.0.201).

Jan 08 09:35:15 oldboylnb dhcpd[1398]: ** Ignoring requests on eth0.  If this is not what

Jan 08 09:35:15 oldboylnb dhcpd[1398]:    you want, please write a subnet declaration

Jan 08 09:35:15 oldboylnb dhcpd[1398]:    in your dhcpd.conf file for the network segment

Jan 08 09:35:15 oldboylnb dhcpd[1398]:    to which interface eth0 is attached. **

Jan 08 09:35:15 oldboylnb dhcpd[1398]:

Jan 08 09:35:15 oldboylnb dhcpd[1398]: Sending on   Socket/fallback/fallback-net

Jan 08 09:35:15 oldboylnb systemd[1]: Started DHCPv4 Server Daemon.


查看日志



[[email protected] ~]#  tail -20  /var/log/messages

Jan  8 09:35:15 oldboylnb dhcpd: Listening on LPF/eth1/00:0c:29:52:4d:f5/172.16.1.0/24

Jan  8 09:35:15 oldboylnb dhcpd: Sending on   LPF/eth1/00:0c:29:52:4d:f5/172.16.1.0/24

Jan  8 09:35:15 oldboylnb dhcpd:

Jan  8 09:35:15 oldboylnb dhcpd: No subnet declaration for eth0 (10.0.0.201).

Jan  8 09:35:15 oldboylnb dhcpd: ** Ignoring requests on eth0.  If this is not what

Jan  8 09:35:15 oldboylnb dhcpd:   you want, please write a subnet declaration

Jan  8 09:35:15 oldboylnb dhcpd:   in your dhcpd.conf file for the network segment

Jan  8 09:35:15 oldboylnb dhcpd:   to which interface eth0 is attached. **

Jan  8 09:35:15 oldboylnb dhcpd:

Jan  8 09:35:15 oldboylnb dhcpd: Sending on   Socket/fallback/fallback-net

Jan  8 09:35:15 oldboylnb systemd: Started DHCPv4 Server Daemon.


安装TFTP服务

TFTPTrivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69


下载并启动tftp


[[email protected] ~]# yum install -y tftp-server

 

Installed:

   tftp-server.x86_64 0:5.2-13.el7

 

[[email protected] ~]# systemctl start tftp.socket

[[email protected] ~]# systemctl status tftp.socket

tftp.socket - Tftp Server Activation Socket

   Loaded: loaded (/usr/lib/systemd/system/tftp.socket; disabled; vendor preset: disabled)

   Active: active (listening) since Mon 2018-01-08 09:53:27 CST; 36s ago

   Listen: [::]:69 (Datagram)

 

Jan 08 09:53:27 oldboylnb systemd[1]: Listening on Tftp Server Activation Socket.

Jan 08 09:53:27 oldboylnb systemd[1]: Starting Tftp Server Activation Socket.


请求下载启动文件syslinux

syslinux是一个功能强大的引导加载程序,而且兼容各种介质。SYSLINUX是一个小型的Linux操作系统,它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。


[roo[email protected] tftpboot]# yum install -y syslinux

 

Installed:

  syslinux.x86_64 0:4.05-13.el7                                                                  

 

Dependency Installed:

  mtools.x86_64 0:4.0.18-5.el7      


[[email protected] tftpboot]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

[[email protected] tftpboot]# ll

total 28

-rw-r--r-- 1 root root 26764 Jan  8 10:14 pxelinux.0


新建一个pxelinux.cfg目录,存放客户端的配置文件


[[email protected] /]# mkdir -p /var/www/html/CentOS7

[[email protected] /]# mount /dev/cdrom /var/www/html/CentOS7

mount: /dev/sr0 is write-protected, mounting read-only

 

[[email protected] CentOS7]# \cp -a isolinux/* /var/lib/tftpboot/
[[email protected] /]#mkdir -p /var/lib/tftpboot/pxelinux.cfg

[[email protected] isolinux]# pwd

/var/www/html/CentOS7/isolinux
[[email protected] isolinux]# cp isolinux.cfg  /var/lib/tftpboot/pxelinux.cfg/default

cp: overwrite ‘/var/lib/tftpboot/pxelinux.cfg/default’? y


安装httpd服务



[[email protected] isolinux]# yum -y install httpd

[[email protected] isolinux]# systemctl start httpd.service


查看网页

技术分享图片


修改default文件


[[email protected] isolinux]# vim /var/lib/tftpboot/pxelinux.cfg/default
append initrd=initrd.img method=http://172.16.1.201/CentOS7/
append initrd=initrd.img inst.repo=http://172.16.1.201/CentOS7/   2选1

技术分享图片


手动网络安装

新建一台空白虚拟机,也不要挂载ISO镜像,创建2个网卡,打开电源。LAN区段172.16.1.0/24


技术分享图片


技术分享图片

技术分享图片

技术分享图片


自动安装

创建ks.cfg文件


[[email protected] ks_config]# cat CentOS7-ks.cfg

# Kickstart Configurator for CentOS 7 by yao zhang

install                               告知安装程序,这是一次全新安装,而不是升级upgrade

url --url=http://172.16.1.201/CentOS7/     通过FTPHTTP从远程服务器上的安装树中安装

text                                 使用文本模式安装

lang en_US.UTF-8                     设置在安装过程中使用的语言以及系统的缺省语言

keyboard us                          设置系统键盘类型

zerombr                             清除mbr引导信息

 

bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" 系统引导相关配置

指定引导记录被写入的位置.有效的值如下:mbr(缺省),partition(在包含内核的分区的第一个扇区安装引导装载程序)none(不安装引导装载程序)

--driveorder,指定在BIOS引导顺序中居首的驱动器

--append=,指定内核参数.要指定多个参数,使用空格分隔它们

 

network  --bootproto=static --device=eth0 --gateway=10.0.0.254 --ip=10.0.0.202 --nameserver=223.5.5.5 --netmask=255.255.255.0 –activate  为通过网络的kickstart安装以及所安装的系统配置联网信息

--bootproto=[dhcp/bootp/static]中的一种,缺省值是dhcpbootpdhcp被认为是相同的。

static方法要求在kickstart文件里输入所有的网络信息。

 

network  --bootproto=static --device=eth1 --ip=172.16.1.202 --netmask=255.255.255.0 --activate

network  --hostname=Cobbler

#network --bootproto=dhcp --device=eth1 --onboot=yes --noipv6 --hostname=CentOS7

--ip=,要安装的机器的IP地址

--gateway=,IP地址格式的默认网关

--netmask=,安装的系统的子网掩码

--hostname=,安装的系统的主机名

--onboot=,是否在引导时启用该设备

--noipv6=,禁用此设备的IPv6

--nameserver=,配置dns解析

 

timezone --utc Asia/Shanghai                 设置系统时区

authconfig --enableshadow --passalgo=sha512   系统认证信息

 

rootpw  --iscrypted    root密码$6$X20eRtuZhkHznTb4$dK0BJByOSAWSDD8jccLVFz0CscijS9ldMWwpoCw/ZEjYw2BTQYGWlgKsn945fFTjRC658UXjuocwJbAjVI5D6/

 

clearpart --all –initlabel   清空分区

--all 从系统中清除所有分区,--initlable 初始化磁盘标签

 

part /boot --fstype xfs --size 1024

part swap --size 1024

part / --fstype xfs --size 1 –grow   

--fstype=,为分区设置文件系统类型.有效的类型为ext2,ext3,swapvfat

--asprimary,强迫把分区分配为主分区,否则提示分区失败

--size=,MB为单位的分区最小值.在此处指定一个整数值,500.不要在数字后面加MB

--grow,告诉分区使用所有可用空间(若有),或使用设置的最大值

 

firstboot –disable                 负责协助配置redhat一些重要的信息

selinux –disabled                 关闭selinux

firewall –disabled                 关闭防火墙

logging --level=info                   设置日志级别

reboot        设定安装完成后重启,此选项必须存在,不然kickstart显示一条消息,并等待用户按任意键后才重新引导,也可以选择halt关机

 

%packages

@^minimal

@compat-libraries

@debugging

@development

tree

nmap

sysstat

lrzsz

dos2unix

telnet

wget

vim

bash-completion

%end


[[email protected] ks_config]# cat  /var/lib/tftpboot/pxelinux.cfg/default

default ks

prompt 0

 

label ks

  kernel vmlinuz

  append initrd=initrd.img ks=http://172.16.1.201/ks_config/CentOS7-ks.cfg net.ifnames=0 biosdevname=0 ksdevice=eth1

技术分享图片

以上是关于u盘安装 windows无法从无人参与应答文件读取的主要内容,如果未能解决你的问题,请参考以下文章

WIN7安装到最后出现“WINDOWS安装程序加载或搜索无人参与应答文件时遇到错误”的错误提示框

安装window7的时候 提示: window 无法应用无人参与应答文件的《diskconfiguration》设置 就无法在安装了

Windows无法分析或处理pass的无人参与应答文件......

WDS的配置之无人参与安装

win10自动应答文件创建新用户密码

注入自动应答文件什么意思