|
 |
栏目导栏 |
|
| |
|
|
|
|
 |
资料搜索 |
|
| |
|
|
|
|
 |
热门文章 |
|
| |
|
|
|
|
 |
最新文章 |
|
| |
|
|
|
| |
| |
|
|
|
|
[ 作者: 加入时间:2006-06-25 15:05:58 来自:
] | |
|
Solaris与Windows的网络互联 NYHLinux联盟 ——Samba的应用 NYHLinux联盟 引言: 1 NYHLinux联盟 一、前置知识 1 NYHLinux联盟 二、SAMBA在SOLARIS8上的安装与配置 2 NYHLinux联盟 三、启动SOLARIS 8系统的SAMBA 服务 3 NYHLinux联盟 四、SAMBA服务系统的管理和配置工具 4 NYHLinux联盟 五、WEB页面管理配置工具SWAT 5 NYHLinux联盟 六.从WINDOWS端访问SAMBA服务器 6 NYHLinux联盟 七.前景展望: 6 NYHLinux联盟 附:SAMBA参数参考目录 6 NYHLinux联盟 NYHLinux联盟 引言: NYHLinux联盟 如今的操作系统市场,几乎是Unix与 Windows割据天下。一个侵占了绝对的服务器市场,而另一个却几乎吞噬了整个桌面市场。经常有人抱怨如今的文件系统,网络的异构,使不同的系统之间的访问变得困难,需要引入一门通用的“语言”来解释异构系统之间的通讯。本文主要介绍了Samba for Solaris的使用,实现了UNIX与windows的文件共享和打印共享,你可以在本地的windows系统上的网络邻居来访问Solaris上的文件,打印共享,您甚至还可以影射网络驱动器,这就如同使用本地磁盘一样方便。而且利用Unix的强大的访问控制,你可以对不同的共享目录权限设置,不用担心有人会删除你的文档,而您自己却可以自由操作。 NYHLinux联盟 【关键字】 Samba服务器 共享 SMB SWAT 服务进程 异构网络互联 NYHLinux联盟 一、前置知识 NYHLinux联盟 首先,我们先来介绍下什么是Samba,我们看看Samba组织的目标——Opening Windows To A Wider World。熟悉Linux的用户可能常常在Linux上安装Samba服务来实现与Windows系统的文件共享和打印机共享。他们之间的数据传输使用SMB(Service Message Block)协议.这是一个在传输层之上的协议,所以他可以支持很多不同异构系统的网络互联(比如,Linux,Solaris,Windows等),Samba之所以能够工作,因为SMB协议模仿了Windows内核的文件和打印共享协议。微软已经将SMB改名为公共因特网文件系统(CIFS,Common Internet File System ),并打算把它设计为Internet的标准协议。这在一定程度上是由于它想与最初的基于NetBIOS的SMB保持一定的距离。NetBIOS是Windows 网络的一个伟大的工具,Microsoft使用NetBIOS实现了一个网络文件/打印服务系统,但是为LAN设计的它却注定了不能路由。 NYHLinux联盟 Samba执行了SMB/CIFS的一个版本,这个版本在很大程度上与大多数的Windows版本兼容。但是,无论是从Windows连接到Linux还是从Linux连接到Windows机器,Samba系统对于实现文件和打印服务来说总是很稳定的。我们可以通过Windows的网络邻居来轻松访问安装了Samba的UNIX/LINUX服务器。(更多的文档见www.samba.org ) NYHLinux联盟 二、Samba在solaris8上的安装与配置 NYHLinux联盟 1.系统先要打上较新的EIS,然后到www.sunfreeware.com下载需要的软件包,如下: NYHLinux联盟 libiconv-1.8-sol8-sparc-local.gz NYHLinux联盟 ncurses-5.4-sol8-sparc-local.gz NYHLinux联盟 libgcc-3.3-sol8-sparc-local.gz NYHLinux联盟 readline-5.0-sol8-sparc-local.gz NYHLinux联盟 popt-1.7-sol8-sparc-local.gz NYHLinux联盟 samba-3.0.10-sol8-sparc-local.gz NYHLinux联盟 前面5个软件包在安装samba之前要装上,用以下命令解压并安装samba软件包; NYHLinux联盟 #gunzip samba-3.0.10-sol8-sparc-local.gz NYHLinux联盟 #pkgadd –d samba-3.0.10-sol8-sparc-local NYHLinux联盟 安装完毕后,我们到/usr/local下可以看到安装的软件包samba目录。 NYHLinux联盟 2.配置相关文件 NYHLinux联盟 samba的配置文件是/usr/local/samba/lib/smb.conf文件,这个文件需要自己创建,安装后是不存在。可以根据您的需要通过配置它相关的参数来实现复杂或简单的访问控制。smb.conf的格式是有多个段,每段由段名开始,一直到下个段名,每个段名放在方括号中间,下面给出个smb.conf文件例子。 NYHLinux联盟 #more /usr/local/samba/lib/smb.conf NYHLinux联盟 [global] NYHLinux联盟 workgroup = UEC NYHLinux联盟 netbios name = UEC-server NYHLinux联盟 server string = Samba Server NYHLinux联盟 log file = /usr/local/samba/var/log.%m NYHLinux联盟 security = user NYHLinux联盟 guest account = guest NYHLinux联盟 [gcp docs] NYHLinux联盟 comment = this is shared gcp docs NYHLinux联盟 path = /gcp NYHLinux联盟 guest ok = yes NYHLinux联盟 read only = no NYHLinux联盟 browseable = yes NYHLinux联盟 [john docs] NYHLinux联盟 comment = this is shared john docs NYHLinux联盟 path = /john NYHLinux联盟 guest ok = yes NYHLinux联盟 read only = no NYHLinux联盟 [global]段是全局变量,它设置了工作组,NetBIOS名,安全参数security等参数,除了[global]段外,所有的段都可以看作是一个共享资源,段名是该共享资源的名字,而段里的参数就是共享资源的属性。[gcp docs] 和[john docs]就是共享的目录,它的参数可以设置共享目录路径和访问控制权限等。(详细参数见附录) NYHLinux联盟 三、启动Solaris 8系统的Samba 服务 NYHLinux联盟 在安装完软件包后,我们把/usr/local/samba/sbin 下面的3个应用程序,nmbd,smbd,winbindd复制到/usr/local/samba/bin下面去。 NYHLinux联盟 samba server服务是 由3个守护进程组成, NYHLinux联盟 nmbd—Netbios名称服务器,该进程使用UDP协议提供Netbios名称服务和浏览支持,处理命名注册和决策请求。该进程应当是被首先启动。 NYHLinux联盟 smbd —SMB服务器,使用TCP协议给SMB客户提供文件和打印服务;应当在nmbd进程后立即启动。 NYHLinux联盟 Winbindd—当Samba服务器是windows NT 或 ADS域中的成员时,此时当启动该守护进程。 NYHLinux联盟 通常在修改了配置文件smb.conf后,我们需要从新启动这3个进程,以便参数的设置起效. NYHLinux联盟 下面配置下到自动启动脚本,我们可以自己写个启动的脚本,加入这3个进程(注意启动的先后顺序),其实samba安装完有个example的启动的脚本,我们只要做些修改就可以了。 NYHLinux联盟 #cp /usr/local/samba/doc/samba/examples/svr4-startup/samba.server /etc/init.d/samba.server NYHLinux联盟 #Vi /etc/init.d/samba.server NYHLinux联盟 把默认的两行/opt/samba/bin/smbd -D -s/opt/samba/smb.conf NYHLinux联盟 /opt/samba/bin/nmbd -D -l/opt/samba/log -s/opt/samba/smb.conf NYHLinux联盟 改为三行 NYHLinux联盟 /usr/local/samba/sbin/smbd -D -s/usr/local/samba/lib/smb.conf NYHLinux联盟 /usr/local/samba/sbin/nmbd –D -l/var/adm/samba.log -s/usr/local/samba/lib/smb.conf NYHLinux联盟 /usr/local/samba/sbin/winbindd NYHLinux联盟 #cd /etc/rc2.d NYHLinux联盟 # ln -s /etc/init.d/samba.server S99samba.server(把它Link到启动目录里面) NYHLinux联盟 这样Samba服务进程就会随着系统的启动而自动启动了。 NYHLinux联盟 四、samba服务系统的管理和配置工具 NYHLinux联盟 除此之外,Samba还提供了几个实用的组件(位于/usr/local/samba/bin目录下面): NYHLinux联盟 smbclient, SMB客户程序,用来存取SMB服务器上的共享资源; NYHLinux联盟 testprns 测试服务器上打印机访问的程序; NYHLinux联盟 testparms 测试Samba配置文件的正确性的工具; NYHLinux联盟 smbstatus 这个工具可以列出当前Samba服务器上的连接; NYHLinux联盟 smbtree 这个工具来显示共享目录树形结构。 NYHLinux联盟 smbpasswd 这个工具用来设定用户密码; NYHLinux联盟 swat samba的Web管理工具; NYHLinux联盟 这些工具其实都是非常有用的,通过他们我们可以更好的管理配置samba服务器。 NYHLinux联盟 下面通过例子做介绍 NYHLinux联盟 #cd /usr/local/samba/bin NYHLinux联盟 #testparms NYHLinux联盟 测试参数的设置格式,属性是否正确。 NYHLinux联盟 #smbstatus NYHLinux联盟 Samba version 3.0.10 NYHLinux联盟 PID Username Group Machine NYHLinux联盟 ------------------------------------------------------------------- NYHLinux联盟 2502 root UEC uec-gcp (192.168.1.2) NYHLinux联盟 Service pid machine Connected at NYHLinux联盟 ------------------------------------------------------- NYHLinux联盟 IPC$ 2502 uec-gcp Mon Sep 12 13:11:31 2005 NYHLinux联盟 John docs 2502 uec-gcp Mon Sep 12 12:59:01 2005 NYHLinux联盟 gcp docs 2502 uec-gcp Mon Sep 12 12:58:54 2005 NYHLinux联盟 No locked files NYHLinux联盟 #smbpasswd –a username NYHLinux联盟 添加访问的共享资源的用户,一般用户也可以访问SWAT,但只有查看状态的权限。 NYHLinux联盟 # smbtree NYHLinux联盟 Password: NYHLinux联盟 WORKGROUP NYHLinux联盟 \SUN440EN Samba 3.0.10 NYHLinux联盟 \SUN440ENADMIN$ IPC Service (Samba 3.0.10) NYHLinux联盟 \SUN440ENIPC$ IPC Service (Samba 3.0.10) NYHLinux联盟 \SUN440ENjohn docs NYHLinux联盟 \SUN440ENgcp docs NYHLinux联盟 #smbclient -L yourhostname. NYHLinux联盟 显示了samba server 上的共享资源。 NYHLinux联盟 Samba服务器是如何利用SMB/CIFS协议模仿Windows的NetBIOS协议的呢? NYHLinux联盟 表4—1,描述了具体的服务和端口使用。 NYHLinux联盟 端口 服务描述与使用的进程 NYHLinux联盟 137 Used for NetBIOS network browsing (nmbd) NYHLinux联盟 138 Used for NetBIOS name service(nmbd ) NYHLinux联盟 139 Used for file and printer sharing and other operations(smbd) NYHLinux联盟 445 Used by Windows 2000/XP when NetBIOS over TCP/IP is disabled NYHLinux联盟 901 Used by 
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论 |
|
|
|
|
|