主机环境:windows7企业版
虚拟机:VirtualBox 4.2.22
虚拟机系统:Debian GNU/Linux 7.0(wheezy)
我承认我之前写的有些复杂,但是我把简单的2种办法放在前面,你应该就能够使用了,能不能用的也别评论了,你能不能用的跟我有啥关系?
使用http file server
去这个网站下载hfs软件:HFS ~ HTTP File Server
打开,右键加入本地目录
然后就可以用了,在你的虚拟机系统里面直接打开浏览器,直接访问红框里面的地址就能够访问文件和操作了。
如果要开启文件上传就右键目录,properties,在第一页的upload选项卡,勾选anyone,点ok
这就是在浏览器里的页面
这软件很好用,绿色免费,如果你有钱就捐赠它:http://www.rejetto.com/hfs/donate.php
通过u盘实现共享
准备一个u盘作为传输的介质。将u盘插入电脑,将要传输的文件拷贝到u盘中
在虚拟机系统运行界面,上方点击设备,分配usb设备,点击自己的u盘设备。这样u盘就会挂载在虚拟机系统系统中了
此时在虚拟机系统中打开u盘就可以对文件进行操作了
建立共享文件夹
选中虚拟机列表中的debian系统,点击上方的设置
点击共享文件夹,点击最右侧的加号图标,弹出添加共享文件夹对话框。设置共享文件夹路径和名称,设定文件夹路径D:\shared,名称设置为shared,勾选自动挂载和固定分配,点击确定保存。
在虚拟机系统运行界面,点击上方的设备,安装增强功能,桌面会出现一张光碟图标,双击打开
打开光碟后的目录,对目录空白出右键单击,选择在此打开终端
在终端中输入以下命令运行VBoxLinuxAdditions.run脚本
sudo sh VBoxLinuxAdditions.run
询问是否继续,输入yes,回车,等待安装完成
虚拟机中在用户目录创建shared文件夹,实现此文件夹与主机文件夹的共享
mkdir /home/name/shared
sudo mount -t vboxsf shared /home/name/shared
其中mount命令的shared是vbox虚拟机设置的共享文件夹的名称,/home/name/shared文件夹是虚拟机系统中的共享文件夹路径。
此时虚拟机系统中的/home/name/shared文件夹与主机中的D:\shared文件夹已经实现共享。任何在这个目录下的操作。都是同步的。
利用scp命令传输文件
主机系统安装ssh软件。推荐你安装openssh,另外对于win10系统已经自带了ssh命令不需要安装
下载完成后解压在目录下面,windows+r打开cmd,输入scp,出现以下提示表示安装成功。
在debian系统中查看ssh服务是否开启
sudo /etc/init.d/ssh status
如果是以下输出,说明sshd服务已经开启
/etc/init.d/ssh status
[ OK ] sshd is running.
如果是以下输出,说明sshd服务没有开启
/etc/init.d/ssh status
[ FAIL ] sshd is not running ... failed!
此时需要手动启动sshd服务
sudo /etc/init.d/ssh start
[ OK ] Starting OpenBSD Secure Shell server: sshd.
virtualbox配置端口转发,把主机上的22端口转发到虚拟机系统里,这样通过访问主机地址就能够访问到虚拟机系统的ssh服务了
选中虚拟机列表中的debian系统,点击上方的设置
点击网络,端口转发,弹出端口转发规则窗口,点击最右侧加号添加规则,主机ip是127.0.0.1,主机端口和子系统端口都是22,填写完成点确定保存
打开cmd命令行,在主机系统里输入以下命令将虚拟机系统中的~/shared/1.txt 拷贝到主机的D:\目录下。
scp name@127.0.0.1:shared/1.txt D:\
第一次连接ssh会出现以下提示,输入yes回车
输入密码。传输完成
而从主机向虚拟机中拷贝文件,只需要把命令的目录顺序颠倒,如将主机D:\1.txt拷贝到虚拟机系统中的~/shared文件夹
scp D:\1.txt name@127.0.0.1:shared/
使用Windows SMB服务共享文件
先在windows系统上开启smb文件共享,去网上找办法很简单。
打开cmd,输入ipconfig,在输出信息中找到IPv4地址,即本机的ip地址:192.168.1.101
虚拟机系统在/mnt下建立一个共享目录
sudo mkdir /mnt/share
用mount命令将网络位置映射到本地目录
sudo mount -t cifs //192.168.1.101/D /mnt/share -o user=j,pass=xxx
-t cifs 指定cifs文件系统 用于SMB共享的文件系统
//192.168.1.101/D/share 物理主机ip地址和目录
/mnt/share 挂载到Linux本地的文件夹
-o user,pass 登录网络主机的用户名和密码
挂载完成后,只需要访问Linux本地的/mnt文件夹,就相当于在访问主机上的D:\目录
取消挂载命令:
sudo umount //192.168.1.101/D