配置Solaris的Samba服务器

2008-09-26 11:04 稿源:互联网  0条评论

本文介绍了如何利用SAMBA实现Solaris和Windows之间的文件共享

一、概述

Samba提供了Unix系统和Windows之间的文件和打印机共享服务。一台Solaris的机器,如果配置了SambaServer,就能充当共享服务器;同时也能作为客户机访问网络中其它Windows系统上的共享文件,或其它安装了SambaServer的Solaris/Linux系统上的共享文件。

OpenSolaris在系统安装的时候就已经包含了Samba,只需要简单的配置就可以成为SambaServer。

二、配置Solaris的Samba服务器

Samba服务器包含两个Daemon,nmbd和smbd。smbd是samba的内核,是建立对话,验证客户和提供文件系统和打印服务的基础;nmbd则处理所有的名字注册和解析请求,实现了网络浏览的功能;它的任务是向局域网广播Samba服务器所提供的服务;Nmbd使得Samba服务器显示在windows操作系统的网络邻居中,允许用户浏览可以通过samba使用的资源。

缺省OpenSolaris并没有使能Samba服务。

#svcs-v|grepsamba
#ps-eaf|grepmbd

Samba的共享方式包括share、user、server、domain和ads。本文主要主要介绍share和user的共享方式。

2.1配置share方式

采用share方式,用户不需要输入帐号和密码就可以登陆samba服务器。其配置步骤为:

1)创建一个Samba共享目录

#mkdir-p/export/home/smbshare

2)创建Samba配置文件

#cp/etc/sfw/smb.conf-example/etc/sfw/smb.conf

3)编辑配置文件smb.conf

========== /usr/sfw/smb.conf==========
security=share
[homes]
comment=HomeDirectories
browseable=yes
writable=yes
path=/export/home/smbshare
guestok=yes
guestaccount=user1

这里用户是通过默认的user1来登陆的。用户登陆之后,可以看到user1所共享的文件和所有系统共享文件,其他用户共享的文件能够看得到,但是不一定能够使用或者进的去。如果不设置guestaccount的话,则用户就以默认的nobody进行登陆,只能够使用系统设置的共享文件。其他用户设置的文件不一定能够使用。

4)启动Samba服务

#svcadmenablesamba
#svcs|grepsamba
online1:19:02svc:/network/samba:default
#ps-eaf|grepmbd
root244531001:19:02?0:00/usr/sfw/bin/smbd-D
root244501001:19:02?0:00/usr/sfw/bin/nmbd-D
root2445424453001:19:02?0:00/usr/sfw/bin/smbd-D

2.2配置user方式

配置成user方式需要提供用户名和密码进行验证。这里Samba用户必须是Solaris系统用户。而对同一个用户来说,samba密码和系统密码不必一定相同。

1)添加一个系统用户(用已经存在的也可以)

#useradd-d/export/home/andy-m-s/usr/bin/bashandy

2)用smbpasswd添加Samba用户

#/usr/sfw/bin/smbpasswd-aandy
NewSMBpassword:<password>

RetypenewSMBpassword:<password>

Addeduserandy.
#/usr/sfw/bin/smbpasswd-eandy
Enableduserandy

3)编辑配置文件smb.conf

========== /usr/sfw/smb.conf==========
security=user
[homes]
comment=HomeDirectoriesfor%S
validusers=%S#只有所有者能访问该共享
browseable=no#该共享对其它用户不可见
writable=yes
createmask=0640#创建文件时的权限掩码
directorymask=0750#创建目录时的权限掩码

这里%S通配符可以扩展成实际的共享名。这样andy共享的注释将是“HomeDirectoriesforandy”。

4)重新启动Samba服务

#svcadmrestartsamba

从其它系统上用samba访问该Solaris机器时,如果输入的用户名是andy,密码是Samba密码,就能看到/export/home/andy下的内容。

#p#分页标题#e#

三、Solaris访问Windows的共享资源

Samba包中已经包括了smbclient、smbmount等的实用程序。smbclient程序提供了一个类似FTP的模式界面,允许用户共享Windows、Linux的资源,还可以用户列出服务器上的可用共享资源。smbmount类似mount命令,将Windows的共享目录安装到Linux的本地目录。

1)查询网络上的Samba服务器

#/usr/sfw/bin/findsmb
每个找到的服务器都会显示其IP地址、NetBIOS名称、工作组名称、操作系统、以及SMB服务器版本。

2)列出Samba服务器上的可用资源

#/usr/sfw/bin/smbclient-L<hostname>

如果是user共享方式,就要加“-U<user>”选项如下。
#/usr/sfw/bin/smbclient-L<hostname>-U<user>
Password:<password>

如果是share共享方式,可以不必理会用户和密码,要求输入密码时直接回车即可。

3)连接Samba共享

#/usr/sfw/bin/smbclient//<hostname/<share>[-U<username>]

例如要访问上文中的share共享时,可用
#/usr/sfw/bin/smbclient//hostname/homes
Password:<ENTER>

Domain=[MYGROUP]OS=[Unix]Server=[Samba3.0.21b]
smb:>

要访问上文中的user共享时,可用
#/usr/sfw/bin/smbclient//hostname/andy-Uandy
Password:<andy_password>

Domain=[MYGROUP]OS=[Unix]Server=[Samba3.0.21b]
smb:>

连接后,就能象FTP用户一样上传和下载文件。用put表示上传,用get表示下载。键入help获得可用的命令列表。

4)挂载Samba共享

Solaris尚不支持smbfs和smbmount命令。解决方法之一就是使用Sharity。其安装和使用都很简单。

安装Sharity

#/usr/sfw/bin/wgethttp://www.obdev.at/ftp/pub/Products/Sharity3/sharity.3.3-beta3.solaris-i86pc.tar.gz
#gunzip-csharity.3.3-beta3.solaris-i86pc.tar.gz|tarxf-
#cdsharity.3.3-beta3.solaris-i86pc
#./setup

启动和停止Sharity

重启机器后,Sharity会自动运行
#svcs|grepsharity
legacy_run0:38:06lrc:/etc/rc2_d/S80sharity3
legacy_run0:38:14lrc:/etc/rc3_d/S80sharity3

停止Sharity

#/usr/local/sharity3/sbin/sharity.initstop

启动Sharity

#/usr/local/sharity3/sbin/sharity.initstart

访问share共享

#/usr/local/sharity3/bin/sharityloginsmb://<hostname>/<share>
Sharepasswordfor\HOSTNAMESHARE:<ENTER>
#ls/CIFS/entire_network/<workgroup>/<hostname>/<share>
#cd/CIFS/<share>[<hostname>]

访问user共享

#/usr/local/sharity3/bin/sharityloginsmb://<hostname>/<share>-U<user>
<user>'spasswordon<hostname>:<password>
#ls/CIFS/entire_network/<workgroup>/<hostname>/<share>

附录一、Samba在OpenSolaris中的目录

/usr/sfw/sbin/smbd
/usr/sfw/sbin/nmbd

Samba服务器的两个daemon

/usr/sfw/bin/smb(*)

Samba的常用工具

/etc/sfw/smb.conf-example

系统初始自带的Samba配置文件示例

/etc/sfw/smf.conf

Samba配置文件。系统缺省没有这个文件,需要从/etc/sfw/smb.conf-example拷贝或手工生成

/var/samba/log

默认存放Samba日志的目录

上一页[1][2]

有好的文章希望站长之家帮助分享推广,猛戳这里我要投稿

相关文章

相关热点

查看更多