首页 > 系统相关 >Linux的4755属性

Linux的4755属性

时间:2024-09-27 20:02:22浏览次数:1  
标签:文件 SUID 4755 chmod 设置 Linux SGID 权限 属性

一、特殊权限位

Linux 文件权限中的第一个数字(在本例中为 4)表示 **特殊权限位**。它控制文件类型的特殊行为,例如:

* **4**:**setuid (SUID)** 位。当文件由非 root 用户执行时,它允许该用户暂时获得该文件的属主权限。这通常用于允许非特权用户执行需要 root 权限的任务。
* **2**:**setgid (SGID)** 位。当文件由非组成员执行时,它允许该用户暂时获得该文件的组权限。这通常用于允许非组成员访问组专有资源。
* **1**:**sticky bit** 位。它防止其他用户删除或重命名不属于他们的文件,即使他们具有写权限。这通常用于公共目录,以防止用户意外删除或覆盖彼此的文件。

在 4755 属性中,**4** 表示 **SUID** 位已设置。这意味着当非 root 用户执行该文件时,他们将暂时获得该文件的属主权限。

**示例:**

假设一个文件具有 4755 属性,并且该文件由名为 `user1` 的非 root 用户执行。当 `user1` 执行该文件时,他们将暂时获得该文件的属主权限,即使该文件属于另一个用户(例如 `root`)。这允许 `user1` 执行通常需要 root 权限的任务。

**注意:**

* SUID 和 SGID 位是强大的权限,应谨慎使用。
* 只有 root 用户才能设置或清除 SUID 和 SGID 位。

二、设置SGID

要使用 `chmod` 命令设置 SGID 位,请使用以下语法:

```
chmod g+s filename
```

其中:

* `g+s`:设置 SGID 位的标志
* `filename`:要设置 SGID 位的文件名

**示例:**

要设置文件 `myfile` 的 SGID 位,可以使用以下命令:

```
chmod g+s myfile
```

设置 SGID 位后,当文件由非组成员执行时,该用户将暂时获得该文件的组权限。

**注意:**

* 只有 root 用户才能设置 SGID 位。
* SGID 位通常用于允许非组成员访问组专有资源。例如,它可以用于允许非组成员写入组共享的日志文件。

**其他方法:**

除了使用 `chmod` 命令外,还可以使用以下方法设置 SGID 位:

* **使用八进制模式位:**SGID 位的八进制模式位为 2。要设置 SGID 位,可以使用以下命令:

```
chmod 2755 filename
```

* **使用符号模式位:**SGID 位的符号模式位为 `g+s`。要设置 SGID 位,可以使用以下命令:

```
chmod +g filename
```

无论使用哪种方法,设置 SGID 位后,当文件由非组成员执行时,该用户将暂时获得该文件的组权限。

三、设置SUID

**Linux 文件权限的 4755 属性**

在 Linux 系统中,文件和目录的权限使用八进制数字表示,称为 **模式位**。4755 属性表示以下权限:

**位值 | 权限 | 用户 | 组 | 其他**
------- | ------- | ------- | ------- | -------
4 | 读 (r) | 主人 | 主人 | 主人
7 | 读、写、执行 (rwx) | 主人 | 主人 | 主人
5 | 读、执行 (rx) | 组 | 组 | 组
5 | 读、执行 (rx) | 其他 | 其他 | 其他

**解释:**

* **4**:主人的读权限(r)
* **7**:主人的读(r)、写(w)、执行(x)权限
* **5**:组的读(r)、执行(x)权限
* **5**:其他人的读(r)、执行(x)权限

**示例:**

假设一个文件具有 4755 属性,则:

* 文件的所有者可以读、写和执行该文件。
* 同一组中的其他用户可以读和执行该文件。
* 系统中的其他用户可以读和执行该文件。

**注意:**

* 4755 属性通常用于可执行文件,例如脚本或二进制文件。
* 文件的权限可以通过 `chmod` 命令修改。例如,要将文件的权限更改为 4755,可以使用以下命令:

```
chmod 4755 filename
```

四、同时设置

要同时设置 SUID 和 SGID 位,可以使用以下语法:

```
chmod g+s,u+s filename
```

其中:

* `g+s,u+s`:设置 SUID 和 SGID 位的标志
* `filename`:要设置 SUID 和 SGID 位的文件名

**示例:**

要同时设置文件 `myfile` 的 SUID 和 SGID 位,可以使用以下命令:

```
chmod g+s,u+s myfile
```

设置 SUID 和 SGID 位后,当文件由非组成员或非属主执行时,该用户将暂时获得该文件的组或属主权限。

**注意:**

* 只有 root 用户才能同时设置 SUID 和 SGID 位。
* SUID 和 SGID 位是强大的权限,应谨慎使用。

**其他方法:**

除了使用 `chmod` 命令外,还可以使用以下方法同时设置 SUID 和 SGID 位:

* **使用八进制模式位:**SUID 和 SGID 位的八进制模式位分别为 4 和 2。要同时设置 SUID 和 SGID 位,可以使用以下命令:

```
chmod 6755 filename
```

