将用户登录名匹配相应的UID值,它包含了一些用户信息:
以冒号为分隔符划为7列,分别是:
- 登录用户名
- 用户密码(都用x表示,用户密码一般保存在/etc/shadow文件中)
- 用户账户UID值
- 用户账户组ID值(简称GID)
- 用户账户的文本描述信息
- 用户HOME目录的路径位置
- 用户默认的shell
我们可以直接修改此文件,用于添加、删除、修改账户,但极不推荐,这样极其危险,如果出现损坏,会导致用户无法登录。
2.useradd添加账户
常用使用方法:
- useradd username -m -s /bin/bash -d /home/username -g groupname
参数说明:
- -s 指定用户默认的shell,通常会发现一些应用的账户其默认shell设置为/sbin/nologin,其含义是此账户不能进行登录使用,也就是这个用户无法使用bash或其他shell来登陆系统。
- -d 设置用户主目录
- -g 用户组,默认值是GID=100的公共组
- -m 创建用户目录,会在/home下创建一个用户目录
3.usermod修改账户
- usermod参数众多,非常强大,下面给出一些最常用的实例:
- usermod -g group user1 #将user1添加到组group中
- usermod -l user2 user1 #修改user1的用户名为user2
- usermod -L user1 #锁定账号
- usermod -U user1 #解除锁定
- usermod -s /sbin/nologin user1 #设置账户不能进行登录使用
- usermod -s /bin/bash user1 #账户恢复登录使用
值得注意的是usermod -p用来修改密码,千万谨慎,使用usermod -p 后面的接的并不是明文,而是密文,比如:usermod -p 123 user1,你以为是将user1密码改为123,但登录输入123你会悲催的发现无法登录。
4.专用工具passwd与chpasswd修改密码
Passwd root #修改root密码
passwd -e user1 #强制用户下次登录时修改密码。
注意一点:普通用户只能修改自己的密码,只有root用户才有权限修改其他的密码。
chpasswd用来大批量修改用户密码,它能通过标准输入自动读取用户名与密码
chpasswd < users.txt #users.txt格式为“用户名:密码”
以上就是添加、修改、删除用户的基本操作,限于篇幅本文没有谈linux组的常用操作,后续再表。