usermod

usermod 是 Linux 操作系统中一个强大的命令行工具,用于修改用户账户的相关信息。此命令允许管理员更改用户的登录名、主目录、Shell 环境等重要配置项。它在日常维护和管理用户账号时非常有用。

基本语法

usermod [选项] 用户名

重要选项与功能

  1. -l 新用户名
    更改用户的登录名。

    usermod -l newname oldname
    
  2. -m
    移动用户主目录和邮件队列到新用户下,仅当使用 -d 选项更改主目录时生效。如果原用户名和新用户名的主目录相同,则会移动原有的文件。

  3. -d 新主目录
    更改用户的主目录。

    usermod -d /path/to/new/home newuser
    
  4. -e 日期
    设置用户账户过期日期(以YYYY-MM-DD格式表示)。

  5. -f 天数
    设置用户账号在未设置过期日期时的无限制天数。

  6. -s 新shell
    更改用户的登录 Shell。例如,从 bash 改为 sh。

    usermod -s /bin/sh username
    
  7. -L
    锁定用户账户,阻止用户通过密码验证进行登录。

  8. -U
    解锁用户账户,恢复其使用密码进行登录的能力。

实际应用示例

更改用户名

假设需要将用户 oldname 改为 newname

usermod -l newname oldname

移动主目录和邮件队列

将用户 olduser 的主目录更改为 /home/newuser,同时移动邮箱文件:

usermod -d /home/newuser -m olduser

设置账户过期日期

给用户 user123 设定一个在 2024-12-31 过期的账号:

usermod -e 2024-12-31 user123

锁定和解锁账户

锁定用户 lockeduser 的账号,使其无法通过密码登录:

passwd -l lockeduser

解锁该用户以恢复其访问权限:

passwd -u lockeduser

注意事项

通过熟练掌握 usermod 的各种功能和用法,Linux 管理员能够有效地管理用户账户信息,确保系统的安全性和稳定性。