一、修改用户属性

修改用户属性的操作方式和创建用户很相似,使用的基本命令为:


# usermod OPTION USERNAME


该命令需要和选项配合使用,其选项列表如下:

选项名

用法

-u UID

更改用户ID,有效范围0-65535

-g GID

更改用户的组ID,有效范围为已有的GID

-G GID

通常和 -a 一起使用,用来更改/增加用户额外组

-c COMMENT

增加注释信息

-d PATH

通常和-m一起使用,用来更改用户的家目录

-l

用来更改用户的登录名

-s PATH

更改shell语言


下面一一举例介绍以上选项的使用方法。


使用 -u 选项来更改用户的ID,例如我们要将 gentoo用户的ID 改为 3000

# id gentoo

# usermod -u 3000 gentoo

# id gentoo

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户


使用 -g 选项来更改用户的组ID,注意,-g 选项所指定的组有效范围为已有的GID

例如我们要将 gentooID改为2004

# id gentoo

# usermod -g 2004 gentoo

# id gentoo

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_02


使用 -G 选项来修改用户的附加组。需要注意的是,-G选项通常和 -a选项一起使用,因为单独使用 -G 选项会覆盖原有的附加组,而 -a 表示 append-aG 则可以保留原有的附加组。

例如我们想为 moregrp 用户新增一个附加组testgrp,可以使用如下命令:

# id moregrp

# usermod -aG testgrp moregrp

# id moregrp

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_03

使用 -d选项来修改用户的家目录,通常和 -m 一起使用。若单独使用 -d,则只修改家目录。若和 -m 一起使用,会为用户创建一个新目录,并将原有家目录中的文件也移动过去。

例如我们要将用户ubuntu的家目录修改为 /tmp/user/user2, 则可以进行如下操作:

# usermod -md /tmp/user/user2 ubuntu

# ls /tmp/user

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_04


二、修改组的属性

修改组的属性的命令和修改用户属性的方式非常相似,其基本命令为:

# groupmod -g GID GROUP_NAME

此命令用来修改组的ID,如我们要修改组 testgrpID 5000,可以使用:

# groupmod -g 5000 testgrp


# groupmod -n NEW_GROUP_NAME OLD_GROUP_NAME

此命令会为组修改组名,如我们要修改组 testgrp 的组名为 testgrp3,可以使用:

# groupmod -n testgrp3 testgrp


15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_05



三、查看用户信息

查看用户信息的命令主要有两个,分别是 id figure。具体用法如下:

# id USERNAME

例如我们想查看用户suse的属性信息,可以使用:

# id suse

此命令默认显示用户的是用户的UID, GID 和 附加组的GID。而使用选项可以控制我们想要显示的内容。

例如只想显示用户的UID,可以使用 -u选项:

# id -u suse

只想显示用户的GID,可以使用 -g 选项:

# id -g suse

如果想显示用户的用户名,可以使用-un 选项:

# id -un suse

如果想显示组名,可以使用-gn 选项:

# id -gn suse

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_06

使用 finger 命令同样也可以查看用户信息:

# finger USERNAME

需要注意的是 finger 命令在Linux 默认情况下可能没有安装,我们可以使用 yum 命令来安装 finger 工具:

# yum install finger

例如我们要查看suse用户的信息,可以输入:

# finger suse

此命令的作用不仅限于查看用户的基本信息,还能查看用户是有哪个终端登录的:

# finger root

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_07


三、切换用户

切换用户是操作Linux系统经常会遇到的,其基本命令为:su

# su USERNAME

例如我们要由当前用户切换到slackware用户,可以输入:

# su slackware

在实际操作中,我们更多的会使用到以下两个命令来切换用户:

# su - USERNAME

或者是

# su -l USERNAME

其中 - -l 选项的功能是相同的,注意su - 以及用户名之间都有空格。如我们要切换到slackware用户也可以输入:

# su - slackware

或者

# su -l slackware

使用whoami 命令可以查看当前的用户。


命令su 和命令su - 之间的区别在于:使用su 命令切换用户,会直接进入/root目录,而使用su - 命令切换的用户,则会停留在当前目录下。

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_08

需要注意的是,由root 用户切换到普通用户不需要输入密码,而从普通用户切换到root用户,则需要输入密码。如当我们从suse用户切换回root用户时,会提示输入密码:

# su

15_Linux基础知识及命令————修改用户、组的属性和查看用户信息_Linux 修改 查询 用户_09