分享

7.2.2 smb.conf共享资源定义设置选项解析

 angelbrian 2013-04-16

7.2.2  smb.conf共享资源定义设置选项解析

在Samba服务器配置文件配置中,我们看到了在共享定义(Share Definitions)部分中包括了许多设置选项。其实不用担心,这是默认配置文件中提供的一个参考范本,列出了多个不同环境下通常可以用来设置为共享 的共享资源预定义。在实际中可能用不上这些共享资源,只需根据自己的实际需求配置少量几个共享资源即可。而且在这么多共享资源定义中,所用到的语句却基本 上一样,只是具体设置不同而已。本节要详细介绍这些主要配置语句。

共享名

共享资源发布后,必须为每个共享目录或打印机设置不同的共享名,供网络用户访问时使用。这是在每个共享资源定义部分的第一行中设置的,以方括号括住 共享名即可。如要设置一个共享名为public的共享目录,则在定义该共享目录的第一行中写上[public]即可;如果要定义一台名为epson765 的共享打印机,则在定义该共享打印机的第一行中写上[epson765]即可。这里的public和epson765就是对应的共享资源共享名。用户访问 时就是通过这个共享名来识别的。

【经验之谈】在Share Definitions部分的第一行是[homes],它是特殊的行,这里的名字不能改变。[homes]共享目录并不特指具体的共享目录,而是表示Samba用户的主目录,即Samba用户登录后可以访问同名系统用户主目录中的内容。

用户主目录是Samba为每个Samba用户提供的共享目录,只有用户本身可以使用。默认情况下,用户主目录位于/home目录下,每个Linux 用户有一个以用户名命名的子目录。如用户winda在创建账户时默认会同时创建/home/winda目录,这就是winda账户的主目录。当然也可以不 为用户创建主目录,具体参见本书第5章介绍。/home目录的权限由[homes]字段设置为不允许浏览(browseable = no语句),允许写入用户自己的主目录(writable = yes语句)。下面的[printers]行也是特殊的行,不能修改其中的名字。如果定义了[printers]这个段,用户就可以连接在 printcap文件里指定的打印机。要注意的是,如果是设置共享打印机,则必须设置printable关键字语句为yes,否则用户无法打印。

共享资源描述

这部分是以comment(描述)关键字来设置的,语句格式为:comment = 描述信息。

共享路径

共享资源存放或安装在网络中的其他主机上,所以在共享访问时必须指定它的共享路径。此处是定义本地Samba服务器上用于为Windows用户提供 共享的共享资源路径,它是通过path(路径)关键字来设置的,语句格式为:path = 共享资源的绝对路径。如要把/etc/tools目录设置成共享,则它的共享路径设置就是:path = /etc/tools。

共享权限

共享权限就是用户对Samba服务器的共享资源所具有的访问权限。这里就针对不同共享权限有不同的语句。

要允许匿名访问,则要加上public = yes(如果要禁止匿名访问,则为no)语句。

【经验之谈】其实还有一种称为设置来宾账户访问的语句,即guest ok = yes(如果要禁止,则为no)语句。这是设置是否允许以来宾账户访问Samba服务器的语句。在Windows 2000以后的系统中,我们知道,匿名访问和来宾访问是不同的,Linux系统中也是这样的。如果要使用来宾设置,则除了要设置guest ok = yes外,还要用"guest account = 来宾账户"这样的语句来指定来宾账户的具体账户。当然,这时用户访问时必须输入正确的指定来宾账户的密码,实际属于user工作模式。

要隐藏共享资源,则要加上browseable = yes(默认是禁止的,为no)语句,这样每个用户只能看到自己为所有者的共享资源,不能看到其他共享资源。相当于Windows系统在设置共享目录加上了"$"符号。

要只允许读取权限,则要加上read only = yes(如为no,则表示可读可写)语句。

要允许写入权限,则要加上writable = yes(要禁止写入权限,但仍具有读取权限,则为no)语句。

有效用户

如果某共享资源仅允许特定用户或组成员访问,则要使用valid关键字指定有效用户。如果指定的是用户账户,则设置格式为:valid users = 用户名1  用户名2 ……;如果指定的是组账户,则设置格式为:valid users = @组名1 @组名2 ……。

Printable

设置是否允许访问用户打印。如要允许打印,则设置为:printable = yes,否则为printable = no。

create mask

设置用户对在此共享目录下创建的文件的默访问权限。通常是以数字表示的,如0604,代表的是文件所有者对新创建的具有可读可写权限,其他用户具有可读权限,而所属主要组成员不具有任何访问权限。

directory mask

设置用户对在此共享目录下创建的子目录的默认访问权限。通常也是以数字表示的,如0765,代表的是目录所有者具有对新创建的子目录可读可写可执行权限,所属组成员具有可读可写权限,其他用户具有可读和可执行权限。

对于共享打印机的共享权限配置,需要设置printer(打印机的共享名)、valid users(可以共享打印机的用户)。

以上就是共享资源定义的一些主要语句。下面通过几个示例介绍不同Samba服务器工作模式下的主配置文件配置。

在RedHat Enterprise Linux 5中有几个特殊的目录,在配置Samba服务器时可用来设置为特殊目的的共享:

/tmp:可用来设置网络用户共享文件的临时区域,每个人可以在这里存放文件供别人使用。

/home:这是用来存放所有用户主目录的目录。默认是所有用户都不可浏览(通过browseable = no语句设置),每个用户只能看到并操作自己的主目录。

/home/Samba:一个共享目录,普通的访问者只读,属于staff组的用户可以读写。

/usr/pc/%m:一个共享目录,对于所有用户都可读可写。注意目录中创建的文件属于默认的用户,所以所有用户都可以在该目录中修改、删除其他用户的文件。

【说明】下面以share、user和ads三种常用的Samba服务器工作模式为例介绍3种模式下的Samba服务器配置。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多