[ftt@localhost 文档]$ whoami //whoami 表明就shell而言你的身份
fttsu username //可以切换到另一个用户,su(switch user)
成为root用户
su root
su
su -l root
su -l //成为另一个用户,并使用其环境变量
如果su不起作用,可改用sudo su
su 等效于su root,名义上成为root用户,也拥有root的权限,但仅限于此。在后台,非root用户环境变量仍在其作用。
su - //不仅可以成为root用户,还会使用该用户的环境变量
[ftt@localhost 文档]$ cat /etc/group //显示计算机中各个用户组的信息
只有用户组的成员才能更改这个组的权限
[ftt@localhost 文档]$ chgrp adm script.sh //如果ftt是adm用户组的成员,该指令使得adm其他成员可以使用script.sh脚本
chgrp -R family */* //递归修改目录所属的用户组
只有拥有root权限的用户才能修改文件的拥有者
[root@localhost 文档]# cat /etc/passwd //可以查看用户的数字ID
ftt:x:1000:1000:FTT:/home/ftt:/bin/bash //第一个数字是用户的数字ID,第二个数字是与用户关联的用户组的数字ID
chown -R与chgrp -R功能类似
chown owner:group 文件或目录 //同时修改文件和目录的拥有者和用户组
如果名称中有冒号,只需在:号前加上“\'
chown owner\:group
Linux中三组用户可以使用文件或目录,实际拥有者(文件用户)(u)/用户组/(g)系统中的其他人(o)
权限
文件属性 | 缩写 | 针对文件的含义 | 针对目录的含义 |
可读取 | r | 可查看 | 可使用ls命令列出内容 |
可写入 | w | 可编辑 | 可删除/重命名或添加文件 |
可执行 | x | 可作为程序运行 | 可以有权读取文件和子目录或运行文件 |
suid | s | 任何用户都可使用拥有者的权限执行文件 | 不适用 |
sgid | s | 任何用户都可使用用户组的权限执行文件 | 目录中新建的所有文件都属于拥有目录的用户组 |
suid或sgid,但不执行 | S | 任何用户都可使用拥有者的权限(如果设置suig)或用户组的权限(如果设置sgid)执行文件,但文件不可执行 | 不适用 |
sticky bit | t | 不适用Linux | 除非用户是文件或所包含目录的拥有者,否则不能删除或重命名文件 |
sticky bit,但不可执行 | T | 不适用于Linux | 用户仅可以删除或重命名自己的文家,但无权读取文件和子目录 |
root用户一直能够对任何文件或目录进行任意操作
chmod [ugo][+-=][rwx] //-代表删除权限,=代表只拥有上述权限
dchmod go+w test3 //用户组和其他拥有修改权限
chmod a=rw test3.txt //所有用户拥有读写权限
使用数字权限修改文件和目录的权限
chmod [0-7][0-7][0-7]
拥有者 | 用户组 | 其他所有用户组 | |
权限 | r;w;x | r;w;x | r;w;x |
数字表示 | 4;2;1 | 4;2;1 | 4;2;1 |
数字 | ls -l 表示法 |
0 | --- |
1 | ---x |
2 | -w- |
3 | -wx |
4 | r-- |
5 | r-x |
6 | rw- |
chmod命令 | ls -l表示法 | 含义 |
chmod 400 | -r-------- | 拥有者能够读取,其他任何人不能进行任何操作 |
chmod 644 | -rw-r--r-- | 所有人都能够读取,但只有拥有者才能编辑 |
chmod 660 | -rw-rw---- | 拥有者和用户组能够读写,其他人不能进行任何操作 |
chmod 664 | -rw-rw-r-- | 所有人都能读取,但只有拥有者和用户组能够编辑 |
chmod 700 | -rwx------ | 拥有者能够读取/写入/和执行,其他用户不能执行任何操作 |
chmod 744 | -rwxr--r-- | 所有人能读取,但只有拥有者才能编辑和执行 |
chmod 755 | -rwxr-xr-x | 所有人能读取和执行,但只有拥有者才能编辑 |
chmod 777 | -rwxrwxrwx | 所有人能够读取/编辑/执行(一般不使用该种方式) |
chmod 644 test3
使用cd命令时,需要拥有‘x’(执行)权限
//递归地修改权限
chmod -R
//设置和清除suid
chmod u[+-]s
chmod 4[0-7][0-7][0-7]
//设置和清除sgid
chmod g[+-]s
chmod 2[0-7][0-7][0-7]
//设置和清除sticky bit
chmod [+-]t
chmod 1[0-7][0-7][0-7]