在制作靶场镜像的时候发现需要上传qcow2的镜像文件,找了半天,找到了解决办法,记录一下。
刚开始使用命令,老报错
apt-get install qemu-utils
报错内容如下:
┌──(root㉿kali)-[~/桌面]
└─# apt-get install qemu-utils
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
libc-bin : 依赖: libc6 (< 2.37) 但是 2.37-12 正要被安装
libc6-i386 : 依赖: libc6 (= 2.36-8) 但是 2.37-12 正要被安装
libpam-systemd : 依赖: systemd (= 255.2-3) 但是 252.5-2 正要被安装
locales : 依赖: libc-bin (> 2.37) 但是 2.36-8 正要被安装
openssh-sftp-server : 依赖: openssh-client (= 1:9.6p1-2) 但是 1:9.2p1-2 正要被安装
procps : 依赖: libsystemd0 (>= 254)
systemd-timesyncd : 依赖: libsystemd-shared (= 255.2-3) 但是 252.5-2 正要被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。
1、更新源
使用的ali源,如果需要配置,请看我其他期文章进行配置。
apt update
2、 修正错误
apt --fix-broken install
一直回车、确认就行,具体的我也看不懂。
3、安装qemu-utils
apt install qemu-utils
运行结果如下:
4、验证安装完成
find / -name qemu-utils
5、实验转换
1、使用tar
命令解压缩ova文件,并获取其中的vmdk格式磁盘映像文件。例如,假设您已将ova文件解压缩到名为vm-exported/
的目录中,则可以使用以下命令获取vmdk文件:
tar -xvf vm.ova -C vm-exported/
2、将vmdk文件转换为qcow2格式。请注意,这里使用的是qemu-img convert
命令。
qemu-img convert -f vmdk -O qcow2 vm-exported/*.vmdk vm.qcow2
3、删除之前提取的所有文件和目录(如vm-exported)。
现在,您已经成功地将VirtualBox导出的ova转换为qcow2格式,并可以在KVM/QEMU等虚拟化平台上使用该镜像。