Linux 修改使用者帐号设定 – usermod


在 Linux 用 useradd 或 adduser 建立了使用者帐号后, 如要修改帐号的设定, 例如修改使用者的 Home 目录, login shell, 过期期限等, 可以用 usermod 指令完成。usermod 的用法跟 useradd 或 adduser 差不多, 分别只是 usermod 是修改现有使帐号。

usermod 的语法:

usermod [-cdegGlsuLU] username

以下是 usermod 指令的一些常见用法:

变更使用者的家目录路径, 将帐号 opencli 的家目录改为 /home/new_dir:

# usermod -d /home/new_dir opencli

搬移使用者家目录资料到新路径:

上面用 -d 参数变更使用者的家目录, 但不会移动使用者的档案, 另外加上 -m 参数会将使用者原家目录的档案移动到新路径:

# usermod -d /home/new_dir -m opencli

设定帐号过期期限:

# usermod -e 2019-03-10 opencli

设定帐号主要群组:

# usermod -g group opencli

加入帐号到群组:

# usermod -a -G group opencli

注: 当使用 “-G” 参数时, usermod 会将帐号从原来加入了的群组退出, 所以在 “-G” 参数前加入 “-a” 参数, 会保留原来的群组设定。

变更使用者帐号名称:

# usermod -l new-login old-login

锁定帐号:

# usermod -L username

解锁帐号:

# usermod -U username

变更帐号的 Shell, 以下会设定帐号的 Shell 为 /usr/sbin/nologin:

# usermod -s /usr/sbin/nologin username

变成帐号的 UID:

# usermod -u 888 opencli

Leave a Reply