Windows与Vmware下的Linux文件共享方法

Windows与Vmware下的Linux文件共享方法

关键字: vmware smb 设置

Windows和Linux间有很多文件共享的方式,这里我总结了一下。假设你的Host计算机是Windows,Guest是Linux哈。
一.用vmware tools工具
选版本高的vmware安装,这样安装tools时候,不会出现什么问题。
点击setting->vmware tools install
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
里面有一个vmware tools的tar包,解开执行vmware-tools-install.pl脚本,一路回车,一般没有问题。点击Edit->Virtual Machine Settigns->Option->SharedFolders->Add,选定要共享的文件夹并给这个文件夹命名,下一步。选定 “Enable thisshare”, 确定以后,vmware会把这个文件夹自动mount到/mnt/hgfs目录下。
二.利用Samba

方法一、
1.在命令行下打setup,进入system services,在smb处加上星号

  • (空格),退出.
    2.确保samba服务启来:service smb start
    3.修改etc/samba/smb.conf以添加共享文件夹
    [workfolder]
    comment = Vmware share folder
    path = /work
    writable = yes
    public = yes
    添加后请service smb restart
    4.windows访问:\\192.168.1.8 (对应虚似机的IP地址)

    注意要关闭linux防火墙,否则只能看到,不能进入共享文件夹。
    防火墙有关:
    查看防火墙: /etc/init.d/iptables status
    暂时关闭防火墙:/etc/init.d/iptables stop
    重启防火墙: /etc/init.d/iptables restart

    ==================================================================
    ==================================================================

    方法二、

    先简单介绍一下,SMB(Server Messages Block,信息服务块)是在局域网上共享文件和打印机
    的一种协议,通过它可以使局域网内的Windows、linux和Unix等系统共享文件和打印机等资源。在linux上可以运行SMB的软件很多,最常用的就是Samba。如果您使用的是REDHAT 9,在那三张光盘中就提供了samba服务器的RPM包。
    安装samba
    服务器
    的RPM包

    像在linux下安装配置其他服务一样,先要安samba有关的RPM包:
    1)Samba-common:包括samba服务器和客户端均需要的文件(在第一张光盘中)
    2)Samba:samba服务端软件(在第一张光盘中)
    3)Samba:samba客户端软件(在第一张光盘中)
    说明一下,列出这些要安装的rpm包包只是为了说明清楚些,其实只要用个“samba*”就全搞定了。为了老少皆宜,我把所有操作过程都帖了过来,连不会挂载光驱的朋友都应该能看懂吧。
    1)[root@linux root]# mount /mnt/cdrom
    [root@linux root]# cd /mnt/cdrom/RedHat/RPMS/
    [root@linux RPMS]# rpm -ivh rpmdb-redhat
    -9-0.20030313.i386.rpm
    warning: rpmdb-redhat-9-0.20030313.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
    Preparing... ###################################### [100%]
    1:rpmdb-redhat ################################### [100%]
    这一步是准备工作,把REDHAT 9的C盘中的rpmdb-redhat包安上,可以解决安装时的依赖关系错误。
    [root@linux RPMS]# cd
    [root@linux root]# umount /dev/cdrom
    [root@linux root]# mount /mnt/cdrom
    既然samba的包都在REDHAT 9的A盘,就在光驱中放入A盘,mount挂载一下。
    mount: /dev/cdrom already mounted or /mnt/cdrom busy
    mount: according to mtab, /dev/cdrom is already mounted on /mnt/cdrom
    [root@linux root]# cd /mnt/cdrom/RedHat/RPMS/
    [root@linux RPMS]# rpm -ivh samba* --aid
    安装所有以samba开头的包,加上—aid参数,就把安装时所需的其他包也安上了,很方便。
    warning: samba-2.2.7a-7.9.0.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
    Preparing... ##################################### [100%]
    1:libjpeg ##################################### [ 14%]
    2:libtiff ##################################### [ 29%]
    3:libpng ##################################### [ 43%]
    4:cups-libs ##################################### [ 57%]
    5:samba-common ################################## [ 71%]
    6:samba ##################################### [ 86%]
    7:samba-client #################################### [100%]
    [
    [email=root@linux]root@linux[/email]
    RPMS]# vi /etc/samba/smb.conf
    在[global]部分做如下修改:
    1) workgroup = WORKGROUP (改一下工作组名)
    2) hosts allow = 192.168.138. (写一个允许访问这服务器的网段,末尾有“.”)
    3) security=user
    samba有四种安全等级:
    share:用户不需要账户及密码即可登录samba服务器
    user:由提供服务的samba服务器负责检查账户及密码(默认)
    server:检查账户及密码的工作由另一台windows或samba服务器负责
    domain:指定windows域控制服务器来验证用户的账户及密码)
    4) encrypt passwdords=yes (去掉前面的注释“;”)
    smb passwd file = /etc/samba/smbpasswd (密码文件的位置)
    在文件末尾添加如下内容:
    [samba] (共享文件夹名)
    comment=This is my samba server (这是注释行,可以不写东西)
    path=/samba (指定要共享文件的位置)
    writable = yes
    browseable =yes
    read only = yes
    create mode=0664 (这是文件权限)
    directory mode=0777 (这是目录权限)
    启动samba服务
    [root@linux samba]# service smb start (启动samba服务)
    Starting SMB services: [ OK ]
    Starting NMB services: [ OK ]
    [root@linux samba]# testparm (检查配置文件的正确性)
    Load smb config files from /etc/samba/smb.conf
    Processing section "[homes]"
    Processing section "[printers]"
    Processing section "[samba]"
    Loaded services file OK.
    Press enter to see a dump of your service definitions
    创建一个samba用户
    该用刻户在windows下有没有都无所谓。
    1)建一个系统用户
    [root@linux samba]# useradd samba (建一个名叫samba的用户)
    [root@linux samba]# passwd samba (给samba用户添加密码)
    Changing password for user samba.
    New password: (密码要六位以上,不显示在屏幕上)
    BAD PASSWORD: it does not contain enough DIFFERENT characters
    Retype new password: (确认密码)
    passwd: all authentication tokens updated successfully.
    2)然后创建samba帐户
    [root@linux samba]# smbpasswd -a samba
    (-a必须加,为了生成密码文件smbpasswd,该密码是windows登陆Linux的samba用户密码)
    New SMB password:
    Retype new SMB password:
    unable to open passdb database.
    Added user samba.
    3)查看一下生成的用户名、密码
    [root@linux samba]# vi /etc/samba/smbpasswd
    samba:500:A9C604D244C4E99DAAD3B435B51404EE:ACB98FD0478427CD18949050C5E87B47:[UX ]:LCT-468268E6:
    4)重新启动samba服务
    [root@linux samba]# service smb restart
    Shutting down SMB services: [ OK ]
    Shutting down NMB services: [ OK ]
    Starting SMB services: [ OK ]
    Starting NMB services: [ OK ]
    最后阶段,进行测试
    1)先按照主配置文件所指定的位置,建好要共享的资源。
    [root@linux usr]# mkdir samba (建/usr/samba文件夹)
    [root@linux usr]# chmod 777 /usr/samba (samba服务器受本地文件系统权限和共享权限两种权限,而且是取最严格的权限,为了方便就把本地权限都给足好了)
    [root@linux usr]# cd samba
    [root@linux samba]# vi aaa.txt
    2)在Windows客户机的地址栏中输入samba服务器ip(如“\\192.168.138.110)
  • OK了,在linux搭建的samba服务器上资源可以供Windows客户端访问了。
    ==================================================================
    ==================================================================
    方法三:图形界面设置

    三、在vmware中挂U盘
    1.虚拟接--》可移动设备
    2.用 fdisk -l 查看是哪个
    3. mkdir /mnt/usb
    mount -t vfat /dev/sdb1 /mnt/usb
    4. 用完之后umount /dev/sdb1
    四.在Linux下配置Apahce
    在Linux下配置Apahce,然后在Windows下通过www方式把Linux下的文件下载下来。这种方式只能把Linux的文件传到Windows,不能把Windows的文件传到Linux.
    五.在Linux下配置Ftp
    用vsftp或者wu-ftp都可以,配置成上传权限的,然后Windows和Linux就可以相互共享文件了。
    六.Windows下配置WWW服务
    用IIS,Apache或者其它的都可以。如果你的Linux只有命令行的话,就用wget命令吧,可以很方便地下载文件。
    七.Windows下配置Ftp
    用serv-u比较简单
    八.利用Windows的文件共享功能
    比如说你的Windows的IP为192.168.0.1,共享了一个叫share的目录,那么就可以用下列命令
    mount -t smbfs //192.168.0.1/share /mnt -o username=user%passwd
    或者smbmount //192.168.0.1/share /mnt -o username=user%passwd(用这个命令要安samba哦)
    九.直接挂接物理硬盘或者硬盘分区
    不过vmware也是支持直接mount Host机器的磁盘,方法是在虚机设置里新建磁盘,类型选“Usephysicaldisk(foradvanced users)”,再选定磁盘和分区就可以。但是这样的操作可能会引会文件系统的不一致,导致错误,不推荐使用。
    十.用ISO文件
    虚拟机里面的光驱可以有物理光驱和ISO文件两种,我们可以把我们的文件重点制件成ISO文件(用WinIso),然后在Linux中作为CDROM挂接。

  • vmware下linux与windows的文件共享问题总结
  • 关键字:VMWARE,LINUX,WINDOWS ,共享,虚拟机
  • 适用情形:物理主机安装windows xp;vmware虚拟机安装fc 8
  • 目的:在物理主机开机的情况下,使得windows、linux可以相互共享资源;
  • 步骤:
  • 首先就是要在vmware虚拟机中安装vmware tools。此操作必须在虚拟机中的fc8进入到系统中后才可进行,点击vm——>install vmware tools,fc8下弹出vmware tools的安装目录(在Xwindows环境下),双击任一个安装程序即可实现vmware tools的安装;安装完成后,即可实现虚拟机环境与实际物理主机环境的任意鼠标移动。
  • 第二步,在windows下,网上邻居——>本地连接——>属性——>高级——>Internet连接共享——>选中允许其他网络用户通过。。——>家庭网络连接选VMnet1——>确定。
  • 第三步,在linux下,配置静态IP,点击系统——>管理——>网络,弹出网络配置对话框,选择编辑,在静态ip地址中填上如下内容:
  • Address:192.168.0.21 (最后一位除1可以随便写)
  • Subnet Mask: 255.255.255.0
  • Gateway:192.168.0.1
  • 点击确定;
  • 选DNS,填Primary DNS:192.168.0.1
  • 选hosts,可以看见你的主机名和IP,下面需要改动
  • 保存退出。
  • 第四步,编辑主机地址
  • 新建一个终端,写vi /etc/hosts 打开hosts文件
  • 把主机前的ip改为Address里面设的ip。(一般就在第一行)
  • 第五步,重起网络服务
  • service network restart
  • 第六步,应该可以上网了
  • 第七步,配置samba
  • vi /etc/samba/smb.conf 打开配置文件
  • 找到hosts allow或在文件里加上 hosts allow = 192.168.0.(不要忘了最后的点)
  • 在文件的最后加上共享的文件夹,下面是示例。(文件里有说明怎样加上共享文件夹)
  • [root]
  • comment = all for windows
  • path = /root
  • guest ok = yes
  • writeable = yes
  • [data]
  • comment = data
  • path = /data
  • guest ok = yes
  • writeable = yes
  • 保存退出
  • 检查更改中是否有语法错误:
  • testparm
  • 第八步,清掉网络规则
  • iptables –F
  • 此命令用于清除linux中的端口规则,因为samba服务利用的是139和445端口,故如果linux中存在防火墙的话,是无法从windows登陆到linux共享目录的。
  • 第九步,重起samba服务
  • service smb restart
  • 第九步,然后在windows下,就可以访问上面设置的共享文件夹了。
  • 开始-〉运行->填上\\192.168.0.21
  • 访问你的共享文件夹
  • 在Linux 中的常用工具mount(smbmount)和smbclient;Windows查看Linux共享的方法 ;
  • 在Linux系统中查看网络中Windows共享文件及Linux中的Samba共享文件;
  • 一般的情况下,我们要用到smbclient;常用的用法也无非是下面的;
  • [root@localhost ~]# smbclient -L //ip地址或计算机名
  • 这个以后慢慢补充吧;
  • 在Windows中访问Linux Samba服务器共享文件的办法;
  • 这个简单吧,在网上领居,查看工作组就能看得到,或者在浏览器上输入如下的
  • \\ip地址或计算机名
  • 这样就能看到这个机器上有什么共享的了,点鼠标操作完成;如果访问不了,不要忘记把Linux的防火墙规划清掉,或让相应的端口通过;
  • smbfs文件系统的挂载;
  • mount 的用法,加载网络中的共享文件夹到本地机;mount就是用于挂载文件系统的,SMB做为网络文件系统的一种,也能用mount挂载;smbmount说到底也是用mount的一个变种;
  • mount 挂载smbfs的用法;
  • mount -t smbfs -o codepage=cp936,username=用户名,password=密码 , -l //ip地址/共享文件夹名 挂载点

    mount -t smbfs -o codepage=cp936,username=用户名,password=密码 , -l //计算机名/共享文件夹名 挂载点

    mount -t smbfs -o codepage=cp936 //ip地址或计算机名/共享文件夹名 挂载点
  • smbmount的用法:
  • smbmount -o username=用户名,password=密码 , -l //ip地址或计算机名/共享文件夹名 挂载点
    smbmount //ip地址或计算机名/共享文件夹名 挂载点
  • 说明:
  • 如果您的服务器是以share共享的,则无需用户名和密码就能挂载,如果出现要密码的提示,直接回车就行;您也可以用smbmount 来挂载,这样就无需用mount -t smbfs来指定文件系统的类型了;
  • 对于挂载点,我们要自己建立一个文件夹,比如我们可以建在/opt/smbhd,这由您说的算吧;
  • 在mount的命令中,我们发现有这样的一个参数codepage=cp936,这是服务器端文件系统的编码的指定,cp936 就是简体中文,当然您可以用utf8等,尝试一下吧。
  • 如果您挂载了远程的smbfs文件系统出现的是简体中文乱码,就要考虑挂载时要指定编码了;
  • 最后,你可以用远程工具如putty.exe,在windows下用ip:192.168.0.21登陆linux,这样你就可以在windows下用命令行工作在linux下,而不用去切换到vmware下
  • 如果以上设置好还不行的话,在linux下用下面的命令
  • ifconfig 看一下eth0是不是设的ip:192.168.0.21
  • 如果不是
  • ifconfig eth0 192.168.0.21
  • service smb restart
  • service network restart
  • 如果是
  • /etc/init.d/smb
  • /sbin/service
  • /sbin/iptables -F
  • 设置nick用户的samba密码:
  • [root@...]Smbpasswd –a nick
  • 此时输入的密码为nick用户的samba密码,与nick用户登录系统的密码可以不同;且一般设置为不同的密码;
  • Smbclient –L //192.168.0.2 –U nick
  • 当提示输入密码时:输入nick用户的samba密码即可(这里假设为123456),root用户同理。

  • 本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/nick0411/archive/2008/07/24/2704961.aspx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值