在Linux下用mount和smbmount命令挂载Windows共享

时间:2021-07-06 15:53:58

一、功能说明:
     在Windows操作系统之间,可以通过映射网络驱动器的方式,将某个共享目录映射成一个磁盘文件系统,在Linux下,可以通过smbmount命令来实现相似的功能,将Windows的某个共享目录挂载到Linux下的某个目录下。
     测试平台: Red Flag DC5.0 x86-sp2  
                   Windows xp sp2
     当前测试条件:
         1、Windows和Linux共处于同一个局域网中,可以互相ping通,都未设置防火墙
         2、Windows的IP地址:192.168.0.103
         3、Linux的IP地址:192.168.0.150
         4、Windows上当前有如下共享:c盘,share(everyone具有读取权限)
         5、Windows上的用户有administrator(管理员组用户帐号),guest(当前未启用),没有root帐号
         6、Linux上安装有相关的RPM包:samba-client,它是Samba客户端工具,安装后可以使用smbmount命令
二、smbmount
    基本测试过程如下:
       语法:smbmount //IP地址/共享名 挂载点 -o 选项1,选项2……
     1、挂载c共享:
       [root@redflag ~]# mkdir /mnt/share
       [root@redflag ~]#  smbmount //192.168.0.103/c /mnt/share -o username=administrator
       Password:
       [root@redflag ~]#  umount /mnt/share               //卸载挂载点
     2、挂载temp共享(启用guest帐户)
       [root@redflag ~]#  smbmount //192.168.60.188/temp  /mnt/share
        Password:
    此时,未指定帐号和密码,则使用环境变量USER为帐号,使用环境变量PASSWD作为密码,因为Windows已经启用guest帐号,且temp共享为允许任何人读取,所以此次命令运行成功。
       [root@redflag ~]#  umount /mnt/share    //卸载挂载点
     3、挂载temp共享(未启用guest帐户)
       [root@redflag ~]#  smbmount //192.168. 0.103/temp ./temp
        Password:
        Anonymous login successful
        2068: tree connect failed: ERRDOS - ERRnoaccess (Access denied.)
        SMB connection failed
        此时,guest帐号被停用,所以连接失败。
     4、实现开机自动挂载
       为了使机器在启动的时候自动挂载Samba共享,修改/etc/fstab添加一行:
        //server/share /mount/point smbfs username=[username],password=[password] 0 0
       server是Samba服务器的名称或者IP地址。 share是Samba的共享目录。 /mount/point是本机挂载的目录。 username和passoword是访问Samba服务器的用户名和密码。 
三、mount命令
    
基本的测试环境是一样的只是在命令上mount多加了一些参数。这里只介绍挂载c盘。
     挂载c共享:
     [root@redflag ~]#  mkdir /mnt/share
     [root@redflag ~]#  mount –t smbfs //192.168.0.103/c /mnt/share -o username=administrator
      Password:
     [root@redflag ~]#  umount /mnt/share
四、新版本的smb服务
    对于红旗Asianux3.0以及redhat Enterprise 5版本的linux系统,系统已经将smbmount这样的命令了而且-t smbfs也消失。以前的smbfs是为了和Windows好识别。smbfs协议改为cifs了,cifs才是正式的官方协议。
    范例:
     [root@redflag ~]# mount.cifs //IP/share  /point -o username=administrator%123456
     [root@redflag ~]# mount.cifs //192.168.2.230/job /mnt/share -o username=administartor%123456 

本文出自 “郭姓少侠的linux花园” 博客,请务必保留此出处http://fzguon.blog.51cto.com/1094587/397540