码迷,mamicode.com
首页 > 系统相关 > 详细

Linux基本用户管理及其分类

时间:2016-08-02 22:24:52      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:useradd   userdel   linux用户   usermod   

用户管理主要是通过修改用户配置文件完成的

使用用户管理控制工具的最终目的也是为了修改用户配置文件

每一位用户的UID值都是唯一的

 

一、用户分类

用户的角色是通过UID来识别的,而不是用户名

Linux系统三大类用户:root用户、系统用户、普通用户

1)root用户

root用户UID为0,权限最高的

2)系统用户

又成虚拟用户、伪用户或假用户,不具有登录Linux系统的能力,但却是系统运行不可缺少的用户

CentOS6:1~499

CentOS7:1~999

3)普通用户

能登录Linux系统,使用的权限有限,由管理创建

CentOS6:500~60000

CentOS7:1000~60000

 

假设用户以zhangsan登录系统时,系统首先会检查/etc/passwd文件,看是否有zhangsan这个账户,然后确定用户zhangsan的UID,通过UID来确认用户的身边,如果存在则读取/etc/shadow文件中所对应的密码。如果密码核实无误则登录系统,读取用户的配置文件。

 

二、用户相关配置文件

1、/etc/passwd文件

Linux系统中所有的用户都会记录在该文件中

任何用户都可以查看,但只有root用户可以修改

[root@localhost home]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

… ...

    各字段的含义:

用户名:密码:UID:GID:用户描述:用户家目录:用户登录shell类型

 

UID最大值可以在/etc/login.defs文件中查看:

[cyh@localhost ~]$ cat /etc/login.defs |grep UID_MAX

UID_MAX                 60000

 

2、/etc/shadow文件

这个文件只有root可以查看和操作

[root@localhost ~]# cat /etc/shadow

root:$6$w/WqR.C7Cduh.vVn$40kMrg9DVS1mrkcYHysMS9x6.RQ3JKLulL4e4VTzKsqpw9Ie8x.O15FGDejIo9SLMSaXfaNqE/vmg9JElQhHl/:17012:0:99999:7:::

bin:*:17012:0:99999:7:::

daemon:*:17012:0:99999:7:::

adm:*:17012:0:99999:7:::

… …

 

各字段的含义:

用户名:加密密码:用户最后一次更改密码的日期:密码允许更换前的天数:密码需要更换的天数:密码更换前警告的天数:账户被取消激活前的天数:用户账户过期日期:保留字段

 

三、管理用户账户

在Linux系统中,可以使用图形的管理工具和字符命令进行管理。

[root@localhost ~]# rpm -ivh/media/Packages/system-config-users-1.3.5-2.el7.noarch.rpm --nodeps

warning:/media/Packages/system-config-users-1.3.5-2.el7.noarch.rpm: Header V3RSA/SHA256 Signature, key ID f4a80eb5: NOKEY

Preparing...                       #################################[100%]

Updating / installing...

  1:system-config-users-1.3.5-2.el7 ################################# [100%]

system-config-users是一块图形下的用户管理工具,可以可视化环境对用户和组进行管理。

1、创建用户账户

当创建一个新账户时,为新账户分配用户UID、组群、主目录和登录Shell等资源。

新创建的用户默认被锁定,无法使用,需使用passwd设置密码后才能使用。

创建新用户就是向/etc/passwd中增加一条用户记录,同时更新/etc/shadow和/etc/grouop文件。

adduser是useradd的软链接文件,两者具有一样的功能,都可以创建新账号。

命令语法:

useradd [选项] [用户名]

-d:指定用户的主目录

-e:设置账户的有效期限

-f:设置在密码过期后多少天即关闭该账户

-c:设置用户账户的描述信息

-g:指定用户的基本组

-G:指定用户的附加组

-m:创建家目录

-M:不建立家目录

-r:指定创建系统用户

-s:用户登录Shell类型

-u:指定用户UID

 

创建zhangsan用户,UID为1010,主目录/testdir/zhangsan,所属组为root,登录Shell为/bin/csh

[root@localhost ~]# useradd -u 1010 -d/testdir/zhangsan -g root -s /bin/csh zhangsan

 

创建完成后,使用getent命令进行查看

[root@localhost ~]# getent passwd zhangsan

zhangsan:x:1010:0::/testdir/zhangsan:/bin/csh

[root@localhost ~]# getent shadow zhangsan

zhangsan:!!:17015:0:99999:7:::

 

zhangsan用户没有创建密码,密码显示”!!”,表示不可登录系统

[root@localhost ~]# echo centos | passwd--stdin zhangsan

Changing password for user zhangsan.

passwd: all authentication tokens updatedsuccessfully.

[root@localhost ~]# getent shadow zhangsan

zhangsan:$6$7WWjhBJh$U49xRBtBL3njImeriHeOp2HaBtyjuviZ.OqimtGHgjjWa0NYQxeG2hFXMxWNbzE6dt1RPsvlqgfMfCk3.D3PM.:17015:0:99999:7:::

 

2、修改用户账户

usermod可以更改用户的Shell类型、所属的组群、密码有限期,还能更改用户的登录名

命令语法:

usermod [选项] [用户名]

-G:修改用户的附加组

-l:修改用户账户的名称

-L:锁定用户密码,使密码失效

-s:修改用户登录Shell

-U:解除密码锁定

-u:修改用户UID

-c:修改用户描述信息

-d:修改用户主目录

-e:修改账户有效期限

-f:修改在密码过期后多少天即关闭账户

-g:修改用户基本组

-o:允许使用重复的UID

-m:移动主目录的内容到新的位置

 

将zhangsan用户的主目录由之前的/home/zhangsan改为/home/wang,并将登录名称改为wang。

[root@localhost ~]# ls /home/

centos cyh  xiaoming  zhangsan

[root@localhost ~]# cat /etc/passwd | grepzhangsan

zhangsan:x:1003:1003::/home/zhangsan:/bin/bash

 

[root@localhost ~]# usermod -d /home/wang-m -l wang zhangsan

[root@localhost ~]# getent passwd wang

wang:x:1003:1003::/home/wang:/bin/bash

[root@localhost ~]# ls /home/

centos cyh  wang  xiaoming

 

修改用户wang账户的过期日期是2017年12月30日,在密码过期后15天就禁用该账户。

[root@localhost ~]# getent shadow wang

wang:!!:17015:0:99999:7:::

[root@localhost ~]# usermod -e 12/30/2017-f 15 wang

[root@localhost ~]# getent shadow wang

wang:!!:17015:0:99999:7:15:17530:

 

3、删除用户账户

删除Linux系统中的用户账户

命令语法

userdel [选项] [用户名]

-r:在删除用户时,把用户的主目录和本地邮件存储的目录或文件一起删除

-f:强制删除用户账户

 

删除wang的用户账户,并保留wang用户主目录及其内容

[root@localhost ~]# userdel wang

[root@localhost ~]# cat /etc/passwd | grep wang  

[root@localhost ~]# ls /home/

centos cyh  wang  xiaoming

在实际工作中,当删除用户时,因为需要很可能要保留某个用户的主目录及其下面重要的数据(当要连同主目录一同删除时,需要对用户目录下的重要内容进行备份,以避免不必要的损失)


本文出自 “Linux路上” 博客,请务必保留此出处http://dreamlinuxc.blog.51cto.com/5733156/1833696

Linux基本用户管理及其分类

标签:useradd   userdel   linux用户   usermod   

原文地址:http://dreamlinuxc.blog.51cto.com/5733156/1833696

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!