Samba的全名为Server Message Block(服务信息块),samba软件整合了SMB协议及Netbios的应用程序接口协议,使其运行在TCP/IP上 。它是一套程序,支持基于UNIX的主机与基于WINDOWS主机的主机共享文件和打印。samba能提供稳定的文件和打印服务,在异构的网络中实现资源共享,
 
samba的核心:
samba的核心有两个守护进程,即smbd与nmbd。服务器启动到停止期间持续进行,smbd监听139 tcp端口,nmbd监听137和138udp端口.smbd与nmbd使用的全部配置信息保存在smb.conf文件中,sam.conf文件告诉smbd和nmbd两个守护进程说明输出什么、共享输出给谁及如何输出以便共享。smbd 进程的作用是处理来的smb数据包,为使该数据包的资源与linux协商;nmbd进程,使其他主机能浏览LINUX服务器。
下面是关于samba这个服务的属性
Samba的相关软件包
samba-common         :包括samba服务器和客户端均需要的文件;
Samba                          :samba的软件包   
System-config-samba    :samba的图形界面软件包
Samba-swat                  :samba的web界面管理软件包
samba-client         :samba客户端软件
Samba的守护进程
/usr/sbin/nmbd    /usr/sbin/smbd
Samba的脚本
/etc/init.d/smb
Samba的端口
Nmbd:137  138     smbd:  139  445
Samba的配置文件
/etc/smb*
Samba的配置方法有三种,

1)、配置samba的配置文件 :/etc/samba.conf

2)、图形界面配置:System-config-samba

3)、web界面配置:http://localhost:901

第一步、安装samba
[root@dns ~]# rpm -qa |grep samba
samba-common-3.0.33-3.14.el5 
samba-client-3.0.33-3.14.el5
[root@dns ~]# yum install samba
[root@dns ~]#
[root@dns ~]# rpm -ivh /home/cdsrc/Server/system-config-samba-1.2.41-5.el5.noarch.rpm
Preparing...                ########################################### [100%]
   1:system-config-samba    ########################################### [100%]
[root@dns ~]# rpm -qa |grep samba
samba-common-3.0.33-3.14.el5
samba-3.0.33-3.14.el5
system-config-samba-1.2.41-5.el5
samba-client-3.0.33-3.14.el5
samba-swat-3.0.33-3.14.el5

[root@dns ~]# cd /etc/samba/
[root@dns ~]#
[root@dns samba]# ll
总计 28
-rw-r--r-- 1 root root   20 2009-05-29 lmhosts
-rw-r--r-- 1 root root 9733 2009-05-29 smb.conf
-rw-r--r-- 1 root root   97 2009-05-29 smbusers

第二步、配置smb.conf文件
 
samba的主配置文件是/etc/samba/smb.conf,共288行,文件被分隔成若干节,每一节都有一个被方括号括起来的标志开始如[global]、 [home]和 [printers]。global部分定义的参数用来控制samba的总特性,除该部分外,每一部分都定义了一个专门的服务,我们只需要改动一小部分就能配置一个基本的samba服务器了。

[root@dns samba]# grep -v '^#' /etc/samba/smb.conf |grep -v '^$' |grep -v '^;'

可以看到基本的默认配置;
#======================= Global Settings =================

[global]

# ------------- Network Related Options ----------------
#这是设置服务器所要加入的工作组的名称,会在windows的“网上邻居”中看到
可以在此设置所需要的工作的名称
        workgroup = MYGROUP
#这是设置服务器主机的说明信息
        server string = Samba Server Version %v
#设置出现在“网上邻居”中的主机名,默认情况下使用真正的主机名
;       netbios name = MYSERVER

#samba网路地址接口,配置samba来使用多个网络界面
;       interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
#设置允许什么样的IP地址访问samba服务器,默认情况下被注释掉,表示
允许所有的IP的主机访问
;       hosts allow = 127. 192.168.12. 192.168.13.

注意,关于samba服务的IP的表示方法有点特殊
127.0.0.0写成127.
192.168.12.0写成192.168.12.
只需要写出网络位,主机位省略,然后以点结尾

# ------------------- Logging Options ----------------------

# logs split per machine
#设置文件路径,这个选项要求为每一台连接的机器使用一个单独的日志文件,指定
文件位置名称,samba会自动将%m转换成连接主机的netbios名
;       log file = /var/log/samba/%m.log
        # max 50KB per log file, then rotate
#指定日志文件的最大容量以KB为单位
;       max log size = 50

