Linux设置文件和目录权限方式

 更新时间:2024年11月06日 15:07:53   作者:Xnah_  
在Linux系统中,文件和目录的权限分为访问权限和归属权限,访问权限包括读(r)、写(w)、执行(x),可用字符或数字方式设置,归属权限涉及文件的所有者和用户组,特殊权限包括suid、sgid和Sticky位,分别用于提高程序的安全性和管理共享目录

一、文件和目录的访问和归属权限

1.访问权限

  • 读取权限(r)允许查看文件内容;显示目录列表
  • 写入权限(w)允许修改文件内容;允许在目录中新建、移动、删除文件或子目录
  • 执行权限(x)允许运行程序;切换目录

访问权限用八进制数表示为:

注意

  • 文件夹的最小权限是x,一定要带上否则无法进行任何操作,超级管理员不受影响。
  • 删除一个文件和所在文件夹权限有关,和自身没关系,超级管理员不受影响。

2.归属权限

  • 属主:用有该文件或目录的用户
  • 属组:用有该文件或目录的用户组

二、设置文件和目录的访问和归属权限

1.设置访问权限(两种方式)

(1)字符表示法

[root@localhost ~]# chmod [ugoa] [=+-] [rwx] 文件或目录...

u 属主 g 属组 o 其他用户 a 所有

= 赋予...权限 + 加上...权限 - 去掉...权限

-R //递归修改指定目录下所有文件、子目录的权限
//创建一个文件,查看其权限
[root@localhost data]#touch 1.txt
[root@localhost data]#ll 1.txt
-rw-r--r--. 1 root root 0 7月  31 16:22 1.txt


//其他加上写入权限
[root@localhost data]#chmod o+w 1.txt
[root@localhost data]#ll 1.txt
-rw-r--rw-. 1 root root 0 7月  31 16:22 1.txt

//属组赋予写入执行权限
[root@localhost data]#chmod g=-wx 1.txt
[root@localhost data]#ll 1.txt
-rw----rw-. 1 root root 0 7月  31 16:22 1.txt

//所有赋予读写执行权限
[root@localhost data]#chmod a=rwx 1.txt
[root@localhost data]#ll 1.txt
-rwxrwxrwx. 1 root root 0 7月  31 16:22 1.txt

(2)数字表示法

[root@localhost ~]# chmod nnn 文件或目录...
//创建目录
[root@localhost data]#mkdir -p aa/bb
[root@localhost data]#ll aa
总用量 0
drwxr-xr-x. 2 root root 6 7月  31 16:39 bb

//修改bb权限为644
[root@localhost data]#chmod 644 aa/bb
[root@localhost data]#ll aa
总用量 0
drw-r--r--. 2 root root 6 7月  31 16:39 bb

//修改bb权限为777
[root@localhost data]#chmod 777 aa/bb
[root@localhost data]#ll aa
总用量 0
drwxrwxrwx. 2 root root 6 7月  31 16:39 bb

2.设置归属权限

[root@localhost ~]# chown 属主 文件或目录

:属组 文件或目录

属主:属组 文件或目录

-R //递归修改指定目录下所有文件、子目录的归属
//更改aa属主和属组
[root@localhost data]#chown root:hx aa
[root@localhost data]#ll .
总用量 0
drwxr-xr-x. 3 root hx 16 7月  31 16:39 aa

//递归更改aa及目录下子目录和文件属组
[root@localhost data]#chown :root aa
[root@localhost data]#ll -R .
.:
总用量 0
drwxr-xr-x. 3 root root 16 7月  31 16:39 aa

./aa:
总用量 0
drwxrwxrwx. 2 root root 6 7月  31 16:39 bb

./aa/bb:
总用量 0

三、权限掩码umask

1.作用

  • 控制新建的文件或目录的权限
  • 默认权限减去umask的数值为新建文件或目录的权限(文件用6减;目录用7减 因为目录默认有执行权限 值为1)

umask默认值为022

普通文件落地权限默认不能有执行(x)权限,所以权限值不会为奇数

2. 查看umask

[root@localhost data]# umask
0022

