zhaoyu@home:~$

linux命令-用户和权限

su相关

  • su 切换到某用户模式,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户。没有时间限制
  • sudo 暂时切换到超级用户模式以执行超级用户权限。有时间限制,Ubuntu默认为一次时长15分钟。一般加命令。
  • sudo -i 为了频繁的执行某些只有超级用户才能执行的权限,没有时间限制。退出执行”exit”。

文件权限

linux系统用户对文件的权限有三种身份 u:拥有者 g:群组 o:其他人 这些身份对于文档常用的有下面权限: r:读权限,用户可以读取文档的内容,如用cat,more查看 w:写权限,用户可以编辑文档 x:该目录具有可以被系统执行的权限

修改权限。 ```shell script chmod u+x test.log # 增加拥有者的执行权限 chmod 721 test.log # (rwx-w—x) chmod 754 test.log # (rwxr-xr–)


## SUID和SGID
su,sudo,passwd等命令文件权限属于root,但是其他用户需要获取执行权限,才能执行这些命令,为了解决这个问题。引入了可执行位setuid(SUID)和
setgid(SGID). 拥有SUID的可执行文件,总是作为它的owner执行。如`/usr/bin/passwd`的owner为root并拥有SUID权限。如果web用户执行passwd,
web将作为root执行该程序。
查看passwd权限:
```shell script
ll /usr/bin/passwd

结果如下,权限中的s为SUID标记:

-rwsr-xr-x. 1 root root 34928 May 11  2019 /usr/bin/passwd 

查询拥有SUID的文件: ```shell script find /usr/bin -perm /u=s -type f -ls

SGID,和SUID类似,查询拥有SGID的文件:
```shell script
find /usr/bin -perm /g=s -type f -ls

结果如下,权限中的s为SGID标记:

805391803     28 -rwxr-sr-x   1  root     tty         26080 Nov  9  2019 /usr/bin/write

删除文件file的SGID和SUID权限: shell script chmod ug-s file