我正在无人值守地安装
Windows.其中一部分是安装virtualBox guest添加项,由安装程序运行,因为Autounattend.xml中有以下条目:
<?xml version="1.0" encoding="utf-8"?> <unattend xmlns="urn:schemas-microsoft-com:unattend"> ... <settings pass="oobeSystem"> ... <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="NonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> ... <FirstlogonCommands> <SynchronousCommand> <Order>30</Order> <Description>VirtualBox Additions</Description> <CommandLine>F:\VBoxWindowsAdditions-x86.exe /S</CommandLine> </SynchronousCommand> ...
它运行正常,没有GUI安装.但是,弹出两个窗口询问是否安装两个设备驱动程序.这对于自动安装来说不是好兆头.有没有办法强制win7接受驱动程序,或者我可以设置一个注册表项以使其信任它们?
避免这些提示的最佳方法是获取设备驱动程序签名所需的证书,并在安装之前将其安装在guest虚拟机上.您可以在本地计算机中找到Sun的证书和Oracle的证书 – > Trusted Publisher证书存储区.您可以轻松地从那里导出它们,然后在安装添加项之前将它们导入到guest虚拟机中.
要从已安装的计算机中提取证书,并使用PowerShell信任用于对设备驱动程序进行签名的证书,请执行以下操作:
cd cert:\LocalMachine\TrustedPublisher $cert = dir | where { $_.Subject -like "*Oracle*" } $type = [System.Security.Cryptography.X509Certificates.X509ContentType]::Cert $bytes = $cert.Export($type) [System.IO.File]::WriteAllBytes("C:\Oracle.cer",$bytes)
您可能希望运行上述命令并将* Oracle *替换为* Sun Microsystems *并捕获这两个证书,因此它们都可以存在,因此您可以使用VirtualBox更加独立于版本.只需确保在无人参与的guest虚拟机添加之前安装了这些证书.