前言:
当前大家对“linux用户一般分为哪几种类型”可能比较看重,大家都需要了解一些“linux用户一般分为哪几种类型”的相关文章。那么小编也在网上收集了一些关于“linux用户一般分为哪几种类型””的相关文章,希望朋友们能喜欢,姐妹们一起来学习一下吧!linux是一个多用户、多任务的操作系统,具有很好的稳定性与安全性,允许多个用户同时登陆到系统上
操作系统根据UID来判断用户! 而不是用户名!只要id为0就是管理员,哪怕有多个id为0 的账号(可以更改普通用户的UID为0)
为了方便管理属于同一组的用户,Linux系统中还引入了用户组的概念,用GID表示唯一性
在Linux系统中创建每个用户时,将自动创建一个与其同名的基本用户组,而且这个基本用户组只有该用户一个人。如果该用户以后被归纳入其他用户组,则这个其他用户组称之为扩展用户组。一个用户只有一个基本用户组,但是可以有多个扩展用户组,方便为组中的用户统一规划权限或指定任务
用户与组的配置文件
- /etc/passwd:用户及其属性信息(名称、 UID、主组ID等)
- /etc/group:组及其属性信息
- /etc/shadow:用户密码及其相关属性
- /etc/gshadow:组密码及其相关属性
格式:用户名:密码(仅一个x占位符,密码存在shadow中):UID:GID:备注信息:用户主目录(登录默认进入的目录):shell类型
为啥有这么多shell类型为/sbin/nologin的用户
linux用户分三种:
用户ID为0的是超级用户
用户ID为1-999是系统用户
Linux系统为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围
用户ID大于1000是自定义普通用户
格式:用户名:密码(!!表示没有密码,不允许登陆):密码最近一次被更改的时间:密码再过几天就可以被修改(0表示随时可改):密码几天后必须变更(99999表示永不过期):密码过期前多久提示用户:密码过期多久后账户将被锁定:多少天后账户将失效(从1970-1-1算起)
格式:组名:组密码(通常不需要设定,密码被记录在/etc/gshadow):GID:组中的附加用户列表
组密码主要是用来指定组管理员,有用户需要加入或退出某用户组,可以由该组的组管理员替代 root 进行管理
格式:组名:组密码(!表示没有指定):组管理员列表:组中的附加用户列表
查看用户信息:
id -g/G/u root
groups root
-g:初始组ID;-G:附加组ID;-u:用户id
查看组的附加用户列表:
cat /etc/group | awk -F ':' '($1=="root"){ print $4}'
cat /etc/group|grep root|cut -d ':' -f 4
用户管理
useradd命令,创建用户时,默认的用户主目录会被存放在/home目录中,默认的Shell解释器为/bin/bash,而且默认会创建一个与该用户同名的基本用户组(指定参数可更改)
useradd [参数] 用户名 添加用户-u:自定义UID (默认系统递增)-o: 配合-u 选项,不检查UID的唯一性(不建议)-g:指定用户所属基本组,可为组名,也可以GID(默认创建同名基本组)-c:备注信息-d:指定用户主目录(默认/home下)-G:指定用户所属附加组(覆盖,多个以逗号分隔)-s:指定用户登录的shell解释器(默认/bin/bash)-e:账号到期时间,格式为YYYY-MM-DDusermod [参数] 用户名-c:填写用户账户的备注信息-d -m:参数-m与参数-d连用,可重新指定用户的家目录并自动把旧的数据转移过去-e:账户的到期时间,格式为YYYY-MM-DD-g:变更所属用户组-G:变更扩展用户组(覆盖,多个以逗号分隔)-L:锁定用户禁止其登录系统-U:解锁用户,允许其登录系统-s:变更默认终端-u:修改用户的UID-l:指定新的用户名userdel [参数] 用户名-r: 把用户的主目录一起删除(默认删除用户在系统文件中/etc/passwd, /etc/shadow, /etc/group的记录)
useradd -d /home/linux -u 8888 -s /sbin/nologin linuxtest
usermod -c yuyuyu -G zhy -l linux linuxtest
userdel -r linux
用户密码管理
普通用户只能使用passwd命令修改自身的系统密码,而root管理员则有权限且不需要密码修改其他所有人的密码
passwd [参数] 用户名-S: 查看用户密码状态,-l : 锁定用户的密码(禁止登陆)-u: 解除用户密码的锁定-d: 删除用户密码(登录不需要密码)-e:强制用户在下次登录时修改密码
passwd linux
禁止某个账号登录
passwd -l linux 锁定用户的密码usermod -s /sbin/nologin linux 修改用户shell解释器类型linux:!!:18727:0:99999:7::: 修改shadow文件,密码为!!用户组管理
groupadd [参数] 组名 添加用户组-g :添加组时指定组ID(默认最大GID加1)groupmod [参数] 组名 修改用户组信息-n :修改组名-g :修改组IDgroupdel 组名 删除组(如果一个组下有基本用户,那么这个组是无法删除的)gpasswd [参数] 组名 没有指定参数时,修改组密码-a:向组中添加附加用户-d:删除附加用户-r: 删除组密码-R:指定某个附加用户不能访问组-M:设置组的附加用户列表,以逗号分隔-A:设置组的管理员组列表groupmems [opentions] [action] 更改和查看组中的成员opentions:-g:要更改或查看的组(只有root用户可以使用)action:-a:向组中添加附加用户-d:删除附加用户-p:从组中移除所有成员-l:列出组中的所有成员
可见用户组是以GID关联起来的,修改组名后立即有效
切换组
newgrp groupname
使用 newgrp 命令临时切换用户的初始组,所创建的文件各自属于不同的群组,每一次使用 newgrp 切换用户的初始组,用户都会切换到一个新的子 shell 中,如果想回到原本的环境,需要通过 exit 命令不断回退到当前进程的父进程
一个用户可以加入不同的组,但是有且只有一个主组
一个用户的权限为他所属的多个组的累加权限,用户可以在用户组间切换(即使没切换,都拥有这个组的权限),以便具有其他用户组的权限
组和用户的关系是多对多 一个用户可以有多个组,一个组也可以有多个用户
用户组权限不等于用户权限,并不是加入root组就能获得用户权限!
标签: #linux用户一般分为哪几种类型 #linux的超级用户名是什么 #linux的超级用户的用户名是 #linux超级用户名为 #linux用户id