usermod命令:修改用户信息

一、命令简介

usermod​ 命令用于修改用户账号的属性,例如更改用户的家目录、登录 shell、用户 ID(UID)、所属组等。

二、命令参数

基本用法

usermod [选项] 用户名

常用选项

  • -c, --comment COMMENT​:修改用户账户的注释信息(通常称为 GECOS 字段)。
  • -d, --home HOME_DIR​:修改用户的家目录。
  • -e, --expiredate EXPIRE_DATE​:设置账户的过期日期,格式为 YYYY-MM-DD。
  • -f, --inactive INACTIVE​:设置账户密码过期后到账户被禁用前的天数。
  • -g, --gid GROUP​:修改用户的基本组(主组)。
  • -G, --groups GROUP1[,GROUP2,...[,GROUPN]]​:修改用户附加组,原来的附加组会被覆盖。
  • -l, --login NEW_LOGIN​:修改用户账户的登录名。
  • -L, --lock​:锁定用户账户,使其无法登录。
  • -m, --move-home​:与 -d​ 选项一起使用,将用户家目录的内容移动到新的位置。
  • -p, --password PASSWORD​:设置用户账户的加密密码。
  • -s, --shell SHELL​:修改用户的登录 shell。
  • -u, --uid UID​:修改用户的用户 ID。
  • -U, --unlock​:解锁用户账户。

三、命令示例

tips:usermod ​命令需 sudo ​权限运行

  • 修改用户 john​ 的家目录到 /home/newjohn​:

    usermod -d /home/newjohn john
    
  • 将用户 john​ 添加到组 docker​:

    usermod -aG docker john
    

    注意:使用 -aG​ 而不是 -G​ 可以保留用户原来的附加组。

  • 将用户 john ​从组 docker ​中删除

    使用命令完成

    gpasswd -d john docker
    

    或者编辑 /etc/group 文件,找到 docker 组所在的行(如下),删除 ,john

    docker:x:999:soulio,john
    
  • 修改用户 john​ 的用户 ID 为 2000:

    usermod -u 2000 john
    
  • 锁定用户 john​ 的账户:

    锁定用户:禁止用户通过密码登录。

    usermod -L john
    
  • 解锁用户 john​ 的账户:

    usermod -U john
    
  • 修改用户 john​ 的默认 shell 为 zsh​:

    usermod -s /bin/zsh john
    

在使用 usermod​ 命令修改用户账户时,需要注意以下几点:

  • 修改用户 ID(UID)或组 ID(GID)时,需要确保新的 ID 没有被其他账户使用。
  • 修改家目录时,如果需要将现有数据移动到新位置,应使用 -m​ 选项。
  • 设置或更改密码时,应使用加密后的密码字符串,可以通过 openssl​ 命令或 passwd​ 命令的 --stdin​ 选项生成。
  • 在企业或生产环境中修改用户账户之前,建议先备份相关配置和数据。

四、更多

  • 锁定用户

usermod -L john​ 命令的作用是锁定用户 john​ 的账户,使其无法通过密码登录系统。具体来说,这个命令会在 /etc/shadow​ 文件中,用户 john​ 的密码字段前加上一个 !​ 或 *​ 符号,这会阻止系统的密码验证机制接受任何密码。
以下是该命令执行后 /etc/shadow​ 文件中用户 john​ 条目的示例变化:

# Before locking
john:
      
      
       
        
         
         
           6 
          
         
        
          6 
         
       
      
      6rounds=45678
       
        
         
          
          
            a 
           
          
            s 
           
          
            d 
           
          
            a 
           
          
            s 
           
          
            d 
           
          
            a 
           
          
            s 
           
          
            d 
           
          
            . 
           
          
            . 
           
          
            . 
           
          
         
           asdasdasd... 
          
         
       asdasdasd...asdasdasdasd:18000:0:99999:7:::
# After locking
john:! 
         
          
           
           
             6 
            
           
          
            6 
           
          
        6rounds=45678 
          
           
            
            
              a 
             
            
              s 
             
            
              d 
             
            
              a 
             
            
              s 
             
            
              d 
             
            
              a 
             
            
              s 
             
            
              d 
             
            
              . 
             
            
              . 
             
            
              . 
             
            
           
             asdasdasd... 
            
           
         asdasdasd...asdasdasdasd:18000:0:99999:7:::

锁定账户不会删除该账户或更改其任何其他属性,它只是防止用户通过密码登录。即使账户被锁定,以下情况仍然可能:

  • 如果系统允许,用户可能仍然可以通过 SSH 密钥认证等方式登录。
  • 系统管理员可以通过 usermod -U john​ 命令来解锁账户。
  • 账户的文件和目录仍然保持原有的权限和所有权。
    请注意,使用 usermod -L​ 命令需要管理员权限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值