天天看点

Linux账户管理 - Linux人事部门的故事

作者:鸠摩智首席音效师

用户管理是 Linux 系统管理员的重要任务之一。在 Linux 操作系统中,本地帐户或用户由 useradd、usermod、userdel、chage 和 passwd 命令管理。

  • useradd - 用于在 Linux 下创建新帐户
  • usermod - 用于修改 Linux 系统中已存在的帐户
  • userdel - 用于删除 Linux 系统的本地帐号
  • passwd - 为本地帐户或用户分配密码的命令
  • chage - 用于查看和修改用户密码过期信息

useradd 命令语法

# useradd <options> <username_or_login>           

命令选项:

Linux账户管理 - Linux人事部门的故事

usermod 命令语法

# usermod <options> <username_or_login>           

命令选项:

Linux账户管理 - Linux人事部门的故事

userdel 命令语法

# userdel <options> <username_or_login>           

命令选项:

Linux账户管理 - Linux人事部门的故事

chage 命令语法

# chage <options> <username_or_login>           

命令选项:

Linux账户管理 - Linux人事部门的故事

passwd 命令语法

# passwd <username_or_login>           

有关 passwd 命令的详细信息请参考:

10 passwd command examples in Linux

(1) 创建本地帐户并指定密码

使用下面的 useradd 和 passwd 命令创建一个用户并为其分配密码

# useradd <username> ; echo -e "<newpassword>\n<newpassword>" | passwd username           

让我们创建一个用户 harry 并分配密码

# useradd harry ; echo -e "Roxicant@123#\nRoxicant@123#" | passwd harry
Changing password for user harry.
New password: Retype new password: 
#           

(2) 使用自定义设置创建用户

假设我们想要创建一个具有以下选项的用户:

UID = 2000

GID = 5000

Comments = ‘Admin Account of SAP’

Home Directory = /opt/sap

Shell = /bin/ksh

Username = john

password = xxxxxx

运行如下命令:

# useradd -u 2000 -g 5000 -c "Admin Account of SAP" -d /opt/sap -s /bin/ksh john
# echo -e "Sapcant@123#\nSapcant@123#" | passwd john
Changing password for user john.
New password: Retype new password: passwd: all authentication tokens\
 updated successfully.
#           

查看 /etc/passwd 文件,验证上述设置

# grep john /etc/passwd
john:x:2000:5000:Admin Account of SAP:/opt/sap:/bin/ksh
#           

(3) 修改已有用户

usermod 命令用于修改 Linux 系统中已存在的本地用户。

假设我们要将现有用户 harry 加入 sap 组,用户主目录由 /home/harry 改为 /opt/sap,登录 shell 由 /bin/bash 改为 /bin/sh

[root@linuxtechi ~]# usermod -G sap -d /opt/sap -s /bin/sh harry
[root@linuxtechi ~]#
[root@linuxtechi ~]# grep harry /etc/passwd
harry:x:1000:1000::/opt/sap:/bin/sh
[root@linuxtechi ~]#           

(4) 创建新用户,首次登录强制修改密码

chage -d 0 username 可以强制用户首次登录时修改密码。

让我们创建一个用户 mark,隶属于 sap 组,用户主目录为 /opt/sap,强制他在第一次登录时更改密码。

# useradd -c "sap user" -G sap -d /opt/data mark
# echo -e "Sapdata@123#\nSapdata@123#" | passwd mark ; chage -d 0 mark
Changing password for user mark.
New password: Retype new password: passwd: all authentication tokens \
updated successfully.
#           

现在以 mark 的身份登录,看看用户是否会得到修改密码的提示。

Linux账户管理 - Linux人事部门的故事

备注: 使用 chage -l username 命令可以查看用户密码过期信息。

(5) 删除用户及其主目录

userdel 命令用于删除 Linux 系统的本地用户。

假设我们要删除用户 linuxtechi 及其主目录,示例如下

# userdel -r linuxtechi
# grep linuxtechi /etc/passwd
#           

我的开源项目

Linux账户管理 - Linux人事部门的故事

酷瓜云课堂 - 开源知识付费解决方案

  • course-tencent-cloud(酷瓜云课堂 - gitee 仓库)
  • course-tencent-cloud(酷瓜云课堂 - github 仓库)

继续阅读