大家好,我们继续来上linux课程,这节课我们从以下几点来进行讲解:

  1. Linux权限的概念;
  2. UID相关概念
  3. 用户和用户组的关系
  4. 用户和账户的区别

Linux是一个多用户多任务的的操作系统,很多时候,一台服务器上不止有一个用户,用户在操作整个系统时,可能会误删文件,这对整个linux系统的安全性和可操作性造成一定影响。所以在Linux系统中有这样一个概念,叫做权限,每个文件都有自己的权限范围,有些用户只能操作自己有权限的文件,这是整个linux系统能正常运行非常关键的一点。这节课,我们将从以下几个方面来了解linux的权限。

用户名和UID在现实生活中就像人的姓名和身份证号一样,但是,在linux系统中,用户名是不能重复的,因为我们在登录时,不是通过UID进行登录,而是通过用户名登录,这和我们登录微信是一样的,一个用户名对应一个密码,且是唯一绑定的,对吧。但是还有一点,用户名在操作系统底层时如何被识别的呢,linux系统采用16位二进制数来记录和区分不同的用户,这个数字就是UID,是操作系统识别用户的标识符。在linux系统中,,可以记录65536也就是2的16次方个不同用户。系统会记录“用户名”和UID的对应关系,并通过UID为用户分配权限。这个我们待会会来学习,如何通过linux命令分配权限。

Linux系统根据用户的UID将用户分为root用户,系统用户,普通用户。

  1. root用户/:也称为超级用户,UID为0,root用户可以控制和访问所有文件并使用系统的所有功能,root用户对系统有完全控制权,可以操作所有文件。
  2. 系统用户:系统用户由linux自动创建,负责在Linux启动时管理执行文件。系统用户的UID范围为1-999
  3. 普通用户:所有使用linux系统的真实用户,可以使用用户名密码登录,系统默认用户ID从1000开始编号,每添加一个用户UID自定加1.普通用户只能操作自己的目录,系统临时目录和经过目录所有者授权的目录。

整个linux用户群分为用户和用户组,用户组是一群具有相同特征的用户的集合。打个比方,我们在开发的过程中如果对同一文件具有相同的权限,这就就需要用户组的概念。用户组和用户的对应关系有哪些呢:首先是一对一,一个用户对应一个用户组,多对一,多个用户对应一个用户组,也就是一个用户组中包含多个用户,并且这些用户只属于这个用户组,但有些情况,一个用户可能属于多个用户组,这就涉及到了第三种情况,一对多,一个用户对应多个用户组;那还有最后一种情况,就是多个用户对应多个用户组,你们可能对这个概念有点模糊,接下来,我们就学习一下权限分配的简单概念,比如说我们在对某一个文件的操作时,就可以对文件的权限进行控制,那些用户或者用户组可以操作这个文件呢,我们linux系统中有对应的命令进行操作。

用户组都有自己的数字编号,在linux系统中这样定义,区分不同用户组的数字称为Group ID,简写为GID,以后你们在linux系统中看到GID的时候要知道它是什么概念。同理,个人用户在linux系统中用USER ID来表示,简称为UID,每一个个人用户都有属于自己的一个用户组,就比如,UID是个人,GID是家的意思,每个人都有一个家,也就是每个UID都至少属于一个GID,但不一定只属于一个GID,也有可能属于多个GID,

了解完这些用户和用户组的相关概念,我们再来学习一下用户和账户的区别,Linux操作系统是一个多用户多任务操作系统,允许多个用户同时登录到系统,使用系统资源。用户账户是用户的身份标识。用户通过用户账户可以登录到系统,并访问已经被授权使用的资源。系统根据账户来区分属于每个用户的文件、进程和任务,并给每个用户提供特定的工作环境(如用户的工作目录、shell版本和图形化的环境配置等)。我们在登录linux系统时所需要的用户名密码就是一个账户,我们通过这个账户可以进到linux系统中,而用户的概念就是我们在linux系统中的一个身份识别。