* **使用符号模式位:**SUID 和 SGID 位的符号模式位分别为 `u+s` 和 `g+s`。要同时设置 SUID 和 SGID 位,可以使用以下命令:

```
chmod +u+g filename
```

无论使用哪种方法,同时设置 SUID 和 SGID 位后,当文件由非组成员或非属主执行时,该用户将暂时获得该文件的组或属主权限。

五、Linux打包时候如何设置应用中各个目录的权限

一般的安装时候是使用root权限的

主程序start带起client1目录下client1和client2下的client2

需要设置

chmod 775 client1

chmod 775 client2

对于chrome-sandbox(Electron)程序,需要以root权限执行

sudo chmod 4755 chrome-sandbox<实际可替换为路径>

 

标签:文件,SUID,4755,chmod,设置,Linux,SGID,权限,属性
From: https://www.cnblogs.com/xietianjiao/p/18436451

相关文章

  • Linux权限
    一、用户权限1、解释器/bin/sh默认/bin/bash默认/sbin/nologin虚拟用户/dashubuntu2、用户配置用户信息配置文件/etc/passwd一行内容tjer:x:1000:1000:tjer:/home/tjer:/bin/bash(用户名密码uidgid注释解释器)密码文件地址/etc/shadow组信息地址/etc......
  • Linux 防火墙与安全管理工具详解
    Linux防火墙与安全管理工具详解1.Iptables概述Iptables是Linux系统中用于控制网络流量的工具,通过定义规则来过滤、转发和修改数据包。其规则可以细致地管理进入和离开系统的数据流。1.1三表五链1.1.1三表Iptables中主要有三种表,每种表用于不同的操作:filter表......
  • Linux服务器磁盘空间占用情况分析与清理指南
    为确保重大节日期间,团队负责的测试环境服务器磁盘不会占用过高,导致频繁报警。我们要求在重大节假日前对服务器磁盘占用情况进行检查。如果发现占用过高,则需人为介入,进行相应清理。一、检查要求查看各分区占用情况,如果达到以下任一条件,则需要人为介入判断或处理:(1)磁盘使用......
  • 一个9年archlinux重度使用者自述
    系统没有高低贵贱,主要还是使用的人,哪个跟你更契合。对我而言,archlinux就是最契合的那个。本文主要是对archlinux使用做一个粗浅的介绍,如果能勾起你一丝兴趣,那就更好了。第一部分:初识ArchLinux从Ubuntu和Fedora到Arch的转变大学期间了解到有linux这么一类系统,看起来很酷,那命......
  • 新手答疑 | 零基础该怎么学习嵌入式?嵌入式Linux学习路线是什么?嵌入式开发板推荐?
    很多初学者想要涉足嵌入式Linux开发领域,但往往在刚入门阶段,会因为初次接触到大量复杂的概念术语和深奥的技术文档感到压力重重,面对这些内容不知从何下手,感到十分迷茫,网上的内容也纷繁复杂,没有清晰的学习线路,看完后甚至更蒙圈。实际上,嵌入式Linux开发并没有想象中的那样高不可攀,关键......
  • 国产linux系统(银河麒麟,统信uos)使用 PageOffice 国产版在线打开 word文件并提取数据区
    PageOffice国产版:支持信创系统,支持银河麒麟V10和统信UOS,支持X86(intel、兆芯、海光等)、ARM(飞腾、鲲鹏、麒麟等)、龙芯(LoogArch)芯片架构。查看本示例演示效果本示例关键代码的编写位置Vue+Springboot注意本文中展示的代码均为关键代码,复制粘贴到您的项目中,按照实际的情况,例如......
  • Linux学习完真的能找到工作吗?
    Linux作为一种开源的操作系统,在企业和机构中得到了广泛的应用,因此需要大量的Linux专业人才。而Linux知识体系比较广泛,想要从事相关工作需要具备专业的技能,因此为了满足用人标准,不少小伙伴会选择参加培训,那么Linux培训完能找到工作吗?以下是具体内容介绍。Linux培训完能找到......
  • Linux云计算和云计算运维有何不同?
    Linux云计算和云计算运维对于很多人来讲并不陌生,而且它们都涉及到云计算技术,那么二者之间有何区别?主要区别在于职责、技能要求、工作领域和发展趋势,接下来通过这篇文章来看看吧。职责与技能要求:Linux云计算的工作内容主要包括公司运维团队和运维系统的建设,制定并不断......
  • Linux常用命令(持续更新)
    一、常用命令1、查看当前系统多少位getconfLONG_BITarchzy@ubuntu:~$archx86_64zy@ubuntu:~$getconfLONG_BIT642、显示当前的终端号以及登录的用户有哪些tty显示当前终端[zy@ubuntu~]$tty/dev/pts/0#tty终端#pts伪终端,也称虚拟终端who显示所有用户的......
  • Centos Linux跟踪路由每一跳的方法
    方法一:使用traceroute命令(检测一次)[root@sre01~]#traceroutewww.baidu.comtraceroutetowww.baidu.com(39.156.66.14),30hopsmax,60bytepackets1gateway(192.168.236.2)24.103ms23.554ms23.238ms2192.168.31.1(192.168.31.1)30.348ms29.803ms......