天天看点

RHEL7用户及组的管理

用户的分类:

根据帐号的位置:本地帐号、远程(域)帐号。 LDAP,NIS,

根据帐号的功能:超级用户(root)  UID:0

普通用户

系统用户 UID:1-999

本地用户 UID:1000+

组分类:

根据帐号的位置:本地组、远程(域)组。 LDAP,NIS,

根据帐号的功能:超级用户组(root)  UID:0

普通用户组

系统用户组 UID:1-999 

本地用户 组 UID:1000+

***每一个用户都有一个同名的组***

关于系统用户和组的相关配置文件:

帐号信息 密码信息

用户:/etc/passwd /etc/shadow

组: /etc/group /etc/gshadow

/etc/passwd 每个字段的作用:

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

用户名 : 密码占位符 : UID : GID : 用户描述 : 用户主目录(bash中"~"代表哪个) : 登录后使用的shell

passwd中伪用户:

系统中有一类用户称为伪用户(psuedo users),这些用户在/etc/passwd文件中也占有一条记录,但是不能登录,因为它们的登录Shell为空。它们的存在主要是方便系统管理,满足相应的系统进程对文件属主的要求

/etc/shadow: 结构:

root:$6$.BTyNB8Q397zR.KY$412……M8ZHWiidd/:16274: 0 : 99999 : 7 : : :

RHEL7用户及组的管理

了解:

/etc/group配置文件结构:

[root@localhost ~]# grep yy /etc/group

yy:x:1000:yy

组名,密码占位符,GID,组成员(用户名)

添加用户帐号相关命令:

语法:useradd 用户名

常用参数:

-u UID

-d 宿主目录

-g 起始组 #只能有一个

-G 附加组 #可以有多个

-s 登录shell

[root@localhost ~]# useradd yy

[root@localhost ~]# ls /home/

yy

[root@localhost ~]# tail -1 /etc/passwd

yy:x:1000:1000::/home/yy:/bin/bash

指定用户UID

[root@localhost ~]# useradd -u 2017 sunwukong

[root@localhost ~]# id sunwukong

uid=2017(sunwukong) gid=2017(sunwukong) 组=2017(sunwukong)

指定用户的宿主目录

[root@localhost ~]# useradd -d /home/zhubajie zhubajie

zhubajie:x:2018:2018::/home/zhubajie:/bin/bash

指定用户的起始组

[root@localhost ~]# useradd -g 2017 shasheng

[root@localhost ~]# id shasheng

uid=2019(shasheng) gid=2017(sunwukong) 组=2017(sunwukong)

指定用户附加组

[root@localhost ~]# useradd -G 2018 tangsanzang

[root@localhost ~]# id tangsanzang

uid=2020(tangsanzang) gid=2020(tangsanzang) 组=2020(tangsanzang),2018(zhubajie)指定用户的登录shell

[root@localhost ~]# useradd -M -s /sbin/nologin mysql

注:-M再创建用户时不创建用户宿主目录

shasheng sunwukong tangsanzang tangsanzhang yy zhubajie

创建用户的另外的命令

useradd =adduser

关于用户密码的命令:

[root@localhost ~]# passwd #默认修改的是当前登录用户

Changing password for user root.

New password:

BAD PASSWORD: The password is shorter than 8 characters

Retype new password:

passwd: all authentication tokens updated successfully.

[root@localhost ~]# passwd zhubajie

Changing password for user zhubajie #修改指定用户的密码

如果你创建一百个用户,并给一百个用户,输入一个初始密码?怎么办?

[root@localhost ~]# echo 123456 | passwd --stdin zhubajie

Changing password for user zhubajie.

Linux用户密码加密方法:sha512

修改用户信息:

语法:

#usermod 用户名

uid=2020(tangsanzang) gid=2020(tangsanzang) 组=2020(tangsanzang),2018(zhubajie)

[root@localhost ~]# usermod -u 1111 tangsanzang

uid=1111(tangsanzang) gid=2020(tangsanzang) 组=2020(tangsanzang),2018(zhubajie)

[root@localhost ~]# usermod -g 2017 -G 2018 tangsanzang

uid=1111(tangsanzang) gid=2017(sunwukong) 组=2017(sunwukong),2018(zhubajie)

删除用户:

#userdel 用户名 ***-r 宿主目录一起删除***

shasheng sunwukong tangsanzang yy zhubajie

[root@localhost ~]# userdel -r yy

shasheng sunwukong tangsanzang zhubajie

添加组:

[root@localhost ~]# groupadd huaguoshan

[root@localhost ~]# grep huaguoshan /etc/group

huaguoshan:x:2022:

删除组:

[root@localhost ~]# groupdel huaguoshan

[root@localhost ~]#

控制添加用户规则的文件

[root@localhost ~]# vim /etc/default/useradd

HOME=/home #哪个目录作为用户主目录存放目录。如果你不想让用户家目录在/home下,可以修改这个地方。

SHELL=/bin/bash  #默认shell使用哪个

SKEL=/etc/skel   #模板目录

解决模板文件被删之后显示不正常的问题

[root@localhost ~]# useradd u01

[root@localhost ~]# echo 123123 |passwd --stdin u01

更改用户 u01 的密码 。

passwd:所有的身份验证令牌已经成功更新。

[root@localhost ~]# ls -a /home/u01/

. .. .bash_logout .bash_profile .bashrc

[root@localhost ~]# rm -rf !$.bash

rm -rf /home/u01/.bash

. ..

[root@localhost ~]# su - u01

-bash-4.2$

恢复:

-bash-4.2$ cp /etc/skel/.bash /home/u01

-bash-4.2$ chown u01:u01 /home/u01/.bash

切换用户:

加上- ,在切换时会把环境变量一起进行切换

不加,保留原本的环境变量

查看用户信息相关命令:

[root@localhost ~]# id u01

uid=2022(u01) gid=2022(u01) 组=2022(u01)

[root@localhost ~]# w

03:04:54 up 3:10, 3 users, load average: 0.00, 0.01, 0.05

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT

root pts/0 192.168.100.1 00:43 1:46m 0.18s 0.18s -bash

root pts/1 192.168.100.1 02:11 1:50 0.24s 0.00s -bash

root pts/2 192.168.100.1 03:04 6.00s 0.03s 0.02s w

[root@localhost ~]# who

root pts/0 2017-12-08 00:43 (192.168.100.1)

root pts/1 2017-12-08 02:11 (192.168.100.1)

root pts/2 2017-12-08 03:04 (192.168.100.1)

[root@localhost ~]# yum -y install finger

[root@localhost ~]# finger u01 ##列出用户的相关信息

Login: u01 Name: 

Directory: /home/u01 Shell: /bin/bash

Last login 五 12月 8 03:03 (CST) on pts/1

No mail.

No Plan.

本文转自信自己belive51CTO博客,原文链接:http://blog.51cto.com/11638205/2048653 ,如需转载请自行联系原作者