3.修改umask

[root@localhost data]# umask 数值

四、特殊权限

1.suid

[root@localhost aa]# which passwd
/usr/bin/passwd
[root@localhost aa]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd -- 此处s表示当使用这个命令程序时,把当前用户当成文件的所属主
[root@localhost aa]#which vim
/usr/bin/vim
[root@localhost aa]# chmod u+s /usr/bin/vim -- 给vim加上suid权限,代表所有用户可以使用vim打开并编辑所有文件
[root@localhost aa]# ll /usr/bin/vim
-rwsr-xr-x. 1 root root 2289640 8月 2 2017 /usr/bin/vim

2.sgid

[root@localhost aa]# chmod g+s /usr/bin/vim -- 此处s表示当使用这个命令程序时,把当前用户组当成文件的所属组
[root@localhost aa]# ll /usr/bin/vim
-rwxr-sr-x. 1 root root 2289640 8月 2 2017 /usr/bin/vim

3.Sticky位

//具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限或拥有权
在目录设置Sticky位,只有文件的所有者或root可以删除该文件
//sticky 设置在文件上无意义,只对目录有效

[root@localhost aa]#chmod o+t /opt/aa -- 添加Sticky位

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux内核之内核裁剪详解

    Linux内核之内核裁剪详解

    Linux内核裁剪是通过移除不必要的功能和模块,调整配置参数来优化内核,以满足特定需求,裁剪的方法包括使用配置选项、模块化设计和优化配置参数,图形裁剪工具如makemenuconfig可以帮助用户进行配置,裁剪原理是通过Kconfig和Makefile实现的
    2025-01-01
  • 使用命令行检测Ubuntu版本方法

    使用命令行检测Ubuntu版本方法

    在本篇文章中小编给大家整理了关于使用命令行检测Ubuntu版本方法和相关代码,有兴趣的朋友们学习下。
    2019-03-03
  • Linux如何杀死指定端口的进程

    Linux如何杀死指定端口的进程

    这篇文章主要介绍了Linux如何杀死指定端口的进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04
  • Linux系统查看当前网络连接数的方法小结

    Linux系统查看当前网络连接数的方法小结

    在日常的运维和开发中,网络连接数的监控是一个非常重要的指标,当你需要排查网络问题或优化系统性能时,查看连接数是关键的一步,不同的 Linux 环境和发行版可能需要使用不同的方法来获取连接信息,本文给大家介绍了Linux系统查看当前网络连接数的方法
    2024-12-12
  • Linux nmcli设置bond的过程

    Linux nmcli设置bond的过程

    这篇文章主要介绍了Linux nmcli设置bond的过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06
  • linux搭建FastDFS文件服务器的实现步骤

    linux搭建FastDFS文件服务器的实现步骤

    本文主要介绍在linux服务器如何搭建FastDFS文件服务器。文中通过图文示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Linux内核设备驱动之Linux内核基础笔记整理

    Linux内核设备驱动之Linux内核基础笔记整理

    今天小编就为大家分享一篇关于Linux内核设备驱动之Linux内核基础笔记整理,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Centos7删除/boot/下所有文件后实现恢复

    Centos7删除/boot/下所有文件后实现恢复

    文章介绍了在/boot/目录下的文件被删除后,可以通过光盘救援模式安装GRUB2、安装内核、修复GRUB配置文件以及退出重启来解决开机问题
    2026-01-01
  • linux设置tomcat开机启动方式

    linux设置tomcat开机启动方式

    本文介绍了在Linux系统中配置Tomcat开机自启动的方法,包括创建systemd服务文件、重新加载系统管理器配置、启用服务等步骤,并说明了如何指定JDK和配置日志保留期限
    2026-03-03
  • 配置fail2ban对Apache服务器进行安全防护的方法

    配置fail2ban对Apache服务器进行安全防护的方法

    这篇文章主要介绍了配置fail2ban对Apache服务器进行安全防护的方法,主要是起到过滤IP地址的效果,示例基于Linux系统,需要的朋友可以参考下
    2015-06-06

最新评论