看到有这么一篇文章,收藏下来
一、samba首先要知道samba是一组 程序,他让你的linux机器懂得smb协议。在运行samba服务器程序的时候,你的linux机器在网络邻居中看起来如同一台windows的机器。二、我的配置过程1、修改smb.conf我选的是系统默认安装的samba,但系统启动完后,发现samba没有启动,(#ps -axf | grep smb),手动启动(#/etc/rc.d/init.d/smb restart)修改 /etc/samba/smb.conf 有些书上说是/etc/smb.conf 我也不知道为什么,可能是版本差异吧。我就修改了[global]组的:workgroup = JD (我的工作组名是JD)netbios name = vmlinuxsecurity = user (采用用户方式验证)encrypt passwords = no (我采用的是明文密码验证)smb passwd file = /etc/smbpasswd (设置smb密码文件的位置)[public] (把[public]组前面的“;”全拿掉path = /pub (共享pub目录)我就修改了这些,其他就是把#开头的段全删了(碍眼)2、添加相应目录和用户#mkdir pub (添加/pub目录)#adduser test (添加test用户)注:现在添加的只是linux本机用户,并没用添加smb用户,换句话说,test现在不能通过网络访问这台linux主机。#passwd test (设置test用户密码)#vi /etc/passwd (把一些你不用或者你不知道的用户全删了)# cat /etc/passwd | mksmbpasswd.sh > /etc/smbpasswd (把linux本机用户加到smb用户里去)#smbpasswd test (设置test用户的smb访问口令)#/etc/rc.d/init.d/smb restart (重启samba)ok ,linux主机上我就设了这些,下面开始测试2、测试linux smb(在本机上测试)#smbclient -L //vmlinux (先用smbclient测试本机smb是否工作正常,应能看到/root /public这些目录)#smbclient //vmlinux/root (现在连接目录,提示输入密码,你自己知道)这样的话,linux机器互访应该没问题了。注意:#vi /etc/hosts (添加win98me2000机器的ip和主机名,看看有没有自己的,没有的话也填上)测试windows的机器前先找到/usr/share/doc/sambaX-XXXX/docs 下*.reg文件导入windows的机器,我发现这个还能解决win2000的机器互访winme、98时常常出现的怪病,现在2k和98在局域网里访问都正常的要死。3、测试win98、me现在能在win98 、me的网上邻居里看到linux机器名了,点击,倒,什么?提示要什么IPC$密码!!!解决方法:控制面板?用户密码?添加test用户(刚才在smb里面添加的那个用户)重启,用这个用户名登陆,现在再访问,应该没问题了(至少我是ok了)4、测试win20001台(win2k1)提示:请输入用户名和密码(然后你打什么用户名和密码都没用)另一台(win2k2)提示:此账户未得到从这个工作站登陆的许可再倒!解决方法:发现win2000虽然是用的test用户名和密码,但是现在登陆在win2000的域里,我在win2000本机里添加test用户,然后用test登陆本机,