Linux下用户的角色分类
超级用户:拥有对系统的最高管理权限,默认是root用户。
普通用户:只能对自己目录下的文件进行访问和修改,具有登陆系统的权限。
虚拟用户:也叫‘伪’用户,这类用户最大的特点是不能登陆系统,他们的存在主要是为了方便系统管理,满足相应的系统进程对文件属性的要求。例如,系统的默认用户:bin、adm、nobody用户等。一般运行的web服务,默认使用的就是nobody用户,但是nobody用户是不能登陆系统的。
用户和组的关系:
一对一:一个用户可以存在一个组中,也可以是组中的唯一成员。
一对多:一个用户可以存在多个用户组中,此用户具有多个组的共同权限。
多对一:多个用户可以存在一个组中,这些用户具有和组相同的权限。
多对多:多个用户可以存在多个组中。其实就是上面三个对应关系的扩展。
用户配置文件概述
系统用户配置文件,是用户管理中最重要的一个文件。这个文件记录了Linux系统中每个用户的一些基本属性,并且对所有用户可读。/etc/passwd中每一行记录对应一个用户,每个记录又被冒号分割。
下面文件是/etc/passwd文件的部分输出
用户名:密码:用户标识号(UID):组标识号(GID):注释性描述:主目录:默认shell
下面文件是/etc/shadow文件
用户名:加密密码:最后一次访问时间:最小间隔时间:最大间隔时间:警告时间:不活动时间:失效时间:保留字段
下面文件是/etc/group 用户组的所有信息都会放在该文件中
组名(不能重复):密码:组标识(GID):组内用户列表
用户管理工具介绍
groupadd/newgrp/groupdel
groupadd:用来创建新的用户组
newgrp:用来在多个用户之间切换
groupdel:用来删除用户组
useradd/usermod/userdel
useradd建议用户的过程
usradd不加任何参创建用户时,系统首先读取用于添加用户的配置文件/etc/login.defs和 /etc/default/useradd,根据这两个配置文件中定义的规则添加用户。然后向/etc/passwd和/etc/group文件添加用户和用户组记录,同时/etc/passwd和/etc/group对应的加密文件也会自动生成记录。接着系统会自动在/etc/default/useradd文件设定的目录下建议用户主目录。最后复制/etc/skel目录的所有文件到新用户的主目录中,这样一个新的用户就建议了。
usermod 修改用户的账户属性信息
userdel 删除用户,若指定-r参数不但删除用户,还删除用户的主目录及目录下的所有文件
文件与权限的设定
对于文件:r读 w写 x执行
对于目录:r读(看到目录里面有什么)
w建文件、删除、移动
x进入
修改权限的相关命令:
chmod
作用:修改文件权限
u+r user 拥有者
g-w group 组
o=x other 其他人
a+x all 所有人
使用数字表示权限
- rwx r-x r-x user1 user1 FILENAME
类型 拥有者的权限 所属组的权限 其他人的权限 属主 属组 对象
rwx
r-- -w- --x
100 010 001 二进制 进制转换器
4 2 1 十进制
0表示没有任何权限
1表示可执行 等同x
2表示可写 等同w
4表示可读 等同r
rw- 的值是多少? 4+2=6
r-x 4+1=5
rwxr-xr-x 的值是多少? rwx=4+2+1=7 r-x=4+1=5 r-x=4+1=5 rwxr-xr-x=755
利用chown改变主和属组
例子1:修改隐藏文件.bash_logout 所属的用户为oracle,所属的用户组为onstall。
例子2:要修改zhang目录以及目录下所有文件所属的用户为root,所属的用户组为dba组