Linux 用户与用户组管理
Linux 用户与用户组管理
一、Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
每个用户账号都拥有一个惟一的用户名和各自的口令。
用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。
实现用户账号的管理,要完成的工作主要有如下几个方面:
- 用户账号的添加、删除与修改。
- 用户口令的管理。
- 用户组的管理。
二、用户分类
- 超级用户 root uid=0
- 虚拟用户 uid 1-499 centos6
- 虚拟用户 uid 1-999 centos7 不需要有家目录/不需要登陆系统
- 普通用户 uid 500+ centos6
- 普通用户 uid 1000+ centos7
三、用户与组的关系
一个用户属于多个组 一对多
多个用户属于一个组 多对一
一个用户属于一个组 一对多
多个用户属于多个组 多对多
四、相关文件
1. /etc/passwd 保存用户信息的文件
2./etc/passwd是用户数据库,其中的域给出了用户名、加密口令和用户的其他信息. /etc/shadow是在安装了影子(shadow)口令软件的系统上的影子口令文件。影子口令文件将/etc/passwd 文件中的加密口令移动到/etc/shadow中,而后者只对超级用户root可读。这使破译口令更困难,以此增加系统的安全性。 (说白了就是保存密码的,网上说了一大堆感觉有道理就复制下来了)
- 以:进行分割
- 第一位用户名
- 第二位加密后的密码
- 第三位最近改动时间自1970年1月1日开始
- 第四位密码不可更改时期,从上一次更改时间开始计算,0表示没有限制
- 第五位密码过期时间,如果是99999表示永不过期
- 第六位密码过期预警天数
- 第七位密码过期宽恕时间,在第五位时间过了之后还能继续使用的时间
- 第八位账号失效日期,过了日期之后无法使用
- 第九位 保留
五、用户相关管理命令
创建用户
useradd 参数 用户名
-u 指定UID号
-G 指定用户属于哪个组,指定附属组的信息
-g 指定用户属于主要组信息
-s 指定新建用户 shell信息,默认指定/bin/lbash/ -s可以指定 /sbin/nologin 设置后,用户无法登陆系统 可见/etc/passwd 最后一位
-M 创建新用户时,不要给家目录 可见/etc/passwd 倒数第二位
-c 穿建的新用户时添加信息,可见 /etc/passwd 中第五位
删除用户
userdel 参数 用户名
-r 将家目录同时删除
如果删除用户时,有残留信息没有删除掉如何解决:
1) 手动删除残留数据
2) 创建出一个相同的用户,再次删除
第一个历程: 创建用户
useradd -u uid值 相同用户名 --- uid值和家目录属主信息保持一致
第二个历程: 彻底删除用户
userdel -r 用户名
更改用户
usermod 参数 用户名
-u 指定UID号
-G 指定用户属于哪个组,指定附属组的信息
-g 指定用户属于主要组信息
-s 指定新建用户 shell信息,默认指定/bin/lbash/ -s可以指定 /sbin/nologin 设置后,用户无法登陆系统 可见/etc/passwd 最后一位
-M 创建新用户时,不要给家目录 可见/etc/passwd 倒数第二位
-c 穿建的新用户时添加信息,可见 /etc/passwd 中第五位