当我运行以下命令来找出哪个进程阻塞了我的 postgresql 端口时:
sudo netstat -tnlp
我得到了以下记录:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 10986/VBoxHeadless
因此,我运行以下命令:
ps 10986
结果是:
PID TTY STAT TIME COMMAND
10986 ? Sl 7:00 /usr/lib/virtualbox/VBoxHeadless --comment etable-databases --startvm dbabe55
但是一旦我运行命令:
VBoxManage list runningvms
我得到一个空列表。您知道为什么我无法列出该ps
命令向我显示的正在运行的虚拟机吗?
我的意思是,如果它绑定了端口,虚拟机应该正在运行,使用 bdeaver 等数据库工具,我也可以连接到虚拟机,但我仍然无法列出,runningvms
GUI 也没有显示这个特定的虚拟机也在运行。
通过软终止进程解决了该问题:
sudo kill -15 10986
并删除与虚拟机相关的所有文件夹:
sudo rm -rf "~/Virtualbox Vms/etable-databases"
另外,虚拟机代表了我的开发环境的流浪者盒子,我需要重新创建流浪者:
vagrant destroy && vagrant up
但我仍然对如何发生这种事感到不好。为什么VBoxManage
cli 无法找到虚拟机?
5.2.42
我在 Ubuntu Mate Edition 18.04LTS 上使用 Virtualbox 。
答案1
VBoxManage list runningvms
仅显示当前用户帐户下运行的虚拟机。