usermod命令,mkpasswd命令

本文详细介绍Linux系统中usermod命令的使用方法,包括修改用户属性如UID、GID、家目录、登录Shell等,以及如何使用mkpasswd生成复杂密码。同时,讲解了用户密码的管理和锁定解锁操作。

usermod命令,mkpasswd命令

一 usermod命令

修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。 修改已有用户的信息使用usermod命令,其格式如下: usermod 选项 用户名 常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。

-u:自定义uid

#usermod -u 1007 xavilinux

-g: 是新增用户属于已经存在的某个组,后面可以更组id,也可以跟组名,如:grp2

-G:扩展组,user可以有多个扩展组,但-g只能有一个组

[root@xavi-001 ~]# usermod -G user2 xavi
[root@xavi-001 ~]# id xavi
uid=1000(xavi) gid=1000(xavi) 组=1000(xavi),1003(user2)
[root@xavi-001 ~]# usermod -G grp2,user2 xavi
[root@xavi-001 ~]# id xavi
uid=1000(xavi) gid=1000(xavi) 组=1000(xavi),1005(grp2),1003(user2)
#usermod -g 1005 xavilinux

-d:表示自定义用户的家目录,家目录和主目录是一个概念吗?

#usermod -d /home/user1  username

-s:表示自定义shell, 允许:/bin/bash,不允许:/sbin/nologin

#usermod -s /sbin/nologin username 

usermode用法汇总

  • [ ] -c = 修改用户账号的备注信息.
  • [ ] -d = 修改用户登录的目录.
  • [ ] -e = 修改账号的有效期限.
  • [ ] -g = 修改用户所属的群组.
  • [ ] -G = 修改用户所属的附加群组.
  • [ ] -l = 修改用户账号名.
  • [ ] -L = 锁定用户密码使密码无效. Lock
  • [ ] -m = 将现存主目录的内容移动到新的目录中
  • [ ] -p = 修改用户账号密码(不安全).
  • [ ] -s = 指定用户shell.
  • [ ] -u = 修改用户ID.
  • [ ] -U = 解锁. Unlock

二 用户密码管理

  • !!表示密码为空,也就无法登入 mark

  • *号表示密码被锁定,也无法登入

mark

  • passwd -l 用户名,锁定密码,加入了!号

mark

  • passwd -u 用户名,解锁密码,消除了!号

mark

  • 扩展 usermod -L 用户名,表示锁定密码

mark

  • 扩展 usermod -U 用户名,表示解锁密码

mark

  • passwd --stdin, “|” 管道符的用法 mark

  • echo 输出是分行或者是中间空格

[root@xavi-001 ~]# echo -e "123\tsss"
123	sss
[root@xavi-001 ~]# echo -e "123\nsss"
123
sss

mark

三 mkpasswd的用法

按照的Linux系统默认是没有这个命令的,需要按照一个expect软件包

[root@xavi-001 ~]# mkpasswd
sa?8ccVJ7
[root@xavi-001 ~]# mkpasswd -l 12 //制定12位长度
x4abym6PBcn\
[root@xavi-001 ~]# mkpasswd -l 12 -s 3 //3个特殊字符
&Nr.iu55Tpn~
[root@xavi-001 ~]# mkpasswd -l 12 -s 0
at2HMuxhh6qd
用户身份切换

Linux系统中有些事情只有root用户才能做,普通用户是不能做的,这时候就需要临时切换到root用户 mark

转载于:https://my.oschina.net/u/3898702/blog/2095185

### usermod 命令的使用方法 `usermod` 是 Linux 系统中的一个重要工具,用于修改现有用户账户的各种属性。其基本语法如下: ```bash usermod [选项] 登录名 ``` 以下是 `usermod` 的一些常用选项及其功能说明[^1]: - `-c 注释`: 设置用户的注释信息(通常作为描述字段)。 - `-d 新主目录`: 更改用户的家目录路径。如果指定了 `-m` 参数,则会将原有家目录的内容移动到新位置。 - `-e 到期日期`: 设定用户账户的有效期限,格式为 YYYY-MM-DD。超过该日期后,账户将失效。 - `-g 初始组ID 或 名称`: 修改用户的初始登录组。可以指定组 ID 或名称。 - `-G 附加组列表`: 添加用户到额外的附属组中。多个组之间用逗号分隔。 - `-l 新用户名`: 将现有的用户名更改为新的名字。注意此操作不会自动更新文件的所有者信息。 - `-L`: 锁定用户密码,使账户无法正常登录。 - `-U`: 解锁被锁定的用户密码。 - `-s Shell 路径`: 更改用户的默认 shell 程序。 #### 示例代码 以下是一些常见的 `usermod` 使用场景示例。 1. **更改用户的默认 shell**: ```bash sudo usermod -s /bin/zsh username ``` 2. **更改用户的主目录并迁移数据**: ```bash sudo usermod -d /home/newdir -m username ``` 3. **设置用户账户到期时间**: ```bash sudo usermod -e "2024-12-31" username ``` 4. **将用户加入附加组**: ```bash sudo usermod -aG groupname username ``` 这里需要注意的是,当使用 `-G` 参数时,如果不加 `-a`,则会覆盖原有的附加组配置;而加上 `-a` 后可实现追加效果[^2]。 5. **锁定某个用户账号**: ```bash sudo usermod -L username ``` 6. **解锁已锁定的用户账号**: ```bash sudo usermod -U username ``` 上述命令均需管理员权限执行,因此一般需要配合 `sudo` 来完成操作。 --- ### 注意事项 在实际应用过程中,应当谨慎对待涉及敏感信息的操作,比如重命名用户或调整主目录等行为可能会引发潜在的数据丢失风险。此外,在批量处理多条记录前建议先测试单次变更逻辑是否正确无误后再推广至其他对象上实施相同动作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值