在Debian上配置Samba服务器

1介绍  

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

??这就是桑巴,一个免费的,强大的,灵活的,轻便的,samba。

2背景介绍

如果你不是从第一章开始看我的文章,那么我得介绍一下这些情况:

我的有一台安装了win2000的机器,叫做notepad,它属于workgroup这个工作组。

我的DebianGNU/Linux安装在一台普通的台式计算机上,机器名字叫debian,域名叫test.com。

3安装

3.1软件版本

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

3.2安装

安装过程非常简单:

apt-getinstallsamba

系统会问你,请参考这些答案:

用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]

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

[tmp]

comment=Temporaryfilespace

path=/tmp

readonly=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/sambarestart

6.3创建用户

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

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

#touch/etc/samba/smbpasswd

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

#smbpasswd-akanaka

NewSMBpassword:

RetypenewSMBpassword:

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

7测试

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

相关推荐