Java Solaris 加入Sun中国技术社区 我的社区 注册说明
 
ISV Online
 
配置SAMBA实现Solaris10与Windows间的文件共享
 
By 呼必斯哈拉图, 10/15/06  
一、概述

在使用有 Unix系统的操作环境中,人们常常碰到与 Windows系统之间交换文件的问题。遇到这种情况时第一个能想到的就是大家最熟悉的 FTP了。 FTP虽然能够提供文件的交互但是如果没有安装图形化的客户端只能以命令行方式操作,这样使用起来就需要记一些命令,相对来说就比较繁琐了。那么有没有其 它更方便的选择呢?随着 Unix系统的发展前辈们提出了 SAMBA这种方式,利用安装在 Unix系统上的 SAMBA服务我们可以象使用 Windows的网上邻居一样在它们直接以拖拽的方式进行文件的交换了。目前 SAMBA有很多开源的实现可供用户使用,那么具体到 Solaris10 ,它在系统安装的时候已经包含了 SAMBA,只需要简单的配置就可以使用了。

二、配置 SAMBA

在这一节中将结合具体的实例来一步一步的描述 SAMBA的配置和使用。

1. 一个新装的系统是没有启动 samba服务的。


2.samba 在 Solaris10中为遗留( Legacy)服务

3.samba 在 solaris10中使用的一些目录

 

文件及目录 用途说明 其它说明
/etc/sfw/smb.conf-example Samba 配置文件示例 系统初始自带,是 smb.conf的示例文件
/etc/sfw/smf.conf Samba 配置 系统缺省没有这个文件,需要从 /etc/sfw/smb.conf-example拷贝或者手工创建这个文件
/usr/sfw/bin/smb(*) Samba 的常用工具 smbcacls
smbcontrol
smbpasswd
smbtar
smbtree
smbsh
smbclient
smbspool
smbstatus
smbcquotas
/var/samba/log 默认存放 samba日志的目录  
/etc/init.d/samba samba 管理命令 可以带参数 start和 stop进行 samba服务的开启和停止
/usr/sfw/sbin/smbd
/usr/sfw/sbin/nmbd
samba 的两个可执行文件 在用 samba管理命令事实上调用这两个可执行文件。

 

二 .一、配置 share(无需用户验证)方式

A. 创建一个 SAMBA共享目录

B. 创建 samba配置文件

C. 编辑配置文件( smb.conf)

1. 将其中的 security = user 改为 security=share

(其中 share方式是不进行用户验证的, user和 server方式需要验证)

2. 将其中的 log file = /usr/local/samba/log/log.%m 改为 log file = /var/samba/log/log.%m

3. 定义共享文件路径信息

改为


D. 启动 samba服务


E. 在 widows上访问


可以看到已经连接到 samba上了,但碰到了一些问题。

问题 1: 进入 home,右键点击试图创建一个 text文档。发现没有权限


问题 1解决方法: 回到 solaris看看那个目录的权限信息发现对于其它的用户都没有写信息的权限。用 chmod 777 改一下。


之后在试图写一个文件,这个时候就可以写了。



问题 2: 到 Solaris10中,在一部分语言环境下中文的文件名是乱码。



问题 2解决方法: 请参考下面连接中提供的方法

http://gceclub.sun.com.cn/NASApp/sme/jive/thread.jsp?forum=14&thread=33758

二 .二、配置 user(用户验证)方式

配置成 user方式是需要提供用户明和密码进行验证的。这要比 share方式的不验证相比较会更安全。其配置方式与配置 share方式基本上是一致的。只是在 smb.conf文件中的security=share方式变成了 user。

停止并重新期待 samba服务后在此进行访问。可以看到需要输入用户名和密码了。



那么怎么把用户设定可以使用 samba的用户和其访问 samba服务的密码呢?应该还记得前边给出的一个表吧(表的第三行),其中列出了很多 samba相关的工具。可以使用其中的 smbpasswd进行用户数据的维护。下面给出具体的操作步骤:

A. 添加一个系统用户,用以及存在的也可以

# useradd -d /export/home/tony -m -s /sbin/sh tony

B. 用 smbpasswd命令将用户添加进去


C. 停止服务并重新启动。在 windows客户端进行访问,输入 tony以及口令,可以看到。


双击 tony可以看到共享文件。

参考文档:

http://gceclub.sun.com.cn/NASApp/sme/jive/thread.jsp?forum=14&thread=33758