# ------------ Standalone Server Options ---------------
        security = user
        passdb backend = tdbsam
# ---------- Domain Members Options -------------
;       security = domain
;       passdb backend = tdbsam
;       realm = MY_REALM

;       password server = <NT-Server-Name>

# ----------------- Domain Controller Options ---------------
#Samba的安全模式
;       security = user

关于samba的五种安全模式
Share      允许匿名访问
User        需要用户名和密码认证,认证信息来自于samba服务本身
Domain   认证来自于网络中另一天计算机
Server     和domain一样

Ads         使用微软的AD来认证

;       passdb backend = tdbsam

#将samba服务器定义为主浏览器,此选项将允许samba在子网列表中比较浏览,如果有winNT域控则不使用此项,
;       domain master = yes
;       domain logons = yes

# the login script name depends on the machine name
;       logon script = %m.bat
        # the login script name depends on the unix user used
;       logon script = %u.bat
;       logon path = \\%L\Profiles\%u
        # disables profiles support by specifing an empty path
;       logon path =

#添加用户的命令脚本
;       add user script = /usr/sbin/useradd "%u" -n -g users
;       add group script = /usr/sbin/groupadd "%g"
;       add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" -M -d /nohome -s /bin/false "%u"
;       delete user script = /usr/sbin/userdel "%u"
;       delete user from group script = /usr/sbin/userdel "%u" "%g"
;       delete group script = /usr/sbin/groupdel "%g"

# --------------- Browser Control Options ------------------
#浏览控制选项,如果不使用samba服务器成为局域网的主浏览服务器,将此设置为No
;       local master = no
#决定该服务器在局域网内部的访问优先权
;       os level = 33
#使samba启动时选择一个本地浏览器,并给它获得选择较高的机会
;       preferred master = yes

#----------------------Name Resolution ----------------------
#wins设置,samba既可以做为wins服务器也可以作为wins客户机,但不能兼之
;       wins support = yes
;       wins server = w.x.y.z
;       wins proxy = yes
#是否为客户做DNS查询
;       dns proxy = yes

# ------------------ Printing Options ------------------------

#允许共享打印机,指定是否要加载打印机(使打印机共享),
        load printers = yes
        cups options = raw
#设置打印机配置文件路径,这是指定打印机配置文件的位置,打印守护进程读取
printcap文件中的配置信息,监视打印机的工作情况;
;       printcap name = /etc/printcap
        #obtain list of printers automatically on SystemV
;       printcap name = lpstat
#设置打印机系统类型,只有在打印机系统不是标准的情况下,必须指定,否则不必指定;指定打印机的类型将影响到smb.conf文件中与打印机相关的命令
;       printing = cups

# --------------------- Filesystem Options ----------------------
;       map archive = no
;       map hidden = no
;       map read only = no
;       map system = no
;       store dos attributes = yes

Samba里面的默认共享
#===================== Share Definitions ======================
#所有使用者的home目录
[homes]
#针对共享资源所作的说明
        comment = Home Directories
#设置用户是否可以看到共享资源,默认的是不能,但拥有权限的用户仍可用绝对路径访问
        browseable = no
#设置共享资源可否写入,如果是打印机则不需要设置
        writable = yes
;       valid users = %S
;       valid users = MYDOMAIN\%S
#打印机共享设置
[printers]
#配置打印机共享,所有用户都可以共享打印机;
        comment = All Printers
#设置打印机队列位置,用户必须自行创建该目录,存放打印临时文件
        path = /var/spool/samba
#设置是否允许浏览共享打印机
        browseable = no
        guest ok = no
        writable = no
        printable = yes
#是否允许用户更改打印机队列的文件;
# Un-comment the following and create the netlogon directory for Domain Logons
#netlogon共享管理工具,主要是用类似补丁杀毒程序更新客户端,netlogon是存放脚本你想推给客户机组的事情都可以通过netlogon来做
;       [netlogon]
;       comment = Network Logon Service
;       path = /var/lib/samba/netlogon
;       guest ok = yes
;       writable = no
;       share modes = no
#用户profile文件部分,用来存放每个登录用的设置文件,以便用户以后可以从服务器#读取以前的桌面设置,
;      [Profiles]
;       path = /var/lib/samba/profiles
;       browseable = no
;       guest ok = yes
关于samba服务参数的解释
;       [public]
共享目录共享出去的名字
;       comment = Public Stuff
共享目录的绝对路径
;       path = /home/samba
允许匿名用户访问共享目录
;       public = yes
默认情况下,所有用户对该共享目录都有写的权限。
;       writable = yes
默认不允许用户更改打印机队列的文件
;       printable = no
只允许客户机对该目录有写入的权限的列表
;       write list = +staff

