标签: virtualbox

如何让每个用户都可以访问 Ubuntu 下的 VirtualMachines?

我在 Ubuntu 下有一个 WinXP 虚拟机,这个 Ubuntu 上的每个用户都应该有权运行这个 VM。但是每次有人运行这个 VM 时,都会设置文件权限,400并且600(相应地.VirtualBox/VirtualBox.xml.VirtualBox/Machines/win/win.xml)和所有权设置为最后一个用户。然后我将它们改回444and 666,因此任何用户都可以访问 VM,但我正在寻找永久解决方案。

背景:用户属于vboxusers组,Ubuntu 8.04,Virtualbox 4.0.16

编辑:根据目前的答案,我必须解释一下:我们每天只需要大约 5-10 分钟的时间使用这个 XP VM,所以一直运行它并只是连接到它在我们的工作流程中并不是很好的解决方案。

ubuntu virtualbox

2
推荐指数
1
解决办法
910
查看次数

通过 PXE 的 Ubuntu 安装程序看不到网络适配器 => 无法下载 preseed

我正在通过 PXE 从另一个 virtualbox VM(使用 cobbler)启动一个 virtualbox VM。两台机器都有 2 个适配器:1) 外部网络和 2) 仅主机网络。

“客户端”虚拟机通过 PXE(使用仅主机网络适配器)成功引导到安装程序,但随后安装程序甚至不会尝试下载预置文件(根据服务器日志)或获取 IP 地址(再次根据到服务器日志 -之前确实显示了 TFTP 请求)。

