在 Ubuntu 上使用 VirtualBox 进行“调试”,通常指以下几种情况之一。我先分场景说明,你可以对号入座;如果需要更具体的操作,我可以继续展开。
常见于:
虚拟机日志位置:
~/VirtualBox VMs/<虚拟机名>/Logs/VBox.log
查看错误:
cat ~/VirtualBox VMs/<虚拟机名>/Logs/VBox.log | less
lsmod | grep vbox
正常应有:
vboxdrv
vboxnetflt
vboxnetadp
若缺失:
sudo /sbin/vboxconfig
或:
sudo modprobe vboxdrv
sudo usermod -aG vboxusers $USER
然后 注销重登。
即:虚拟机里的 Ubuntu 出问题,需要调试
VirtualBox 设置 → 串口:
/tmp/ubuntu-serial宿主机连接:
socat -,raw,echo=0 /tmp/ubuntu-serial
或:
minicom -D unix#/tmp/ubuntu-serial
Guest 内核参数(GRUB):
console=ttyS0,115200n8
适合内核开发:
nokaslr
宿主机:
gdb vmlinux
target remote :1234
top
htop
启动虚拟机时:
VirtualBox --debug
或运行时按:
Ctrl + Alt + D
Guest 中:
lsmod | grep vboxsf
sudo mount -t vboxsf sharename /mnt
vboxnet0 存在ip a
| 问题 | 命令 |
|---|---|
| 虚拟机起不来 | 看 VBox.log |
| 黑屏 | 开启串口 |
| 无网络 | 检查网卡模式 |
| 很卡 | 开 VT-x / 嵌套分页 |
如果你能说清楚:
我可以直接给你一步一步的操作命令。