下一节配置samba共享实例;

转载于:https://blog.51cto.com/summervast/372700

RH5.4下安装samba服务器(1)相关推荐

  1. 服务器安装centos5.5下安装samba服务器以及windows访问samba服务器

    最近使用开发的进程中出现了一个小问题,顺便记录一下原因和方法--服务器安装 windows下,想必大家都用过同享功能吧,的确很便利,直接把文件放在同享目录下即可. 那Linux下是如何实现这种同享功能 ...

  2. centos6.2下安装samba服务器

    1. 安装 [root@test2 ~]# yum-y install samba 2. 配置 2.1 创建samba的共享目录 [root@test2 ~]#mkdir -p /u1/shareda ...

  3. 安装Samba服务器

    PC机用的win10,虚拟机使用的是VMware12,Linux版本是redhat6. 本文我将介绍在linux下安装Samba服务器,方便将linux中的代码导出到Windows中. 准备工作是:p ...

  4. linux下配置samba服务器(以CentOS6.7为例)

    一.简介(百度百科) Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共 ...

  5. Ubuntu上安装Samba服务器实现家庭共享

    如何在Ubuntu上安装Samba服务器 大多数Linux发行版都包含Samba. 要在Ubuntu上安装Samba,只需运行: sudo apt install samba 要检查您的Samba版本 ...

  6. samba服务器新建文件权限,Ubuntu中安装samba服务器创建文件共享的方法及普通用户设置共享的问题解析...

    Ubuntu中安装samba服务器创建文件共享的方法及普通用户设置共享的问题解析 发布时间:2011-01-04 19:10:00   作者:佚名   我要评论 本文是基于ubuntu桌面版进行操作说 ...

  7. 【Linux】【开发环境】【RHEL】开发环境搭建系列之十——Linux主机环境下挂载samba服务器

    在Windows下访问samba服务器比较容易,但是在Linux系统下访问samba服务器操作就略复杂了,本文将Linux服务器下访问samba服务器的步骤做一整理,供各位参考. 1.安装必要的软件 ...

  8. 【samba】Ubuntu16安装samba服务器

    前言:本文是基VMware虚拟机下的Ubuntu16.04安装Samba服务器.引用一下百度上的简介:Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.S ...

  9. 191_Ubuntu 18.04安装Samba服务器及配置

    局域网下使用samba服务在Linux系统与Windows系统直接共享文件是一项很方便的操作.以Ubuntu为例配置samba服务,Linux服务器的版本是Ubuntu 18.04.1 LTS. 在终 ...

最新文章

  1. python 播放视频 ftp_利用 Python 实现文件自动备份到 ftp 服务器
  2. nginx源代码执行过程(一)
  3. mqtt异步publish方法
  4. pae扩展内存 linux,Linux内核-内存管理-PAE(物理地址扩展)
  5. 公共wifi做家用_如何在公共网络上获得免费的wifi
  6. 深入理解C++中的explicit关键字
  7. jquery-演练-表格的模态框新增与点击删除功能
  8. python多线程插入1万条数据
  9. vscode php函数提醒,解决vscode格式保存后出现的问题
  10. Coinbase在今日比特币下跌时出现宕机
  11. SylixOS中RTC设备驱动
  12. 安卓引用思源黑体字体,出现标点“ ‘ ” 时候会显示成“)”
  13. Visio应用视频教程(下)-游峰-专题视频课程
  14. Android性能优化系列之App启动优化
  15. linux关机suspending,(转)Linux 休眠原理与实现
  16. 学习漫画应该如何入门?其实掌握这5种漫画套路就可以啦
  17. Altium Designer原理图转PCB板时报错是什么原因?
  18. python做情感分析
  19. git-cola安装与使用
  20. 美国老太Sylvia

热门文章

  1. ncbi查找目的基因序列_基于PrimerBank和NCBI数据库的引物查找与设计
  2. dll oem证书导入工具_恶意代码分析之反射型DLL注入
  3. golang goroutine实现_golang技术随笔(二)理解goroutine
  4. 高桥盾react和boost_boost与react的战斗
  5. 服务器死机是怎么造成的?
  6. openssh实现key验证免密码登录
  7. .net的字符串插值,格式化字符串
  8. jquery和bottstrap
  9. oracle+SQL优化实例
  10. 在Linux下安装aws命令行操作