如何获取oracle VM的屏幕日志

如何获取oracle VM的屏幕日志

当我启动带有 Linux 操作系统的 Oracle VM 时,我想要获得标准输出,即屏幕上出现的任何内容。有没有任何工具或者有什么方法可以获取它,以便我可以检查该文件以用于其他目的。

基本上我需要该输出来检查某个特定的关键字是否出现,例如Do you want to continue (y/n). 在此输入图像描述

我需要一个文件,其中屏幕上出现的任何内容都会重定向到该文件。

答案1

基于https://www.virtualbox.org/wiki/Serial_redirect您可以使用串行端口:

编辑虚拟机设置,添加串行端口 (COM1) 并将端口模式设置为原始。作为端口/文件路径,选择 /tmp/ttyVBOX。

启动 VM,然后在 grub 启动菜单中选择e编辑并导航到以 kernel 开头的行。附加

console=ttyS0 console=tty0 ignore_loglevel

从主机上的另一个终端会话,执行tail -f /tmp/ttyVBOX

现在,从 VM 中输入b以引导 VM 来宾操作系统。现在,输出应该在您的终端中可见。

要使此设置对于来宾操作系统永久有效,这样您就不必编辑内核行,请编辑 /boot/grub/menu.lst 中某处的 grub menu.lst 文件(对于 grub v1)或按照中的步骤操作https://askubuntu.com/questions/19486/how-do-i-add-a-kernel-boot-parameter对于 grub v2

进入来宾操作系统后,您可以启动 ssh 通过端口转发连接到主机操作系统:

如果您使用 NAT 的默认网络模式,您应该能够使用

ssh -L 2222:localhost:22 10.0.2.2

这将启动与主机操作系统的 SSH 会话,并将流量从主机操作系统端口 2222 重定向到端口 22 上的来宾操作系统。

从主机操作系统您应该能够使用

ssh -p 2222 user@localhost

实际上,这将启动与来宾操作系统的 SSH 会话。

这样,您将拥有控制台(启动时)和终端会话(使用 SSH)的文本模式,这将允许您复制文本并用它来做您的事情。

相关内容