1./etc/passwd  存储用户信息

[root@oldboy ~]# head /etc/passwd
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
daemon:x:::daemon:/sbin:/sbin/nologin

一行记录对应着一个用户,每行记录被冒号:分隔为7个字段,这7个字段的具体含义为:

用户名:密码:uid:gid:解释描述:家目录:登录shell

500及以前的uid都是系统用户,普通用户的uid大于500

可通过id 用户名查看该用户的用户和组信息

2./etc/shadow  存储用户的密码信息

[root@oldboy ~]# head /etc/shadow
root:$$ylNOqOypZpCje1NL$B2cJYJxy0IeKspoC1BHRYP3snN8Xp8Umtgn7xc/vCrRCfTgOp.vh2Y/gOEMSG3eb6kA9yanPoHWKi0.i31oZ8/:::::::
bin:*:::::::
daemon:*:::::::

一行记录对应着一个用户的密码信息,每行记录被冒号:分割为9个字段,这9个字段的具体含义为:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

3./etc/group  存储组信息

[root@oldboy ~]# head /etc/group
root:x::
bin:x::bin,daemon
daemon:x::bin,daemon

一行记录对应着一个组信息,每行记录被冒号:分割为4个字段,这4个字段的具体含义为:

组名称:组密码:组id:用户列表

4./etc/gshadow  存储组密码信息

[root@oldboy ~]# head /etc/gshadow
root:::
bin:::bin,daemon
daemon:::bin,daemon

一行记录对应着一个组的密码信息,每行记录被冒号:分割为4个字段,这4个字段的具体含义为

组名称:组密码:组管理者:组成员列表

5.用户操作

①useradd新增用户

语法:useradd [-u uid] [-g  初始用户组] [-G 次要用户组] [-m|M] [-c 说明] [-d 主文件夹绝对路径] [-s shell] 用户名

-u:指定uid,可省略,如省略系统会默认创建普通用户并自动指定uid (如果要创建系统用户,需要使用-r参数,此时uid有要求/etc/login.def)

-g:指定初始用户组,可省略,如省略系统会自动创建一个与用户名相同的用户组,该值为/etc/passwd文件第4列的内容

-G:指定次要用户组,可省略

-m|M:是否强制创建用户主文件夹,可省略,系统用户默认强制不创建,普通用户(即uid>500)默认强制创建

-c:说明,即/etc/passwd文件第5列的内容

-d:指定主文件夹路径,可省略,默认为/home/用户名/

-s:指定登录shell,可省略,默认为/bin/bash

创建用户后需要为新用户设置密码

root用户为普通用户设置或修改密码:passwd 用户名,会提示输入新密码和确认新密码

普通用户修改自身密码:直接passwd,会提示输入旧密码、新密码和确认新密码

②usermod修改用户

语法:useradd [-u uid] [-g  初始用户组] [-G 次要用户组] [-c 说明] [-d 主文件夹绝对路径] [-s shell] 用户名

修改uid、初始用户组、次要用户组、说明、主文件夹和登录shell

③userdel删除用户

语法:userdel [-r] 用户名

-r:是否删除主文件夹,默认不删除,-r表示删除主文件夹

删除用户的时候会同时删除与用户同名的用户组

6.用户组操作

①groupadd增加用户组

语法:groupadd [-g gid] [-r] 用户组名

-g:指定gid,可省略,如省略系统会默认创建普通用户组并自动指定gid (如果要创建系统用户组,需要使用-r参数,此时uid有要求/etc/login.def)

②groupmod修改用户组

语法:groupmod [-g gid] [-n 新用户组名] 用户组名

-g:修改gid,通常不建议修改,容易造成资源错乱

-n:修改原用户组为新的名称

③groupdel删除用户组

语法:groupdel 用户组名

如果有用户使用某一个用户组作为初始用户组,则该用户组不能被删除

最新文章

  1. .NET 垃圾回收与内存泄漏
  2. linux内核分析作业3:跟踪分析Linux内核的启动过程
  3. HTML 表单和输入<form><input>
  4. 【转】HTTP协议详解
  5. override与overload的区别
  6. gearman mysql udf
  7. Eclipse反编译插件JadEclipse 【转】
  8. linux 查看外网IP
  9. 【转】AAC ADTS格式分析
  10. Unity3D流行的游戏开发人员构建高速检查站系统
  11. es6 let和const命令(1)
  12. tp5 提升性能的几个方法
  13. 006-CSS引入外部字体
  14. CentOS 6.5下RPM方式(重新)安装MySQL 5.7.21从头到尾篇
  15. 推荐5款简洁美观的Hexo主题
  16. ERP项目实施记录06
  17. Python IDE集成开发工具
  18. 前端PHP入门-003-echo离不开它,注释看人品
  19. python初步学习-python函数(一)
  20. ZT Abstract Factory

热门文章

  1. Python 图像处理 OpenCV (12): Roberts 算子、 Prewitt 算子、 Sobel 算子和 Laplacian 算子边缘检测技术
  2. JS中style.display和style.visibility的区别
  3. 浅谈auth模块
  4. 半导体质量管理(LineWorks)_SPACE(统计过程分析和控制环境)
  5. Drools之基础语法
  6. 使用 PostCSS 进行 CSS 处理
  7. # Mysql常用函数总结(一)
  8. vue-cli3安装
  9. MySQL分库分表的原则
  10. python 面向对象专题(八):特殊方法 (一)__get__、__set__、__delete__ 描述符(一)