技术员联盟提供win764位系统下载,win10,win7,xp,装机纯净版,64位旗舰版,绿色软件,免费软件下载基地!

当前位置:主页 > 教程 > 服务器类 >

详解Linux系统中安装配置Samba服务器的步骤

来源:技术员联盟┆发布时间:2018-02-21 00:00┆点击:

  一、获取源代码包并进行解压

  从samba的官方网站可以下载最新的samba源代码包。下面我们以samba-3.5.9.tar.gz的源代码包作为案例进行解析。本例中,我们将源代码包放在目录/home/samba下,然后执行下面的命令进行解压缩。

  代码如下:

  # tar –xzvf samba-3.5.9.tar.gz

  二、配置configure

  对源代码包进行解压缩后,进入目录

  代码如下:

  # cd /home/samba/samba-3.5.9/source3

  然后执行下面的命令进行配置。

  代码如下:

  # ./configure

  可能在刚开始时,该目录下没有configure文件,此时可先执行下面的命令

  代码如下:

  # ./autogen-sh

  此时要求系统安装了autoconf、automake等工具。

  在运行上面的配置命令之前,我们可以通过命令

  代码如下:

  # ./configure –-help

  来查看配置命令的一些选项。

  三、生成与安装make && make install

  在环境配置命令./configure成功执行后,可以运行命令

  代码如下:

  # make

  来生成二进制可执行文件,这可能需要两到三分钟。成功生成可执行文件后,可以通过下面命令

  代码如下:

  #make install

  来进行安装。系统默认的安装路径是/usr/local/samba

  四、配置动态链接库路径

  安装完成后,我们需要配置动态链接库路径,因为运行samba的进行smbd和nmbd需要到目录/usr/local/samba/lib下的动态链接库文件。但是该目录不是系统默认的动态链接库文件搜索路径,于是我们需要将该目录添加到文件ld.so.conf中。执行下面的命令

  代码如下:

  # vi /etc/ld.so.conf

  打开ld.so.conf文件,并在该文件中加入下面这一行内容。

  代码如下:

  /usr/local/samba/lib

  然后执行命令

  代码如下:

  # ldconfig

  来更新动态链接库缓冲。

  五、samba配置文件smb.conf

  samba在运行过程中需要用到配置文件smb.conf。smb.conf配置文件是samba最重要的配置文件,该文件定义了samba的安全机制、文件共享和打印共享的目录和参数以及其他一些系统配置功能。

  配置文件smb.conf的默认路径是/usr/local/samba/lib/smb.conf,我们可以在运行smbd进程时,通过-s选项来执行特定的smb.conf文件(具体说明见下一节),一般不推荐使用-s选项,因为其配置工具,如smbclient、testparm等默认都是读取/usr/local/samba/lib/smb.conf文件。下面我们以一个简单的配置文件进行说明,其路径为/etc/samba/smb.conf。

  代码如下:

  [global]

  workgroup = MYGROUP

  server string = Samba Server %v

  security = user

  log file = /var/log/samba/%m.log

  passdb backend = smbpasswd

  smb passwd file = /etc/samba/smbpasswd

  [root]

  path = /

  valid users = root

  writeable = yes

  [public]

  path = /data

  guest ok = yes

  read only = yes

  上面配置文件定义了root和public两个文件共享服务。关于上面这个配置文件的具体细节,我们这里不做详细的论述。这里主要说明的一点:在samba 3.0.23版本以前验证用户密码的默认backend是smbpasswd,而3.0.23版本之后的默认backend是tdbsam。我们可以通过参数passdb backend来选择特定的backend。在使用smbpasswd时默认读取的密码文件时/usr/local/samba/private/smbpasswd,我们可以通过smb passwd file来指定特定的密码文件。

  在配置完smb.conf文件后,我们可以运行testparm(目录/usr/local/samba/lib下)命令来对smb.conf文件进行语法检查,其会检测出哪些参数名无法识别等问题。

  六、启动samba

  samba有两个主要的进程smbd和nmbd。smbd进程提供了文件和打印服务,而nmbd则提供了NetBIOS名称服务和浏览支持,帮助SMB客户定位服务器,处理所有基于UDP的协议。

  配置smb.conf文件后,在开始运行samba的服务进程之前。我们需要先做一些准备工作。运行smbpasswd命令(在目录/usr/local/samba/bin下)

  代码如下:

  # ./smbpasswd –a root

  向smb.conf文件中指定的/etc/samba/smbpasswd文件中添加root用户以及密码信息。关于smbpasswd文件的详细内容介绍见相关文档。

  然后运行命令

  代码如下:

  # service iptables stop

  关闭防火墙,因为防火墙可能会阻止用户访问该机器。下面是运行samba的服务进程smbd和nmbd

  代码如下:

  # /usr/local/samba/sbin/smbd –D –s /etc/samba/smb.conf

  # /usr/local/samba/sbin/nmbd –D –s /etc/samba/smb.conf