当前位置: 首页 > Linux

Linux用户管理su、whoami、groupadd、groupmod、groupdel命令详解

时间:2023-04-07 01:17:40 Linux

Linuxsu命令用于改变当前用户为其他用户身份。这个命令可以用来切换任何身份,包括从普通用户切换到root用户,从root用户切换到普通用户,普通用户之间切换,除了root需要输入用户密码,什么意思?普通用户之间切换,从普通用户切换到root用户需要输入对方的密码才能实现切换;从root用户切换到其他用户不需要对方密码,直接切换成功即可。1、linux用户切换命令:susu命令格式如下:su[option]username该命令常用选项及其含义如下:-:不仅将当前用户切换到指定用户,还切换工作环境到这个用户的环境(包括PATH变量,MAIL变量等),使用-选项,如果省略用户名,默认切换到root用户。-l:作用与上一个参数类似,即在切换用户身份的同时,完全切换工作环境,但后面必须加上需要切换的账号-p,-m:表示切换指定用户的身份,但不改变当前工作环境-c:只切换用户执行一次命令,执行完自动切换回来ls命令后自动切换到原用户:$su-cls根是什么意思?我目前的登录账号是chuan。执行su-clsroot命令后,我们首先需要输入root用户的密码。回车后,系统会以root用户执行ls命令。执行完成后会自动切换回chuan用户up。3.注意在使用su命令时,有-和没有-是完全不同的-选项的意思是在切换用户身份的同时,连当前使用的环境变量也切换到指定用户。我们知道环境变量是用来定义操作系统环境的,所以如果系统环境不随用户身份切换,很多命令就无法正确执行。4.切换回之前的用户。比如当前登录用户是chuan。执行suroot命令后,如果想切换回chuan用户,执行exit命令即可。2.whoami命令和whoami命令别看这两个命令字母是一样的,唯一不同的是第二个命令多了两个空格,但这两个完全不同,前者是用来打印当前的执行操作的用户名,后者用于打印登录当前Linux系统的用户名。例如,我当前以chuan用户身份登录。分别执行这两个命令看看:然后我用su命令切换到root用户:可以看到,在切换用户之前,whoami和whoami命令的输出都是chuan用户但是,使用之后su命令用于切换用户,whoami命令打印切换后的用户名,whoami命令打印用于登录系统的用户名。3、添加用户组的命令:groupadd添加用户组的命令是groupadd,新工作组的信息会被添加到系统文件中。命令格式如下:groupadd[option]组名该命令常用选项及其含义如下:-g:指定新工作组的id-r:创建系统工作组,组ID为系统工作组小于500用户组相关文件:/etc/group组账号信息。/etc/gshadow安全组帐号信息。例如新建一个组,组名为groupname1,设置加入系统的组ID:groupadd-g344groupname1我们查看用户组文件/etc/group:4.修改用户组信息:groupmod这个命令用于更改组标识码或名称,命令格式如下:groupmod[option]组名该命令常用选项及其含义如下:-gGID:修改组ID-nnew组名:修改组名比如上一步创建的组名groupname1修改为testgroup:$groupmod-ntestgroupgroupname1提示:不要随意修改组名和GID,因为很容易造成管理员逻辑混乱。如果一定要修改用户名或组名,建议先删除旧的,再创建新的。5、删除用户组信息:groupdelgroupdel命令用于删除指定的工作组。如果组中仍然包含一些用户,则必须先删除这些用户,然后才能删除组。命令格式如下:groupdel组名通过前面的学习我们知道,使用groupdel命令删除一个组,其实就是删除/etc/gourp文件和/etc/gshadow文件中目标组的数据信息.比如系统中有一个名为groupname2的组,查看上面两个文件就可以看到这个组的信息。执行删除用户组的命令后,已经找不到上面两个文件的信息了:注意:groupdel不能随意删除组。如果有组还是用户的初始组,则无法删除。如上图,执行命令groupdelchuan删除名为chuan的组,删除失败。Linux用户管理的基本讲解就到这里,下一章开始讲解Linux软件包管理的相关知识。