热度 1|
通过本文了解 Mac OS X 中“权限”的概念,因不正确的权限设置导致的问题,以及如何排除这种故障。
Mac OS X 的大多数用户都不会故意修改权限,而只是需要一个工具将系统权限重置为它们适当的默认值。如果您拥有 Mac OS X 10.2 以上版本,那么操作系统中包括了该实用工具。如果您使用的是 Mac OS X 10.1,那么您可以下载它。对于 10.0 - 10.1.4 版本,您必须先更新到 10.1.5 版。
对于 Mac OS X 10.2 以上的版本,打开“磁盘工具” (/Applications/Utilities/)。在“磁盘工具”窗口左侧的列中选定您的 Mac OS X 启动卷,然后单击 First Aid 选项卡。单击“修复磁盘权限”按钮。您可能会看到一条错误消息。
如果您修改过 /Library/Receipts 文件夹的内容,那么“修复权限”功能可能无法正常运行。修复权限需要拥有 Apple 安装的软件许可。另外,实用工具只能修复 Apple 安装的软件和文件夹(不包括用户的 root 文件夹)。
要获取详细信息,请参看“关于磁盘工具的修复磁盘权限功能(Mac OS X 10.2, 10.3)”。
本文档的其余部分包含了一些更高级的信息。
注意:在 Mac OS X 10.5 以上版本中,当从 Mac OS X 10.5 安装盘启动(“引导”)时,可以使用重置密码实用工具来重置用户的主目录权限。
警告:本文描述了您可以如何通过在“终端”应用程序中输入命令来修改权限设置。不熟悉“终端”和 UNIX 环境的用户应该谨慎行事。输入错误的命令可能会导致数据丢失和(或)系统软件不可用。权限的不当修改可能会降低系统的安全性和(或)造成私人数据泄露。
定义的权限Mac OS X 集成了一个以 UNIX 操作系统为基础的子系统,它在文件系统中使用权限。硬盘中的每个文件和文件夹都有一组相关的权限,可以读取、写入或执行它。下面使用 AppleWorks 应用程序及其文档作为示例来解释权限的意义:
当您可以做到所有三种操作时,您就拥有了“rwx”权限。文件夹的权限与此类似。具有内含文档的文件夹的只读权限,您可以打开和读取其中的文档,但不能保存对该文件夹所做的更改,也不能为该文件夹添加新的文档。只读 (r--) 权限是常用于客户访问的文件共享。
所有者、组、其他像“rwx”和“r-x”这样的简写描述了一个用户或一个实体的权限。每个文件或文件夹的权限设置都定义了三个实体的访问能力:所有者、组和其他。
因为每个实体都有其自己的权限,如一个完整的权限组可能为“-rwxrw-r--”。前面的连字符指定该项目是一个文件而不是文件夹。文件夹的权限以“d”开头,如“drwxrw-r--”。“d”代表 directory(目录),表示文件夹。图 2(下图所示)描述了它在 Terminal 应用程序中的情况。
将权限缩写为数字有时,您可能会认为键入“-rwxrwxr-x”有些麻烦。正是如此,这就是为什么会有一种简便方式,将权限缩写成范 围为 777 (-rwxrwxrwx) - 000 (no access) 的数字。“rwx”就可以写成 7(1、2 、4 的和),其中 4 表示读取、2 表示写入、1 表示执行。0 表示没有任何访问权限。3 位数字可以分别表示所有者、组和其他的权限总和。因此,示例“-rwxrwxr-x”就可以写作 775。
示例:创建一个 TextEdit 文档假设您创建了一个 TextEdit 文档,并将它保存到 root 目录下的 Documents 文件夹中。该文档具有“-rw-r--r--”权限,因此,您可以读取和写入该文件;但是指定的组及其他用户只能读取它。因为您将该文件保存到您的 Documents 文件夹 (drwx------) 中,所以组及其他用户甚至不能查看您的文件。文件夹的权限将会取代内含文件自己的权限。这就是 Mac OS X 的 root 目录结构提供私密性的方式。如果您将该文件拖到您的 Public 文件夹 (drwxr-xr-x) 中并注销,那么其他用户可以登录到该计算机并读取您的公用文件。
新文件和文件夹的默认设置权限设置
权限
在 Mac OS X 中,在安装系统时将会创建一个名为 root 的超级用户。 root 用户对计算机上的所有文件和文件夹都有完全的访问权限,并且还具有一般用户没有的其他管理访问权限。在计算机的正常使用中,您并不需要以 root 用户的身份登录。事实上,默认情况下, root 用户是被禁用的。
与权限相关的问题不正确的权限设置可能会造成一些意外情况。下面是一些故障排除建议的示例:
警告:键入错误或错误使用“rm -rf”命令可能会导致数据丢失。例如,在错误的地方插入空格可能会导致彻底删除硬盘中的数据。您可能希望将下面的命令复制并粘贴到文本编辑器中,以验证空格的正确性。请按照下面的步骤操作来以登录用户身份删除“废纸篓”:
您的“废纸篓”中的所有条目都会被删除。作为替代方法,您可以执行下面这些命令。第二个和第三个命令将会删除其他用户的“废纸篓”。这些命令为:
警告:键入错误或错误使用“rm -rf”命令可能会导致数据丢失。例如,在错误的地方插入空格可能会导致彻底删除硬盘中的数据。您可能希望将下面的命令复制并粘贴到文本编辑器中,以验证空格的正确性。
重点:下面的“/”和“.Trash”或“.Trashes”之间没有空格。
sudo rm -rf ~/.Trash/
sudo rm -rf /.Trashes/
sudo rm -rf /Volumes/<volumename>/.Trashes/
注意:要结束 sudo 会话,您可以执行 exit 命令,也可以注销 Mac OS X,然后重新登录。
个别情况下,这将会永久删除当前用户“废纸篓”、启动卷“废纸篓”及其他卷“废纸篓”(若有的话)中所有文件。这些命令不能删除锁定的文件。您必须先取消锁定它们。
注意:sudo 命令可以用来暂时获得超级用户的状态,来更改其他情况下不能更改的文件的权限。但是,只有当您以管理员账户登录时才能使用它,并且它需要管理员账号密码以进行身份验证。
如何在 Finder 的“简介”窗口中查看和更改权限Mac OS X Finder 可以用来查看和修改一些文件和文件夹的权限设置。您只能更改您作为所有者的文件和文件夹的权限。这将会有助于排除与权限相关的问题故障。要在“简介”窗口查看和更改权限,请按照下面的步骤进行操作:
注意:一旦使用“简介”窗口进行更改,甚至在关闭该窗口之前,就会应用所做的更改。
“终端”应用程序位于“应用程序>实用工具“文件夹内。您可以使用“终端”来查看或更改权限。与使用 Finder 的“简介”窗口不同,sudo 命令允许您更方便地进行 root 级访问,不必先注销再以 root 用户登录。
警告:要利用该工具需要具备一些命令行的基本知识。如果“终端”应用程序使用不当,那么可能会导致数据丢失和(或)系统软件不可用。
要确定文件或文件夹的权限设置,请打开“终端”,然后定位到文件或文件夹所处的目录。然后执行命令“ls -l”。输出结果如图 2 所示。
图 2使用“终端”查看权限
在图 2 示例中,任何用户都可以读取“File Name1.ext”文件,因为读取位(r)是针对其他设置的。但是,只有 root 用户才能更改文件,因为写入位(w)只对所有者(即 root 用户)才是有效的。如果文件不是系统文件,并且您希望能够从通常使用的账户进行修改,那么您可以使用下面的命令来更改所有者:
sudo chown yourusername "File Name1.ext"
因为该文件是由 root 用户而非登录的用户拥有的,所以“sudo”命令将会使您暂时拥有 root 访问权。请使用您的账号的缩写名称替代“yourusername”。
空格语法:在“终端”中键入文件路径中的空格时请特别小心。在该示例中,文件名是用引号引住的,因为它包含一个空格。另外,您可以使用后跟一个空格的反斜线来替代空格。在没有引号的情况下,同样的命令将键入为:
sudo chown yourusername File\ Name1.ext
要获取更多有关更改权限、组和权限的信息,请参看有关 chown、chgrp 和 chmod 的指导页面。您可以通过执行“man <command_name>”来访问指导页面。例如:
man chmod
默认情况下,一次只能显示一个指导页面。要读取下一页,请按下空格键。要退出指导页面,请按下 Q 键。