创建 Windows 11 虚拟机时,需要 TPM (Trusted Platform Module) 受信模块才能安装,因此在创建 KVM 虚拟机时添加此模块。
因
然后在启动虚拟机时遇到报错
Error starting domain: Unable to find 'swtpm_setup' binary in $PATH: No such file or directory
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 65, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 101, in tmpcb
callback(*args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/libvirtobject.py", line 57, in newfn
ret = fn(self, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/object/domain.py", line 1329, in startup
self._backend.create()
File "/usr/lib/python3/dist-packages/libvirt.py", line 1353, in create
raise libvirtError('virDomainCreate() failed')
libvirt.libvirtError: Unable to find 'swtpm_setup' binary in $PATH: No such file or directory
报错的大致意思是没有在 $PATH
中找到 swtpm_setup
的可执行文件,经过查询发现这是用于模拟 TPM 模块使用的。
果
需要手动安装 https://github.com/stefanberger/swtpm 才能实现。
这个模块的开发者已经针对一些常见的发行版制作了安装包。
以 Ubuntu 20.04 LTS 为例
可以直接添加此 PPA 源,或者 Web 访问手动下载 deb 包进行安装。
https://launchpad.net/~stefanberger/+archive/ubuntu/swtpm-focal/+packages
小贴士:上述报错所需要的文件在 swtpm-tools 包中。
在没有特殊需要的情况是只需要安装以下四个包,dbgsym 结尾的是调试所需的符号文件,_dev 结尾的是开发工具,非开发的情况下无需安装。
libtpms0_0.9.1-1_amd64.deb
swtpm-libs_0.7.0-1_amd64.deb
swtpm-tools_0.7.0-1_amd64.deb
swtpm_0.7.0-1_amd64.deb
架构根据机器类型选择,没有的架构需要手动编译。
附录
参考链接
本文由 柒 创作,采用 知识共享署名4.0
国际许可协议进行许可。
转载本站文章前请注明出处,文章作者保留所有权限。
最后编辑时间: 2021-12-14 15:36 PM