Linux文件权限与群组修改命令详解

 更新时间:2019年07月02日 09:55:40   作者:FOOFISH-PYTHON之禅  
这篇文章主要介绍了Linux文件权限与群组修改命令详解,在Linux中,一切皆为文件(目录也是文件),每个文件对用户具有可读(read)、可写(write)、可执行(execute)权限,需要的朋友可以参考下

在Linux中,一切皆为文件(目录也是文件),每个文件对用户具有可读(read)、可写(write)、可执行(execute)权限。目录的执行操作表示是否有权限进入该目录,文件的可执行表示是否可以运行该文件。文件都会从属于一个用户和一个用户组,每个文件针对文件的拥有者、所属组以及其他用户组具有特定的权限。

如上图,除去第一个表示文件类型的字符外,后面的字符均以三个为一组,是『rwx』 的三个参数的组合。[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。同时他们也会分别对应到一个数字,[ r ]对应4,[ w ]对应2,[ x ]对应1,这些数字在修改文件权限的时候可以用到,如果没有[ rwx ]中的某个权限,就会用减号[ - ]替代。

第一组是文件拥有者对该文件的操作权限,第二组是文件所属组对该文件的操作权限,第三组是其他组的用户对该文件的操作权限。举例说明: 有一个文件的权限数据为『rwxr-xr--』,那么前3个字符表示文件的拥有者可以对文件进行读、写、执行三个操作,中间3个字符表示该文件的所属组可以对文件进行读和执行操作,最后3个字符表示其他群组的用户只能对该文件进行读操作。

更改文件权限:chmod
更改文件权限使用命令 chmod ,一个文件的权限对应3种用户(自己、组、其他人)的读写执行共有9个,三个为一组,把每组的权限相加得到一个数字,例如[rwxrwx---]对应的数字是:

owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others= --- = 0+0+0 = 0

只要用户对文件有写权限,那么该用户就可以更新其他用户对该文件的操作权限,命令:

chmod [-R] xyz 文件或目录
  • xyz:分别对应三类用户权限值相加的和。
  • -R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更

例如:

[root@www ~]# ls -al .bashrc
-rw-r--r-- 1 root root 395 Jul 4 11:45 .bashrc
[root@www ~]# chmod 777 .bashrc # 更改为所有用户都可以读写执行
[root@www ~]# ls -al .bashrc
-rwxrwxrwx 1 root root 395 Jul 4 11:45 .bashrc

chmod 除了可以使用数字的方式变更文件的权限之外,还可以使用符号来改变文件权限,u、 g、o、a分别是user、group、others、all(所有用户)的简写,r 、w、x 分别是read、write、execute 的简写,那么chmod可以接收这些简写字符来变更文件权限。

u 
g +(增加) r
chmod o -(除去) w 文件或目录
a =(赋值) x

例如:

# 给自己读写执行权限,给用户组和其他人读和执行操作
chmod u=rwx,go=rx .bashrc
# 给所有用户追加写权限
chmod a+w .bashrc
# 给所有用户除去写权限
chmod a-w .bashrc

改变所属群组 chgrp

改变文件的群组使用chgrp命令,他是change group 的缩写,命令格式:

chgrp [-R] groupname dirname/filename

-R 递归改变目录及子目录文件,groupname 必须是存在于系统中的/etc/group文件里面的组。

# 把当前目录以及子目录下所有文件的所属组更新为mysql组
chgrp -R mysql .

改变文件拥有者 chown

改变文件的所属者使用 chown 命令,他是change owner 的缩写,命令格式:

chown [-R] owner dirname/filename

或者

chown [-R] owner:group dirname/filename

chown 命令不仅可以改变文件的拥有者,同时还可以改变文件的群组,只需在 owner 后面 加上 group 的名称即可

# 把install.log改成mysql用户
chown mysql install.log
# 把 install.log 改成root用户和root组
chown root:root install.log

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Linux下如何查看隐藏文件命令

    Linux下如何查看隐藏文件命令

    这篇文章主要介绍了Linux下如何查看隐藏文件命令问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Linux cal命令的使用

    Linux cal命令的使用

    这篇文章主要介绍了Linux cal命令的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • apache禁止遍历目录的实现步骤

    apache禁止遍历目录的实现步骤

    本文主要介绍了apache禁止遍历目录的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-12-12
  • 函数sync、fsync与fdatasync的总结整理(必看篇)

    函数sync、fsync与fdatasync的总结整理(必看篇)

    下面小编就为大家带来一篇函数sync、fsync与fdatasync的总结整理(必看篇)。小编觉得挺不错的。现在就分享给大家。也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • CentOS7中使用shell脚本安装python3.8环境(推荐)

    CentOS7中使用shell脚本安装python3.8环境(推荐)

    这篇文章主要介绍了CentOS7中使用shell脚本安装python3.8环境,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • 怎么修改Ubuntu的源列表(source list)详解

    怎么修改Ubuntu的源列表(source list)详解

    这篇文章主要给大家介绍了关于如何修改Ubuntu的源列表(source list)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Centos 7.2中双网卡绑定及相关问题踩坑记录

    Centos 7.2中双网卡绑定及相关问题踩坑记录

    最近在工作中遇到了关于双网卡绑定的需求,在绑定中发现了不少的问题,所以这篇文章主要给大家介绍了关于Centos 7.2中双网卡绑定及相关问题踩坑的相关资料,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-10-10
  • Windows和Linux实现远程桌面连接

    Windows和Linux实现远程桌面连接

    这篇文章主要介绍了Windows和Linux实现远程桌面连接,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • 在Apache服务器中运行CGI程序的方法

    在Apache服务器中运行CGI程序的方法

    这篇文章主要介绍了在Apache服务器中运行CGI程序的方法,文中以Perl脚本作为示例,需要的朋友可以参考下
    2015-07-07
  • Linux静态库与动态库实例详解

    Linux静态库与动态库实例详解

    这篇文章主要介绍了 Linux静态库与动态库实例详解的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下
    2017-10-10

最新评论