Chinaunix首页 | 论坛 | 博客
  • 博客访问: 532678
  • 博文数量: 150
  • 博客积分: 5010
  • 博客等级: 大校
  • 技术积分: 1861
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-17 00:19
文章分类

全部博文(150)

文章存档

2011年(1)

2009年(14)

2008年(135)

我的朋友

分类: LINUX

2008-04-08 17:59:53

本人刚连接完linux和windows98、me、2000、2kserver互联实践,走了不少弯路,现将一些感想和本人所碰到的一些故障现象作一下笔记,以方便初手:
一、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 = vmlinux
security = 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 (添加win98\me\2000机器的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、测试win2000
1台(win2k1)提示:请输入用户名和密码(然后你打什么用户名和密码都没用)
另一台(win2k2)提示:此账户未得到从这个工作站登陆的许可
再倒!
解决方法:发现win2000虽然是用的test用户名和密码,但是现在登陆在win2000的域里,我在win2000本机里添加test用户,然后用test登陆本机,访问linux机器,现在正常了。


我写的没有偷工减料,我按这样的方法,现在访问都很正常,你试试吧,如有错的地方,欢迎指出,thanks




第四章 Samba 

4.1 简 介 
  网络的宗旨是更容易地在计算机间共享信息, 在 Linux服务器和Windows 98的客户机之间实现
打印共享和文件共享已经成为一个中小型企业必须解决的问题。 

  Samba 实际上是一组程序, 它们让你的Linux服务器机器懂得SMB (Server Messages Block)协议。
SMB是一套通讯协议,让运行 OS/2,Windows NT,Windows 95,Windows for Workgroups的计算机实现
文件共享和打印机共享服务。这套协议类似于NFS (网络文件系统)和lpd (Unix 标准打印服务器),及
一套分布式授权认证系统(如 NIS 或 Kerberos)的组合。在运行 Samba 服务器程序的时候,你的 Linux 
机器在"网络邻居"中看起来如同一台 Windows 机器。Windows 机器的用户可以"登录"到你的Linux服务器
上, 当然这要求你给予适当的权限。 

  Samba 也能做一些一般来说需要 Windows NT 服务器去完成的工作,如作为一个 WINS服务器和处理
来自Windows 95 机器的 "网络登录" 请求等等. 

4.2 所需系统资源 
  4.2.1 配置文件: 

  文件            来源 

  /etc/smb.conf        samba-2.0.6-9.i386.rpm -> 

                /usr/doc/samba-2.0.6/example/smb.conf.default 

  /etc/smbusers        samba-2.0.6-9 

  /etc/smbpasswd       系统自带,使用smbpasswd更改 

  4.2.2 相关工具: 

  文件            来源 

  /etc/rc.d/init.d/smb    samba-2.0.6-9.i386.rpm 

  /usr/bin/smbadduser     samba-2.0.6-9.i386.rpm 

  /usr/smbpasswd       samba-2.0.6-9.i386.rpm 

4.3 配置方案 
  1./etc/smb.conf 

  作用:这是Samba的主配置文件,集中了所有的Samba配置选项。 

  实例: 

  [global] 

  netbios name = thj 

  #指定本机在网上邻居中的显示名 

  workgroup = basexf 

  #指定本机所属的工作组 

  server string = Tang Haijing's Linux Server 

  #指定本机的备注 

  ; hosts allow = 192.168.1. 192.168.2. 127. 

  #允许访问本机共享 

  printcap name = /etc/printcap 

  load printers = yes 

  printing = bsd 

  guest account = nobody 

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

  max log size = 50 

  security = user 

  encrypt passwords = yes 

  smb passwd file = /etc/smbpasswd 

  #指定定对用户口令校验的密码文件 

  #安全级别为用户级,这样定义是为了让每个98的客户端能自由使用它们在Linux服务器上的目录。 

  socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 

  ; interfaces = 192.168.12.2/24 192.168.13.2/24 

  dns proxy = no 

  [homes] 

  comment = THJ's Home Directories 

  browseable = no 

  writable = yes 

  [printers] 

  comment = All Printers 

  path = /var/spool/samba 

  browseable = no 

  guest ok = yes 

  writable = no 

  printable = yes 

  [public] 

  comment = Public Stuff 

  path = /home/Share 

  browseable = yes 

  guest ok = yes 

  public = yes 

  writable = yes 

  #定义了共享目录,所有的用户对这个目录都有读写权限 

  [ thj ] 

  comment = Fred's Printer 

  valid users = thj 

  path = /homes/thj 

  printer = thj_printer 

  public = no 

  writable = no 

  printable = yes 

  #以上是定义打印机 

  2.管理员执行smbadduser tanghj:smithj来创建一个smb用户,相应地更改了/etc/smbpasswd 
和 /etc/smbusers 

  3. 管理员需要执行 chmod 0777 /home/Share,修改/home/Share访问权限。 

4.4 测试及管理方法 
  1.管理员可以通过执行/etc/rc.d/init.d/smb restart使更改的配置文件生效。 

  2.testparm 命令,解析和描述你的 smb.conf 文件的内容,特别有用, 因为它提供了一个简易
的方法发现配置上的错误。
阅读(1143) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~