I apologize but this is a detailed post that describes my setup and the method I used to get a kernel boot log.
Host
Ubuntu 16.04
Virtualbox Guest
RemixOS-x86-B2016080301
Virtualbox Guest Settings
VBoxManage showvminfo RemixOS-x86-B2016080301
Name: RemixOS-x86-B2016080301
Groups: /
Guest OS: Other Linux (32-bit)
UUID: ec031fe6-8a58-44a4-91b7-7283703abb8d
Config file: /home/asifhh/VirtualBox/RemixOS-x86-B2016080301/RemixOS-x86-B2016080301.vbox
Snapshot folder: /home/asifhh/VirtualBox/RemixOS-x86-B2016080301/Snapshots
Log folder: /home/asifhh/VirtualBox/RemixOS-x86-B2016080301/Logs
Hardware UUID: ec031fe6-8a58-44a4-91b7-7283703abb8d
Memory size: 512MB
Page Fusion: off
VRAM size: 128MB
CPU exec cap: 100%
HPET: off
Chipset: piix3
Firmware: BIOS
Number of CPUs: 1
PAE: off
Long Mode: off
CPUID Portability Level: 0
CPUID overrides: None
Boot menu mode: message and menu
Boot Device (1): DVD
Boot Device (2): HardDisk
Boot Device (3): Not Assigned
Boot Device (4): Not Assigned
ACPI: on
IOAPIC: off
Time offset: 0ms
RTC: UTC
Hardw. virt.ext: on
Nested Paging: on
Large Pages: off
VT-x VPID: on
VT-x unr. exec.: on
Paravirt. Provider: Default
State: powered off (since 2016-08-05T23:29:34.417000000)
Monitor count: 1
3D Acceleration: on
2D Video Acceleration: off
Teleporter Enabled: off
Teleporter Port: 0
Teleporter Address:
Teleporter Password:
Tracing Enabled: off
Allow Tracing to Access VM: off
Tracing Configuration:
Autostart Enabled: off
Autostart Delay: 0
Default Frontend:
Storage Controller Name (0): IDE
Storage Controller Type (0): PIIX4
Storage Controller Instance Number (0): 0
Storage Controller Max Port Count (0): 2
Storage Controller Port Count (0): 2
Storage Controller Bootable (0): on
IDE (0, 0): /home/asifhh/VirtualBox/RemixOS-x86-B2016080301/RemixOS-x86-B2016080301.vdi (UUID: 33cbb135-9f8a-46a2-a34b-06f661f38858)
IDE (1, 0): Empty
NIC 1: MAC: 080027BF7694, Attachment: NAT, Cable connected: on, Trace: off (file: none), Type: Am79C973, Reported speed: 0 Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none
NIC 1 Settings: MTU: 0, Socket (send: 64, receive: 64), TCP Window (send:64, receive: 64)
NIC 2: disabled
NIC 3: disabled
NIC 4: disabled
NIC 5: disabled
NIC 6: disabled
NIC 7: disabled
NIC 8: disabled
Pointing Device: PS/2 Mouse
Keyboard Device: PS/2 Keyboard
UART 1: I/O base: 0x03f8, IRQ: 4, attached to pipe (server) '/tmp/vbox'
UART 2: disabled
UART 3: disabled
UART 4: disabled
LPT 1: disabled
LPT 2: disabled
Audio: enabled (Driver: PulseAudio, Controller: SB16, Codec: SB16)
Clipboard Mode: Bidirectional
Drag and drop Mode: Bidirectional
VRDE: disabled
USB: enabled
EHCI: enabled
XHCI: disabled
USB Device Filters:
<none>
Bandwidth groups: <none>
Shared folders: <none>
Video capturing: not active
Capture screens: 0
Capture file: /home/asifhh/VirtualBox/RemixOS-x86-B2016080301/RemixOS-x86-B2016080301.webm
Capture dimensions: 1024x768
Capture rate: 512 kbps
Capture FPS: 25
Guest:
Configured memory balloon size: 0 MB
Setup to get RemixOS Android Linux kernel boot log Virtualbox[RemixOS][tty0] => Host
You can find the following on the internet.
Virtualbox(RemixOS) ->
Settings -> Serial Ports Port1 -> Enable Serial Port ->
Port Number: COM1
Port Mode: Host Pipe
Path/Address: /tmp/vbox
Settings -> Network -> Enable Network Adapter -> Attached to: NAT
Boot up the RemixOS ISO image and select: Resident Mode
Simply append to the end of the kernel boot cmdline:
INSTALL=1 DEBUG=
After you install it you will be able to run it for the first time. But after you reboot it, you will see the RemixOS logo looping forever.
I changed my /mnt/grub/menu.lst first entry to the following all on a single line:
kernel /android-2016-08-03/kernel root=/dev/ram0 androidboot.hardware=remix_x86 androidboot.selinux=permissive SERIAL=random logo.showlogo=1 SRC=/android-2016-08-03 DATA=/android-2016-08-03/data console=tty0 console=ttyS0,115200n8 ignore_loglevel
So restart your Virtualbox guest and select the Debug Mode boot entry:
Remix OS XXXX-XX-XX (Debug mode)
On the shell you have to remount with read-write permissions and edit the first kernel boot entry in grub/menu.lst to be able to produce kernel log messages on the serial port that you already setup with the Virtualbox guest (please see above).
mount /mnt -o remount,rw
Edit the first kernel boot cmdline in /mnt/grub/menu.lst for the entry:
title Remix OS 2016-08-03
and append the following to the end of the kernel cmdline (kernel /android-YYYY-MM-DD/kernel root=/dev/ram0 ... ):
console=tty0 console=ttyS0,115200n8 ignore_loglevel
Then sync and reboot:
sync ; reboot -f
Now to get the RemixOS kernel boot log, install minicom and execute it and setup up the baud rate (115200) and port to connect to exactly this unix#/tmp/vbox
So you would execute minicom like this:
minicom --device unix#/tmp/vbox --baudrate 115200 --ansi --capturefile=kernel.log
You should see the following log: (I booted and then I shutdown.)
Amazingly I was able to boot up all the way and could not reproduce the failure with this kernel logging setup.
I setup the virtual machine with only 512MB!
Please see attached files:
remixos_kernel.log.pass
remixos_kernel.log.fail
The RemixOS logo appear at about timestamp: 20.139294
These are my observations:
PASS: Serial Port Enabled + Port Mode Connected + Virtualbox Kernel Serial Port Logging
FAIL: Serial Port Enabled + Port Mode Disconnected
PASS: Serial Port Disable (1024MB RAM)
I think I have narrowed it down to low RAM related failure. Looks like I cannot reproduce the problem with 1024MB or 1GB RAM.
Please see the attached file for details: remixos_kernel.log.fail
NOTE: The RemixOS appears at about 10sec of boot time.