首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在qemu-kvm上安装kvm依赖项

无法在qemu-kvm上安装kvm依赖项
EN

Stack Overflow用户
提问于 2016-02-13 00:48:52
回答 3查看 4.5K关注 0票数 2

我正在尝试按照步骤here在Debian7.7上设置KVM虚拟化,它运行在Core(TM)i5-4402ECPU@ 1.6 GHz上。

在尝试了apt-get install kvm qemu-kvm libvirt-bin virtinst之后,我得到了

代码语言:javascript
复制
The following packages have unmet dependencies:
 qemu-kvm : Conflicts: kvm
E: Unable to correct problems, you have held broken packages.

然后,我逐个尝试安装它们,并成功地安装了除kvm之外的所有其他组件。

执行apt-get install kvm时,我得到以下输出:

代码语言:javascript
复制
The following packages have unmet dependencies:
 kvm : Depends: qemu-kvm but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

我已经关注了this线程,但这些建议对我并不起作用。我也试过

apt-get clean apt-get update apt-get upgrade apt-get install -f

但没有成功。

EN

回答 3

Stack Overflow用户

发布于 2016-05-13 14:32:42

1).Check仓库:

代码语言:javascript
复制
###### Ubuntu Main Repos
deb http://us.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse 
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse 

###### Ubuntu Update Repos
deb http://us.archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse 
deb http://us.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse 
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse 
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse 
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse 
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse 

2).Remove kvm

代码语言:javascript
复制
apt-get remove --purge libvirt-bin kvm qemu-kvm libvirt-bin virtinst

3).Install

代码语言:javascript
复制
apt-get install kvm qemu-kvm libvirt-bin virtinst
票数 1
EN

Stack Overflow用户

发布于 2016-05-30 23:16:43

我构建了许多Debian 7 kvm qemu设置,我使用Debian 7只是为了让debian 8稳定下来,尽管很快就会开始使用debian 8。

我认为标准包太过时了,可用的内核太旧了,我发现我收到了很多错误和冻结,为了让它稳定,这里是一个全新的安装。确保您的IOMMU已在bios中启用。请注意,我在AMD 8核心机器上做了这件事。

代码语言:javascript
复制
apt-get build-dep qemu
apt-get build-dep qemu
apt-get install git bc fakeroot kernel-package
apt-get install bc fakeroot kernel-package ca-certificates

获取qemu的最新内核和git

代码语言:javascript
复制
cd /usr/src
wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.19.8.tar.gz
tar -xzf linux-3.19.8.tar.gz
git clone git://git.qemu-project.org/qemu.git
cd linux-3.19.8
make oldconfig
make menuconfig

现在启用内核中能使kvm工作得最好的部分

代码语言:javascript
复制
Virtualization
(CONFIG_VIRTUALIZATION=y)
Virtualization > Kernel-based Virtual Machine (KVM) Support
(CONFIG_KVM=y)
Virtualization > KVM for <whichever processor you have>
(CONFIG_KVM_INTEL=y and/or CONFIG_KVM_AMD=y)

您可以编译为模块M

代码语言:javascript
复制
Virtualization > Host kernel accelerator for virtio net
(CONFIG_VHOST_NET=m)
Device Drivers > Virtio drivers > PCI driver for virtio devices
(CONFIG_VIRTIO_PCI=m)
Device Drivers > Virtio drivers > Virtio balloon driver
(CONFIG_VIRTIO_BALLOON=m)

Processor Type and Features > Preemption Model > Preemptible Kernel (Low Latency Desktop)
(CONFIG_PREEMPT=y)
Processor Type and Features > Timer Frequency > 1000 Hz
(CONFIG_HZ_1000=y)

当你做好debian包之后

代码语言:javascript
复制
make-kpkg --initrd --append-to-version=kvm.1 kernel_image kernel_headers
cd ..
dpkg -i linux-headers-3.19.8kvm.1_3.19.8kvm.1-10.00.Custom_amd64.deb linux-image-3.19.8kvm.1_3.19.8kvm.1-10.00.Custom_amd64.deb

然后安装,当然

代码语言:javascript
复制
dpkg -i linux-headers-3.19.8kvm.1_3.19.8kvm.1-10.00.Custom_amd64.deb linux-image-3.19.8kvm.1_3.19.8kvm.1-10.00.Custom_amd64.deb

重新启动并检查您是否在新内核中

代码语言:javascript
复制
uname -r
3.19.8kvm.1

现在让我们加载git部分,让这个节目上路..

代码语言:javascript
复制
git submodule update --init dtc
cd /usr/src/qemu
./configure --enable-kvm && make && make install

和Libvirt然后检查你的dep以防万一

代码语言:javascript
复制
apt-get install libvirt-bin build-dep qemu
/etc/init.d/libvirt-bin restart

确保设置网络设备的网桥

代码语言:javascript
复制
nano /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
#allow-hotplug eth0
#iface eth0 inet dhcp

##main onboard port0
auto eth0
iface eth0 inet manual

auto br0
#iface br0 inet dhcp
#        bridge_ports eth0
#        bridge_stp off
#        bridge_fd 0
#        bridge_maxwait 0

iface br0 inet static
    address 10.0.0.241
    network 10.0.0.0
    netmask 255.255.255.0
    broadcast 10.0.0.255
    gateway 10.0.0.254
    bridge_ports eth0
    bridge_stp off
    bridge_fd 0
    bridge_maxwait 0


 bridge_stp off # disable Spanning Tree Protocol
 bridge_fd 0 # no forwarding delay

下面是一些可能有帮助的命令

代码语言:javascript
复制
brctl show
brctl showmacs br0

有帮助的事情(请注意,我这样做很可能会遗漏一些东西,比如backports repo

代码语言:javascript
复制
nano /etc/apt/sources.list
deb http://http.debian.net/debian wheezy-backports main
apt-get update;apt-get install qemu-guest-agent

我希望这对某些人有帮助。在Debian8中,可以更好地支持更新的内核特性,这些特性支持kvm qemu的最新版本,以便进行更好的优化。

票数 1
EN

Stack Overflow用户

发布于 2018-06-08 18:19:26

我也有同样的问题。

尝试只安装不打算安装的程序包。它可能会在引用另一个包时出错。尝试手动安装(apt install packageName),直到您遇到最后一个问题。在我的例子中,它依赖于一个等待安装的包(它是3.2.27-1ubuntu0.16.04.1)来解决这个问题,我修改了存储库列表

代码语言:javascript
复制
vi /etc/apt/sources.list

并添加了所需的一个

代码语言:javascript
复制
deb http://security.ubuntu.com/ubuntu xenial-security main

执行更新

代码语言:javascript
复制
apt update; apt dist-upgrade

现在您可以毫无错误地安装软件包(在您的示例中,apt install qemu-kvm)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35367981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档