一、什么是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. 设置HTML5的video播放速度

    var speed = 1.5;//设置速度 var vdo = document.getElementById("视频的id");//获取id vdo.playbackRate ...

  2. 20145310 《Java程序设计》第2周学习总结

    20145310 <Java程序设计>第2周学习总结 教材学习内容总结 第三章主要学习了java的基础语法. java中的基本类型主要可区分为,整数.字节.浮点数.字符与布尔.整数shor ...

  3. 20145327 《Java程序设计》第二周学习总结

    20145327 <Java程序设计>第二周学习总结 教材学习内容总结 JAVA类型:基本类型与类类型(也称参考类型). 基本类型分为:整数(short,int,long).字节(byte ...

  4. 20135320赵瀚青LINUX内核分析第四周学习笔记

    赵瀚青原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 概述 本周的内容主要是讲解系 ...

  5. 4.9版本linux内核的ina220电流检测芯片源码在哪里

    答:在drivers/hwmon/ina2xx.c中,内核配置项为CONFIG_SENSORS_INA2XX Location: -> Device Drivers -> Hardware ...

  6. 2017 ACM/ICPC 南宁区 网络赛 Overlapping Rectangles

    2017-09-24 20:11:21 writer:pprp 找到的大神的代码,直接过了 采用了扫描线+线段树的算法,先码了,作为模板也不错啊 题目链接:https://nanti.jisuanke ...

  7. Centos环境下,执行gulp,显示执行成功,但找到不生成的压缩文件

    举例来说:以下是css文件夹下site.css文件为site.min.css,并且将生成的文件放在指定的目录下 //压缩站点css gulp.task('appallcss', function () ...

  8. Memcached incr 与 decr 命令

    Memcached incr 与 decr 命令用于对已存在的 key(键) 的数字值进行自增或自减操作. incr 与 decr 命令操作的数据必须是十进制的32位无符号整数. 如果 key 不存在 ...

  9. mysql数据库优化课程---13、mysql基础操作

    mysql数据库优化课程---13.mysql基础操作 一.总结 一句话总结:mysql复制表,索引,视图 1.mysql如何复制表? like select * 1.复制表结构 create tab ...

  10. pahlcon:循环调度(Dispatch Loop)或跳转

    循环调度将会在分发器执行,直到没有action需要执行为止.在上面的例子中,只有一个action 被执行到.现在让我们来看下“forward”(转发)怎样才能在循环调度里提供一个更加复杂的操作流,从而 ...