[ad_1]
Linux 管理员通常会收到在 Linux 中创建用户的请求,除非组织使用 LDAP 以及修改或更改现有用户的属性。 作为 Linux 管理员,您应该熟悉 Linux 中的创建用户、删除用户和修改用户。
这篇文章向您解释了如何在 Linux 中使用 usermod 命令修改用户帐户。
先决条件
- 为了能够创建用户帐户,您需要以 root 用户或具有以下权限的用户身份登录 sudo 特权。
- 用户必须已经存在于系统中。
用户模式命令
在 Linux 中,您可以使用 usermod 命令更改现有用户的帐户属性,例如主目录、帐户到期日期、登录 shell 等。
句法:
usermod [options] user_name
更改用户主目录
您将收到此类请求,以更改用于运行应用程序的功能 ID 的用户主目录。
使用 -d 选项来更改现有用户的主目录。
例如,将用户 weadmin 的家目录更改为 /选择/网络管理员, 用:
usermod -d /opt/webadmin webadmin
验证用户的主目录是 /选择/网络管理员 通过检查 /etc/passwd 文件。
grep -i webadmin /etc/passwd
输出:
webadmin:x:1000:1000::/opt/webadmin:/bin/bash
更改用户主目录并移动文件
当只有 -d 被指定为 usermod 命令的一个选项,它只是将现有用户的主目录更改为 /选择/网络管理员,而不是旧主目录中的文件或目录。
如果要移动现有用户的文件,请使用 -d
usermod -d /opt/webadmin -m webadmin
验证文件是否已移动到新的主目录。
ls -al /opt/webadmin
输出:
[[email protected] ~]# ls -al /opt/webadmin total 16 drwx------. 2 webadmin webadmin 83 Apr 22 12:54 . drwxr-xr-x. 3 root root 22 Apr 22 12:54 .. -rw-------. 1 webadmin webadmin 10 Apr 22 12:54 .bash_history -rw-r--r--. 1 webadmin webadmin 18 Apr 10 2018 .bash_logout -rw-r--r--. 1 webadmin webadmin 193 Apr 10 2018 .bash_profile -rw-r--r--. 1 webadmin webadmin 231 Apr 10 2018 .bashrc [[email protected] ~]#
更改用户登录名
如果您创建了名称拼写错误的用户,则此选项很有用。 使用 -l 选项来更改现有用户的登录名。
例如,要将用户 weadmin 的登录名更改为 webmaster,请使用:
usermod -l webmaster webadmin
使用 id 命令验证以查看 webadmin 用户是否仍然存在于您的系统中。
id webadmin
你应该得到 id: webadmin: 没有这样的用户 信息。
检查系统中的网站管理员帐户。
grep -i webmaster /etc/passwd
输出:
webmaster:x:1000:1000::/opt/webadmin:/bin/bash
更改用户的 UID
使用 -u 将用户的 UID 更改为特定 UID 的选项。 修改UID为1999的站长UID,需要使用。
建议在 1000 到 60000 之间选择 UID。
usermod -u 1999 webmaster
使用 id 命令验证用户的 UID 是否为 1999。
id webmaster
输出:
uid=1999(webmaster) gid=1000(webadmin) groups=1000(webadmin)
更改用户的主要组
您可以更改现有的用户主要组 -G 选项。
您可以使用 usermod 命令指定组名或 GID。
usermod -g webusers webmaster
组名或 GID 必须已经存在。
使用 id 命令验证用户的主要组是 web。
id webmaster
输出:
uid=1999(webmaster) gid=1001(webusers) groups=1001(webusers)
将现有用户添加到多个组
如您所知,用户只能属于一个主要组和多个次要组(可选)。 这 -G 选项是将用户添加到其他组。
使用 -G 单独的选项将删除用户所属的所有现有组。 所以,添加 -一种 选项与 -G 添加到多个次要组。
逗号必须分隔组名。
usermod -a -G group_name1,group_name2,group_name3 user_name
使用 id 命令验证用户所属的组。
id user_name
输出:
uid=2000(user_name) gid=2000(user_name) groups=2000(user_name),1002(group_name1),1004(group_name2),1005(group_name3)
更改用户帐户到期日期
当您要启用帐户已过期的用户时,这非常有用。
这 -e 选项允许为用户设置到期日期。 日期必须在 YYYY-MM-DD 格式。
检查用户网站管理员的当前到期日期 改变 命令
chage -l webmaster
输出:
Last password change : Apr 22, 2019
Password expires : never
Password inactive : never
Account expires : Apr 30, 2019
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
站长用户的有效期为2019年4月30日。将站长的有效期改为2019年5月31日,您可以使用。
usermod -e 2019-05-31 webmaster
使用 改变 命令。
chage -l webmaster
输出:
Last password change : Apr 22, 2019
Password expires : never
Password inactive : never
Account expires : May 31, 2019
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
更改用户的登录外壳
有时,由于 useradd 命令的默认行为,您创建的用户可能没有正确的登录 shell 设置。
默认情况下,当发出一个没有任何选项的 useradd 命令时,用户将被创建 /斌/bash (RHEL) 或 /bin/sh (Debian / Ubuntu) 外壳。
这 -s 选项更改现有用户的登录外壳。
将用户网站管理员登录外壳更改为 /斌/bash, 用。
usermod -s /bin/bash webmaster
通过阅读验证用户的登录 shell /etc/passwd 文件。
grep -i webmaster /etc/passwd
输出:
webmaster:x:1999:1001::/opt/webadmin:/bin/bash
锁定用户帐户
要锁定任何用户帐户,您可以使用 -L 选项。 此选项会使用户帐户无法使用,除非您将其解锁。
usermod -L webmaster
使用以下命令检查帐户状态。 您会看到在加密密码前添加了一个感叹号 (!)。
grep -i webmaster /etc/shadow
输出:
webmaster:!$6$kb9ws2Wd$.9Ip0xMGTAeBlZXG7c1Hriaj60VdYkXPQn0o8W2PEkDfjBOEJIT3nm52mBR8B1VTYGXnfyvgt.fxiYy7Q8nOI0:18008:0:99999:7::18047:
解锁用户帐户
这 -U 选项用于解锁锁定的用户。
usermod -U webmaster
验证您解锁用户后的帐户状态。 您不应在加密密码前看到任何感叹号 (!)。
grep -i webmaster /etc/shadow
输出:
webmaster:$6$kb9ws2Wd$.9Ip0xMGTAeBlZXG7c1Hriaj60VdYkXPQn0o8W2PEkDfjBOEJIT3nm52mBR8B1VTYGXnfyvgt.fxiYy7Q8nOI0:18008:0:99999:7::18047:
结论
我希望你已经学会了如何在 Linux 中使用 usermod 命令来修改用户属性。 这些示例显示了一个选项。 但是,您可以组合选项以获得所需的结果。
[ad_2]