Linux操作系统中关于用户管理的操作

时间:2024-04-18 21:06:46

创建新用户

useradd 【选项】 用户名

在/etc/passwd中以追加的方式在passwd的最后一行添加用户信息。

可以使用命令tail  -n 1/etc/passwd查看文件的最后一行内容。

ls /home/首先/home/这是普通用户的家目录,

在/home/下会有一个跟用户名同名的家目录,也就是跟用户名同名的宿主目录。

如上图所示,在/etc/shadow的文件中也会出现user A的密码信息。并且出现两个感叹号,表示用户当前没有设置密码信息。

如上图所示,在/etc/shadow目录中有一个跟用户同名的文件,

就是这个用户在该机器上的本地邮箱地址,这个文件保存用户的邮件,

useradd命令的常用选项:

-u 用户ID,

当默认不指定用户ID时,就会默认从上一个用户的ID,往下排。

如上图所示,当我们通过命令useradd -u 2000 userC  来指定用户的ID时,在/etc/passwd文件中,用户的ID就会被指定为2000

(指定新建用户ID的目的,就是为了好记。)

系统用户的ID是1-999

1000+的ID是给普通用户留的。
管理员的ID是0

-s shell 用来指定用户的shell 

一般配合-M选项来使用,

-M的意思是不创建用户的家目录。

创建系统用户

如上图所示,使用命令useradd -s /sbin/nologin -M mysql

在不指定用户ID的前提下,去创建一个系统用户,使用grep “mysql” 在文件/etc/passwd中可以找到这个系统用户的信息。

由于创建的是系统用户,所以在/home/中并不会真正创建mysql的家目录,但是在/etc/passwd中仍然会显示mysql系统用户的相关信息。

使用命令useradd -u 90 -s /sbin/nologin -M openstack

这时新建系统用户是openstack,并且指定该用户的ID是90,给该系统配备的shell程序是/sbin/nologin,表示该新建系统用户不能正常登录系统。

-g指定用户的基本组,创建新用户时,跟用户同名的组默认就是用户的基本组。

在Linux操作系统中创建新用户时,默认会创建跟新建用户同名的组,这个跟新建用户同名的组,默认是新建用户的基本组。

可以使用-g选项来指定新建用户的基本组,

如上图所示,给hadoop用户指定基本组为hdfs组

首先要创建hdfs组,即使用命令groupadd hdfs

来创建hdfs组

当我们查看Linux操作系统中一个用户的uid gid 附加组   时可以使用命令id 用户名 

-G可以用来指定用户的附加组

对于一个用户来说,基本组只能有一个但是附加组可以有多个。

-G 附加组,附加组, 多个附加组(可以用逗号隔开。)

www用户创建3个附加组,

用命令groupadd 组名

useradd -G 组名 用户名

可以使用命令id 用户名

来查看新建用户的uid gid 附加组

切换用户

如上图所示,当root管理员用户切换到其他普通用户登录系统时,直接使用命令su - 用户名

即可实现切换用户登录Linux操作系统的需求。

当想要从普通用户退出到root管理员用户时,直接就可以使用命令exit退出,此时就相当于退出普通用户,返回上一个root管理员用户。

为什么当使用su 命令切换用户时,那个-  必须加上?

如上图所示,当使用su命令去切换用户时,不加-

就会导致虽然用户能够切换过去,但是用户的操作环境切换不过来,这时系统会提示权限拒绝。

如上图所示,这时用户的当前目录是/root/

当使用命令su www时虽然登录系统的用户切换到www

但是此时系统所处的当前目录还是/root/

想要以普通用户的身份去查看管理员用户的家目录信息,当然是没有权限的,系统会提示权限禁止。

如上图所示,当使用su - www去切换用户时,这时系统的当前目录是/home/www

使用ls 命令就不会再次受到限制了。

设置用户密码

passwd [选项] [用户名]

当我们直接敲passwd + 回车时,修改的是当前用户的密码。

设置指定用户的密码,可执行的命令格式是 passwd + 用户名

如上图所示,只有root用户可以指定用户名,也就是说只有root用户可以修改指定用户的登陆密码,

其他用户只能修改当前用户的密码,而不能指定用户名。‘

如上图所示,普通用户只能修改当前用户的密码,并且在修改当前密码的过程中,还必须输入自己的旧密码。

passwd命令的选项

-l 的作用是锁定用户密码。

如上图所示,在使用root管理员身份去指定用户名的前提下,去锁定普通用户www的密码,当普通用户www的密码被锁定之后,就意味着www用户不能直接登录系统。

解锁用户密码成功,

使用命令passwd -u +用户名,来解锁用户密码

-e 强制用户密码过期

即需要用户修改自己的用户密码,此时还需输入用户的旧密码,

查看用户的ID信息

用户名是www,用户的uid是2003

用户的gid是2007(基本组)

用户的附加组是groups中的组

当使用id命令查看用户信息时,敲错用户名的情况下,会提示没有这个用户。