zoukankan      html  css  js  c++  java
  • Samba服务

    Samba服务是基于类UNIX系统的SMB/CIFS协议工具,可以支持Linux与Windows系统之间文件共享。

    服务端程序:

    • testparm      检查smb.conf配置是否正确
    • smbd           Smb服务daemon
    • nmbd           NetBIOS名称服务daemon
    • smbpasswd   配置账号密码

    客户端程序

    • smbmount   挂载远程共享目录
    • smbclient    命令行访问工具,类似于FTP客户端

    其他工具:smbstatus, smbumount, smbprint, smbprint.sysv, smbrun

    NetBIOS   Windows网络主机名称,最长为16个字符。是主机加入Widnows工作组使用的网络名。

    安装

    yum install samba.x86_64

    最简配置

    1.编辑配置文件:#/etc/samba/smb.conf

    [global]
    workgroup = WORKGROUP
    server string = "MySamba"
    netbios name = "MySamba Server ip"
    security = share
    
    [public1]
    path = /home/mysamba  #不要将mysamba目录设置到/home下某个子用户目录中,否则无法访问
    public = yes
    writable = yes

    2.设置共享目录的权限

    chmod 777 /home/mysamba -R

    3.重启samba服务,让修改后的配置文件生效

    /etc/init.d/smb restart  # start stop restart

    其它启动方式

    /usr/sbin/smbd -D
    /usr/sbin/nmbd -D

    smbd [-D|--daemon] [-F|--foreground] [-S|--log-stdout] [-i|--interactive] [-V] [-b|--build-options]
    [-d <debug level>] [-l|--log-basename <log directory>] [-p <port number(s)>] [-P <profiling level>]
    [-s <configuration file>] [--no-process-group]

    nmbd [-D|--daemon] [-F|--foreground] [-S|--log-stdout] [-i|--interactive] [-V] [-d <debug level>]
    [-H|--hosts <lmhosts file>] [-l <log directory>] [-p|--port <port number>] [-s <configuration file>]
    [--no-process-group]

    4.访问

    Windows系统直接在文件浏览器中输入:  \192.168.1.88   就能看到名为public1的共享目录。

    linux系统在文件浏览器中输入:   smb://192.168.1.88

    配置文件详解

    /etc/samba/smb.conf

    查看帮助:man smb.conf 或 文件内部注释

    [global]    #全局参数,整个系统的规则与公共变量
    netbios name = pc-name     #Windows网上邻居中显示的机器名
    workgroup = 所属NT域名或工作组名称
    server string =  主机描述信息
    hosts allow = 192.168.1.  192.169.3.     #允许哪些机器可以访问samba服务器
    guest account = nobody   
    invalid users = root  
    valid users = aaa bbb security
    = user #定义访问权限,从低到高依次为:share, user(连接需要账号) ,server. encrypt passwords = true #是否需要加密密码,Windows默认加密,Linux默认非加密,user安全级别为加密,share级别可不加密。 smb passwd file = /etc/samba/smbpasswd interfaces = 192.168.1.50/24 #配置smb服务所使用的网卡IP和子网掩码,如有多个网卡需要全部列出 name resolve order = host dns bcast #从机器netbios名称到IP地址的解析顺序,默认顺序为host lmhosts wins bcast。如果局域网有dns,
    #可以设置为hsot dns bcast wins support
    = no public = yes #在网上邻居中是否可见 browseable = yes #在网上邻居中是否可见 printing = bsd #指定Linux使用哪个打印机守护进程(bsd, sysv, hpux, aix, qnx ,plp),同时向samba说明命令lpr和lpq的省确值 printcap name = /etc/printcap #打印机配置文件位置 load printers = no #是否加载printcap定义的所有打印机供浏览 log file = /var/log/samba/log.%m #定义日志文件 max log size = 1000 #日志文件最大值(KB) username map =/etc/samba/smbuser #客户机和服务器之间进行用户映射的信息,将window和linux用户映射为同一个账号。

    #编码的配置
    display charet = UTF-8
    unix charset = UTF-8
    dos charset = cp936

    #其他
    guset account = guestname
    null password = yes


    [ShareName] #共享资源配置,控制每个用户目录的共享权限。节点名字就是其他机器可以看到的“目录”名,可以自己定义
    comment = 共享资源的描述
    path = /home/samba
    public = yes
    browseable = yes #是否在网上邻居中出现
    writable = no
    create mask = 0700 #写文件时的属性
    directory mask = 0700 #创建目录时的属性
    printable = no
    hosts allow = 10.1.1.3 10.1.2.
    security = user
    valid users = aaa bbb

    /etc/passwd

    samba账号配置,因为包含密码信息,所以拥有者需要为root,并且权限为600。

    其中的账号必须是系统中已经存在的账号,但是samba登录密码和本机登录密码可以不一样。samba密码只能用于samba访问。

    #username = samba_passwd

    账号管理可以直接配置该文件,也可用smbpasswd命令配置。

    smbpasswd -a username     #添加账号,username必须是系统中存在的账号(如果没有需要用useradd命令新建用户)
    smbpasswd -x username     #删除账号

    /etc/samba/smbuser

    客户机和服务器用户映射

    #linuxUser = user list
    root = admin administrator  #将Windows管理员账号映射为root用户

    smbfs

    可以通过mount和smbfs挂载远程的共享文件夹。(安装smbfs: yum install smbfs)

    mount -t smbfs -o  username=administrator,password=123456 //10.1.1.88/public1  /mnt/tmp 
    或
    smbmount //
    10.1.2.88/public1 /mnt/tmp -o username=administrator

    smbclient

    smb客户端工具,命令行访问samba。

    smbclient -L 10.1.1.88    #列出某个机器的共享文件夹(可跳过密码)
    smbclient -c "ls"  //IP/share  -U username     #列出某个共享文件夹的内容
    smbclient -c "ls"  //IP/share  -U username%passwd   #同上,不需要输入密码
    smbclient //IP/share  -U username[%passwd]     #登录samba服务器的共享目录,登陆后进入smb:>环境,
                                #可用ls, cd ,put ,get, help等命令。q或Ctrl+d退出。

    图形配置工具

    • system-config-samba 
    • 系统-系统管理-Samba

        

    参考文档

    http://blog.chinaunix.net/uid-9525959-id-2001825.html

  • 相关阅读:
    限时购校验小工具&dubbo异步调用实现限
    Android 应用防止被二次打包指南
    什么是高防服务器?
    真屏实据丨数据大屏设计实战—揭秘企业级数据大屏设计过程
    TerminateThread函数学习
    HTML DOM访问
    gdb常用命令
    整数开方算法
    android环境下解决java.io.IOException: Malformed ipv6异常的方法
    HTML DOM 创建与修改
  • 原文地址:https://www.cnblogs.com/pixy/p/4911689.html
Copyright © 2011-2022 走看看