我们目前正在尝试建立一个虚拟化环境,我们希望在 Debian 11 主机上使用 openSUSE 15.4 Leap 作为 Xen Guest (DomU)。
为此,我找到了一些解决此问题的资源,但可能有点过时:
我的配置文件目前如下所示:
#
# Configuration file for the Xen instance test2, created manually
#
#
#
# Kernel + memory size
#
kernel = '/opensuse-15.4/boot/vmlinuz-5.14.21-150400.24.33-default'
ramdisk = '/bootfiles/initrd'
vcpus = '4'
memory = '16384'
#
# Disk device(s).
#
root = '/dev/xvda2 ro'
disk = [
'file:/home/xen/domains/testsuserpm/disk.img,xvda2,w',
'file:/home/xen/domains/testsuserpm/swap.img,xvda1,w',
]
#
# Hostname
#
name = 'testsuserpm'
#
# Networking
#
dhcp = 'dhcp'
vif = [ 'mac=,bridge=xenbr0' ]
#
# Behaviour
#
on_poweroff = 'destroy'
on_reboot = 'restart'
on_crash = 'restart'
我通过将 .rpm 包转换为 .deb 包并将该文件安装到某个文件夹中来执行直接内核启动。至于安装我根据以下内容使用了冲洗如何并将其放入配置文件中链接的磁盘映像上。但是,在尝试启动虚拟机时,我收到以下错误消息:
从 /etc/xen/testsuserrpm.cfg 解析配置 ': 词法 errorerpm.cfg:8: 附近配置解析错误
': lexical errorerpm.cfg:9: config parsing error near
': 词法 errorerpm.cfg:10: 附近配置解析错误': lexical errorerpm.cfg:11: config parsing error near
': 词法 errorerpm.cfg:15: 附近配置解析错误': lexical errorerpm.cfg:16: config parsing error near
': 词法 errorerpm.cfg:17: 附近配置解析错误': lexical errorerpm.cfg:18: config parsing error near
': 词法 errorerpm.cfg:19: 附近配置解析错误': lexical errorerpm.cfg:23: config parsing error near
': 词法 errorerpm.cfg:27: 附近配置解析错误': lexical errorerpm.cfg:28: config parsing error near
': 词法 errorerpm.cfg:32: 附近配置解析': lexical errorerpm.cfg:33: config parsing error near
无法解析配置附近的错误:参数无效
我猜想在 Debian 上安装基于 .rpm 的软件包是不可能的。我能做些什么来让这项工作成功吗?
任何帮助表示赞赏。
最好的问候,克里斯
答案1
我认为从长远来看,通过主机提供的 grub2 二进制文件启动 PV domU 会更省事。 Debian 很可能已经提供了这样的东西。如果没有,它是软件包中所有 SUSE 版本的一部分,grub2-x86_64-xen.rpm
作为/usr/share/grub2/x86_64-xen/grub.xen
.
kernel=
如果安装 iso 映像也以磁盘形式提供,则将此二进制文件放入该行中。
否则,将boot/x86_64/loader/linux
和boot/x86_64/loader/initrd
从安装介质复制到主机,并将两者放入kernel=
和中ramdisk=
。这将启动安装程序。它将依次寻找安装介质。https://download.opensuse.org/distribution/leap/15.4/repo/oss/
如果不在内核命令行中使用此引导安装程序,则它可能默认为install=https://download.opensuse.org/distribution/leap/15.4/repo/oss/
使用过的root = '/dev/xvda2 ro'
不再需要,应删除。使用的 initrd 已经根据 UUID 知道其根文件系统在哪里。