如何同时为用户加执行权、为组去写权?

权限基础概念

  1. 权限类型

    • 读(r):查看文件内容或目录列表
    • 写(w):修改文件或增删目录内容
    • 执行(x):运行程序或进入目录
    • 数字表示r=4, w=2, x=1(如 rwxr-xr-- = 754
  2. 权限对象

    • 用户(Owner):文件创建者
    • 组(Group):共享权限的用户组
    • 其他(Others):系统所有其他用户

查看权限

使用 ls -l 命令查看:

$ ls -l /home/example.txt
-rw-r--r-- 1 user group 1024 Jan 1 10:00 example.txt
  • -rw-r--r--
    • 首位 表示文件(d 为目录)
    • 后续三组:用户(rw-)、组(r–)、其他(r–)

修改权限(chmod命令

方法1:符号模式(直观)


# 目录递归设置:用户读写执行,组读执行,其他无权限
$ chmod -R u=rwx,g=rx,o= private_dir/

方法2:数字模式(高效)

# 设置 example.txt 为 rw-r-----(用户读写,组读,其他无)
$ chmod 640 example.txt
# 目录递归设置 755(用户rwx,组和其他rx)
$ chmod -R 755 public_dir/

修改所有者和组

  1. 更改文件所有者(chown)

    # 将文件所有者改为 newuser
    $ sudo chown newuser example.txt
    # 递归修改目录所有者及组
    $ sudo chown -R newuser:newgroup /data/
  2. 更改文件所属组(chgrp)

    $ sudo chgrp developers project.conf

设置默认权限(umask)

  • umask值 决定新建文件的默认权限(如 umask 022 使文件权限为 644,目录为 755
  • 永久生效:编辑 /etc/profile 或用户 ~/.bashrc

高级权限设置

  1. SUID(Set User ID)

    • 文件运行时以所有者身份执行
      $ chmod u+s /usr/bin/script.sh  # 设置SUID(数字模式4000)
  2. SGID(Set Group ID)

    • 目录中新文件继承父目录组
      $ chmod g+s /shared/  # 设置SGID(数字模式2000)
  3. 粘滞位(Sticky Bit)

    • 仅文件所有者可删除目录内文件(如 /tmp
      $ chmod +t /public_upload/  # 设置粘滞位(数字模式1000)

安全实践建议

  1. 最小权限原则:用户只赋予必要权限(避免 777
  2. 关键目录权限
    • /etc/755(root所有)
    • 用户家目录:700
  3. 定期审计
    # 查找全局可写文件
    $ find / -type f -perm -o+w -exec ls -l {} \;

权威参考来源

  • Linux官方文档:The Linux Documentation Project
  • POSIX标准文件权限规范(IEEE Std 1003.1)
  • Red Hat系统管理指南(Red Hat Enterprise Linux Documentation)
  • Ubuntu社区维基:File Permissions

通过精确控制权限,可有效隔离用户操作空间,降低误操作或恶意行为风险,建议结合业务场景设计权限策略,并定期审查关键文件权限设置。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7198.html

(0)
酷番叔酷番叔
上一篇 2025年7月13日 08:26
下一篇 2025年7月13日 08:43

相关推荐

  • Linux中如何创建孙进程?

    在Linux系统中,进程创建是操作系统管理的核心功能之一,而创建孙进程本质是通过两次fork()系统调用实现的,fork()是Linux中用于创建新进程的系统调用,它会复制当前进程(父进程)的副本,包括代码段、数据段、堆栈等资源,新创建的进程称为子进程,与父进程几乎完全相同,但拥有独立的PID(进程ID)和PP……

    2025年10月7日
    7900
  • Linux中cp命令的使用方法是什么?

    在Linux系统中,cp(copy)命令是最基础且常用的文件操作命令之一,主要用于复制文件或目录,无论是日常运维还是开发工作,掌握cp命令的用法都能提升文件管理的效率,下面从基本语法、常用选项、实际场景及注意事项等方面详细说明其使用方法,基本语法cp命令的基本语法结构为:cp [选项] 源文件 目标文件“源文件……

    2025年10月7日
    11600
  • Ubuntu能否替代Windows系统?

    在Linux服务器上搭建PHP环境是部署动态网站的关键步骤,以下为详细操作指南,遵循最佳实践并兼顾安全性与性能:环境准备系统选择推荐Ubuntu 22.04 LTS或CentOS 7+(需已配置sudo权限用户)更新系统: sudo apt update && sudo apt upgrade……

    2025年6月17日
    13600
  • UUID能确保系统更稳定吗

    在Linux系统中,修改磁盘的标识名称(通常称为文件系统标签或卷标)是常见的操作,与Windows的“盘符”概念不同,Linux通过标签(Label)或UUID来识别存储设备,以下是详细的操作方法:核心概念说明设备名(如 /dev/sda1):由内核自动分配,通常不建议修改(重启后可能变化),文件系统标签(La……

    2025年6月16日
    15300
  • 如何修改linux系统参数

    Linux系统参数可通过编辑配置文件(如/etc/sysctl.

    2025年8月13日
    10800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信