如何在Linux上创建和管理新用户

时间:2020-02-23 14:37:58  来源:igfitidea点击:

作为系统管理员或者常规Linux用户,可能需要您在系统中创建其他用户,以便其他用户可以获得与系统交互的好处。
在本教程中,我们将引导您如何在Linux系统上创建和管理新用户。

创建新用户

有2个命令可用于在系统中创建用户。

  • adduser
  • useradd

让我们详细了解它们中的每一个。

adduser命令

" adduser"命令是用户友好的Perl脚本,可在系统上创建功能齐全的Linux用户。

语法

将新用户添加到Linux系统的语法如下所示

# adduser username

" adduser"命令提供了高级界面并执行以下功能

  • 创建一个名为"用户名"的新用户

  • 使用新用户的用户名创建一个新组

  • 将新用户放置在带有用户名的新创建的组中

  • 创建一个主目录(/home/username),然后将文件从/etc/skel复制到其中。

  • 提示输入有关新用户的其他信息,例如全名,房间号,工作电话和家庭电话

添加新用户

在此示例中,我们将向系统添加用户"企鹅"

# adduser penguin

Linux系统中的用户列表存储在/etc/passwd文件中。
因此,要验证是否已创建用户,请运行

cat /etc/passwd

useradd命令

" useradd"命令是本机二进制命令,被认为是用于将用户添加到系统的低级实用程序。
该命令无法实现" adduser"一次完成的大多数功能,因此需要更多语法选项。

语法

使用useradd命令的语法是

useradd -option username

-m选项

默认情况下,useradd命令不会像adduser命令那样为新用户创建主目录。
这显示在下面的输出中,其中已创建了新用户" james"。

示例输出

要与主目录一起创建用户,请使用-m选项,如图所示。

$useradd -m username

例如,要在用户的主目录旁边创建用户" james",请执行以下命令:

$useradd -m james

现在,您可以通过运行以下命令来验证用户" james"的主目录是否存在:

$ls /home

-u(–uid)选项

-u选项创建具有特定UID(用户ID)的用户。
用户ID是一个正整数,Linux系统自动将其分配给新用户。

例如,要创建UID为1400的用户" james",请执行以下操作:

$useradd -u 1400 james

可以通过以下命令验证

$id james

或者,您可以通过运行来验证UID

id -u james

-g(–gid)选项

-g或者--gid选项通过指定组名或者GID号来创建属于某个组的用户。

例如,要创建属于一个名为"用户"的新组的用户" james",请执行以下命令

$useradd -g users james

要验证这一点,请运行以下命令

$id -gn james

-c(–comment)选项

-c(–comment)选项允许您创建一个带有新用户简要说明的用户。
例如,要创建一个带有字符串" IT部门"的新用户" james",请执行

$useradd -c "IT departmemt" james

注释存储在/etc/passwd文件中。
您可以使用cat命令来显示所显示用户的详细信息

-e(–expiredate)选项

如果要定义新用户帐户的到期日期,请使用-e选项。

例如,要创建一个名为" james"的新用户,并将其到期日设置为" June 10 2019",请执行

$useradd -e 2019-06-10 username

接下来,使用chage命令来验证用户帐户的到期日期:

sudo chage -l username

将用户添加到sudoers组

有时,您可能需要将某些管理权限委派给普通用户,以便他们可以执行某些管理任务。
为此,您需要将它们添加到" sudoers"组中。

将用户添加到sudoers组的一种方法是运行以下命令

$usermod -a -G sudo username

其中"用户名"是您要添加到sudoers组的用户。
例如,要将用户" james"添加到" sudoers"组,请运行以下命令

$usermod -a -G sudo james

要验证用户" james"是否已添加到sudo组中,请运行

groups james

另外,您可以使用visudo命令来编辑sudoers文件,方法是运行

visudo

这将打开文件,如下所示

接下来,添加以下行

username ALL = (ALL)ALL

保存并退出文本编辑器。

现在,您可以切换到普通用户并通过在用户名前面加上sudo来执行管理命令,如下所示。

删除用户

要从Linux系统中完全删除用户,请使用带有-r属性的userdel命令,如下所示

$userdel -r username

要删除用户" james",请运行以下命令。

$userdel -r james