• Samba 1.0服务部署


      Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。

      SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。

      上面是一些官方的解释,那对我而言,会怎么用呢,比如不用通过ftp软件把window的文件上传到linux服务器了,在linux服务器部署samba服务后,只要在window本地映射一个盘,以后如果想向服务器那里上传东西,就可以往这个盘里移动东西即可

      下面展示是以linux centos7.2做为samba服务器,win10做为客户端

    • 安装samba服务包
    yum -y install samba
    rpm -q samba 是否安装成功
    netstat -anp |grep 445 查看445端口
    •  编辑smb配置文件
    vi /etc/samba/smb.conf
    
    [global]
            workgroup = SAMBA
            server string = Samba Server Version %v
            netbios name = Linux-Server
            log file = /var/log/samba/%m.log
            max log size = 10240
            security = user  # share
            passdb backend = tdbsam
            hosts allow = 192.168.56.1 192.168.1.102  # 允许客户端访问的ip
    
    [homes]
            comment = Home Directories
            valid users = %S, %D%w%S
            browseable = No
            read only = No
            inherit acls = Yes
    
    [printers]
            comment = All Printers
            path = /var/tmp
            printable = Yes
            create mask = 0600
            browseable = No
    
    [print$]
            comment = Printer Drivers
            path = /var/lib/samba/drivers
            write list = @printadmin root
            force group = @printadmin
            create mask = 0664
            directory mask = 0775
    
    [shares]
        # 共享文件目录
        path = /smbtest/shares
        # 是否允许guest访问
        public = no
        # 可访问的用户组、用户
        valid user = smbusr
        # 是否浏览权限
        browseable = yes
        # 是否可写权限
        writable = yes
    
    •  添加测试用户
    useradd smbusr -d /smbtest/shares -s /bin/false  设置家目录,false只能访问共享目录
    chown smbusr:smbusr /smbtest/shares -R  给目录赋给用户和用户组
    smbpasswd -a smbusr
    
    •  重新启动smb服务
    先用这条命令查看启动状态
    systemctl status smb
    
    如果未启动
    systemctl start smb
    
    如果已启动
    systemctl restart smb
    
    •  防火墙放行smb端口
    开启防火墙端口  udp137 138 tcp 139 445
    有时是vi /etc/sysconfig/iptables
    
    systemctl start firewalld
    firewall-cmd --zone=public --add-port=80/tcp --permanent
    systemctl restart firewalld
    firewall-cmd --zone=public --list-ports
    
    • 关闭selinux
    vi /etc/selinux/config  或 setenforce 0
    getenforce 查看
    
    #SELINUX=enforcing  #注释
    # SELINUXTYPE= can take one of three values:
    #     targeted - Targeted processes are protected,
    #     minimum - Modification of targeted policy. Only selected processes are protected.
    #     mls - Multi Level Security protection.
    #SELINUXTYPE=targeted  #注释
    SELINUX=DISABLED  # 加这行
    

      另外如果你想设置服务器设置为静态ip,你可以

    vi /etc/sysconfig/network-scriptsifcfg-enp0s3
    systemctl restart network
    
    
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="static"  #关注点
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes"
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="enp0s3"
    UUID="e2b9d22b-0a5a-44cc-abf8-75d7f9458829"
    DEVICE="enp0s3"
    ONBOOT="yes"  #关注点
    #添加下面这几行
    IPADDR=192.168.1.103
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.254
    

      加入开机自启动项

    chkconfig smb on 设置开启自启动
    reboot 让开机自动启动项  
    

    客户端验证

      其中访问 ip就是服务端ip,按照下列步骤,映射后进行文件常用操作,对比客户端和服务端

      增加驱动映射

    如果只要用v1服务可以参照下面的

    开启v1v2和禁用v1v2操作

    win10开启v1

  • 相关阅读:
    包装类
    项目基础架构搭建
    开发环境的搭建和Shell编程
    Linux系统概述和编程基础
    java.lang.ExceptionInInitializerError
    mybatis中文文档
    如何造轮子
    Application Server was not connected before run configuration stop, reason: Unable to ping server at localhost:1099
    JDK 1.7与JDK 1.8版本的完美切换
    JDBC连接步骤
  • 原文地址:https://www.cnblogs.com/xinsiwei18/p/10889235.html
Copyright © 2020-2023  润新知