; • 终端进程组ID为-1(TPGID表示终端进程组ID,该值表示与控制终端相关的前台进程组,如果未和任何终端相关,其值为-1; • 所有的守护进程的父进程: 历史上,Linux 的启动一直采用init...与控制终端建立连接的会话领头进程也称为控制进程 (controlling process) 。一个会话只能有一个控制终端。 前台进程组 该进程组中的进程能够向终端设备进行读、写操作的进程组。...进程组、对话期和控制终端关系 每个会话有且只有一个前台进程组,但会有0个或者多个后台进程组。 产生在控制终端上的输入(Input)和信号(Signal)将发送给会话的前台进程组中的所有进程。...在Linux中,每当系统发现一个孤儿进程,就会自动由1号进程收养。原先的子进程就会变成init进程的子进程。 2. 在子进程中创建新会话 setsid()函数的作用。...; • 终端进程组ID为-1; • 守护进程的父进程为1516,即systemd。 作者:一口Linux
写在前面 「守护进程」是 Linux 的一种长期运行的后台服务进程,也有人称它为「精灵进程」。...如果想要深入理解「守护进程」基本原理,那么必须要首先理解 Linux 的进程、进程组、会话、终端等概念。 1、进程 进程是 Linux 进行资源分配的最小单位 前台进程,例如这样:$ ....3、会话(session) 多个进程组构成一个「会话」,建立会话的进程是会话的领导进程,该进程 ID 为会话的 SID。会话中的每个进程组称为一个「作业」。...会话可以有一个进程组称为会话的「前台作业」,其它进程组为「后台作业」 一个会话可以有一个控制终端,当控制终端有输入和输出时都会传递给前台进程组,比如Ctrl + Z。...这个步骤主要是要与继承父进程的会话、进程组、终端脱离关系。 3、禁止子进程重新打开终端 此刻子进程是会话组长,为了防止子进程重新打开终端,再次 fork 后退出父进程,也就是此子进程。
会话和进程组 进程组:进程组是多个进程的集合, 接收同一个终端的各类信号信息。进程调用setpgid(pid, pgid)可以加入一个现有的进程组或者创建一个新的进程组。...作业:是一个进程组,作业分为前台作业(前台进程组),后台作业(后台进程组) 会话:会话是若干进程组的集合。会话有一个前台进程组和多个后台进程组。...b.进程调用完此函数,会成为新会话的会话首进程(session leader),该进程会成为一个新进程组的头部进程,新进程组的组ID就是这个进程的ID。 c.该进程没有控制终端。...与控制终端建立连接的会话首进程被称为控制进程。 对于有控制终端的会话,同一时刻只能有一个进程组能够称为前台进程组,会话中的其他进程组都是后台进程组。...子进程继承了父进程的进程组ID,不过它有自己的进程ID,这就保证了子进程不是一个进程组的头部进程 Step.3 调用setsid( ),给守护进程创建一个新的进程组和会话,使当前进程成为新进程组的头部进程
概述 组调度(task_group)是使用Linux cgroup(control group)的cpu子系统来实现的,可以将进程进行分组,按组来分配CPU资源等。...比如,看一个实际的例子: A和B两个用户使用同一台机器,A用户16个进程,B用户2个进程,如果按照进程的个数来分配CPU资源,显然A用户会占据大量的CPU时间,这对于B用户是不公平的。...组调度就可以解决这个问题,分别将A、B用户进程划分成组,并将两组的权重设置成占比50%即可。...CFS调度器管理的是sched_entity调度实体,task_struct(代表进程)和task_group(代表进程组)中分别包含sched_entity,进而来参与调度; 关于组调度的相关数据结构...sched_entity结构中存在parent指针,指向它的父结构,因此,系统的运行也能从下而上的进行遍历操作,通常使用函数walk_tg_tree_from进行遍历; 2.2 task_group权重 进程或进程组都有权重的概念
组账号管理 本机的群组账号数据被储存在 /etc/group 文件中,权限也必须为0644,与 /etc/passwd 一样,这也是一个文本文件。...- PASSWORD:组密码,这里也和passwd文件一样是个x - GID:群组识别号 - MEMBERS:组成员 一起来看下组管理的相关命令 groupadd 建立组 命令介绍...-o 此选项允许添加一个使用非唯一 GID 的组。 #组相关文件 /etc/group 组账户信息。...NEWNAME 就是新的组名。...在移除此组之前,必须先移除此用户。 用户和组的相关命令我们介绍完了,现在来看下密码管理
文件:所有者、所在组、其他组 组的创建:groupadd 组名 用户的建立:useradd -g 所属组名 用户名 查看文件的所有者:ls -ahl 修改文件的所有者:chown 用户名 文件名 查看文件的所在组...:ls -ahl 修改文件的所在组:chgrp 组名 文件名 改变用户所在组:usermod -g 组名 用户名 改变用户的登录的初始目录:usermod -d 目录名 用户名
为了解决这个问题,Linux 实现了 组调度 这个功能。那么什么是 组调度 呢? 组调度 的实质是:调度时候不再以进程作为调度实体,而是以 进程组 作为调度实体。...# 在进程组A中创建进程组C $ echo 1923 > /sys/cgroup/cpu/A/cgroup.procs # 向进程组A中添加进程ID为1923的进程 Linux 在调度的时候,首先会根据...在分析之前,为了对 完全公平调度算法 有个大体了解,建议先看看这篇文章:《Linux完全公平调度算法 》。 1. 进程组 在 Linux 内核中,使用 task_group 结构表示一个进程组。...完全公平调度算法 在调度时是通过 cfs_rq 结构完成的,cfs_rq 结构使用一棵红黑树将需要调度的进程或者进程组组织起来,然后选择最左端的节点作为要运行的进程或进程组,详情可以参考文章:《Linux...Linux 调度的时候,就是从上而下(从根进程组开始)地筛选出最优的进程进行运行。 2.
Linux 用户和组 1、用户和组的概念 用户的作用: Authentication:认证 Authorization:授权 Accouting:审计 用户存在的最终目的: 为了实现资源的分派 组的作用...: 将具有相同特征的用户放在一起组成一个整体 当用户过多时方便管理 1.1Linux安全上下文 Linux通过安全上下文的概念完成用户权限的指派。...先判断用户是否是某文件的属主 再判断用户是否是该文件属组中的一员 最后定其为其它用户 运行中的程序:进程(process) 以进程发起者的身份运行 root:cat zsl:cat 进程所能够访问的所有资源的权限取决于进程的发起者身份...---- 2 用户分类 Linux分为root用户、系统用户、普通用户: 用户分类 用户ID(uid) root用户 0 系统用户 1~499(为守护类进程获取系统资源而完成权限指派的用户) 普通用户...500~65535(为了完成交互式登录使用的用户) ---- 3 组的分类 用户组分类 特性 基本组 用户的默认组 附加组(额外组) 基本组以外的其它组 ---- 4、用户和组相关的配置文件 4.1
cgroup 与组调度 linux内核实现了control group功能(cgroup,since linux 2.6.24),可以支持将进程分组,然后按组来划分各种资源。...cgroup支持很多种资源的划分,CPU资源就是其中之一,这就引出了组调度。 linux内核中,传统的调度程序是基于进程来调度的(参阅《Linux 进程调度浅析》)。...在linux内核中,使用task_group结构来管理组调度的组。所有存在的task_group组成一个树型结构(与cgroup的目录结构相对应)。...(参见《linux内核SMP负载均衡浅析》。近期会推送给大家) 组的调度策略 组调度的主要数据结构已经理清了,这里还有一个很重要的问题。...实时进程的组调度 从《Linux 进程调度浅析》一文可以看到,实时进程是对CPU有着实时性要求的进程,它的优先级是跟具体任务相关的,完全由用户来定义的。调度器总是会选择优先级最高的实时进程来运行。
1、linux里查看所有用户 (1)在终端里.其实只需要查看 /etc/passwd文件就行了. (2)看第三个参数:500以上的,就是后面建的用户了.其它则为系统的用户..../shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件; finger 注:查看用户信息工具 id 注:查看用户的UID、GID及所归属的用户组...visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的; sudoedit 注:和sudo 功能差不多; 3、管理用户组(...group)的工具或命令; groupadd 注:添加用户组; groupdel 注:删除用户组; groupmod 注:修改用户组信息 groups 注:显示用户所属的用户组 grpck grpconv...etc/gshadow 不存在则创建; grpunconv 注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件 首先创建用户组
用户分类 超级用户:root,UID=0 普通用户:具有操作系统有限的权限,500<=UID<=65535(2^32-1),有限个 伪用户:为了安全,1<=UID<=499 伪用户解释:linux...伪用户一般和系统或者程序服务相关,比如bin,daemon,shutdown ,halt等,linux默认都有这些伪用户,伪用户通常不需要或无法登陆系统(nologin),可以没有宿主目录 用户和组的配置文件...UID:Linux系统中惟一的用户标识,用于区别不同的用户。在系统内部管理进程和文件保护时使用 UID字段。...在Linux系统中,注册名和UID都可以用于标识用户,只不过对于系统来说UID更为重要;而对于用户来说注册名使用起来更方便。...#将mingxing组的名称改为mingxing1 删除组 groupdel mingxing 查看组 cat /etc/group #查看所有组 groups liuyifei #查看用户所在的组
linux用户管理 linux用户分类 超级用户:root uid=0 用户身份user identify 普通用户:可以登录系统 uid 500-60000 程序用户:程序依托一个用户的权限,权限非常小...字段9:目前没有定义 每一个用户都必须拥有一个基本组,多个附加组(公共组) /etc/group 存储着组账号信息 /etc/group文件格式: root:x:0:root 字段1:组名 字段2:组密码占位符...符号 -U 解锁用户 linux组管理 查看组信息 cat /etc/group /etc/group文件格式 root:x:0:root 字段1:组名 字段2:组密码占位符 字段3:组id(gid)...字段4:组成员 组管理命令 创建组 groupadd 组名 -g 指定组id 修改gid groupmod -g 1500 组名 添加成员 gpasswd -a 用户名 组名 删除组 groupdel...组名
: 1-499(centos6), 1-999(centos7)由系统保留,作为管理账号,对守护进程获取资源进行权限分配; 登陆用户:500-60000(centos6), 1000-60000(centos7...) 名称转换: usernameUID,通过/etc/passwd group: 组 组标识: groupid, gid 管理员组: root, UID=0 用户主要组(主组): 用户必须属于一个且只有一个主组...(基本组); 基本组名同用户名,且仅包含一个用户,也叫私有组(即,新建的用户,也会新建要给组,但组里只有用户自己) 用户的附加组: secondary group 基本组以外的组属于用户的附加族。.../etc/group: 组及其属性信息。 /etc/gshadow: 组密码及相关属性。 2..../etc/group组 1.组群名称; 2.组群密码,通常不设定,密码记录在/etc/gshadow; 3. GID. 组id; 4. 以当前组为附加组的用户列表。
Linux下用户及组管理 系统中的文件都有一个所属用户及所属组 使用id命令可以显示当前用户的信息 使用passwd命令可以修改当前用户密码 每个用户拥有一个UserID,操作系统实际使用的是用户ID,...而非用户名 每个用户属于一个主组,属于一个或多个附属组(一个用户最多有31个附属组) 每个组拥有一个GroupID 每个进程以一个用户身份运行,并受该用户可访问的资源限制 每个可登陆用户拥有一个指定的shell...环境 linux实现权限隔离机制(多用户) 操作系统识别用户: 用户:UID 组:GID(逻辑容器,包含用户;实现多个用户对于某个文件或者应用程序分配相同的权限) 用户ID为32位,从0开始,但是为了和老式系统兼容...,用户ID限制在60000以下 用户分类: 管理用户:ROOT UID:0 普通用户:500-65535 程序(系统)用户:1-499 组分类: 管理员组/普通组 基本组:Linux中,新建用户时,没有指定隶属于的组...因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。
linux创建用户、属组 命令如下: [root@centos9 ~]# chattr -i /etc/passwd [root@centos9 ~]# chattr -i /etc/group [root
Windows系统使用组的概念来管理用户。组是用户帐户、计算机帐户和其他组的集合;组可以从安全的角度作为单个单元进行管理。组可以是基于活动目录的组,也可以是针对特定计算机的本地组。...当为组设置权限时,组内的所有用户都会自动应用权限,因此就不需要单独为某个用户设置权限了。并且在学习域的过程中,我们经常会听到本地管理员组、域管理员组、企业管理员组、全局组和通用组等概念。...通用组 通用组可以嵌套在其他组中,其组成员可包括本域和域林中其它域的用户、全局组和通用组,但不能包括本域和域林中其它域的本地域组。...RDS Endpoint Servers:此组中的服务器运行虚拟机和主机会话,用户 RemoteApp 程序和个人虚拟桌面将在这些虚拟机和会话中运行。需要将此组填充到运行 RD 连接代理的服务器上。...在部署中使用的 RD 会话主机服务器和 RD 虚拟化主机服务器需要位于此组中。 RDS Management Servers:此组中的服务器可以在运行远程桌面服务的服务器上执行例程管理操作。
Linux 的安全性 Linux安全系统的核心时用户账户。每个能进入Linux系统的用户都会被分配唯一的用户账户,用户对系统中各种对象的访问权限取决于他们登陆系统时用的账户。...这些账户叫作系统账户,是系统上运行的各种服务进程访问资源用的特殊账户。所有运行在后台的服务都需要用一个系统用户账户登录到Linux系统上。 在安全成为一个大问题之前,这些服务经常会用root账户登录。...组名 组密码 GID 组成员 wheel组 在Linux中wheel就是类似于一个管理员的组。通常在Linux下即使我们有了管理员,也不推荐用root用户登录。...媒体目录,可移动媒体设备的常用挂载点 /mnt 挂载目录,另一个可移动媒体设备的常用挂载点 /opt 可选目录,常用于存放第三方软件包和数据文件 /proc 进程目录...,存放现有硬件及当前进程的相关信息 /root root用户的主目录 /sbin 系统二进制目录,存放许多GNU管理员级工具 /run 运行目录,存放系统运作时的运行时数据
# Linux 组管理和权限管理 # Linux组基本介绍 在linux 中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。...:chown 用户名 文件名 # 组的创建 # 基本指令 groupadd 组名 选项说明 -g gid :用户组ID -r :建立系统组 # 应用实例 创建一个组,monster groupadd...group1 # 文件/目录 所在组 当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组(默认)。...,然后将这个文件所在组,修改到 fruit组。...# 改变用户所在组 在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组。
,在幕后保障Linux 系统安全的则是一系列复杂的配置工作。...本博客即下篇博客将详细讲解以下几点 文件的所有者、所属组 以及其他人可对文件进行的读(r)、写(w)、执行(x)等操作 以及如何在Linux系统中添加、删除、修改用户账户信息 我们还可以使用SUID、SGID...Linux 为了方便管理权限,引入了用户组的概念,我们可以把多个用户加入到同一个组中,从而方便为组中的用户统一规划权限或者指定任务 假设有一个公司中有多个部门,每个部门中又有很多员工。...科普 在Linux系统中创建每个用户时,将自动创建一个与其同名的基本用户组,而且这个基本用户组只有该用户一个人。 如果该用户以后被归纳入其他用户组,则这个其他用户组称之为扩展用户组。...就好比:技术组、运维组 增加组 groupadd [选项] 组名 删除组 groupdel 组名 前提:组内不能有用户,否则无法删除 修改用户的组 Linux系统中的一切都是文件 因此在系统中创建用户也就是修改配置文件的过程
领取专属 10元无门槛券
手把手带您无忧上云