跟小段一起学Solaris(16)---Samba文件共享
如今的操作系统市场,几乎是Unix与Windows割据天下。一个侵占了绝对的
服务器市场,而另一个却几乎吞噬了整个桌面市场。经常有人抱怨如今的文件系统、网络的异构,使不同的系统之间的访问变得困难,需要引入一门通用的“语言”来解释异构系统之间的通讯。上一次我们一起配置NFS共享服务,是为了在类Unix系统中实现文件共享。今天我们一起来看看Samba for Solaris的使用,实现了UNIX与windows的文件共享和打印共享,你可以在本地的windows系统上的网络邻居来访问Solaris上的文件,打印共享,您甚至还可以映射网络驱动器,这就如同使用本地磁盘一样方便。而且利用Unix的强大的访问控制,你可以对不同的共享目录权限设置,不用担心有人会删除你的文档,而您自己却可以自由操作。
一、简单介绍
首先,我们先来介绍下什么是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设计的它却注定了不能路由。
Samba执行了 SMB/CIFS的一个版本,这个版本在很大程度上与大多数的Windows版本兼容。但是,无论是从Windows连接到Linux还是从Linux连接到Windows机器,Samba系统对于实现文件和打印服务来说总是很稳定的。我们可以通过Windows的网络邻居来轻松访问安装了Samba的 UNIX/LINUX服务器。(更多的文档见[url]www.samba.org[/url]、[url]http://baike.baidu.com[/url])
二、Samba在solaris上的安装与配置
1.安装系统时自带smb,省略安装的步骤。
2.配置相关文件。Solaris下的Samba配置文件是smb.conf。但是我们需要由smb.conf-example拷贝一份。
三、共享方式:
⑴不需要密码
命令:cp /etc/sfw/smb.conf-example /etc/sfw/smb.conf
命令:vi /etc/sfw/smb.conf
修改: security=share share为不需要输入用户 user是需要输入,no 是初始值
然后到最跟部书写
[smb1]--自定义
coment = software --注释
path =/smb --共享目录
public= yes yes是访问是不需要输入密码,no是需要密码的.
查看服务 svcs -a |grep samba
开启服务 svcadm enable -rst samba
测试 :用windows访问测试.运行 \\192.168.0.246
确定后出来一个窗口,就和Windows之间的共享一样。并且不提示输入用户名和密码。
-------OK-------如果没有密码的话,随便一个人都能连接上Samba服务,任意上传文件。所以我们在实际应用的时候应该用加密方式!
⑵需要密码(增加密码验证)
vi /etc/sfw/smb.conf
里面更改: security=user
最后面 : public =no
创建用户 :useradd -d /a1 -m /a1
把用户改为samba用户。编辑password :/usr/sfw/bin/smbpasswd –a a1
重启服务 svcadm restart samba
测试 : 用windows 访问unix 地址(IP)
这里就弹出一个面板,提示输入用户名和密码了。
这是/usr/sfw/bin/smbpasswd命令的参数:
-a |
add user |
添加samba用户 |
-d |
disable user |
禁用某个samba用户 |
-e |
enable user |
启用某个samba用户 |
-i |
interdomain trust account |
域际信任用户 |
-m |
machine trust account |
本机信任用户 |
-n |
set no password |
清除密码 |
-W |
use stdin ldap admin password |
使用stdin ldap管理员密码 |
-w |
ldap admin password |
设置ldap管理员密码 |
-x |
delete user |
删除某个samba用户 |
-R |
name resolve order |
名称解析 |
以上都是smbpasswd命令的参数。翻译已经给出了,有兴趣的朋友能和小段一起研究一下。
四、读写权限:
有时候我们会遇到这种情况,某个目录中的信息不能随便让用户修改,其他目录需要让用户上传文件。这时我们就会用到samba的读写权限。
编辑samba配置文件。命令:vi /etc/sfw/smb.conf
新建一个共享目录smb2
看到没?这里是设置只读为yes,默认为no。在Windows中访问一下:
进入可读写的smb1目录,测试一下:
呵呵,可以的哟!只不过是乱码。再去smb2中看看吧。
-------完成-------
这样就有了实际的意义,方便了对服务器的管理。对于文件的上传和下载我们一共有三种方式了:
1、cmd中FTP方式。
2、文件上传工具。如FlashFXP等。
3、Samba方式。利用Windows下的netbios协议进行文件的传输。