smb & linux

     SMB(Server Message Block)通讯协议是微软(Microsoft)和英特尔(Intel)在1987年制定的协议,主要是做为Microsoft网络的通信协议。SMB 是在会话层(session layer)和表示层(presentation layer)以及小部分应用层(application layer)的协议。SMB使用了NetBIOS的应用程序接口 (Application Program Interface,简称API)。另外,它是一个开放性的协议,容许了协议扩展——使得它变得更大并且复杂;大约有65个最上层的做业,而每一个做业都超过120个函数,甚至Windows NT也没有所有支持到,最近微软又把 SMB 更名为 CIFS(Common Internet File System),而且加入了许多新的特点。windows

      在仅有 Windows 系统的网络中,一般使用 SMB 协议来共享打印机.服务器

        用smb协议在Linux和Windows进行数据共享是局域网内常常遇到的事,话说这个smb协议绝对是个两面派,无论是Linux仍是Windows,两头都能说上几句话,颇似当年的“翻译官”.网络

        在windows下访问Linux上的共享数据很容易,最菜也是最方便的办法是直接在网上邻居里搜索,输入Linux系统的IP、用户名、密码就搞定。但反过来就不是特别方便了(与windows相比而言,谁让windows就是那么方便呢),好比你首先得确认windows系统上的共享资源,这须要用下面这个命令:
smbclinet -L 对方的IP地址 -U 用户名
确认后系统会要你输入密码,而后你才能看到windows上的共享资源。但如今只是能看而已,你接下来还得把这个共享资源挂载到本身的机器上,因此你会用到下面这种复杂到BT的命令,更糟糕的是这个命令在不一样的Linux上名字也不一样,事实上,就算是同一家公司的Linux,因版本不一样,这个命令也不一样,麻烦!
session


   在Linux下用Smbmount命令挂载 app


Linux客户端要链接samba/windows文件服务器时,需使用smbmount或mount指令:
  smbmount //sambaserver/d /mnt/d -o username=aaa,password=bbb
  smbmount //sambaserver/d /mnt/d -o username=aaa%bbb
  mount -t smbfs -o username=aaa,password=bbb //sambaserver/d /mnt/d
  mount -t smbfs -o username=aaa%bbb //sambaserver/d /mnt/d
  smbclient //sambaserver/d -U username%passwordide

 

若是出现ERRDOS - ERRnosuchshare.....函数

请注意IP地址跟的文件夹不是服务器上的 而是网络上看到的ui

好比服务器上看到的是/home/abcspa

那么命令应该是命令行

mount -o username=aaa,password=bbb //xxx.xxx.xxx.xxx/abc /mnt

  注意:  1. 指定uid或gid参数,也能指定用户的身份(uid=后面可接uid号或用户名),如:  smbmount //test/d /mnt/d -o uid=grind  2. smbmount也能写做mount.smbfs,这是个符号连接;  3. smbmount的参数必须写在最后,而mount的参数位置能变化;  4. 因为//sambaserver/d格式能代表是要mount上smbfs,因此mount的-t smbfs参数能省掉;  5. 若是命令行中不加入密码,下一行中系统会提示你输入;  6. smbclient成功后,会出现ftp相似的界面,请仿照ftp进行

相关文章
相关标签/搜索