系统屋 - 系统光盘下载网站!

当前位置:首页 > 系统教程 > Linux教程 > 详细页面

Linux系统文件权限和访问模式介绍(4)

时间:2023-02-20来源:系统屋作者:zhijie

  SUID和SGID位

  在Linux中,一些程序需要特殊权限才能完成用户指定的操作。

  例如,用户的密码保存在 /etc/shadow 文件中,出于安全考虑,一般用户没有读取和写入的权限。但是当我们使用 passwd 命令来更改密码时,需要对 /etc/shadow 文件有写入权限。这就意味着,passwd 程序必须要给我们一些特殊权限,才可以向 /etc/shadow 文件写入内容。

  Linux 通过给程序设置SUID(Set User ID)和SGID(Set Group ID)位来赋予普通用户特殊权限。当我们运行一个带有SUID位的程序时,就会继承该程序所有者的权限;如果程序不带SUID位,则会根据程序使用者的权限来运行。

  SGID也是一样。一般情况下程序会根据你的组权限来运行,但是给程序设置SGID后,就会根据程序所在组的组权限运行。

  如果程序设置了SUID位,就会在表示文件所有者可执行权限的位置上出现‘s’字母;同样,如果设置了SGID,就会在表示文件群组可执行权限的位置上出现‘s’字母。如下所示:

  $ ls -l /usr/bin/passwd

  -r-sr-xr-x 1 root bin 19031 Feb 7 13:47 /usr/bin/passwd*

  $

  上面第一列第四个字符不是‘x’或‘-’,而是‘s’,说明 /usr/bin/passwd 文件设置了SUID位,这时普通用户会以root用户的权限来执行passwd程序。

  注意:小写字母‘s’说明文件所有者有执行权限(x),大写字母‘S’说明程序所有者没有执行权限(x)。

  如果在表示群组权限的位置上出现SGID位,那么也仅有三类用户可以删除该目录下的文件:目录所有者、文件所有者、超级用户 root。

  为一个目录设置SUID和SGID位可以使用下面的命令:

  $ chmod ug+s dirname

  $ ls -l

  drwsr-sr-x 2 root root 4096 Jun 19 06:45 dirname

  $

  以上就是Linux系统文件权限和访问模式的解析了,只要充分了解了Linux系统文件权限才能了解Linux文件之间的访问模式。

 4/4   首页 上一页 2 3 4
分享到:

相关信息

  • Linux系统如何发送邮件?

    Linux系统的特点就是任何操作都可以用命令来实现,在Linux系统中想要发送邮件也是要用命令来进行的。本文就来介绍一下Linux系统如何发送邮件?...

    2023-02-19

  • Linux系统Java不兼容思源黑体字的解决方法

    Fedora 22系统的默认字体是思源黑体字,应该说这个字体是比较先进,也比较美观的字体。只是Java程序好像不兼容思源黑体字,那么Linux系统Java不兼容思源黑体字的解决方法是什么呢?...

    2023-02-19

评论

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载

公众号