失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 【Linux】管理文件系统权限

【Linux】管理文件系统权限

时间:2023-04-19 16:17:05

相关推荐

【Linux】管理文件系统权限

一、文件系统权限说明

1、权限格式

使用touch语句创建一个新的文件,使用ll指令查询一下就可以看到文件的现有权限:

①:长列表的第一个字符表示文件类型

" - "是常规文件" d "是目录" l "是软连接其他字符代表硬件设备(b和c),或者具有特殊用途的文件(p和s)

②:拥有该文件的用户(属主)的权限

③:拥有该文件的组(属组)的权限

④:其他所有用户的权限

⑤:属主,该文件属于哪个用户,即创建该文件的用户

⑥:属组,该文件属于哪个用户组,即创建该文件的用户的组

2、权限种类

②③④中以三种权限为一组,即rwx为一组,若没有该权限则用 - 表示。

二、修改文件系统权限

用于更改权限的命令为chmod,意为“change mode”,可以配合-R选项以递归的方式对整个目录树中的文件进行权限设置。

1、通过符号法更改权限

chmod [-R] WhoWhatWhich file|directory

Who:u(属主)| g(属组)| o(其他)| a (全部)What:+(添加)| -(删除)| =(精确设置)Which:r(读取)| w (写入)| x(执行)

例:

2、通过数值法更改权限

chmod [-R] ### file|directory

将权限列表划分成用户、组、其他三部分,并使用一个三位的八进制数进行表示,每个权限位拥有该权限则置1,没有该权限则置0,再将rwx的值相加即可。

按照上述规则,每个八进制数拥有以下几种取值:

文件类型默认为0,如需修改则写成4位八进制即可。

例:

chmod 777 test_file //- rwx rwx rwxchmod 642 test_file //- rw- r-- -w-chmod 531 test_file //- r-x -wx --x

三、更改文件和目录的用户或组所有权

1、更改所属用户或所属组

用于更改所有者的命令为chown,意为“change owner”,可以配合-R选项以递归的方式更改整个目录树的所有权。

chown [-R] [owner][:group] file|directory

例:

chown root test_file//修改文件所属用户chown -R user1 test_dir //修改目录树所属用户chown :user test_file//修改文件所属组chown user1:user test_file//修改文件所属用户和所属组

2、更改所属组

还有一个直接用于更改所属组的命令为chgrp,意为“change group”,可以配合-R选项以递归的方式更改整个目录树的所有权。

chgrp [-R] group file|directory

例:

chgrp manager test_file //修改文件所属组

四、设置特殊权限

1、特殊权限对文件的影响

对于属主、属组和其他用户,均有一个特殊的权限,如下表:

2、设置特殊权限

可以使用chmod指令进行特殊权限的设置,设置后会在执行(x)的位置显示特殊权限。

例:

五、更改默认文件权限

创建新文件或者目录时,会给文件或目录分配一个初始权限,如果是创建新的目录操作系统会默认分配权限0777(drwxrwxrwx),如果是创建新的常规文件操作系统会默认分配权限0666(-rw-rw-rw-)。

此外shell还会设置一个umask,以进一步限制初始设置的权限。这是一个八进制位掩码,用于清除由该进程创建的新文件和目录的权限,掩码设置原理同数值法控制文件权限相同,若该位置1则新创建的文件或目录中该位对应的权限将会被清除。

例:

文件创建后反映出的最终属性是由默认分配权限加umask共同控制的,即在默认分配的基础上减掉umask清除的权限即为最终创建文件或目录时会拥有的权限。

六、设置指定用户/组对文件的控制权限

1、获取详细的文件权限

使用getfacl语句指定文件名可以修改文件或目录详细的权限信息:

getfacl file|directory

例:

2、修改详细的文件权限

使用setfacl语句指定文件名可以修改文件或目录详细的权限信息:

-o如下图:

通常可以使用-m来添加/修改指定用户/组/其他的权限,可以使用-x来删除指定用户/组的权限,使用格式如下。

setfacl -m user|group|mask|other:[name]:Which file|directorysetfacl -x user|group|mask|other:[name]:Which file|directory

例:

注意:只有通过 -m 添加的指定用户/组的权限才能通过 -x 进行删除。

如果觉得《【Linux】管理文件系统权限》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。