CIFS文件系统

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

功能
CIFS 可以使您达到以下功能:
1.访问服务器本地文件并读写这些文件
2.与其它用户一起共享一些文件块
3.在断线时自动恢复与网络的连接
4.使用统一码(Unicode)文件名:文件名可以使用任何字符集,而不局限于为英语或西欧语言设计的字符集。
优点
一般来说,CIFS使用户得到比FTP更好的对文件的控制。它提供潜在的更直接地服务器程序接口,这比使用HTTP协议的浏览器更好。CIFS最典型的应用是windows用户能够从“网上邻居”中找到网络中的其他主机并访问其中的共享文件夹。
CIFS 是开放的标准而且已经被作为Internet应用程序标准被提交到IETF。
用于Java与DCom通信的开源第三方库J-Interop就是利用CIFS协议实现的。

1.SMB文件共享
在window和linux之间进行共享就会用到SMB文件共享,Samba服务可用于将Linux文件系统作为CIFS/SMB网络文件的共享目录进行共享,并将Linux打印机作为CIFS/SMB打印机的共享进行共享。
下面我们测试的是将linux文档共享给另一端的linux系统,但实际中,SMB几乎都用于windows和linux的文件共享。

服务端
安装:
yum install samba-common samba-client samba -y ##依次为samba支持文件、服务器应用程序
smbpasswd -a student ##添加smb用户
pdbedit -L ##查看smb用户
配置文件:
vim /etc/samba/smb.conf
在最后面添加所需要配置的指令

   [DATA]              ##共享目录名称
    comment = local directory /mnt    ##目录说明
    path = /mnt    ##指定共享的目录
    browseable = yes  ##允许显示目录
    guest ok = yes    ##允许匿名用户登陆
    writable = yes    ##允许用户写入
    write list = @student   ##允许这个student用户组可写,没有@/+表示允许用户可写
    admin users = student    ##指定student用户在执行命令时是root用户
    valid users = @student ##指定student用户组可以登陆,没有@/+表示允许用户可以登陆

在登陆匿名用户时,还需要在122行添加一个参数
map to guest = bad user ##将无法识别的用户变成匿名用户

其中的可读可写开启后还是不可读不可写,需要查看selinux是否开启
getenforce
如果显示 Enforcing
需要更改它的开启状态
setenforce 0
或者更改其权限
getsebool -a | grep samba
samba_export_all_ro –> on ##开启可读
samba_export_all_rw –> off ##开启可写
当然了,如果这些配置完你还是不可读不可写,那就得看看共享目录的权限了

客户端
yum install samba-client -y
smbclient //172.25.254.237/DATA -U student ##以student用户身份登陆共享目录DATA
mount -o username=guest,password=”” //172.25.254.237/DATA /mnt ##通过匿名用户把共享目录挂载到 /mnt

永久挂载需要编辑
vim /etc/fstab
//172.25.254.237/DATA /mnt cifs defults,username=guest,password=”” 0 0

2.smb多用户挂载
提供对客户端多个身份用户的区分

客户端
yum install cifs-utils -y
vim /root/smbpassword ##编辑存放用户密码的文件
username=student
password=student

su -student ##切换到student
mount -o credentials=/root/smbpasswd,multiuser,sec=ntlmssp //172.25.254.137/DATA /mnt ##通过文件记录的用户挂载共享目录

其他命令
cifscreds add -u student 172.25.254.137 ##增加student用户可挂载共享目录
cifscreds clearall ##清空挂载用户

你可能感兴趣的:(linux)