zoukankan      html  css  js  c++  java
  • Virtualbox+ubuntu设置共享文件夹

    转:http://www.juwends.com/tech/unix_series/virtualbox-ubuntu-sharefolder.html

    1. 进入系统,安装增强功能,安装完关闭系统。
    2. 在E盘下创建一个共享文件夹 gongxiang。
    3. 设置 -> 数据空间 -> 固定分配,选择共享文件夹路径,注意此时不要勾选自动挂载,如下图所示。

    2011092311174318
    4. 重新启动系统
    (Juwend注:可以不用重启,在执行第5步之前,需要执行:
    sudo mkdir /mnt/gongxiang
    这是原文作者没有写出的)

    5. 执行如下命令,就可以看到共享文件夹下面的文件。

    huang@huang-VirtualBox:~$ sudo mount -t vboxsf gongxiang /mnt/shared/
    [sudo] password for huang:
    huang@huang-VirtualBox:~$ cd /mnt/shared/
    huang@huang-VirtualBox:/mnt/shared$ ls
    cmusphinx-cmuclmtk.tar.gz seri-arm
    com31 seri.c
    cramfsck seri.h
    cross-4.2.2-eabi.tar.bz2 soundtouch-1.6.0.tar.gz
    dircmmp sphinx3-0.8.tar.bz2
    fork-arm sphinxbase-0.6.1.tar.gz
    fork-pc SphinxTrain-1.0.tar.bz2
    FORLINX_6410_touch.cramfs thread
    linux2.6.28_FOLINX_6410.tgz uboot1.1.6_FORLINX_6410.tgz
    pocketsphinx-0.6.1.tar.gz u-boot.bin
    serial.c zImage_VGA
    serial.h

    6. 如果您不想每一次都手动挂载,可以在/etc/fstab中添加一行,保存
    gongxiang /mnt/shared vboxsf rw,gid=100,uid=1000,auto 0 0
    这样就能够自动挂载了。
    (Juwend注:以上内容可能有些问题,这里Virtualbox的手册中提到:
    In a Linux guest, use the following command:
    mount -t vboxsf [-o OPTIONS] sharename mountpoint
    To mount a shared folder during boot, add the following entry to /etc/fstab:
    sharename mountpoint vboxsf defaults 0 0
    所以,应该在/etc/fstab中保存
    gongxing /mnt/shared vboxsf defaults 0 0
    如果重启过程中提示挂载出错,可以检查下共享文件夹的固定分配是否正确,即是否固定分配了共享文件夹,似乎有要求是不能选自动挂载那一项)

    如果想卸载,可运行命令:sudo umount -f /mnt/shared

    转:https://soulogic.com/archives/380

    我喜欢 Linux,但其桌面环境实在太差了,当然这是借口,主要还是因为软件支持,例如 UltraEdit、Chrome、Fireworks 和 DirectX 支持的各式各样的游戏。于是保持着 Ubuntu Server + Windows Desktop 的模式。之前所在的两个公司我一直是霸占着两台 PC,其中一个没有显示器。自从 CPU 进化到开虚拟机也可以忍受之后开始用 VMWare,但一直觉得用 Samba 来通信很绕圈子,却不知道更好的方法。直到上周 Samba 开始莫名其妙的卡(每次保存文件的时候都要等几秒),尝试各种优化方法无效后转而试用 VirtualBox(其实以前也用过,不过是反过来的,Ubuntu 上虚拟 Windows,配网卡搞的我焦头烂额,所以印象很不好),才发现“Shared folders”功能正是我一直想要的。简单的说就是给虚拟机配个驱动,直接访问宿主的某些目录。访问的效率应该有很大提升。


    安装

    本文根据软件版本不断更新中,以下内容在 Windows 7 Ultimate 和 Ubuntu Server 10.04(均为 64 位版),VirtualBox 3.2.4 下通过验证

    为 了不至于混淆,定义名称,宿主 Windows 上想共享的目录为 D:sharehost,在 VirtualBox 里定义的共享名为 shareguest,映射到虚拟机 Ubuntu 的 /sharedir 目录。演示用的 Ubuntu 名叫 sharetest

    VirtualBox 里的设定如图

    当你已经装完了 Ubuntu,在菜单里选择 Devices / Install Guest Additions

    在 Ubuntu 中先装点必要的服务和供编译的文件

    sudo apt-get install dkms
    sudo apt-get install linux-headers-server

    之后就可以安装 Guest Additions 了(其实那个菜单项的作用就是换张光盘)

    mount /cdrom
    sudo /cdrom/VBoxLinuxAdditions-amd64.run

    安装过程中显示内容大致如下

    Verifying archive integrity... All good.
    Uncompressing VirtualBox 3.0.8 Guest Additions for Linux installation.........................
    VirtualBox 3.0.8 Guest Additions installation
    Attempt to remove old DKMS modules...
    Done.
    Building the VirtualBox Guest Additions kernel module...
    Building the shared folder support kernel module...
    Building the drm support kernel module...
    Installing the VirtualBox Guest Additions...

    Could not find X.org or XFree86 on the guest system.  The X Window drivers
    will not be installed.

    加载该模块(这一步官方文档里没有说):

    sudo modprobe vboxsf

    到这里安装已经完成,开始使用这个功能:

    sudo mkdir /sharedir
    sudo mount -t vboxsf shareguest /sharedir

    这时候 Ubuntu 里的 /sharedir 跟 Windows 下的 D:Share 是一样的了,可以创建几个新文件来验证一下。

    自动加载共享目录

    现在该考虑如何开机自动加载这些目录里。如果你跟我一样,连 apache 的 conf 目录都要用这种共享的话,显然直接把那行 mount 命令放在 rc.local 里是不可取的

    按照官网论坛上的帖子应该如下:

    编辑 /etc/modules 文件,在结尾添加两行(这两行的内容是用 lsmod | grep vbox 得到的):

    vboxsf
    vboxguest

    编辑 /etc/fstab 文件,在结尾添加一行:

    shareguest /sharedir vboxsf defaults 0 0

    重启之后就可以自动加载。

    此 外要注意到一个问题是,共享名跟目录名不能一样,否则会在开机的时候提示“/sbin/mount.vboxsf: mounting failed with the error: Protocol error”。我之前都起名叫“share”,结果 mount 正常,开机自动加载的话就报错,直到看了篇 Tips on running Sun Virtualbox 才恍然大悟——我之前一直以为是驱动、版本或者是什么 BUG 导致的。

    而且要注意每个字母,那个“vboxvfs”和“vboxsf”也把我搞混过,结果在 modules 文件里写了个“vboxvsf”

    fstab 文件里的那行,跟 crontab 一样是按空格分成几段,可以参考文件本身的说明,那个“defaults”的位置是设定参数的,具体参数可以从“sudo mount.vboxsf”得知。比方说目录加载后所有文件都是 777,绿油油的一片看着眼晕,可以把“defaults”替换成“fmode=666”,不过也就不能 +x 了,没办法,Windows 文件系统本身的缺陷。

    Windows 启动后 VirtualBox 自动后台运行

    创建个 run.bat 文件,内容如下

    c:
    cd "Program FilesSunVirtualBox"
    VBoxHeadless.exe -startvm sharetest -vrdp=off

    再创建个 run.vbs 文件,内容如下

    set wscriptObj = CreateObject("Wscript.Shell")
    wscriptObj.run "D:vbox un.bat",0

    注意目录和盘符换成自己实际的,把 run.vbs 放到开始菜单的启动项里就可以了。

    关于虚拟机中的 Web Server

    在读取纯静态文件时可能会出现缓存问题。例如 Apache 的 conf 里需要加上这么两行来修正

    EnableMMAP Off
    EnableSendfile Off

    结语

    本文是希望提供一个过渡访问方案,在 Linux 桌面变得优秀之前,至少可以毫无障碍的使用 Linux Server 做开发。我最惨痛的一次经历是,Memcache 诞生不久,听说很好用,但是当时的 Client for PHP 只有 PECL 的,我不知道该怎么编译,直到半年后有了 win32 版本我才开始接触这东西,对我而言这是个非常大的损失。又比如曾经寻找适合做本地文件 Cache 的东西,据说 Berkeley DB 有原生 PHP 扩展,比 PHP 自带的 DBA 要好不少,而这个扩展就在 BDB 源码包的 php_db4 目录,要用的话只能自己编,虽然最后得出结论跟 DBA 模块一样存在文件锁的问题不适合 Web 程序使用,但起码试过了。又比如 ImageMagicK 的命令行下给图片加汉字,由于 Windows 的 Shell 不是 UTF-8 的,所以特定长度的汉字会出现乱码,这也是不大不小的毛病。总之,用 Windows 做 Server 总觉得自己是二等公民。

    转:http://xu3stones.blog.163.com/blog/static/2059571362012103095659817/

    1.Guest os安装增强组件;
    2.vbox里设置分配数据空间,记住空间名称(注:不要勾选auto-mount,否则VBOX会自动挂载到/media/fs_空间名 这个目录下,而且是root用户的,访问很麻烦)
    3.guest os里挂载共享空间:
             若在创建数据空间的时候您已勾选自动挂载(auto mounting)则在您安装好增强补丁后,VBOX会自动在/media/下创建一个共享目录,该目录的所有者是root,所属组是vboxsf,所以 你是无法打开和访问的,必须要将你,即当前用户加到vboxsf组下:
                  sudo usermod -a -G vboxsf 你的用户名
                  重启,即可访问咯。。
                  如果你觉得不爽,你可以用下面这个方法,创建属于自己的共享目录:

    sudo mkdir /mnt/shared

    sudo mount -t vboxsf 空间名称 /mnt/shared

    4.假如不想每一次都手动挂载,可以在/etc/fstab中添加一项

     空间名称 /mnt/shared vboxsf defaults 0 0(注:第一列为数据空间的名字,第二列为要mount的路径,后面为mount的参数。)

  • 相关阅读:
    pycharm上运行django服务器端、以及创建app方法
    Python实现淘宝秒杀聚划算自动提醒源码
    Python版:Selenium2.0之WebDriver学习总结_实例1
    windows上使用pip下载东西时报编码错误问题解决方法
    模块购物商城和ATM机代码:
    Python网页信息采集:使用PhantomJS采集淘宝天猫商品内容
    android用户界面之ProgressBar教程实例汇总
    推荐12个亲测Android开发源码(包括应用、游戏、效果等等)
    Android开发各种demo集合
    Android Service
  • 原文地址:https://www.cnblogs.com/pengdonglin137/p/3323295.html
Copyright © 2011-2022 走看看