Configuring the CoreDumper on Oracle Solaris Hosts
is capable of producing its own core files for extensive
debugging when things go wrong. Currently this is only available on Oracle Solaris hosts.
The CoreDumper can be enabled using the following command:
$ VBoxManage setextradata VM-name VBoxInternal2/CoreDumpEnabled 1
You can specify which directory to use for core dumps with this command, as follows:
$ VBoxManage setextradata VM-name VBoxInternal2/CoreDumpDir path-to-directory
Ensure the directory you specify is on a volume with sufficient free space and that the process has sufficient permissions to write files to this
directory. If you skip this command and do not specify any core dump directory, the current directory of the executable will be used. This would most likely fail when
writing cores as they are protected with root permissions. It is recommended you explicitly set a core dump
directory.
You must specify when the CoreDumper should be triggered.
This is done using the following commands:
$ VBoxManage setextradata VM-name VBoxInternal2/CoreDumpReplaceSystemDump 1
$ VBoxManage setextradata VM-name VBoxInternal2/CoreDumpLive 1
At least one of the above two commands will have to be provided if you have enabled the CoreDumper.
Setting CoreDumpReplaceSystemDump sets up the VM to override the host's core dumping mechanism
and in the event of any crash only the CoreDumper would
produce the core file.
Setting CoreDumpLive sets up the VM to produce cores whenever the VM process receives a
SIGUSR2 signal. After producing the core file, the VM will not be terminated and will continue
to run. You can thus take cores of the VM process using the following command:
$ kill -s SIGUSR2 VM-process-id
The CoreDumper creates core files of the form
core.vb.process-name.process-ID
such as core.vb.VBoxHeadless.11321.