Embeded linux 之 cifs文件系统

待整理

转自:

http://blog.csdn.net/yuanbinquan/article/details/51734705

简介

CIFS (Common Internet File System)

通用Internet文件系统

在windows主机之间进行网络文件共享是通过使用微软公司自己的CIFS服务实现的。

功能

CIFS 可以使您达到以下功能:

1.访问服务器本地文件并读写这些文件

2.与其它用户一起共享一些文件块

3.在断线时自动恢复与网络的连接

4.使用统一码(Unicode)文件名:文件名可以使用任何字符集,而不局限于为英语或西欧语言设计的字符集。
优点

一般来说,CIFS使用户得到比FTP更好的对文件的控制。它提供潜在的更直接地服务器程序接口,这比使用HTTP协议的浏览器更好。CIFS最典型的应用是windows用户能够从“网上邻居”中找到网络中的其他主机并访问其中的共享文件夹

CIFS 是开放的标准而且已经被作为Internet应用程序标准被提交到IETF。

用于Java与DCom通信的开源第三方库J-Interop就是利用CIFS协议实现的。

CIFS和NFS的对比

(1)CIFS面向网络连接的共享协议,对网络传输的可靠性要求高,常使用TCP/IP;NFS是独立于传输的,可使用TCP或UDP;

(2)NFS缺点之一,是要求client必须安装专用软件;而CIFS集成在OS 内部,无需额外添加软件;

(3)NFS属无状态协议,而CIFS属有状态协议;NFS受故障影响小,可以自恢复交互过程,CIFS不行;从传输效率上看,CIFS优于NFS,没用太多冗余信息传送;

(4)两协议都需要文件格式转换,NFS保留了unix的文件格式特性,如所有人、组等等;CIFS则完全按照win的风格来作。

使用

在实际应用中,当linux需要挂载window上的目录上,大家首先想到的是samba和VM tools等工具,其实cifs是最简单用法,它不需要你安装任何工具,是windows和linux自带功能。

window端:

首先在你windows上建立共享文件夹,目录 E:\nfs, 用户: Everyone ,  权限:所有权限 ,详细信息如下:

这样windows端设置完成。

Linux端:

x86:

这里以ubuntu为例,默认时支持cifs文件系统的,不需要做任何配置。直接使用mount命令挂载即可

在确保linux系统可以ping通windows系统的前提下,使用一下命令。

#mount -t cifs -o username=Everyone,password=‘‘ //192.168.88.77/nfs /mnt

用户名:username与windows设置一致Everyone,密码password为空, 192.168.88.77为你的windows系统的ip地址, mnt 为你linux系统下的挂载目录位置

#ls /mnt

即可查看到windows上的共享目录了。

arm:

这里以arm9+linux系统为例

嵌入式设备上,默认的内核是不支持cifs文件系统的,所以在编译内核时需要是能cifs文件系统的支持,方法如下:

这样内核就支持cifs文件系统了,接下来可以直接使用mount命令,当然有同样的前提,你的arm板必须能够ping通你的windows系统ip。

#mount -t cifs -o username=Everyone,password=‘‘ //192.168.88.77/nfs /mnt

用户名:username与windows设置一致Everyone,密码password为空, 192.168.88.77为你的windows系统的ip地址, mnt 为你linux系统下的挂载目录位置

#ls /mnt

即可查看到windows上的共享目录了。

如果在ls时,报如下错误:
ls: can‘t open ‘.‘: Value too large for defined data type

发现在mount的时候加上“nounix,noserverino”选项后,就不再出现这个问题了,因此完整的mount命令可能如下:

#mount -t cifs  -o username=Everyone,password=‘‘,nounix,noserverino //192.168.88.77/nfs /mnt

时间: 2024-10-10 18:15:54

Embeded linux 之 cifs文件系统的相关文章

linux初学者-CIFS网络文件系统篇

linux初学者-CIFS网络文件系统篇 CIFS是一种通用网络文件系统,主要用于网络设备之间的文件共享.CIFS可以在linux系统和windows系统之间共享文件,因此这种文件系统主要用于客户端是windows系统. 提供CIFS的服务是SAMBA,下文将介绍SAMBA服务的一些配置以及用法. 1.SAMBA的安装和配置 "yum install samba samba-common samba-client -y".安装SAMBA服务. "systemctl start

cifs文件系统{samba文件共享服务}

