syslinux 输出在 QEMU 串行控制台中重复

syslinux 输出在 QEMU 串行控制台中重复

知道为什么吗系统LinuxQEMU 串行控制台中的输出重复?

SeaBIOS (version rel-1.14.0-0-g155821a1990b-prebuilt.qemu.org)


iPXE (http://ipxe.org) 00:03.0 CA00 PCI2.10 PnP PMM+3FF8F290+3FEEF290 CA00
                                                                               


Booting from Hard Disk...

SYSLINUX 6.03 EDD 2014-10-06 Copyright (C) 1994-2014 H. Peter Anvin et al

SYSLINUX 6.03 2014-10-06 Copyright (C) 1994-2014 H. Peter Anvin et al
boot:boot:  

Loading linux...Loading linux...  ook
k
Loading initrd..Loading initrd....

QEMU 是这样启动的:

qemu-system-x86_64 -m 1024 -smp 2 -drive format=raw,file=/dev/sdb -vga none \
    -serial telnet:localhost:1234,server,wait -nographic

和...

telnet localhost 1234

我正在修改 openSUSE 启动介质以与串行控制台一起使用

diff -uNp /mnt/boot/x86_64/loader/syslinux.cfg{.orig,}
--- /mnt/boot/x86_64/loader/syslinux.cfg.orig   2021-03-19 01:05:00.000000000 +0100
+++ /mnt/boot/x86_64/loader/syslinux.cfg        2021-03-19 01:23:26.000000000 +0100
@@ -1,4 +1,6 @@
-default harddisk
+serial --unit=0 --speed=115200
+terminal --timeout=10 serial console
+default linux
 
 # hard disk
 label harddisk
@@ -7,7 +9,7 @@ label harddisk
 # install
 label linux
   kernel linux
-  append initrd=initrd splash=silent showopts
+  append initrd=initrd textmode=1 console=ttyS0,115200n81
 
 # upgrade
 label upgrade
@@ -42,7 +44,6 @@ label memtest
   menu label ->x memtest
   kernel memtest
 
-ui             gfxboot bootlogo message
 implicit       1
 prompt         1
 timeout                600

我的快速而肮脏的笔记https://gist.github.com/jirib/7970eed8431013983a8cf1c947041c2a

答案1

磁盘上可能存在两个版本的 syslinux 二进制文件。系统启动的第一个已损坏并失败。每次您看到启动屏幕以 开头时SYSLINUX 6.03 EDD,就意味着发生了错误。我很惊讶你的 qemu 实例运行第二个 syslinux 二进制文件。

相关内容