AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 409543
Accepted
Bittrance
Bittrance
Asked: 2012-07-21 01:12:59 +0800 CST2012-07-21 01:12:59 +0800 CST 2012-07-21 01:12:59 +0800 CST

KVM 引导 off-image 内核和现有分区

  • 772

我正在从 Xen 切换到 qemu-kvm。我当前的 Xen 安装有许多 LVM 卷,每个卷都有一个分区(而不是完整的磁盘映像)。在 Xen 中,我使用如下配置启动每个 VM:

kernel = "/boot/vmlinuz-2.6.18-128.4.1.el5xen"
ramdisk = "/boot/initrd-xen-2.6.18-128.4.1.el5xen"
disk   = [ 'phy:/dev/vmdata/vm-standalone,sda1,w' ]

我现在想重用这些虚拟机,但改为在 kvm 下启动它们。似乎 virt-install--import可以让我这样做,使用--boot kernel=<kernel>,initrd=<initrd>,但我看不出如何指示 virt-install 将现有卷附加为引导/根文件系统。这可能吗?

kvm-virtualization
  • 3 3 个回答
  • 15343 Views

3 个回答

  • Voted
  1. Jared
    2012-07-24T00:24:38+08:002012-07-24T00:24:38+08:00

    我也一直在研究这个主题,只是发布了一个有点类似的问题,但范围不同: KVM/qemu - use LVM volumes directly without image file?

    对于您的特定问题,这项工作是否有效: https ://wiki.archlinux.org/index.php/QEMU#By_specifying_kernel_and_initrd_manually

    特别是,-append root=/dev/sda /dev/sda3。我自己没有尝试过,但它似乎应该做你想做的事。

    • 3
  2. Best Answer
    Bittrance
    2012-07-25T04:41:13+08:002012-07-25T04:41:13+08:00

    dynasy 和 Jared 的回答都指向正确的方向,但还有一点无法解释。

    对我的问题的简短回答是 virt-install 完全能够为引导系统提供一个分区。事实上,对于块设备,它并不关心,只是将其传递给将其设置为块设备的 qemu。然后内核使用/dev/sda(而不是/dev/sda1)作为根文件系统。

    实现此目的的命令行如下所示:

    virt-install --name nic 
      --ram 512 
      --disk /dev/vg_ext/nic-standalone
      --disk /dev/vg_ext/nic-swap
      --network bridge=br0
      --boot kernel=/boot/vmlinuz,initrd=/boot/initramfs.img,kernel_args="console=ttyS0 root=/dev/sda" 
      --serial=pty
    

    为了使这项工作正常进行,我必须修改 nic-standalone 上的 /etc/fstab,以便它指向正确的根文件系统和交换分区(/dev/sda、/dev/sdb)。上面的内核和 initrd 是标准的 CentOS 6 东西。(可能还需要各种性能参数/调整,我只是还没有走那么远。)

    • 3
  3. dyasny
    2012-07-24T00:31:23+08:002012-07-24T00:31:23+08:00

    只需使用与 Xen 类似的参数(内存、CPU 等)在virt-manager或通过它创建一个新的 VM virsh,并在要求为其创建虚拟磁盘时,指向现有的 Xen 磁盘。

    您可能需要稍微调整fstab一下,以指向/dev/vdX而不是xvdX(或 Xen 使用的任何内容)

    如果你想要一个非常好的移动程序来为你处理一切,你可以使用virt-v2v.

    • 2

相关问题

  • Xen 与 KVM 的性能对比

  • 什么是bridge_fd?

  • 如何在 kvm-linux 中登录除 ssh、vnc 之外的控制台

  • Linux 内核虚拟机

  • Vista 上的 VNC

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve