Linux为每个文件都分配了一个文件所有者,称为文件主,并赋予文件主惟一的注册名。对文件的控制取决于文件主或超级用户(root)。
文件或目录的创建者对所创建的文件或目录拥有特别使用权,文件的所有关系是可以改变的,您可以将文件或目录的所有权转让给其他用户,但只有文件主或root才有权改变文件的所有关系。
用户可以是用户名或用户ID。文件是以空格分开的要改变权限的文件列表,可以用通配符表示文件名。如果改变了文件或目录的所有权,原文件主将不再拥有该文件或目录的权限。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的目录下以后,让用户拥有使用该文件的权限。
文件的所有权标志是用户ID(UID)。chown命令更改某个文件或目录的所有权。例如,超级用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,超级用户(root)应该把这个文件的属主设为xu,否则,用户xu无法存取这个文件。chown命令的语法格式是:
chown [选项]用户或组文件1[文件2……]
在Linux下,每个文件又同时属于一个用户组。当你创建一个文件或目录,系统会赋予它一个用户组关系,用户组的所有成员都可以使用此文件或目录。文件用户组关系的标志是GID。文件的GID只能由文件主或超级用户(root)来修改。chgrp命令可以改变文件的GID,其语法格式为:
chgrp [选项] group文件名
其中group是用户组ID。文件名是以空格分开的要改变属组的文件列表,它支持通配符。
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。访问权限规定三种不同类型的用户:文件主(owner)、同组用户(group)、可以访问系统的其他用户(others)。
当用ls -l命令或l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。其中各位的含义如下:
访问权限规定三种访问文件或目录的方式:读(r)、写(w)、可执行或查找(x)。
目录访问权限
在ls命令后加上-d选项,可以了解目录文件的使用权限:
ls -d
读权限(r)可以列出存储在该目录下的文件,即读目录内容列表。这一权限允许shell使用文件扩展名字符列出相匹配的文件名;写权限(w)表示允许你从目录中删除或添加新的文件,通常只有目录主才有写权限;执行权限(x)允许你在目录中查找,并能用cd命令将工作目录改到该目录。
文件访问权限
读权限(r)表示只允许指定用户读其内容,而禁止对其做任何的更改操作。将所访问的文件的内容作为输入的命令都需要有读的权限。例如:cat、more等;写权限(w)表示允许指定用户打开并修改文件。例如命令vi、cp等;执行权限(x)允许指定用户将该文件作为一个程序执行。