红联Linux门户
Linux帮助

在Debian上配置Samba服务器

发布时间:2006-10-30 01:00:23来源:红联作者:tongxiaokun
1 介绍   

  如果某一个单位,他们的桌面计算机必须使用M$ Windows平台的话,那么他们很可能不可避免的需要Windows服务器产品,比如Windows NT Server或者Windows 2000 Server,甚至Windows 2000 Advanced Server。要知道,要合法的拥有这些服务器的软件(按照微软的所谓许可协议购买连接数)的话,再加上昂贵的硬件费用,可并不是一比小费用。如果有一个途径,可以让你在普通硬件的基础上,免费实现Windows NT/2000服务器的功能,你说,何乐而不为呢?
  ----这就是桑巴,一个免费的,强大的,灵活的,轻便的,samba。

2 背景介绍

  如果你不是从第一章开始看我的文章,那么我得介绍一下这些情况:
  我的有一台安装了win2000的机器,叫做notepad,它属于workgroup这个工作组。
  我的Debian GNU/Linux安装在一台普通的台式计算机上,机器名字叫debian,域名叫test.com。

3 安装

3.1 软件版本

  由于我们用的sid的sources.list,所以得到的是2.99版+3.0Alpha版的samba。其配置方法与以前版本有些不同。

3.2 安装

  安装过程非常简单:

apt-get install samba


系统会问你,请参考这些答案:
  用debconf配置samba吗?Yes。
  输入工作组名,或者域名:workgroup。
  使用口令加密?Yes。
  以什么方式运行samba?我们选择默认的daemons方式,让他在后台监听。
  创建samba口令库?Yes。

4 小测试

  你也许不相信,但是现在,你已经可以在Windows的网上邻居里面看到这台名字叫Debian的Linux主机了!
  找到网上邻居的workgroup组,你会发现她确实已经在那里了。怎么样,振奋吧!
  不过,你会发现,无论你输入什么用户名和口令,都无法通过验证。那是因为,我们还没有告诉samba,验证哪些用户和口令。
  
5 快速入门

  Samba只有一个配置文件!
  那就是/etc/samba/smb.conf。
  下面这个只有几行的smb.conf,就可以让samba为我们工作!

[global]
log file = /var/log/samba/log.%m
[tmp]
comment = Temporary file space
path = /tmp
read only = no
public = yes


6 配置

6.1 检查当前配置

  我们的samba现在已经运行了,那么,它正在提供哪些服务呢?如果打开/etc/samba/smb.conf,你可能会觉得内容太多,看不过来了;那好,我们有个命令可以用:testparm。这个命令,可以让我们检查smb.conf的配置是否正确,而且还可以列出一个实际上有效的smb.conf的内容:

# testparm


通过这个命令,你看到了吧,实际上发挥作用的配置,就是那么几行。

6.2 写一个最小的smb.conf

  实际上,为了做实验,我们可以写一个更小的smb.conf,就向上一小节里面提到的那样。那个配置文件,可以让samba把/tmp共享,并且可以往里写文件。
  好,我们不妨就采用上面这个文件吧,请你先将/etc/samba/smb.conf改名,比如改为smb.conf.backup,然后把上面的内容抄下来,保存为新的/etc/samba/smb.conf。
  记住,要是修改后的smb.conf生效,需要重新启动samba:

# /etc/init.d/samba restart


6.3 创建用户

  在我们创建用户之前,没有人能够访问samba服务器,就是说,在windows平台上,无论用什么用户名和口令,都无法访问网上邻居里面的debian这台机器。

  我们需要在/etc/samba/目录下面,生成一个文件,名字叫:smbpasswd:

# touch /etc/samba/smbpasswd


然后,使用smbpasswd命令,添加samba用户:

# smbpasswd -a kanaka
New SMB password:
Retype new SMB password:


这时,kanaka就被写进了/etc/samba/smbpasswd文件,kanaka就可以从windows访问samba了。

7 测试

  在你的windows里面,找到网上邻居的debian,用刚才创建的用户,访问它,并向tmp目录拷贝一个文件。怎么样,可以了吧。

8 TODO

  这是本文的0.1版,纯粹针对初学者的。
  在下一个版本,我将详细描述smb.conf的配置方法,来实现WinNT/2000服务器的功能。
文章评论

共有 1 条评论

  1. xqs428 于 2006-10-30 13:05:08发表:

    xie xie