传统的 UNIX 文件和文件夹保护体系为下列三种用户类型提供读、写和执行许可:所有者、组及其它。这些许可叫 做基本许可。
"访问控制列表"(ACL)提供对文件和文件夹的许可的控制比基本许可更强。ACL 使您能够为所有者、所有者组、其它以及特别的用户和组定义文件或文件夹许可,并为以上每种类别定义缺省许可。
对某个文件或文件夹的许可指定可以如何访问该文件或文件夹。这些许可既适用于基本用户类型,也适用于在"通过访问控制列表设置缺省许可"中描述的 ACL 缺省类型。
"读许可"-允许检索、复制或查看对象的内容。
"写许可"-对文件而言,允许更改文件内容。对文件夹而言,允许从文件夹中创建和删除对象。
"执行许可"-对文件而言,允许运行文件(适用于可执行文件、正文及动作)。对文件夹而言,允许查找和列出文件夹的内容。
如果没有在文件夹内写的许可,该文件夹会象这样:
如果没有在文件夹内读或执行的许可,该文件夹会象这样:
对文件或文件夹而言,三种基本类型的用户为:
"所有者"-拥有文件或文件夹的用户。只有系统管理员(超级用户)才能更改文件或文件夹的所有者。
"组"-被系统管理员放在一起的若干用户。例如,某个部门的成员可能属于同一个组。该组为拥有文件或文件夹的组,并且通常包括文件或文件夹的所有者。
"其它"-系统上除所有者和拥有组之外的所有其他用户。
使某个文件夹为个人专有:
更改文件夹的特性,只给自己("所有者")读、写和执行许可,而不给组或其它任何许可。这意味着只有自己和超级用户可以查看文件夹的内容。
使创建的对象可为每个人使用,但同时对其加以保护,以免他人不小心将其改写:
更改文件夹的特性,给自己、组和其它以读与执行许可,但不给任何人写许可。
在"文件管理器"中,选定要查看其许可的文件或文件夹图标。
从"文件管理器"的"选定"菜单中,或者从图标的弹出式菜单(按 Shift + F10 或鼠标按钮 3 即显示)中选择"特性"。
在"有效"栏中查看文件或文件夹的基本许可("r"表示读许可,"w" 表示"写"许可,"x"表示"执行"许可)。
"所有者"-给予文件或文件夹所有者的许可
"组"-给予文件或文件夹组的许可
"其它"-给予所有者和组之外的所有其他人的许可
在对话框中的"读"、"写"、"执行"栏表示所请求的许可,它们可能与实际有效的许可(显示在有效栏)不同。所请求的许可可能因为掩码而不生效(请参阅"许可掩码")。
如果要查看另一文件或文件夹的许可,先选定对象,然后从"选定"菜单中选择"特性"。如果要在命令行键入sdtfprop&,以显示"特性"对话框,可以单击对话框中的"浏览"并选择文件或文件夹的名称来查看其特性。
在"文件管理器"中,选定要修改其许可的文件或文件夹的图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或鼠标按钮 3 即被显示)中选择"特性"。
出现"许可"对话框。
单击复选框来设置"所有者"、"组"及"其它"许可。
掩码限制"组"许可,但不影响"所有者"或"其它"许可。"所有者"、"组"、"其它"所接受的实际读、写、执行许可出现在"有效"栏中。
用"应用更改于"选项按钮选择改动的范围。
对文件来说,可能的选项是"仅用于本文件"(缺省)、"父文件夹中所有文件"、"父文件夹及其子文件夹中所有文件"。对文件夹来说,可能的选项是"仅用于本文件夹"(缺省)和"本文件夹及其子文件夹"。
在"许可"对话框中单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除"许可"对话框。
如果要修改另一文件或文件夹的许可,选定对象,然后从"选定"菜单中选择"特性"。如果要在命令行键入 sdtfprop&,以显示"特性"对话框,可以单击对话框中的"浏览"并选择文件或文件夹的 名称以修改其特性。
关于掩码,请参阅"许可掩码"。
如果无更改特性的许可,将无法使用"许可"对话框中的某些控制。
在"文件管理器"中,选择要修改其所有权的文件或文件夹的图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出菜单(按 Shift + F10 或鼠标按钮 3 即被显示)中选择"特性"。
出现"许可"对话框。
要更改所有者,将新所有者名称键入"所有者"文本字段。要更改所有者组,将新的组名称键入"组"文本字段。
即使不是文件或文件夹的所有者,但只要是另一个组的成员,就可以指定不同的所有者组。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除"许可"对话框。
单击"浏览"或在"文件名"字段键入文件或文件夹的名称。
浏览或编辑文件或文件夹特性。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置并继续进行浏览与编辑。
使用 ACL 可以为所有者、所有者组、其它以及特殊用户和组定义文件或文件夹许可,并为每个类 别规定缺省许可。每个文件或文件夹只能设定一个 ACL。每个 ACL由若干 ACL 项目组成。每个项目有一个相关的用户类型,正如基本许可有相关的"所有者"、"组"一样。
如果想给某用户或组访问文件或文件夹的许可,可分别使用"用户"或"组"类 ACL 项目。当创建 ACL 项目时,必须指定用户或组的名称。例如,可以用一个 ACL 让某位朋友获得读您的履历书的许可,而不让(除您之外的)其他任何人读到它。
要创建、修改或查看有关文件或文件夹的 ACL,该文件或文件夹必须驻留在 Solaris 2.5 或更新的服务器或系统上,而且必须运行 Solaris 2.5 或更新的软件。这样的文件和文件夹叫做 启用 ACL 的。必须 运行 CDE 1.1 或更新的版本,才能用"特性图形用户接口"(Properties Graphical User Interface,Properties GUI)来设置、修改或查看基本许可和 ACL。
只有文件或文件夹的所有者才可以创建或修改该文件或文件夹的基本许可或 ACL。对于非所有者,"特性"对话框中的所有字段都会显示为只读。
本节中的 ACL 术语均指在"特性图形用户接口"(GUI Properties)中使用的术语。命令行术语可能略有不同。
在"文件管理器"中,选择要查看其访问控制列表的文件或文件夹的图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或鼠标按钮 3 即可显示)中选择"特性"。
出现"特性"对话框。
如果文件或文件夹已有 ACL,该 ACL 出现在标号为 "访问控制列表许可"的滚动表中。如果文件或文件夹无 ACL,则滚动表被隐藏。
"请求的"栏显示所有者为每个 ACL 项目所请求的 许可。这些许可被掩码所限制,而实际的 ACL 项 目许可出现在有效栏中。关于掩码,请参阅 "许可掩码" 。
要创建、修改或查看有关某个文件或文件夹的 ACL,该文件或文件夹必须驻留在 Solaris 2.5 或更新的服务器或系统上,而且必须运行 Solaris 2.5 或更新的软件。
添加第一条"访问控制列表"项目时,即可创建"访问控制"。
在"文件管理器"中,选择要修改其访问控制列表(ACL)的文件或文件夹的图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或鼠标按钮 3 即可显示)中选择"特性"。
出现"许可"对话框。
如果"许可"对话框中的 ACL 部分不可见,单击"显示访问控制列表"。
单击"添加"按钮。
出现"添加访问表项目"对话框。
从"类型"选项按钮选定选项。
如果在"名称"字段有与所选类型相关的名称,将其键入。
单击"许可"复选框以反映希望新的 ACL 项目所具有的值。
在对话框底部的状态栏会显示所请求的许可是否被掩码所限制。
单击"添加访问表项目"对话框中的"添加"。
用"应用更改于"选项按钮以选择改动的范围。
对文件来说,可能的选项是"仅用于本文件"(缺省)、"父文件夹中所有文件"、"父文件夹及其子文件夹中所有文件"。对文件夹来说,可能的选项是"仅用于本文件夹"(缺省)和"本文件夹及其子文件夹"。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除对话框。
在"文件管理器"中,选择要改变其访问控制列表(ACL)中某个项目的文件或文件夹的图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或 鼠标按钮 3 即可显示)中选择"特性"。
"许可"对话框出现。
在"访问控制列表许可"滚动表中选定要更改的某项目。
单击"更改"。
"更改访问表项目"对话框出现。
单击"许可"复选框以反映希望 ACL 项目所具有的值。
在对话框底部的状态栏会显示所请求的许可是否被掩码所限制。
在"更改访问表项目"对话框中单击"更改"按钮。
用"应用更改于"选项按钮选择改动的范围。
对文件来说,可能的选项是"仅用于本文件"(缺省)、"父文件夹中所有文件"、"父文件夹及其子文件夹中所有文件"。对文件夹来说,可能的选项是"仅用于本文件夹"(缺省)和"本文件夹及其子文件夹"。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除对话框。
在"文件管理器"中,选择要删除其访问控制列表(ACL)中某个项目的文件或文件夹的图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或 鼠标按钮 3 即可显示)中选择"特性"。
出现"许可"对话框。
在"访问控制列表许可"滚动表中选定要删除的某个项目。
单击"删除"按钮。
出现对话框,要求确认该删除。如果删除四个 ACL 所需缺省项目中的任何一个,所有 ACL 缺省项目都会被删除。关于 ACL 所需和可选缺省项目,请参阅"通过访问控制列表设置缺省许可"。
删除所有项目(除掩码外)也删除整个"访问控制列表"。
用"应用更改于"选项按钮选择更改的范围。
对文件来说,可能的选项是"仅用于本文件"(缺省)、"父文件夹中所有文件"、"父文件夹及其子文件夹中所有文件"。对文件夹来说,可能的选项是"仅用于本文件夹"(缺省)和"本文件夹及其子文件夹"。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除对话框。
在文件夹中创建另一文件或文件夹时,它会继承系统管理员设置的基本许可。(要确定当前缺省值,先创建新文件或文件夹,然后从"选定"菜单选择"特性"来查看许可。)
可以用"访问控制列表"为文件夹中创建的任何文件或文件夹自行设置缺省基本许可。该文件夹的相应 ACL 必须包含对应于以下所有四个所需缺省项目类型的项目:"缺省所有者用户"、"缺省所有者组"、"缺省其它"、"缺省掩码"。对每个所需类型,一个 ACL 可以只包含一个项目。
文件或文件夹从该文件或文件夹的创建人那里继承"所有者"、"组"、"其它"设定值,并从所需 ACL "缺省"项目类型那里继承基本许可。这些类型的 ACL 项目没有与其相关联的名称。
对在文件夹中创建的任何文件或文件夹,也可以设置可选"缺省"项目类型- "缺省用户"和"缺省组"。可以创建任意多的"缺省用户"或"缺省组"ACL项目。在创建 ACL 项目时,必须指明用户或组的名称。
想放入"缺省用户"或"缺省组"项目的任何 ACL,同时也必须包含每种所需项目中的一条。
假设名为 Carla 的用户其"所有者"和"组"的值分别是 otto 和 otto_staff,"其它"(暂称之为 otto_other)则是除 Carla 和 otto_staff 的成员外 Carla 公司中的所有其他人。Carla 为她名为 Project1的文件夹创建了以下所需缺省:
"缺省所有者用户",许可为 rwx(读、写、执行)
"缺省所有者组",许可为 rx(读、执行)
"缺省其它",许可为无读、无写、无执行
"缺省掩码",许可为 rw(读、写)
随后放入 Project1 文件夹的任何文件或文件夹将从 Project1 中继承以下基本许可:
该文件或文件夹的"所有者"值为 otto ,otto 有对该文件或文件夹的读、写、执行许可
该文件或文件夹的"组"值为 otto_staff ,otto_staff 有对该文件或文件夹的读和执行许可
该文件或文件夹的"其它"值为 otto_ other ,otto_ other 有对该文件或文件夹无读、无写、无执行许可
该文件或文件夹在访问控制列表许可滚动表中也有一个掩码项目,其值为 rw(读、写)。
如果 Carla 还为 Project1 文件夹添加了类型为"缺省用户"("缺省组")的可选 ACL,那么随后放入 Project1 的任何文件或文件夹将继承类型为"用户"("组")的 ACL。
在"文件管理器"中,选择要查看其访问控制列表(ACL)所需的缺省项目类型的文件夹的图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出菜单(按 Shift + F10 或鼠标按钮 3 即可显示)中选择"特性"。
如果文件夹没有已定义的 ACL,单击"显示访问控制列表"按钮。
如果文件夹有已定义的 ACL,打开"许可"对话框时,该 ACL 会显示出来。
单击"添加",然后选择类型为"缺省所有者用户"、"缺省所有者组"、"缺省其它"或"缺省掩码"的 ACL 项目。
会出现一条信息,以提醒其它所需 ACL 缺省项目也将被添加。
单击"许可"复选框为"缺省"项目设置许可。
单击"添加访问表项目"对话框中的"添加"。
其它三个所需的 ACL 缺省项目自动创建,许可设置为无读,无写,无执行。
(可选)更改在上述 步骤 6 中自动创建的所需 ACL "缺省"项目的许可。
用"应用更改于"选项按钮选择改动范围。
可能的选项是"仅用于本文件"(缺省)和"本文件夹及其子文件夹"。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除对话框。
在"文件管理器"中,选择要删除其 ACL 中"缺省"项目文件夹的 图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或鼠标按钮 3 即可显示)中选择"特性"。
选定所需 ACL 缺省项目,然后单击"删除"。
出现一条信息以提醒一旦删除所需 ACL 缺省项目中的一种,其它三种所需 ACL 缺省项目即自动删除。
在确认对话框中单击"删除"。
用"应用该于"选项按钮来选择更改范围。
可能的选项是"仅用于本文件"(缺省)和"本文件夹及其子文件夹"。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除对话框。
在"文件管理器"中,选择要为其设置可选 ACL"缺省"项目的文件夹图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或鼠标按钮 3 即可显示)中选择"特性"。
如果文件夹没有已定义的 ACL,单击"显示访问控制列表"按钮。
如果文件夹有已定义的 ACL,打开许可对话框时,该 ACL 即显示。
单击"添加",然后选择类型为"缺省使用者"或"缺省所有者组"的 ACL 项目。
如果所需要的缺省项目未包含在 ACL 中,即会被创建,其许可将设置为无读、无写、无执行。
单击"许可"复选框为"缺省"项目设置许可。
单击"添加访问表项目"对话框中的"添加"。
继续添加任意多的"缺省使用者"或"缺省所有者组"的 ACL 项目类型。
用"应用更改于"选项按钮来选择更改范围。
可能的选项是"仅用于本文件"(缺省)和"本文件夹及其子文件夹"。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除对话框。
启用 ACL 的文件和文件夹有定义好的掩码, 其缺省许可为对该文件或文件夹的组许可。掩码是给予所有 ACL 项目的任何用户和"组"基本许可的最大允许许可。它对"所有者"或"其它"基本许可不起限制作用。例如,若一个文件的掩码是只读,那么,不改变掩码的值就不能为用户创建有写或执行许可的 ACL。
使用掩码作为限制用户和组许可的快速方法。
在"文件管理器"中,选择要修改其掩码的文件或文件夹图标。
从"文件管理器"的"选定"菜单,或者从图标的弹出式菜单(按 Shift + F10 或 鼠标按钮 3 即可显示)中选择"特性"。
出现"许可"对话框。
如果文件夹没有已定义的 ACL,单击"显示访问控制列表"按钮。
如果文件夹有已定义的 ACL,打开许可对话框时,会显示该 ACL。
在"访问控制列表许可"滚动表中选择"掩码"项目。
当前掩码许可出现在"有效"栏中。
单击"更改"按钮。
单击"许可"复选框以反映希望掩码所具有的值。
在"更改访问表项目"对话框中单击"更改"按钮。
用"应用更改于"选项按钮来选择更改许可范围。
对文件来说,可能的选项是"仅用于本文件"(缺省)、"父文件夹中所有文件"、"父文件夹及其子文件夹中所有文件"。对文件夹来说,可能的选项是"仅用于本文件夹"(缺省)和"本文件夹及其子文件夹"。
单击"确定"以应用当前设置并消除对话框。单击"应用"以应用当前设置而不消除对话框。