在windows下与linux虚拟机进行文件共享

来源:互联网 发布:mac删除的照片在哪里 编辑:程序博客网 时间:2024/05/17 01:23

 

虚拟机与主机的文件共享

 

方法一:使用虚拟机的共享文件夹功能

使用vmwarevmware workstation 5)下shared folders功能实现vmwarehostghost间文件传输,无需任何网络相关设置,不使用任何网络协议,hostghost可以是linuxwindows操作系统,这里只介绍hostwindowsghostlinux下的设置,如果ghostwindows,请参考vmware帮助中setting up shared folders 

1.
安装vmtools for linux: 
选择vmware workstation程序菜单中VM >install VMware tools... 
启动guest 电脑中的linux,执行: 
mkdir /mnt/cdrom 
mount /dev/cdrom /mnt/cdrom 
vmtools的安装文件放在vmware虚拟的cdrom中,首先要mount上这个光驱才能找到安装文件) 
cd /mnt/cdrom 
tar -zxvf VMwareTools-5.0.0-12124.i386.tar.gz -C /tmp 
(把安装文件解压到/tmp 

cd /tmp/vmware-tools-distrib 
./vmware-install.pl 
(执行vwware的安装脚本,这个脚本是用perl编写的) 
在这里,安装程序会询问安装文件存放位置和设置分辨率等一系列问题,在大多数情况下,安装默认配置vmware tools就可以正常工作,因此,这里对每一个问题按回车键选择默认配置。

安装完以后,vmware会添加一个vmhgfs的模块到内核中,可以使用lsmod查看 

设置host computer共享的目录: 
ghost computer中切换到windows桌面,选择vmware workstation程序菜单中 VM>Settings>Options>Shared Folders >Properties 
点击对话框右下的“add”按钮,点击下一步” 

在文本框“name”中输入共享目录的名字(这里填写的目录名以后在ghost computerlinux系统中将显示出同样的目录名),假设为fc4_iso;在“host folder”中填入host computerwindows系统想要共享出来的目录,假设为F:/linux-cd/RedHat/Fedora_Core_4/stentz-dvd-i386,然后点击完成 


下一个对话框是选择共享的方式:Enable this share是指这个共享长期有效,目录可读写;Read-only方式是指这个共享长期有效,目录只读;Disable after this session方式是指下次ghost computer被关闭或挂起后,共享将会失效。一般情况下选择Enable this share然后点击完成” 

自此,shared folder设置完毕 


3.shared folder
目录的使用 
切换到ghost computerlinux系统,执行: 
cd /mnt/hgfs 
ls 
可以看到fc3_iso的目录,并且可以用cp等指令实现windowslinuxlinuxwindows的读写操作了 


4.
注意事项 
vmware软件里添加一个shared folder或对shared folder的参数进行版本是立刻生效的,也就是说立刻可以在ghost computerlinux系统中看到新加的共享目录和体验到参数的改变 
结语:写这篇文章的目的是为了减少CU linux版上关于vmware host/ghost computer共享文件问题的新手重复发问和其他兄弟的重复回答,使版面更加简介些。另外,我看大家回答这个问题大多是使用ftpsamba甚至是nfs(在windows上装microsoft service for unix就可以实现nfs)来实现的,采用vmware自带的shared folder方式比使用网络协议实现文件传输要方便得多,并且对于新手来说,用cp命令拷贝文件比用ftpsmbmount命令要简单得多

 

两种其它常用方法

 提供最常用的两种方案:

  1. FTP访问

  2. Samba服务

  不管是FTP还是Samba,首先都需要分析虚拟机环境下的Host-Guest网络连接。基本上我们可以把Host机与Guest机之间当作局域网中的两台机器来实现互联。那么现在需要重新考虑关于《虚拟机的网络配置》一文中提到过的网络连接方式。

  当时我们选择以NAT模式进行网络连接,这是一种使用DHCP服务进行网络连接的方式,也就是说,Guest机并没有自己的固定IP地址,这个地址是在启动 了系统之后,从Host机上取得的、一个暂时提供给Guest机使用的IP地址。在这种网络连接方式下,设置Guest机中系统的IP获取方式为自动获 取,不管Host机联网的方式如何,只要Host能上网,Guest机也可以上网。

  虽然选择这种方式,外网连接是很方便,可是在Host-Guest之间的局域网连接真的让人伤透了脑筋,虚拟网卡VMnet8IPHost机的IP 在同一网段,折腾了一个晚上也没有找到好的解决办法,最后舍弃了NAT模式。将Linux虚拟机的网连方式改为了Bridge

  Bridge模式将虚拟主机的虚拟网卡桥接到一个Host主机的物理网卡上,可以理解为Guest机和Host主机处于对等的地位,在网络关系上是平等的,对于我这种对路由的事情比较白痴的人来说,这是最易理解的一种局域网互联方式。

  我的使用网络服务是小区LAN网,IP自然是自动获取的,不用花心思改动它,将Guest机的网络也设置成为自动获取IP

  应用程序-->系统设置-->网络-->编辑eth0设备

  HostGuest在同一网段,基本上就像局域网里面的两台机器。Host设置一下FTP FTP算是实现对Host机资源的访问了,可文件的管理似乎不那么方便。

 

  另一种共享Windows资源的方法是很多Linux用户都非常青睐的SambaSamba 是一套让UNIX系统能够应用Microshoft网络通讯协议的软件。它使执行UNIX系统的计算机能与执行Windows系统的计算机分享驱动器与打 印机。非常适用于WindowsLinux系统并存的网络。Red Hat AS 4.0内附Samba Server,但默认并不是在系统启动时自动运行的。可通过service命令查看和控制Samba服务:

 

  查看Samba服务运行状态:# service smb status

  启动Samba服务:# service smb start

  停止Samba服务:# service smb stop

  也可设置系统重启时,自动启动Samba服务:# chkconfig --level 345 smb on

  首先我们在Windows系统中设置文件夹或驱动器Web共享,并对其设置别名,如:/study

  然后在Linux中,以用户身份登录smb服务:

 

  常见的错误提示:

  1.防火墙问题

  使用Samba服务时,HostGuest都应关闭防火墙。Linux系统下关闭防火墙的方法:系统设置-->服务器设置-->服务-->iptable-->停止

  2.登录用户名或密码错误

  验证用户名密码即可。

  成功登录smb

  可用LS命令查看当前目录下的共享文件

  用get命令可从服务器上下载某文件:

  Smb:/> get file1 file2(从服务器上下载file1,以file2为名保存在本地——默认为root主目录)

  Exit命令可退出smb服务器

  如果仍然觉得文件的管理不方便,可以使用smbmount 命令,挂载Windows的共享文件夹或驱动器:

  # smbmount //192.168.0.162/study /mnt/mystudy o username=admin

  其中,192.168.0.162HostIPstudy为共享文件夹别名;/mnt/mystudy为挂载点,可由#mkdir /mnt/mystudy创建;adminHost机登录用户名。

  打开挂载目录。

  这样看起来习惯多了吧?跟Windows里面的文件管理界面几乎相同了。

至此,虚拟机Linux共享宿主机Windows资源基本实现,完成时候觉得很简单,但是一路摸索过来的确遇到了不少问题。

由于本人目前对于linux的学习还不够深入,所以选择了比较简单的shared folder来共享文件。至于FTPSAMBA模式,先总结在这里,以后学习网络时好好学习下!哈哈!

 

原创粉丝点击