首页 > Linux操作系统 > Linux操作系统 > linux 用户管理
id:0为root,1-499为系统用户,500-60000为普通用户
[@more@]在linux中系统中,它并不认识帐号名称。它认识的是我们的帐号ID,帐号ID保存在/etc/passwd文件中。我们在登录linux主机时,在输入完帐号和密码时,linux会先查找/etc/passwd文件中是否有这个帐号,如果没有则跳出,如果有的话,他会读取该帐号的user ID和group ID同时该帐号的根目录和shell也读了出来。然后在去核对密码表,在/etc/shadow中找出我们刚刚输入的帐号和userID,核对我们输入密码是否正确。一切正确我们可以登录到当前用户shell。
1./etc/passwd
我们首先看第一行root这一行,一共有七项,每一项使用:分开,他们代表的意思如下:
帐号名称:帐号名称由于对应用户ID,这个是系统默认用户root超级管理员,在同一个系统帐号名称是唯一的,长度根据不同的linux系统而定,一般是8位。
密码:由于系统中还有一个/etc/shadow文件用于存放加密后的口令,所以在这里这一项是“x”来表示,如果用户没有设置口令,则该项为空。
用户ID:这个是系统内部用于来识别不同的用户的,不同的用户识别码不同,其中用户ID有以下几种:
0代表系统管理员,如果你想建立一个系统管理员的话,可以建立一个普通帐户,然后将该账户的用户ID改为0即可。
1-500系统预留的ID,500以上是普通用户使用。
组ID:其实这个和用户ID差不多,用来规范群组,他与/etc/group有关。
描述信息:这个字段几乎没有什么作用,只是用来解释这个帐号的意义。
用户根目录:就是用户登录系统的起始目录,用户登录系统后将首先进入该目录。root用户默认的是/root,普通用户的是/home/用户名。
用户登录shell:就是用户登录系统时使用的shell,关于shell我们会在以后专门的研究一下。
2./etc/shadow
在早期的unix操作系统中,用户的帐号信息和口令信息都保存在passwd文件中,尽管系统已经对口令进行了加密,并且以密文的方式保存在passwd 文件中,但是由于passwd文件对于系统中的所有用户是可读的,口令比较容易破解,存在较大的安全隐患。现在使用“shadow”文件保存密文的用户口令,使用passwd文件保存用户帐号其它信息。“shadow”文件只有管理员用户才可以读取其中的内容。由于这个文件可能被破解,所以一定不要将该文件内容泄露给他人,保证系统安全。
同样
帐户名称:和passwd对应,和passwd的意思相同。
密码:这才是真正的密码,并且已经加密过了,只能看到一些特殊符号。需要注意的是这些密码很难破解,但是不等于不能。还有密码栏的第一个字符为“*”表示这个用户不用来登录,如果那个用户不想让他登录了,可以在他前面加个星。
上次改动密码的日期:这段记录了改动密码的最后日期,为什么是13798呢?这是因为linux计算日期的方法是以1970年1月1日作为1,1971年1月1日就是366,依次类推到我修改密码的日期表示为13798了。
密码不可被改动的天数:由于害怕密码被人盗取而危害到整个系统的安全,所以安排了这个字段,你必须在这个时间内重新修改密码,否则这个帐号将暂时失效。上面的99999,表示密码不需要重新输入,最好设定一段时间修改密码。确保系统安全。
密码变更期期限快到前的警告期:当帐号的密码失效期限快到时,系统依据这个字段的设定发出警告,提醒用户“再过n天您的密码将过期,请尽快重新设定密码。默认的是七天。
帐号失效期:如果用户过了警告期没有重新输入密码,使得密码失效,而该用户在这个字段限定的时间内又没有向管理员反映,让帐号重新启用,那么这个帐号将暂时失效。
帐号取消日期:这个日期跟第三个字段一样,都是使用1970年以来的日期设定方法。这个字段表示:这个帐号在此字段规定的日期之后将无法再使用。这个字段通常用于收费服务系统中,可以规定一个日期让该帐号不能再使用。
保留:最后一个字段是保留的,看以后有没有新功能加入。
3. /etc/group
一共有四项,依次为:
群组名称:就是群组的名称了。
群组密码:通常不需设定,因为我们很少使用群组登录。不过这个密码也被记录在/etc/gshadow中了。
群组ID:也就是组ID了。
支持帐号的名称:这个群组的所有帐号。如果你想让用户qiuri也属于root这个群组,就在第一行最后加上“,qiuri”注意添加的时候没有空格。
例子:
useradd sungy 新建一个用户
-u:uid
-g:gid
-c:描述
-d:家目录
-s:语言
groupadd -g 1000 uplooking 创建一个组
useradd -g uplooking shrek 创建一个属于uplooking组的用户
id shrek 查询账户
passwd -x 20 -n 2 -w 3 -i 7 sungy 有效期天数20(x),2天可修改密码(n),密码过期前3天警告(w),密码有效期为7天(i)
useradd -e 20100120 -f 20100125 sungy 密码有效期20100120,账号过期时间20100125
useradd -g 1000 -G 500 haha 附加组为500,即haha用户具备两个组的角色,可在这两个角色中切换,1000为他的主组,500为他的附加组
sg eric 切换到eric组
exit 退出该组
/etc/gshadow 组密码文件
usermod 功能说明:修改用户帐号。
语 法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s ][-u ][用户帐号]
补充说明:usermod可用来修改用户帐号的各项设定。
参 数:
-c<备注> 修改用户帐号的备注文字。
-d登入目录> 修改用户登入时的目录。
-e<有效期限> 修改帐号的有效期限。
-f<缓冲天数> 修改在密码过期后多少天即关闭该帐号。
-g<群组> 修改用户所属的群组。
-G<群组> 修改用户所属的附加群组。
-l<帐号名称> 修改用户帐号名称。
-L 锁定用户密码,使密码无效。
-s 修改用户登入后所使用的shell。
-u 修改用户ID。
-U 解除密码锁定。
例如,修改用户登陆名字从“测试”为“测试账号”
]# usermod -l 测试账号 测试
useradd -L sungy 锁账户
useradd -U sungy 解锁账户
passwd -l sungy 锁密码
passwd -u sungy 解锁密码
groupmod [-g <群组识别码> <-o>][-n <新群组名称>][群组名称]
userdel [-r][用户帐号]
userdel sungy 删用户但不删其家目录
userdel -r sungy 删用户,其家目录一同被删
useradd -D
显示内容在/etc/default/useradd
/etc/login.defs:passwd读取的默认配置文件
手动创建用户步骤:
1./etc/passwd
2./etc/group
3.id 用户名
4./etc/shadow
5.su登录,尝试
6.创建家目录,cp /etc/skel/.bash* /home/sungy/,复制环境变量
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23168012/viewspace-1044592/ ,如需转载,请注明出处,否则将追究法律责任。