usermod
是Linux系统中用于修改已存在用户账号属性的命令。这个命令允许管理员或具有足够权限的用户更改其他用户的各项设置,包括但不限于:
- -c, --comment COMMENT:为用户账户添加注释信息。
- -d, --home HOME_DIR:改变用户的主目录到指定路径。
- -e, --expiredate EXPIRE_DATE:设置用户账户的有效期。
- -g, --gid GROUP:将用户的主组更改为指定的组名或GID。
- -G, --groups GROUPS:添加(或删除)用户到附加组列表,多个组之间用逗号分隔。
- -l, --login NEW_LOGIN:更改用户的登录名称。
- -L, --lock:锁定用户账户,禁止其登录。
- -s, --shell SHELL:更改用户的默认shell。
- -u, --uid UID:更改用户的用户ID(UID)。
例如:
# 将用户test的主目录更改为/home/new_home
usermod -d /home/new_home test
# 更改用户test的注释信息
usermod -c "Test User Account" test
# 修改用户test的主组为newgroup
usermod -g newgroup test
# 添加用户test到附加组developers和admins
usermod -aG developers,admins test
# 改变用户名由oldname变为newname
usermod -l newname oldname
# 修改用户的UID为700
usermod -u 700 test
# 锁定用户账户,禁止其登录
usermod -L test
请注意,在执行某些更改时(如更改用户名、主目录或UID),需要确保用户没有正在运行的进程,并且在更改后可能需要手动调整与原用户相关的文件所有权或其他系统配置。同时,对于涉及NIS(网络信息服务)的环境,相应的改动应同步到NIS服务器上。