代码之家  ›  专栏  ›  技术社区  ›  Thomas Owens

有没有办法让虚拟机访问我的计算机?

  •  0
  • Thomas Owens  · 技术社区  · 16 年前

    我希望有一个虚拟机来查看应用程序的外观和开发特定于操作系统的应用程序,但是,我希望将所有代码保存在我的Windows计算机上,所以如果我决定使用虚拟机或类似的东西,它仍然存在。

    如果重要的话,我正在使用virtualbox。

    4 回复  |  直到 16 年前
        1
  •  5
  •   shsteimer    16 年前

    这通常通过网络共享来处理。从主机共享代码文件夹,然后从vms访问它。

        2
  •  4
  •   Kristopher Johnson    16 年前

    除了网络共享之外,另一个用于此的工具是版本控制系统。

        3
  •  1
  •   Curt Hagenlocher    16 年前

    您应该总是能够在虚拟机和主机操作系统之间建立正常的网络连接,就好像它是同一网络上的另一台计算机一样。从某种意义上说,就是这样。

        4
  •  0
  •   jlettvin    11 年前

    我一直这样做。 我在Windows驱动器中有一个目录,可以安装在主机Ubuntu 12.04中。 我以客户身份运行virtualbox Ubuntu 13.04。 我希望来宾使用完全的非根权限挂载Windows目录。 我几乎所有的工作都是从bash shell开始的,所以这种方法对我来说是很自然的。

    在搜索自动装载VirtualBox共享文件夹的方法时, 可靠和正确的方法很难与失败的方法区分开来。 失败包括获取和设置权限,以及其他问题。

    失败的方法包括:

    • 修改/etc/fstab
    • 修改/etc/rc.local

    我很确定可以使用rc.local, 但我尝试过的方法都没有奏效。 我欢迎这些指导方针的改进。

    在VirtualBox 4.2.14上,在Ubuntu 13.04客户机上运行Nautilus(bash终端), 下面是一个安装公共(sharename)的工作方法 在具有完全权限的/home/$user/desktop/common(mountpoint)上。 (注意find命令中的\命令继续符。)

    第一次:创建mountpoint,修改.bashrc文件,然后运行它。 请求时使用密码响应。 这是需要的四个命令行:

    mkdir $HOME/Desktop/Common
    sudo echo “$USER ALL=(ALL) NOPASSWD:ALL” >> /etc/sudoers
    find $HOME/Desktop/Common -maxdepth 0 -type d -empty -exec sudo \
    mount -t vboxsf -o \
    uid=`id -u $USER`,gid=`id -g $USER` Common $HOME/Desktop/Common \;
    source ~/.bashrc # Needed if you want to mount Common in this bash.
    

    所有其他时间:只需启动一个bash shell。

    如果mountpoint目录为空,find命令将装入共享目录。 如果mountpoint目录不为空,则不会运行mount命令。

    我希望这是没有错误的,并且足够通用。 请让我知道纠正和改进。