• CIFS(Samba)服务的使用


    Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,SMB服务器消息块最大的功能是可以用于Linux与windows系统直接的文件共享和打印共享,既可以用于Windows与linux之间的文件共享也可以用于linux与linux之间的资源共享

    组成Samba运行的有两个服务,一个是SMB,另一个是NMB;SMB是Samba 的核心启动服务,主要负责建立 Linux Samba服务器与Samba客户机之间的对话, 验证用户身份并提供对文件和打印系统的访问,只有SMB服务启动,才能实现文件的共享,监听139 TCP端口;而NMB服务是负责解析用的,类似与DNS实现的功能,NMB可以把Linux系统共享的工作组名称与其IP对应起来,如果NMB服务没有启动,就只能通过IP来访问共享文件,监听137和138 UDP端口

    samba的设定流程

    1.服务器整体设定方面:在smb.conf当中设定好工作组、NetBIOS主机名、密码使用状态(无密码分享或 本机密码)等等;

    2.规划准备分享的目录参数:在smb.conf内设定好预计要分享的目录或装置以及可供使用的账号数据;

    3.建立所需要的文件系统:根据步骤2的设定,在linux文件系统当中建立好分享出去的档案或装置,以及相关的权限参数

    4.建立可用samba的账号:根据步骤2的设定,建立所需的linux实体账号,再一pdbedit建立使用的samba的密码

    5.启动服务:启动samba的smbd,nmbd服务,开始运转。

    samba服务器全局配置

    workgroup 指定工作组名称

    server string 主机注释信息

    netbios name 指定NetBIOS名

    interfaces 指定服务侦听接口和ip

    hosts allow 可用“,”,空格,或tab分隔,默认允许所有主机访问,也可在每个共享独立配置。

    hosts deny 拒绝指定主机访问

    config file = /etc/samba/conf.d/%U 用户独立的配置文件

    Log level = 2 日志级别,默认为0,不记录日志

    max log size = 50 日志文件达到50k,将轮循rotate,单位KB

    passdb backend = tdbsam 密码数据库格式

    samba服务共享目录配置

    每个共享目录应该有独立的[ ]部分[共享名称] 远程网络看到的共享名称

    comment 注释信息

    path 所共享的目录路径

    public 能否被guest访问的共享,默认为no,和guest ok类似

    browsable 是否允许所有用户浏览此共享,默认为yes,no为隐藏

    writeable = yes 可以被所有用户读写,默认为no

    read only = no 和 writeable = yes 等价,如与以上设置发生冲突,放在后面的设置生效,默认只读

    write list 三种形式:用户,@组名(如writeable=no,列表中用户或组可读写,不在列表中用户只读)

    valid users 特定用户才能访问该共享,如为空,将允许所有用户访问,用户名之间用空格分隔

    1.修改主机名,安装samba服务

    [root@nfs-client ~]# hostnamectl set-hostname samba

    [root@nfs-client ~]# bash

    [root@samba ~]# yum install -y samba

    出现Error downloading packages报错时,可以尝试yum cleam all后重新配置yum源

    2.配置samba服务

    配置Samba的配置文件/etc/samba/smb.conf

    1)修改[global]中的内容如下(找到配置文件中的字段并修改,disable spoolss = yes是新增的)

    load printers = no

            cups options = raw

     

    ;       printcap name = /dev/null

            # obtain a list of printers automatically on UNIX System V systems:

    ;       printcap name = lpstat

    ;       printing = bsd

            disable spoolss = yes

    2)在配置文件的最后,添加如下内容:

    [share]

            path = /opt/share  #/opt/share:这个目录是将要共享的目录,若没有,需要创建

            browseable = yes  # browseable:参数是操作权限

            public = yes      # public:参数是访问权限

            writable = yes    #writable:参数是对文件的操作权限

    创建目录并赋予权限

    [root@samba ~]# mkdir /opt/share

    [root@samba ~]# chmod 777 /opt/share/

    启动samba服务,查看端口启动情况

    [root@samba ~]# systemctl start smb

    [root@samba ~]# systemctl start nmb

     

    创建Samba用户(密码:123456),重启samba服务

     

    3.使用samba服务

    关闭SELinux服务与防火墙

    [root@nfs-client ~]# setenforce 0

    [root@nfs-client ~]# systemctl stop firewalld

    在物理机上按“win+R”键,输入Samba服务的IP地址

     

    输入用户名密码登陆

     

    看到一个root目录一个share目录,Samba会默认共享用户目录,share则是通过配置文件共享的目录

     

    在虚拟机将之前移动到/media中的repo文件,移动到share目录

    在物理机上查看share目录

     

  • 相关阅读:
    替代传统C/S和B/S技术的下一代客户/服务器编程技术
    理想的编程语言
    nginx进程模型
    Sybase 7.0 中文乱码问题
    netfilter 链接跟踪机制与NAT原理
    TraTraffic Server 进程模型
    nginx并发模型与traffic_server并发模型简单比较
    vs/nat原理分析
    ORACLE 查询表信息
    in 跟exists的区别
  • 原文地址:https://www.cnblogs.com/lzp123/p/13226478.html
Copyright © 2020-2023  润新知