有没有办法可以将 xm 控制台的输出记录到某个文件中?
我可以在域配置文件中设置一些在我发出 xm create 时自动为我执行此操作的内容吗?
我试过:
xm console | tee domU-console.log
... ,但这不适合我的情况。我想在后台异步记录输出。
你可以试试xenconsoled
xenconsoled --log=guest --log-dir=/var/log/xen/guest/
如果您使用 XENCONSOLED_LOG_GUESTS=yes 设置 /etc/sysconfig/xend,Redhat 还会将访客控制台输出保存到 /var/log/xen/console。
如果可行,那么您应该能够:
nohup xm console | tee domU-console.log &
我根本不知道是否xm console
使用 stderr 但如果您也想确保获得输出,请执行以下操作:
nohup xm console 2>&1 tee domU-console.log &
tee
如果您打算注销,请删除。
程序 1:访问单访客虚拟机的控制台
1:打开 XenCenter,转到要访问的 VM 的常规选项卡,然后检查 UUID
2:打开XenServer文本控制台,运行list_domains命令,在输出中找到VM UUID
3:运行以下命令访问来宾虚拟机控制台:
/usr/lib/xen/bin/xenconsole <域ID>
程序 2:将新创建的 Linux VM 的输出记录到文本文件
要收集并保存 XenServer 主机上运行的所有 VM 的输出,请完成以下过程:
1:在 XenServer 主机上运行以下命令:
xenstore-write /local/logconsole/@ /tmp/console.%d.log
2:重新启动要从中收集控制台输出的 VM。
3:验证文件 /tmp/console..log 是否存在。此文件应包含 VM 控制台输出。要查找域 ID,请参阅程序 1:访问单访客虚拟机的控制台。
4:运行以下命令停止记录控制台输出:
xenstore-rm /local/logconsole/@