linux中用户和用户组的概念的更多相关文章

  1. linux中用户和用户组的概念以及查看命令

    Linux 是多用户多任务操作系统,换句话说,Linux 系统支持多个用户在同一时间内登陆,不同用户可以执行不同的任务,并且互不影响. 例如,某台 Linux 服务器上有 4 个用户,分别是 root ...

  2. Linux中用户及用户组

    Linux用户只有两个等级:root及非root.Linux中还有一部分用户,如:apache.mysql.nobody.ftp等,这些也都是非root用户,即普通用户.Linux的权限实际是上不同用 ...

  3. linux中用户和用户组

    一.用户和组原理 一个用户可以属于多个组,一个组有多个用户 在Linux中操作系统必须依赖组和用户进行管理 二.与用户和组相关的配置文件 1.组相关配置文件 1)/etc/group :管理用户组信息 ...

  4. Linux中用户与用户组管理

    1.基础知识 Linux作为一种多用户的操作系统(服务器系统),允许多个用户同时登陆到系统上,并响应每个用户的请求. 任何需要使用操作系统的用户,都需要一个系统账号,账号分为:管理员账号与普通用户账号 ...

  5. 13、linux中用户和用户组

    linux是多用户多进程的系统: 每个文件和进程都需要应对一个用户和用户组: linux系统通过uid和gid来识别用户和组的: 一个用户必须要有唯一的uid和一个主组来识别身份,不同的用户可以使用同 ...

  6. Linux学习之CentOS(三)--初识linux的文件系统以及用户组等概念

    Linux学习之CentOS(三)--初识linux的文件系统以及用户组等概念 进入到了Linux学习之CentOS第三篇了,这篇文章主要记录下对linux文件系统的初步认识,以及用户组.用户权限.文 ...

  7. linux系统--用户和用户组

    一.用户和用户组的概念 用户:使用操作系统的人 用户组:具有相同系统权限的一组用户.在linux系统中可以存在多个用户组 1.1 /etc/group 这里存储当前系统中所有用户组的信息 每一行对应一 ...

  8. 2.Linux的用户、用户组、权限、文件系统管理及其网络配置

    2.1 Linux的用户及用户组 2.1.1 Linux的用户管理 用户账号管理包含以下三个方面: 用户账号的添加.删除.与修改 用户口令(密码)的管理 用户组的添加.删除管理 Linux系统中用户信 ...

  9. linux创建用户和用户组

    Linux创建用户.用户组 及 删除 在创建用户时,需要为新建用户指定一用户组,如果不指定其用户所属的工作组,自动会生成一个与用户名同名的工作组.创建用户user1的时候指定其所属工作组users,例 ...

  10. Linux命令——用户和用户组管理

    Linux命令--用户和用户组管理 命令groupadd 作用:新增组 格式:groupadd [-g GID] groupname 参数:-g,指定GID,一般从500开始 说明:一般不必加-g参数 ...

随机推荐

  1. [常用工具] dlib编译调用指南

    dlib是一个C++工具包(dLIB中也有Python接口,但是主要编程语言为C++),包含绝大多数常用的机器学习算法,许多图像处理算法和深度学习算法,被工业界和学术界广泛应用于机器人.嵌入式设备.移 ...

  2. Lyndon Word 与 Lydon 分解

    \(\newcommand\m\mathbf\) \(\newcommand\t\texttt\) \(\text{By DaiRuiChen007}\) 约定: 对于两个字符串 \(S,T\),用 ...

  3. 【译】15 个有用的 JavaScript 技巧

    原文地址:https://javascript.plainenglish.io/15-useful-javascript-tips-814eeba1f4fd 1)数字分隔符 为了提高数字的可读性,可以 ...

  4. 特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:技术知识前置【一】-文本匹配算法、知识融合学术界方案、知识融合业界落地方案、算法测评KG生产质量保障

    特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:技术知识前置[一]-文本匹配算法.知识融合学术界方案.知识融合业界落地方案.算法测评KG生产质量保障 ...

  5. Redis--回顾提要

    一.写在前 知识学了就忘!不用就忘!我太健忘!特此记录!用于复习打卡!Redis干就完事了! 二.来辣! Redis做异步队列:一般list结构做队列,rpush生产消息,lpop消费消息,当lpop ...

  6. git操作失误,提交代码因为网络问题没有成功,然后操作时候点错按钮导致代码全部没有了,也没用备份,如何解决

    最好的提交代码办法, 1.先创建一个空文件夹, 2.然后创建一个在线仓库 3. git remote add origin '仓库地址' 4.查看远程仓库 git remote remove orig ...

  7. Google Cloud Platform | 使用 Terraform 的分层防火墙策略自动化

    [本文由Cloud Ace整理发布,更多内容请访问Cloud Ace 官网] 防火墙规则是 Google Cloud 中网络安全的重要组成部分.Google Cloud 中的防火墙大致可分为两种类型: ...

  8. Linux环境下:程序的链接, 装载和库[ELF文件详解]

    编译过程拆解 预处理处理生成.i文件, .i文件还是源码文件 将所有的宏定义#define展开. 处理#if, #else, #endif等条件编译指令 处理#include, 原地插入文件 cpp ...

  9. CentOS7 RPM方式安装JDK

    1.下载jdk rpm Java Downloads | Oracle 中国 https://www.oracle.com/cn/java/technologies/downloads/#jdk19- ...

  10. 这是一篇乖巧的草稿——vscode上传代码到代码托管平台GitHub

    一.在GitHub上创建一个远程仓库: 以上,就创建好了一个名为pythonStudy的仓库,现在先别把它关掉,先最小化 二.安装版本管理工具git:git属于无脑安装,可以更改安装路径 打开项目文件 ...