`
爱像天空
  • 浏览: 205942 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
阅读更多
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
  samba是一个工具套件,在Unix上实现SMB(Server Message Block)协议,或者称之为NETBIOS/LanManager协议.SMB协议通常是被windows系列用来实现磁盘和打印机共享.需要注意的是,NetBIOS是基于以太网广播机制的,没有透明网桥是不能跨越网段的,也许用WINS和LMHOSTS可以,但我没试过.我感觉samba是把SMB绑定到TCP/IP上实现的,samba只在IP子网内广播(很多时候我不得不指定IP地址:-().所以在win95上与samba通讯既要装NetBEUI协议,也要装tcp/ip协议!!
  samba的主要部分有:
  两个守护程序: smbd 和 nmbd(对客户端提供NetBIOS名服务)
  配置文件: /etc/smb.conf
  使用工具: smbclient,smbstatus,smbmount,smbumount,smbprint,smbprint.sysv,smbrun
  samba的启动脚本在/etc/rc.d/init.d/smb
  BTW,不要把smb与smp(对称多处理器)搞混了,更不要把NetBIOS名与DNS里的主机名搞混淆了! samba缺省
  是把主机名设置成NetBIOS名,这样通常会超出NetBIOS名的长度限制(16个字符).
  > 在win95网络邻居看不到Linux box?
  注意/etc/smb.conf文件里以下几项的设置:
  guest account = pcguest(不要照着写,添实际的名字,你要去创建一个pcguest帐号)
  null password = yes (这一点很重要!)
  browseable = yes
  public = yes
  另外把security改为share试试.
  仔细读一读"man smb.conf".
  再说瘟95那个破东西,网络邻居运行一百遍才可能会出来你想要的.
  用这个方法试一试:先用smbmount 瘟95的一个共享目录,用"网络监视器"查看一下,然后再用网络邻居看.
  > smbmount怎么用?
  不能用man smbmount看看吗? 大致是:
  smbmount //win95-name/share-dir /mount-point [-I ip地址或主机名] [-c 本机客户名]
  []表示可选项, 本机客户名可以随便取.
  Samuel Leo补充道:
  标准的smbmount使用格式是
  smbmount //server/share -c "mount /mnt -u uid -g gid" (注:好像不对吧)
  我编译了一个修改版的smbmount, 使用格式为
  smbmount //server/share /mnt [passwd] [-Uusername] [-9]
  ftp://202.103.190.5/incoming/smbmount.gz (binary)
  如果你用redhat, 也可以试试最新出的smbwrapper
  ftp://202.103.190.5/incoming/smbwrapper.so.gz
  设置一下环境变量
  LD_PRELOAD=/anywhere/smbwrapper.so
  SMBW_USER=username
  SMBW_PASSWORD=passsword
  SMBW_WORKGROUP=workgroup #optional
  SMBW_DEBUG=4 #optional
  SMBW_LOGFILE=smbw.log #optional, default to stderr
  SMBW_PREFIX=/smb #optional, default to /smb
  export PWD SMBW_USER SMBW_PASSWORD SMBW_WORKGROUP
  export SMBW_DEBUG SMBW_LOGFILE SMBW_PREFIX
  然后你就可以"ls /smb"看到同组的所有机器名.
  "ls /smb/server"看该机的共享清单.
  缺点就是太慢, 10.10版对execle,execve,...等指定envp的exec仍有bug
  不能下执行/smb下的文件, 不能mmap /smb下的文件.
  > 先谢谢各位!
  > 我的Pwin95现在可以看到linux了,我保证什么也未修改过。
  > 现在,我从linux上执行:
  > smbclient //sjj2/nes(pwin95机器),可看到文件并显示:
  > smb:\>
  > smbclient -L sjj2,可看到sjj0(linux)和sjj2(pwin95)。
  > 但是我不能从pwin95上访问linux(sjj0),双击总显示:
  > 找不到机器名或共享名,请确认输入正确,然后重试。
  > 我对smbmount不会用,也找不到能看明白的帮助,因为
  > 我不理解mount-point的含义,请指导;linux上的
  > smbd和nmbd当然是运行的。
  > 再谢各位!请继续帮忙。smb.conf在前面的贴子中。
  Win95的网络邻居问题太多,别说跟Linux多不去,就是几台Win95之间连个小网,只要没有NT服务器,他们就经常互相找不到。 所以,一定要把samba的WINS服务器功能打开,(wins support = yes), 然后把95的WINS服务器指向他。也许还要加入:
  name resolv order = wins hosts bcast
  这样做的话最好让Linux先于瘟95启动起来!
  >我在REDHAT 5.1里可以共享WIN98的服务,在WIN98的网上邻居里
  >可以看到LINUX的机子,但提示\\linux\IPC$ 需要口令,输入口令总
  >不正确,不知该如何设置?
  此问题好像不单linux有,NT也有,原因是连接时没有用户名的信息,不要直接点击图标,用磁盘映射:\\linux\username 的格式.
  WIN98使用加密的口令认证,而RedHat的SMB缺省使用明文认证,所以口令总是不正确。
  可以在smb.conf中加入
  encrypt passwords = yes
  并使用smbpasswd 维护用户口令
  Win98 上选 开始 -> 注销 ,用 Linux 机器上的用户名和口令登录,然后不用输入口令就可以访问 Linux 的资源了。这和 NT 上是一样的。
  或者 Linux 机器上的 /etc/smb.conf 里改成 security = share,
  guest account = username (username 改成你机器上的一个用户帐号)。
  这样如果 Win98 不是用 Linux 系统上的用户帐号登录的,也可以直接访问 Linux ,其权限等于 guest account 指定的用户的权限。Linux作出改动后要重启。
  注:完全不必重新启动,可以到/etc/rc.d/init.d下去执行smbd stop,然后再smbd start就可以了(这是在Redhat中).在Linux下要学会尽量不重启的基本技巧!
  > 如何让win98发送明文密码呢?
  如果你用win98或打过很多补丁的win95. 如果samba不提供口令加密是不能登录的.
  1. 执行Win95_PlainPassword.reg允许win95发送明文口令
  运行REGEDIT,添加:
  [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP]
  "EnablePlainTextPassword"=dword:00000001
  2. 升级到最新的samba, 打开口令加密开关.
  > BTW:哪一版SMABA可设加密校验,如何设?
  我的 samba 1.9.18p10 就已经可以了.
  在 smb.conf 里面找到
  # You may wish to use password encryption. Please read
  # ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation.
  # Do not enable this option unless you have read those documents
  encrypt passwords = yes
  smb passwd file = /usr/private/smbpasswd
  这一段就可以了.
  > 为什么smbclient \\NetBIOS-name\share-dir 总是不对?
  这是shell的原因,应该用smbclient \\\\name\\share-dir或者是smbclient '\\name\share-dir'
  shell不处理两个单引号之间的内容.如果你熟悉C语言,应该很清楚为什么了!
  或者使用smbclient //NetBios-name/share-dir 就不存在这个问题。
  > 我在我的Linux机器上设好了smb.conf如下(删去了所有注释),为什么NT不认samba?
  把 security = user
  改成: security = server
  samba 1.9.18以前的版本还不完全支持NT的所谓"域",
  2.0.0版正在开发中,对此有不小的进步.
  > 多谢姚飞大侠上回的指点。但我在安装时还是碰到了问题。我选择了shadow,no pam,
  > 还选了disk quota,结果出现
  > quotas.c:38:sys/quota.h:No such file or director
  > 这以后再不能编译了。我把选择该为 shadow no pam ,no quota,有编译,出现:
  > cc:internal compoler error:program cc1 got fatal signal 6
  > make :*** [smbpass.o] Error!
  > 我再把shadow ,pam quota 等选项选来选去,总是这个错误都不变化了。好像以前编译
  > 通过的就不编了只编译后面的。我怎样才能让它重新编译?
  > slackware 3.4 kernel 2.0.30
  > Thanks!
  如果你用的是Slackware 3.4的话, 应该是shadow, no pam , no quota
  大概从1.9.18p4开始就无法正常编译了,到了smbpass.o必定出这个错.
  解决方法有几个:
  1. 直接下载编译好的文件
  2. 升级GCC到2.8.1, 或者 egcs-1.0.2
  3. 升级到Slackware 3.5
  > 本人单位财务部门需要装一台文件服务器,我安装了Redhat 5.1,用 samba
  > 作为文件服务器,客户端使用的是win95,现在win95已可以在网络邻居中找到
  > 服务器,我将共享目录映射为F:盘,经过试验,大幅度地拷贝文件都没问题.
  > 但是,因为财务软件是dos方式下的,当我执行F:\下的帐务程序时,一次、两次、
  > 甚至数次都没问题,但是若干次后每个客户端都出现死机现象。我将samba
  > stop一下,再start就可以了,请问这是怎么一回事?以前用NT做服务器并没有
  > 这样的现象。
  俺原来用RH 4.2, kernel 2.0.30+ samba 1.9.16p11也有同样的问题update后就ok了,
  现在俺用的是kernel 2.0.35 + samba 1.9.18p8
分享到:
评论

相关推荐

    Samba服务器配置及访问Samba共享

    Samba服务器配置及访问Samba共享 Samba服务器是一种基于SMB/CIFS协议的文件和打印机共享服务器,主要用于Linux和Windows之间的资源共享。下面是Samba服务器配置及访问Samba共享的知识点总结: 一、Samba服务器安装...

    Linux下的文件共享服务器Samba安装文件及其配置说明 samba-4.14.5.tar

    在Linux环境中,Samba是一个非常重要的工具,它允许Linux系统与Windows系统之间进行文件和打印服务的共享。本文将详细讲解如何在CentOS系统上安装Samba 4.14.5并进行配置。 首先,我们需要了解Samba的核心概念。...

    嵌入式环境搭建之samba

    Samba是一种在Linux和UNIX系统上实现Server Message Block(SMB)协议的自由软件,主要用于Windows和Unix-Like系统之间的文件共享和打印机共享。SMB最初由IBM开发,后由微软改进,成为了Windows NT网络的基础文件...

    samba-2.2.7a-7.9.0.i386.rpm+samba-client.+samba-common.rpm

    Samba是一款强大的软件,它使得Linux和UNIX系统能够与Windows网络无缝集成,提供文件和打印机共享服务。在标题中提到的"samba-2.2.7a-7.9.0.i386.rpm"是Samba服务器的RPM(Red Hat Package Manager)安装包,适用于...

    samba离线安装和自动部署

    Samba是一款开源的软件,它使得Linux和Unix系统能够与Microsoft Windows网络无缝集成,实现文件和打印服务共享。在Ubuntu操作系统中,Samba扮演着重要的角色,为跨平台的文件共享提供支持。以下是对"Samba离线安装和...

    centos7配置Samba服务器

    ### CentOS 7 配置 Samba 服务器 #### 一、概述 Samba 是一个用于在 Linux 和 Unix 系统上实现 SMB/CIFS 协议的软件包,它允许不同操作系统之间的文件和打印共享。本篇文章将详细介绍如何在 CentOS 7 上安装、配置...

    samba服务安装rpm包

    在IT行业中,尤其是在服务器管理与网络资源共享领域,Samba服务扮演着至关重要的角色。Samba是一种开源软件,它使得Linux和Unix系统能够无缝地与Windows系统进行文件和打印服务的共享,实现了跨平台的网络互操作性。...

    Ubuntu 上建立samba服务器以及交叉编译环境配置

    Ubuntu 上建立 Samba 服务器以及交叉编译环境配置 在这篇文章中,我们将讨论如何在 Ubuntu 上建立 Samba 服务器,并配置交叉编译环境。本文将详细介绍建立 Samba 服务器的步骤,以及配置交叉编译环境的过程。 一、...

    samba-4.10.16.rar

    Samba是一款开源软件,它使得Linux/Unix系统能够与Microsoft Windows网络无缝集成,提供文件和打印服务。在本文中,我们将深入探讨Samba 4.10.16的安装过程,以及它在IT环境中的关键作用。 1. **Samba简介** Samba...

    samba-4.10.4.tar.gz

    Samba是一款开源软件,用于在Linux和Unix系统上实现Microsoft Windows网络协议,使得非Windows设备能够无缝地与Windows网络共享资源。"samba-4.10.4.tar.gz"是一个包含Samba 4.10.4版本源代码的压缩文件。这个压缩包...

    Samba图形化管理_system-config-samba_源码包和CentOS732位armv7hl版RPM包.zip

    Samba是一款强大的开源软件,它使得Linux和Unix系统能够与Microsoft Windows网络无缝集成,提供文件和打印服务。在本文中,我们将深入探讨Samba的图形化管理工具——System-config-samba,以及如何在CentOS 7 32位...

    samba多用户配置

    在Linux环境中,Samba是一个非常重要的工具,它使得Linux服务器能够与Windows系统无缝共享文件和打印机。本教程将深入探讨如何在Ubuntu 12.04 Server上配置Samba以支持多用户访问,确保每个用户都有独立的Samba...

    ARM板中的samba服务器的移植

    在嵌入式系统中,ARM处理器因其低功耗和高性能的特点被广泛应用,而Samba服务器则是将Linux或类Unix系统与Windows网络环境整合的关键组件。本文将深入探讨如何在ARM板上移植Samba服务器,帮助你理解这个过程并提供...

    openwrt知识总结(samba服务)

    OpenWRT知识总结(Samba服务) OpenWRT是一个基于Linux的嵌入式操作系统,旨在为路由器和其他网络设备提供一个灵活、可靠和高效的解决方案。Samba是一个文件和打印服务的软件,允许Linux系统与Windows系统进行文件...

    samba 64位安装包(rpm)

    Samba是一款开源软件,它使得Linux和Unix系统能够与Windows网络无缝集成,提供文件和打印共享服务。在本文中,我们将详细讨论如何在64位的CentOS 7系统上,通过离线方式安装Samba服务,以及相关的重要知识点。 首先...

    samba服务器配置案例

    在IT领域,Samba服务器是一种广泛使用的工具,它允许Linux/Unix系统与Windows网络无缝集成,提供文件和打印机共享服务。在这个配置案例中,我们将深入理解如何为不同部门配置Samba服务器,确保每个部门的用户只能...

    samba-3.6.25.tar.gz

    Samba是一款在Linux和UNIX操作系统上实现Server Message Block (SMB) 协议的开源软件,它使得非Windows系统能够无缝地与Windows网络共享资源。SMB协议是Microsoft开发的一种网络文件共享协议,广泛用于局域网内的...

    使用PAM同步Samba与系统用户密码

    Samba 是一款用于Linux/Unix系统上实现SMB/CIFS协议的软件包,它可以让Linux系统与Windows系统之间进行文件共享。为了提高用户体验并简化账户管理,可以通过PAM(Pluggable Authentication Modules)来实现Samba与...

    将samba加入到windows的ad域

    在IT领域,尤其是在网络环境管理中,将Samba加入到Windows的AD(活动目录)域是一项常见的任务。Samba是一个开源软件,它使得Linux和Unix系统能够与Microsoft Windows网络无缝集成,提供文件和打印共享服务。这篇...

Global site tag (gtag.js) - Google Analytics