概述:
理解多用户,知道涉及用户信息的都有哪些文件,用户的管理命令,用户权限的下放。
1.什么是用户?
从日常生活中想的话,我们每个人都是当过用户,去银行你有个账户,对于银行你就是个用户,你的信息被银行记录在数据库(可以是任何介质的数据库)中,诸如姓名,身份证号,注册时间,存款信息等等,如果你的存钱或取钱后就对你账户数据库中的信息进行修改。所以用户对银行来说就是一些用来描述用户信息的字符串。在linux系统中也是这样,用户就是系统使用者的身份,在系统中用户存储为若干串字符+若干个系统配置文件,存储这些字符串的文件分别是/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow,还有一些与用户有关系的文件,如/etc/login.defs,/etc/skel。他们的详细用途,我们在下面进行介绍。
2.用户信息涉及到的系统配置文件:
/etc/passwd:这个文件所有的用户都可以读取,其中存放的信息有,用户名字,用户加密后的密码(为了安全,现在已将加密后的密码放在/etc/shadow文件下了,这里默认放x,切记不可乱加字符,可能导致无法登陆),用户ID(uid),用户初始组ID(gid),用户描述信息(可用chfn修改这个信息,可用finger命令查询),用户家目录,用户使用哪种shell(在/etc/shells下是规定可以使用的shell)。
/etc/shadow:这个文件主要存放用户的密码信息,第一个字段是用户名;第二个字段是加密的密码;第三个字段是上一次修改密码的时间(大家可能看不懂这个数字和时间有什么关系,其实这个数字是上次修改距离1970年1月1日的天数,不信?我们来计算一下,现在明白了吧,这就是天数);第四个字段是密码最短修改时间间隔,第五个字段是密码最长修改时间间隔,第六个字段是,密码警告时间(密码距离到达第四个字段多长时间时需要会发出警告);第七个字段是非活跃期(当密码过期后还有多少天可以使用);第八个是密码到期日(过了这个时间用户就无法使用了)。
/etc/group:第一个字段是用户名,第二个字段是加密的组密码,第三个是组ID(gid),最后一个字段用来放这个组的用户(或者说以'mo'为附加组的用户,之后会介绍初始组和附加组的区别)。
/etc/gshadow:第一个字段是用户名,第二个字段是真正的加密密码,图中为!,代表还没有设置,第三个字段也是用来放这个组的用户。
/etc/skel,这个文件是用户的骨架目录,每次新建用户时都会将这个目录下的文件复制到用户家目录下来布置环境。
3.用户的管理命令
1)useradd 参数 用户名字
-u ##指定用户uid
-g ##指定用户初始组的gid,这个组必须已经存在
-G ##指定用户附加组,这个附加组也必须存在
#############这里插入一条关于什么是初始组什么是附加组?
用一个通俗的解释,你刚出生时只属于一个组,就是你的家,而且这个组一般是不会变的,这个家就是你的初始组,生你的时候家必须存在,所以用-g指定的那个组,也就必须存在;随着你的长大,你又加入了很多组,比如小学,初中,高中,大学,等等,但是这些组不会覆盖你的初始组,你还是属于你的家,这就是附加组。
-s ##指定用户登陆时使用的shell
-c ##用户说明信息
-d ##指定用户家目录
2)ueserdel 删除用户
一般会使用-r选项,表示删除用户信息及用户系统配置。
3)组的建立
groupadd