如何报告系统安装​​进度

如何报告系统安装​​进度

我想对虚拟化 (libvirt/kvm) Ubuntu 服务器的系统设置进度进行一些报告。我预计某种此类系统已经存在,但找不到任何东西。难道没有这种事吗?

对于自定义解决方案,我发现可以通过virt-install's--channel选项获得一个很好的界面。本质上,我可以启动一个守护进程,侦听主机上的消息,并在客户端上使用管道将消息发送到 virtio 设备或预配置的地址netcat

或者,我可以确保内核日志记录完成到主机上的文件中,并以这种方式发送我的消息。

还有其他合理/尝试过的解决方案吗?

答案1

我不熟悉部署虚拟 Ubuntu 服务器,但我已经使用 Cobbler Web 服务器中的 kickstart 脚本部署了虚拟 CentOS 服务器。该脚本安装curl,然后在安装的每个阶段之后使用curl 在Web 服务器上“ping”一个URL(对于每台计算机都是唯一的)。

我对 Vagrant 不熟悉,但我想它也有类似的功能。

答案2

好吧,KVM 来宾环境与来宾完全隔离,除了一些串行通信之外,不太可能与主机进行对话作为一项功能。您已经找到了有关设置沟通渠道的部分。

我建议使用预先播种的配置并采用这些方法之一。

  • 安装后请务必关闭电源。将其放入预置文件中:

    d-i cdrom-detect/eject boolean true
    d-i finish-install/reboot_in_progress note
    d-i debian-installer/exit/poweroff boolean true
    

    安装完成后,机器将自动断电。通过这种方式,可以很容易地获得有关安装是否已完成的一些指示,但不太清楚安装是否成功。不过,您可以检查 CD 是否已弹出(断开连接),并至少有一个大概的了解。

  • 让它运行安装后命令,也使用预置:

    d-i preseed/late_command string some_command_available_in_installer
    

    或者

    d-i preseed/late_command string echo "FINISHED" > /dev/ttyS4
    

    (更改目标设备)设备日志文件在主机上。

相关内容