一、什么是CIFS

CIFS(Common  Internet  File  System)文件系统,也叫通用网络文件系统;它可以使一台主机访问远程主机上共享出去的文件。CIFS使用的C/S模式(客户端向服务器端发出请求,服务器端接受并作出回应)。CIFS是公开的开放的SMB(server  messages  block,服务信息块)协议。SMB现在在局域网上用于服务器文件访问和打印的协议。

(一)SAMBA实现文件共享

二、SAMBA的安装和使用

1).首先,在服务器端进行文件共享前,要安装一个samba软件。 (Samba是在linux和linux系统上实现SMB协议的一个免费软件)

yum  install  samba  samba-client  samba-common  -y

systemctl  start smb                                ##启动smb服务

      systemctl status  smb.server            
   2)安装好之后,添加smb用户

pdbedit  -L                                     ##查看已有的sam用户
     smbpasswd  -a   student                  ##添加用户,且该用户要在系统中存在

3)使用smb用户登陆使用

smbclient  -L  //172.25.254.121  -U  student      ##查看可以共享的目录(student)

smbclient    //172.25.254.121/student  -U  student         ##登陆,要输入密码,可以查看到共享文件内容

注释:要是在客户端连接有问题的时候,可以加入本地解析
              vim  /etc/hosts
              172.25.254.121  apache.example.com

使用smb用户进入共享目录, 不可以进行文件的建立和删除;若是想进行那些操作,就需要挂载使用。(
   2)修改主配置文件,把新建的共享目录添加进去

vim /etc/samba/smb.conf
         [linux]                                   ##显示共享目录的名字,自己取
         comment=dir from xniu         ##提示信息
         path=/xniu                             ##共享文件的绝对路径

3)完成之后,还是不可以访问改共享目录,此时需要修改安全上下文为samba服务相一致

semanage fcontext -a -t samba_share_t '/xniu(/.*)?'
         restorecon -RvvF  /xniu/                                                 ##刷新
         ls -Zd /xniu/                                                                   ##查看目录的安全上下文信息,与samba中安全上下文一致。
   4)修改之后结果如下:(可以显示/xniu/中内容)

   5)修改/etc/samba/smb.conf配置文件,使我们可以对/xniu共享目录创建可写
        vim     /etc/samba/smb.conf                ##添加可写设定:writeable=yes

        在21主机进行测试:(

六、对系统目录/mnt/共享的访问设定
   1)编辑主配置文件

vim /etc/samba/smb.conf               ##在配置文件中添加如下信息
        [mnt]
        comment=dir  from  mnt
        path=/mnt

2) 同样,只可以查看到共享目录,不可以列出目录下的内容。需进行如下修改

setsebool -P  samba_export_all_ro on                ##修改更大的权限

gersebool    -a     |  grep   samba                        ##查看修改后的参数状态

3)显示结果如下:(此刻的/mnt目录安全上下文没有改变,还是可以访问)

4)若要对系统目录进行读写,需要进行如下修改:

setsebool -P samba_export_all_rw  on

补充:共享目录的其他参数:
      valid  users = @student        ##表示student用户组可以执行挂载操作
      valid  users = student           ##表示只有student用户可以使用(修改linux的可用用户为student,结果如下所示)

writable = yes                     ##用户对共享目录目录可写
      write list = student              ##可写的对象是student
      guest  ok=yes                     ##表示匿名用户可以挂载

browseable = no                 ##是否可以显示
      admin  users = student        ##添加共享目录的管理员,(创建出来的用户组是student)
(二)NFS实现文件共享
七、NFS的安装和使用(当客户端和服务器端都是linux系统)
  1)服务器端执行步骤如下:

yum install nfs-utils.86_64                           ##安装软件nfs-utils
        systemctl  start  nfs                                ##启动服务
        vim  /etc/export  ---> /xniu  *(rw,sync)        ##编辑共享目录/xniu和共享所有数据 且可读写       
        exportfs     -rv                                       ##刷新(不可以使用restart.因为客户端正在挂载该设备。)

2)客户端的操作如下:

showmount -e 172.25.254.121               ##显示连接情况

mount 172.25.254.121:/xniu /mnt/         ##进行挂载使用   (若出现权限问题,修改/xniu目录权限为777即可)      
       
        df                         ##显示挂载情况
  3)若想要在客户端实现自动挂载,可以安装软件autofs.x86_64;客户端具体操作如下

yum install autofs.x86_64 -y            
         systemctl start autofs       
         cd    /net/172.25.254.121/xniu/                        ##可以直接进入共享目录中(df查看到它已经自动挂载了)

注释:当退出挂载目录时,过一会挂载会自动取消,也可以在/etc/autofs.conf中修改退出后自动卸载时间。

4)在客户端修改默认挂载目录,即只需要切换到目录/opt/nfs/newdir就可以实现挂载,进入共享目录

vim /etc/auto.master  -->    /opt/nfs        /etc/auto.nfs                     ##/opt/nfs为共享目录/xniu的上级目录
           vim /etc/auto.nfs   -->    newdir  -ro   172.25.254.121:/xniu               ##实现目录的挂载为只读
           systemctl restart autofs.service
           cd   /opt/nfs/newdir                                                                      ##切换到目录下,显示共享目录的内容

                     
注释:在客户端进行文件创建出现权限问题,应该修改两处的wr。
服务器端的参数的修改:

