1.如何在Windows和Linux中共享文件?

1.首先说明文件共享的发展历程及常见的一些网络文件系统:NFS,SAMBA,FTP,CIFS

早期网络世界当中,数据在不同主机之间的传输大多是使用 FTP服务器软件来进行传送。不过,使用FTP,那就您无法直接修改主机上面的数据!也就是说您想要更改Linux 主机上的某个档案时,必需要由 Server 端将该档案下载到 Client端后才能修改,也因此该档案在 Server 与 Client 端都会存在,且不能云同步;

为了实现在客户端上面直接修改位于服务器端的数据文件,后来就逐渐产生了 NFS(Network File System),CIFS(Common Internet File System),SMABA这三种文件系统区别如下:

        NFS(Network File System)仅限于like-LINUX 系统之间共享使用,smaba可以使Linux和Windows之间互相共享使用,而CIFS是smaba的一个变异版本,开始只运营在微软的操作系统之间使用,后来经过改进也支持Linux和Windows之间共享,且cifs和smaba均是基于smb协议发展起来的网络文件系统,

        Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现在的Samba软件。后来微软又把 SMB 加强以后改名为 CIFS(Common Internet File System),即公共 Internet 文件系统,并且加入了许多新的功能,这样一来,使得Samba具有了更强大的功能。

        CIFS 的消息格式不同与NFS的固定长度格式, 大多数消息体都包含可变长的数据,这带来一定的协议复杂性。CIFS 消息一般在netbios或Tcp协议层上,分别使用不同的端口 139 或445, 目前倾向于使用445端口

      参考文献:1.http://blog.csdn.net/amaowolf/article/details/7297650

                        2.https://baike.so.com/doc/5500246-5737682.html

2.在Windows和Linux中共享文件方法有如下几种:

   1.在Linux上面搭建smaba服务器,实现Windows用户访问Linux系统上的文件

      搭建完毕后使用mount命令挂在Windows的共享文件夹至Linux目录,也可以借此实现Linux访问Windows上的文件

详细教程见专向学习-SMABA服务器的搭建,实现Windows和Linux数据互访

参考文献:1.http://www.doc88.com/p-2002997665543.html

                 2.http://www.cnblogs.com/mchina/archive/2012/12/18/2816717.html

2.Linux下挂载Windows下的共享文件,通过mount.cifs挂载

    

     经常要挂载网络上的 windows 共享目录,用 smbmount 来挂载没啥问题,但是注意到 dmesg 会提示 smbfs 这东西在 kernel2.6.27 之后就不再推荐使用了,而且进内核看了看帮助,发现在 kernel2.6.29 之后 smbfs 就将从内核中取消,将被 cifs(Common Internet File System) 所取代,反正迟早都得换,就把内核重新编了一下,把 cifs 加了进来。内核支持了,想当然就去 mount -t cifs 了,结果发现还得安装一个包net-fs/mount-cifs ,然后 mount -t cifs 或者 mount.cifs 都可以了

samba只是用来建立一个服务器,其实就是装载了netBios协议而已,可以让windows的client用过网上邻居来访问linux的共享目录。当然装完了samba后,linux可以通过-t samfs来访问windows的共享目录,那有没有一种不用装软件而达到访问Windows共享目录的方法呢。我们可以用cifs,而不用去专门装samba.

   设置步骤:

   首先设置Windows下共享文件夹为特定用户所共享

   其次通过mount命令把该共享文件夹以磁盘分区的方式挂载到Linux系统中:

           mount.cifs   //192.168.9.155/APP /mnt/APP/ -o user=administrator,pass=dsff#$TTT

          mount -t cifs   //192.168.9.155/APP /mnt/APP/ -o user=administrator,pass=dsff#$TTT

注: 

           mount -t cifs  需要Linux支持cifs文件系统

           mount.cifs 用于挂载 CIFS 文件系统。它通常由使用"-t cifs"选项的 mount(8) 命令间接调用。 这个命令只能在支持 CIFS 文件系统的Linux内核上使用。CIFS 协议是 SMB 协议的替代版本, 它被包括 Windows 在内的几乎所有操作系统所以及 NAS(Network Attached Storage)应用和Samba服务器所支持。

posted on 2017-08-08 16:02  剑&客  阅读(710)  评论(0)    收藏  举报

导航