我掉进一个壳里,看到:

  • “ip a”仅显示环回适配器
  • 阅读 dmesg 显示显然没有找到适配器
  • lsmod 似乎也没有显示网络适配器模块的迹象
  • lspci确实显示了两个网络控制器。
  • /lib/modules/...../kernel/drivers/net 中基本上没有驱动程序(可能这就是原因?

我如何让安装程序看到我的网络适配器,或者至少我如何找到这个问题的原因?

这是 PXE 菜单项:

default linux
prompt 0
timeout 1
label linux
        kernel /images/ubuntu-10.04-server-x86_64/vmlinuz
        ipappend 2
        append initrd=/images/ubuntu-10.04-server-x86_64/initrd.gz  locale=  interface=auto text root=/dev/sda1 priority=critical  auto url=http://192.168.56.101/cblr/svc/op/ks/system/pierrot hostname=pierrot domain=local.lan suite=lucid
Run Code Online (Sandbox Code Playgroud)

ubuntu virtualbox boot preseed pxe-boot

2
推荐指数
1
解决办法
3105
查看次数

安装在 Virtual Box 上的 Windows Server 2012 中的网络适配器错误

我昨天在 VirtualBox 中安装了 Windows Server 2012,现在 2012 VM 显示未找到网络适配器。

  • 我将我的虚拟机更新到最新版本并安装了来宾附加功能仍然是同样的问题。
  • 我重新启动它并尝试将 NAT 更改为不同的选项仍然出现相同的错误。
  • 我尝试启用 4 个适配器中的 4 个,仍然是同样的问题。

目前我有一个 Windows Server 2003 虚拟机和一个 Windows 7 虚拟机,它们都具有互联网,无需任何额外配置,为什么我在 2012 服务器上遇到问题?我只需要设置一个静态IP,我不关心互联网。

virtualbox adapter windows-server-2012

2
推荐指数
1
解决办法
1万
查看次数

VirtualBox 中运行的 Linux 上的内核 oops 破坏了服务器上的一些 IO 相关功能

我们在 Windows 7 计算机上的 VirtualBox 中运行 CentOS 版本 6.3 时遇到问题。症状如下:

几个小时甚至几天内一切正常。然后发生了一些破坏系统的事情。

发生这种情况后我们还能做什么

  • 访问网络服务器
  • 使用现有的 SSH 会话来运行 top 和 free

什么不起作用

  • 启动新的 SSH 会话(输入用户名和密码后挂起)
  • 在现有 SSH 会话中运行 ls(挂起)
  • SSI 包含来自我们的 Web 服务器,这些服务器从远程计算机获取数据
  • 可能更多

当发生这种情况时,我们在服务器上看到的内容如下

  • 平均负载从基本没有上升到 3 左右
  • CPU 使用率仍然很低(5%)
  • 磁盘活动低(运行 iostat)
  • 有足够的可用内存
  • 有足够的可用磁盘空间

在 /var/log/messages 中我们得到以下内容:

Jun 14 01:10:48 devvm kernel: e1000 0000:00:03.0: eth0: Detected Tx Unit Hang
Jun 14 01:10:48 devvm kernel:  Tx Queue             <0>
Jun 14 01:10:48 devvm kernel:  TDH                  <2e>
Jun 14 01:10:48 …
Run Code Online (Sandbox Code Playgroud)

linux server-crashes virtualbox kernel

2
推荐指数
1
解决办法
3671
查看次数

不同虚拟机的系统时间是否在 virtualbox 中同步?

我正在开发一个应用程序,它需要涉及各种事件的确切时间戳的复杂测试。

例如,假设我们有两个主机:h1 和 h2。

现在,如果我在 h1 上运行 tcpdump,我会得到一个相关的时间戳。h2 也是如此。

现在,假设 h1 向 h2 发送一个 ICMP 数据包。据我所知,数据包应该在离开 h1 时记录在 h1 的 tcpdump 上,当 h2 接收到相同的数据时记录在 h2 的 tcpdump 上。

现在我正在使用 VirtualBox 将主机模拟为 Ubuntu 机器。

所以我有两个问题:

一,我对 tcpdump 的假设是否正确?

其次,我能否绝对确定两个虚拟机的中心时间相同。我知道这在物理网络中是不可能的。但是,由于虚拟机共享一个公共系统,我想知道是否也是如此。如果没有,有没有其他方法可以确保在测试时同步?

[结束语]:对于那些可能好奇的人,VirtualBox 配置了 NTP,如果您有类似的任务,设置 NTP 可以从您的待办事项列表中删除。

networking virtual-machines virtualbox

2
推荐指数
1
解决办法
386
查看次数

FreeBSD pkg 数据库已删除

在解决启动时反复崩溃后,fsck我注意到一些文件被删除,其中之一是 sqlite pkg 数据库,所以现在当我运行时,例如pkg install somepackage我得到这个错误:

pkg: sqlite: file is encrypted or not a databse
Run Code Online (Sandbox Code Playgroud)

所以我的问题实际上有两个方面:

  1. 我如何pkg重新开始跑步
  2. 有没有办法(日志?)找出使用该fsck工具删除的文件?

freebsd virtualbox corruption fsck

2
推荐指数
1
解决办法
1219
查看次数

网络更改后找不到 Vagrant 私有 IP

我有一个简单的 Vagrant Ubuntu 虚拟机设置,使用 Virtual Box,在 Mac 上运行。

我正在使用专用网络,配置了静态专用 IP,如下所示:

Vagrant.configure("2") do |config|
    config.vm.network :private_network, ip: "10.11.12.13"
end
Run Code Online (Sandbox Code Playgroud)

这工作正常,除非我在 wifi 和有线网络之间来回切换。当我这样做时,我似乎无法再使用它的静态 IP 地址连接到 VM。我试过停止并重新启动虚拟机,甚至破坏并重新创建虚拟机,但无济于事。

有没有办法重置网络连接,以便私有 IP 回来?我可以直接在 VirtualBox 或其他任何地方访问它。我可以让它工作的唯一方法是现在实际重新启动我的整个机器。

virtualbox mac-osx private-ip vagrant

2
推荐指数
1
解决办法
6919
查看次数

在 VM 中安装 Gluster,还是在 Gluster 之上设置 VM?

我正在设置一个高可用性的无共享地理分布式 Web 服务器,为其域使用多个 A 记录。现在我更关心高可用性——“当我拔掉任何一根电源线时,每个浏览器仍然可以看到我的网站”——而不是速度。

Web 服务器软件在每个物理机的一台虚拟机内运行。(我使用的 Web 服务器和虚拟机管理程序真的很重要吗?如果是,我目前正在使用 Apache 和 VirtualBox)

有人建议我放弃我计划用来保持 Web 服务器同步的当前极其复杂的自制系统,并用 Gluster 替换它。

这些替代方案中的哪一个更好?

  1. 让主机操作系统运行管理程序并存储VM 磁盘映像。在每个虚拟机内,安装 Gluster 软件,设置指向 VM 磁盘映像内某个文件夹(砖块)的 GlusterFS 挂载点,并使用该挂载点(或其中的文件夹)作为 Web 根目录。

  2. 在主机操作系统运行在管理程序和存储在VM图像和单独的文件夹(砖),我让VM访问。在每个虚拟机内,安装 Gluster 软件,设置一个指向 VM 磁盘映像外部砖块的 GlusterFS 挂载点,并使用该挂载点(或其中的文件夹)作为 Web 根目录。

  3. 让主机操作系统运行管理程序和 Gluster。在主机操作系统上,设置一个 GlusterFS 挂载点,指向实际物理磁盘上其他地方的某个文件夹(砖块)。允许 VM 作为 Web 根访问 GlusterFS 挂载点。(无需在虚拟机内部安装 Gluster 软件)。

  4. 让主机操作系统运行管理程序和 Gluster。在主机操作系统上,设置一个 GlusterFS 挂载点,指向实际物理磁盘上其他地方的某个文件夹(砖块)。由于两个 Web 服务器应该是相同的,因此告诉虚拟机管理程序将虚拟磁盘映像存储在 GlusterFS 挂载点内。

  5. 还有什么?

我怀疑比我更了解 Gluster 的人会立即说“如果你做 #4,(一些可怕的事情会发生),和(其他一些数字)原因(其他一些可怕的事情)......所以唯一的选择是实际有效的是(唯一剩余的数字)”。(即,我不认为这是一个主观问题)。

(“有人可以解释这个 GlusterFS 设置吗? …

virtual-machines virtualbox glusterfs

2
推荐指数
1
解决办法
2812
查看次数

Vagrant up 不起作用,它需要手动 fsck

我的设置:

  • 我的操作系统是 Ubuntu 18.04
  • 流浪者 2.0.0
  • VirtualBox 5.2.18 r124319
  • Ubuntu 安装到 vagrant/virtualbox(版本未知)

sudo vagrant up一直在工作,突然它停止工作......它一直卡在SSH auth method: private key直到超时。

所以我在sudo vagrant up启用 GUI 的情况下运行以检查错误,以及我发现的内容:

Scanning for Btrfs filesystems 
/dev/mapper/vagrant--vg-root: contains a file system with errors, check forced. 
/dev/mapper/vagrant--vg-root: Inodes that were part of a corrupted orphan linked list found.

/dev/mapper/vagrant--vg-root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.  (i.e., without -a or -p options) 
fsck exited with status code 4 
The root filesystem on /dev/mapper/vagrant--vg-root requires manual fsck …
Run Code Online (Sandbox Code Playgroud)

ubuntu virtualbox fsck vagrant

2
推荐指数
1
解决办法
1542
查看次数

systemd 如何自动启动并控制 VirtualBox 来宾?

在我的特殊情况下,在安装了 Ubuntu 18.04 Bionic 和 VirtualBox-5.2.20 的新服务器后,自动启动 guest 虚拟机的旧方法似乎不再可用。并不是说它有那么美妙——但它确实有效。似乎没有任何干净的方法可以解决这个问题 - systemd 和 VirtualBox 如何协同工作实现智能启动、控制和关闭?

virtualbox systemd

2
推荐指数
1
解决办法
7780
查看次数