/xaut   *(sync,rw,anonuid=1000,anongid=1001)                 ##对目录的访问为读写,在服务器端生成的文件用户和用户组分别为1000,1001
      no_root_squash                                                               ##表示再客户端生成文件是当前用户的
     /xniu  *(sync) 172.25.254.100(rw,sync,no_root_squash)     ##两个不同主机有不同的访问限制

 八、客户端用户认证登陆

在服务器端进行安装:

1)yum    install  cifs-utils   -y

2) vim   /root/smbauth    --->   username= student    password=niu

3) mount   //172.25.254.121/linux  /mnt    -o   multiuser,credentials=/root/smbauth,sec=ntlmssp

4) cifscreds   add  -u    enen   172.24.254.121      ##除了载认证文件里面的用户登陆时,要通过认证。(且用户必须时smb用户)

5)cifscreds  clear  -u  enen 172.25.254.121      ##删除后才可以再次通过认证

LINUX系统下CIFS文件系统的更多相关文章

  1. 深入理解linux系统下proc文件系统内容

    深入理解linux系统下proc文件系统内容 内容摘要:Linux系统上的/proc目录是一种文件系统,即proc文件系统. Linux系统上的/proc目录是一种文件系统,即proc文件系统.与其它 ...

  2. Linux系统NFS网络文件系统

    Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到 ...

  3. linux系统下的软连接与硬链接

    前几天在linux系统下安装mongoDB,然后运行脚本导入数据的时候遇到了链接库查询不到的情况,如图 1所示.当时是通过创建软连接的方式解决的这个问题.虽然,通过网上的教程解决了这个问题,但是对于软 ...

  4. linux系统下svn服务器操作命令

    linux系统下svn服务器操作命令 .输出指定文件或URL的内容.  svncat 目标[@版本]…如果指定了版本,将从指定的版本开始查找. svncat -r PREV filename > ...

  5. Linux系统下权限管理和命令详解

    下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明.linux中除了常见的读(r).写(w).执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用, ...

  6. 在 Linux 系统下使用 PhotoRec 工具来恢复已删除或丢失的文件

    PhotoRec – Recover Deleted or Lost Files in Linux 在 Linux 系统下使用 PhotoRec 工具来恢复已删除或丢失的文件 当你在系统中有意或无意地 ...

  7. rsync Linux系统下的数据镜像备份工具

    rsync是Linux系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync.rsync支持大多数的类Unix系统,无论是Linux.Solaris还是BSD上都经过了良好的 ...

  8. linux系统下的用户文件句柄数限制

    linux系统下的用户文件句柄数限制 文章来源:企鹅号 为什么要修改用户打开的文件数 系统默认单个进程可以打开1024个文件,对于一些应用如tomcat.oracle等,运行时经常open成千上万个文 ...

  9. Linux系统下的 /etc/fstab 文件解读

    1 [root@localhost ~]# cat /etc/fstab 2 3 # 4 # /etc/fstab 5 # Created by anaconda on Sat Nov 3 12:03 ...

随机推荐

  1. Python面试题之Python生成器

    首先说明一下生成器也是迭代器,也有迭代器的那些优点. 那为什么要生成器呢?因为到目前为止都 不是你写的迭代器,都是别人定义好的.那如何自己去造一个迭代器呢?下面的内容就会给你答案. 想要自己造一个迭代 ...

  2. Web安全学习笔记之Nmap命令参考指南

    最近研究Nmap,命令太多,详细还是需要参考官方文档(可选中文) 本文转载 在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型.物理端口指的是物理存在的端口,如ADSL Modem.集线器. ...

  3. hadoop2对应的eclipse插件使用

    1. eclipse插件安装步骤: a).把插件复制到eclipse安装目录plugins文件夹下 b).打开eclipse的Window---Preference---Hadoop M/R---指向 ...

  4. Jquery 复制功能

    使用clipboardjs插件实现鼠标点击复制功能: 官网:https://clipboardjs.com/ 使用示例: 1.引入 <script type="text/javascr ...

  5. bat(续七)-for语句(循环结构)

    for语句(循环结构) for语句可以实现类似于C语言里面的循环结构,当然for语句的功能要更强大一点,通过不同的开关可以实现更多的功能.for语句有多个开关,不同开关将会实现不同的功能.   1.无 ...

  6. Chrome好用的插件:Wappalyzer 检测网站使用的技术

    Chrome好用的插件:Wappalyzer 检测网站使用的技术 Wappalyzer是一款能够分析目标网站所采用的平台架构.网站环境.服务器配置环境.javascript框架.编程语言等参数的chr ...

  7. 解题报告:hdu 1276 士兵队列训练问题 - 简单题

    Problem Description 某部队进行新兵队列训练,将新兵从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列,剩下的向小序号方向靠拢,再从头开始进行 ...

  8. 直播P2P技术2-低延迟模型

    低延迟模型 由上一篇文章我们知道:网状拓扑虽最大化利用了所有节点的资源却无法降低数据延迟,而树状拓扑尽管数据传输效率高,延迟低,但只利用了少部分节点的带宽资源,不适应高码率的直播P2P网络. 那么如何 ...

  9. SqlLocalDB命令

    SqlLocalDB info    (查询所有LocalDB实例) SqlLocalDB start 实例名称    (查看某个LocalDB实例状态信息) SqlLocalDB create 实例 ...

  10. Mahout 0.10.1安装(Hadoop2.6.0)及Kmeans测试

    1.版本和安装路径 Ubuntu 14.04 Mahout_Home=/opt/mahout-0.10.1 Hadoop_Home=/usr/local/hadoop Mavent_Home=/opt ...