On 03.01.2014 21:41, Eugene Grosbein wrote: > On 03.01.2014 18:14, [email protected] wrote: >> Всем привет. >> >> Тестирую одну штуку на виртуалке (VirtualBox) и нужно увидеть, что пишет >> ядро (а оно там пишет что-то, так как успеваю мельком заметить) после >> того, как написало syncing disks ... Не успеваю нажать Host+P (то >> слишком рано, то слишком поздно). >> Через syslog выставлено логгировать kern.*, но видимо оно влияет только >> на сообщения при загрузке. Так же настроил логгирование сообщений с >> консоли, но они туда не попадают. >> >> Есть ли возможность это заллогировать? > > Разумеется. В VirtualBox есть штатная возможность проброса COM-порта > в виртуалку, причем пробрасывать можно необязательно физический порт > хоста, а, например, unix socket, и это работает в FreeBSD. > > Ядро FreeBSD штатно умеет использовать COM-порт в качестве comconsole, > все сообщения ядра будут выдаваться туда. > > Всё это вместе работает, я использовал.
На хост-системе устанавливаем net/socat и запускаем скрипт: #!/bin/sh trap "stty sane" 0 1 2 3 15 socat unix-listen:/tmp/sock stdio,raw,echo=0,icanon=0 В свойствах виртуалки прописываем /tmp/sock в качестве пути для COM1. Запускаем виртуалку - вывод её ядра выдаёт скрипт, ввод тоже работает для loader prompt, getty на /dev/cuau0. Разумеется, если основной консолью сделать COM1: записать -D в /boot/config, а в loader.conf добавить: boot_multicons="YES" console="comconsole vidconsole" При желании в /etc/ttys повесить getty на /dev/cuau0.