一.samba介绍 1.提供cifs协议实现共享文件,主要用于windows与linux的网络文件系统 二.搭建环境安装服务 1.配置yum仓库 2.关闭防火墙 systemctl stop firewalld 3.安装软件,设置开机自动启动 yum install samba samba-common samba-client -y systemctl start smb   开启samba服务 systemctl enable smb   设置开机自动启动 (samba-common  sa

Linux磁盘及文件系统的管理

Linux磁盘及文件系统的管理 我们计算机当中的核心部件并不包括磁盘,磁盘对我们的计算机来说属于外部I/O设备,我们目前主流的硬盘是机械式硬盘,我们的CPU以及内存设备属于电子设备,而我们的硬盘属于机械设备,所以说在发展速度上,CPU和内存要比硬盘快很多,我们通常所说的磁盘格式化分为两种,一种叫做低级格式化,低级格式化是硬盘厂商在出厂前就已经做好的,低级的格式化的目的是为了划分好磁盘上的磁道等物理边界,而当我们将磁盘拿到自己手里之后都会对磁盘进行分区(partition),我们对磁盘进行分区的目

linux中关于文件系统的简要介绍和一般操作

创建文件系统--分区格式化    格式化:        低级格式化:            划分磁道        高级格式化:            创建文件系统,按照某种特定的标准,将整个分区划分为大小相同的若干小的逻辑编址单元,每个这样的单元,称为块(Block): 划分块的标准:                在Linux的文件系统中,主要的块划分标准就是:每个块包括2^1或2^2或2^3个扇区:即块大小可以是:1024Byte,2048Byte或者4096Byte: 注意:     

Linux磁盘存储和文件系统

设备文件 磁盘设备的设备文件命名:/dev/dev-file SCSI,SATA,SAS,IDE,USB:        /dev/sd* 虚拟磁盘:/dev/vd 不同磁盘标识:a-z,aa,ab... /dev/sda,/dev/sdb,... 同一设备上的不同分区:1,2... /dev/sda1,/dev/sda5 设备号码:     major number       标识设备类型 minor number      标识同一类型下的不同设备 磁盘存储术语: head        

Linux磁盘及文件系统(三)Linux文件系统

一.文件系统的组成 Linux常见的文件系统类型有ReiserFS,ext2,ext3,ext4,vfat,XFS等,文件系统是对一个存储设备上数据和元数据进行组织的机制.他的最终目的是把大量数据有组织的放入持久性的存储设备中,比如硬盘和磁盘.文件系统就是文件在逻辑上组织形式,他以一种更加清晰的方式来存放各个文件.数据被存放到某个分区中.一个典型的Linux分区包含有以下各个部分: boot block:任何分区的第一个块,存放系统的引导程序. super block(超级块):保存整个分区的全

Linux的Ext2文件系统(Inode&Block)详解

前述:Linux系统管理员很重要的任务之一就是管理好自己的磁盘文件系统,每个分区不可太大也不可以太小,太大会导致磁盘容量的浪费,太小会导致产生的文件无法存储的问题.在Linux里面文件是由两部分数据组成,一部分是metadata,另一部分是data.那么这些数据都存放在文件系统的什么地方呢?这就让我们必须得了解文件系统的Inode与Block的基本原理了,而Linux最传统的磁盘文件系统使用的是Ext2,所以我们了解下它的内部原理. 第一部分:磁盘的组成和分区(基础) 磁盘的机械部分: 1.圆形

Linux 下EXT2文件系统 —— 如何将蚂蚁和大象优雅的装进冰箱里

这一阵子真是偷懒,无时无刻不和自己身体中的懒癌做斗争.最终我还是被打败了,星期天两天几乎都是荒废过去的,在空闲的时候实际上我内心也是有点焦虑的,不知道去怎么度过这时间.学习吧又不想学习,看电视娱乐吧也没有心情.在这种状态中,我度过了星期天,到了今天我才趴在窗扇看了一会linux.这一部分之前也看过,不过是走马观花式的看,并没有投入精力.今天看了下,发现其实windows的文件系统和linux还是有很多不同的.从设计的角度上,linux的文件系统似乎更加聪明,看完这部分,我也更喜欢linux了.

Linux学习之文件系统详解

本文和大家分享的主要是 linux文件系统 相关内容,一起来看看吧,希望对大家学习使用这部分内容有所帮助.   1 . linux 文件系统分配策略:  块分配 (blockallocation) 和扩展分配 (extentallocation) :  块分配:磁盘上的文件块根据需要分配给文件,避免了存储空间的浪费.但当文件扩充时,会造成文件中文件块的不连续,从而导致过多的磁盘寻道时间.  每一次文件扩展时,块分配算法就需要写入文件块的结构信息,也就是 meta-dada . meta-data