当前位置: 首页 > news >正文

【Linux篇】面试——用户和组、文件类型、权限、进程

目录

一、权限管理

1. 用户和组

(1)相关概念

(2)用户命令

① useradd(添加新的用户账号)

② userdel(删除帐号)

③ usermod(修改帐号)

④ passwd(用户密码的管理)

(3)组命令

① groupadd(增加一个新的用户组)

② groupdel(删除一个已有的用户组)

③ groupmod(修改用户组的属性)

(4)与用户账号有关的系统文件

① /etc/passwd 文件

② /etc/shadow 文件

③ /etc/group 文件

2. 文件基本属性

(1)文件类型

(2)文件权限

(3)chgrp 更改文件属组

(4)chown 更改文件属性

① 更改文件所有者(owner)、更改文件所属组

② 更改文件 9 个属性

二、进程相关

1. ps(显示进程状态)

(1)显示系统中全部的进程信息

(2)查找当前系统运行状态中指定的进程信息

(3)当前系统运行状态中指定用户的进程信息

2. top(实时显示系统运行状态)

3. kill(杀死进程)

(1)结束某个指定的进程(数字为对应的 PID 值)

(2)强制结束某个指定的进程(数字为对应的 PID 值)

4. netstat(显示网络状态)

(1)显示系统网络状态中的所有连接信息

(2)显示系统网络状态中的 UDP 连接信息

(3)显示系统网络状态中的 UDP 连接端口号使用信息

(4)显示网卡当前状态信息

(5)显示网络路由表状态信息

(6)找到某个服务所对应的连接信息


一、权限管理

1. 用户和组

(1)相关概念

        用户 是 Linux 系统 中的一个 账户,代表 一个操作者 或 一个 服务进程。每个用户 都有一个 唯一的 用户名 和 身份标识(UID)。用户 登录系统时,需要 提供 有效的 用户名 和 密码,以 验证其身份。用户根据其身份 可以访问 特定的 文件和资源

  • 文件和目录的 权限设置 决定了 哪些用户 可以读取、写入或执行它们。每个用户 都有 自己的 家目录(如 /home/username),用于 存储 个人文件和配置。这提供了一定程度的隐私和安全隔离。

        组 是一组用户的 集合,它 允许 对多个用户 应用相同的 权限设置通过 将用户 添加到 组中,管理员 可以 轻松地 为组内的 所有用户 设置相同的 文件 和 目录权限。

  • 组 可以用来 控制 对共享资源的 访问,如打印机、文件服务器等。组成员 可以 共享 相同的 文件和目录,方便协作 和 数据共享。
  • 组 简化了 权限分配 和 管理的 过程。例如,通过 更改 组权限,可以 一次性 更新 组内 所有用户的权限,而不需要 单独 更改每个用户
  • 组策略 可以 限制 对敏感数据的 访问,提高 系统的 安全性。通过 将用户 分配到 不同的组,可以更好地 控制 对敏感资源的 访问。

(2)用户命令

① useradd(添加新的用户账号)
useradd 选项 用户名-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
② userdel(删除帐号)
userdel 选项 用户名-r 把用户的主目录一起删除
③ usermod(修改帐号)
usermod 选项 用户名-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
④ passwd(用户密码的管理)
passwd 选项 用户名-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。默认用户名,则修改当前用户的口令。

(3)组命令

① groupadd(增加一个新的用户组)
groupadd 选项 用户组-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
② groupdel(删除一个已有的用户组)
groupdel 用户组
③ groupmod(修改用户组的属性)
groupmod 选项 用户组-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字

(4)与用户账号有关的系统文件

① /etc/passwd 文件

        Linux 系统中的 每个用户 都在 /etc/passwd 文件中 有一个 对应的 记录行,它 记录了 这个用户的 一些 基本属性

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
  • 用户标识号:系统内部 用它来 标识用户。通常 用户 标识号的 取值范围是 0~65 535。0 是 超级用户 root 的标识号,1~99 由 系统保留,作为 管理账号,普通用户 的 标识号从 100 开始。在 Linux 系统中,这个 界限是 500。
  • 组标识号:记录的是 用户 所属的 用户组。它对应着 /etc/group 文件中的 一条记录。
  • 主目录:用户的 起始 工作目录。它是 用户在 登录到 系统之后 所处的 目录。在 大多数系统中,各 用户的 主目录都 被组织在 同一个 特定的 目录下,而 用户 主目录的 名称 就是 该用户的 登录名。各 用户对 自己的 主目录有读、写、执行(搜索)权限,其他用户 对此目录的 访问 权限则 根据 具体情 况设置。
  • Shell:用户登录后,要 启动一个进程,负责 将用户的 操作传给 内核,这个 进程是 用户 登录到 系统后 运行的命令 解释器 或 某个特定的 程序。
② /etc/shadow 文件

        对 安全性 要求 较高的 Linux 系统都 把加密后的 密码字 分离出来,单独 存放在 一个文件中,这个文件是 /etc/shadow 文件。 有 超级用户 才拥有 该文件 读权限,这就 保证了 用户密码 的安全性。

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
  • 登录名:是 与 /etc/passwd 文件中的 登录名 相一致的 用户账号。
  • 密码字段:存放的是 加密后的 用户 口令字,长度为 13 个 字符。如果 为空,则 对应 用户 没有口令,登录时 不需要 口令;如果 含有 不属于 集合 { ./0-9A-Za-z } 中的 字符,则 对应的 用户 不能登录。
  • 最后一次修改时间:表示的是 从某个 时刻起,到 用户最后 一次 修改口令时的 天数。时间 起点 对 不同的 系统可能 不一样。
  • 最小时间间隔:指的是 两次 修改口令 之间 所需的 最小天数。
  • 最大时间间隔:指的 是口令 保持有效的 最大天数。
  • 警告时间:字段 表示的是 从系统 开始 警告用户到 用户密码 正式失效之间的 天数。
  • 不活动时间:表示的是 用户 没有登录活动 但账号 仍能保持 有效的 最大天数。
  • 失效时间:字段 给出的是一个 绝对的 天数,如果 使用了 这个字段,那么 就给出 相应账号的 生存期。期满后,该账号就不再是一个 合法的账号,也就不能 再用来登录了。
③ /etc/group 文件

        将 用户 分组是 Linux 系统中 对用户 进行 管理及控制 访问权限的 一种手段每个 用户 都属于 某个 用户组;一个 组中 可以有 多个用户,一个 用户 也可以 属于 不同的组。当一个 用户同时是 多个组中的 成员时,在 /etc/passwd 文件中 记录的是 用户所属的主组,也就是 登录时 所属的 默认组,而其他组 称为 附加组。

组名:口令:组标识号:组内用户列表
  • 组名:是 用户组的 名称,由 字母或数字 构成。与 /etc/passwd 中的 登录名一样,组名 不应 重复。
  • 口令:字段 存放的是 用户组 加密后的 口令字。一般 Linux 系统的 用户组 都没有口令,即 这个字段一般为空,或者是*。
  • 组标识号:与 用户标识号 类似,也是一个 整数,被 系统内部 用来 标识组。
  • 组内用户列表:是 属于这个组的 所有用户的 列表,不同 用户之间用 逗号(,)分隔。这个 用户组 可能是 用户的主组,也可能是 附加组。

2. 文件基本属性

        在 Linux 中我们可以使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组。

(1)文件类型

  • d :目录文件。
  • - :文件。
  • l :表示为 链接文档(link file)。
  • b :表示为 装置文件里面的可供储存的接口设备(可随机存取装置)。
  • c :表示为 装置文件里面的 串行端口设备,例如键盘、鼠标(一次性读取装置)。

(2)文件权限

        接下来的 字符中,以 三个 为一组,且均为 rwx 的三个参数的 组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 

(3)chgrp 更改文件属组

chgrp [-R] 属组名 文件名-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上 -R 的参数,那么该目录下的所有文件的属组都会更改。

(4)chown 更改文件属性

① 更改文件所有者(owner)、更改文件所属组
chown [–R] 所有者 文件名
chown [-R] 所有者:属组名 文件名
② 更改文件 9 个属性

        Linux 文件属性有 两种设置方法,一种是数字,一种是符号。Linux 文件的 基本 权限 就有 九个,分别是 owner/group/others(拥有者/组/其他)三种身份 各有 自己的 read/write/execute 权限

// 数字修改
chmod [-R] xyz 文件或目录xyz : 数字类型的权限属性,为 rwx 属性数值的相加。
-R : 进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更

二、进程相关

1. ps(显示进程状态)

(1)显示系统中全部的进程信息

ps aux

(2)查找当前系统运行状态中指定的进程信息

ps -ef | grep ssh
// 以ssh为例

(3)当前系统运行状态中指定用户的进程信息

2. top(实时显示系统运行状态)

top -d 5    // 每隔5秒刷新一次信息
top -n 5    // 设定总显示次数为5次,随后自动退出

3. kill(杀死进程)

(1)结束某个指定的进程(数字为对应的 PID 值)

kill 9999

(2)强制结束某个指定的进程(数字为对应的 PID 值)

kilL -9 9999

4. netstat(显示网络状态)

(1)显示系统网络状态中的所有连接信息

netstat -a

(2)显示系统网络状态中的 UDP 连接信息

netstat -nu

(3)显示系统网络状态中的 UDP 连接端口号使用信息

netstat -apu

(4)显示网卡当前状态信息

netstat -i

(5)显示网络路由表状态信息

netstat -r

(6)找到某个服务所对应的连接信息

netstat -ap | grep ssh

相关文章:

【Linux篇】面试——用户和组、文件类型、权限、进程

目录 一、权限管理 1. 用户和组 (1)相关概念 (2)用户命令 ① useradd(添加新的用户账号) ② userdel(删除帐号) ③ usermod(修改帐号) ④ passwd&…...

PET-文件包含

include发生错误报warning,继续执行。require发生错误直接error,不继续执行 无视扩展名,只要能解析,就能当可执行文件执行,哪怕文件后缀或没后缀 1 条件竞争 pass17 只需要知道tmp的路径。把xieshell.jpg上传&…...

实现uniapp-微信小程序 搜索框+上拉加载+下拉刷新

pages.json 中的配置 { "path": "pages/message", "style": { "navigationBarTitleText": "消息", "enablePullDownRefresh": true, "onReachBottomDistance": 50 } }, <template><view class…...

PostgreSQL 修改字段类型但是存在视图依赖

其实视图的存在与否在数据库界一直是一个话题。用好视图可以简化程序的很多代码&#xff0c;用不好视图不仅会给维护带来很多的不便&#xff0c;也会造成很大的性能问题。下面我从维护方面给出案例&#xff0c;以及当存在这种问题的时候&#xff0c;如何去解决这个问题。 假设…...

基于.NET 9实现实时进度条功能:前后端完整示例教程

要在基于.NET 9的应用中实现进度条功能&#xff0c;我们可以通过HttpContext.Response来发送实时的进度更新到前端。以下是一个简单的示例&#xff0c;展示了如何在ASP.NET Core应用中实现这一功能。 但是&#xff0c;我在.net framework4.7.2框架下&#xff0c;实际不了HttpC…...

力扣 LeetCode 19. 删除链表的倒数第N个结点(Day2:链表)

解题思路&#xff1a; 快慢指针 class Solution {public ListNode removeNthFromEnd(ListNode head, int n) {ListNode dummy new ListNode(-1);dummy.next head;ListNode fast dummy;ListNode slow dummy;for (int i 0; i < n; i) {fast fast.next;}while (fast.ne…...

音频格式转换

一、场景 项目需求需要App实现声纹识别功能&#xff0c;调用科大讯飞接口&#xff1a; 声纹识别 API 文档 | 讯飞开放平台文档中心 其接口要求音频文件格式为mp3 二、问题产生 在安卓端根据官方文档说明&#xff0c;系统并不支持直接录制mp3格式音频&#xff0c;支持格式如…...

npm list @types/node 命令用于列出当前项目中 @types/node 包及其依赖关系

文章目录 作用示例常用选项示例命令注意事项 1、实战举例**解决方法**1. **锁定唯一的 types/node 版本**2. **清理依赖并重新安装**3. **设置 tsconfig.json 的 types**4. **验证 Promise 类型支持** **总结** npm list types/node 命令用于列出当前项目中 types/node 包及其…...

【Spring】Spring框架中有有哪些常见的设计模式

Spring 框架中广泛运用了多种设计模式&#xff0c;今天让我们来学习一下 1. 单例模式&#xff08;Singleton Pattern&#xff09; 用途&#xff1a;在Spring框架中&#xff0c;Bean默认是单例的&#xff0c;也就是说在容器中每种类型的Bean只有一个实例。这个设计可以节省资源…...

提升百度排名的有效策略与技巧解析

内容概要 提升百度排名对于网站的成功至关重要。首先&#xff0c;了解百度排名的基本原则&#xff0c;掌握搜索引擎是如何评估网页质量的&#xff0c;是优化过程中不可或缺的一部分。搜索引擎越来越倾向于将用户需求放在首位&#xff0c;因此提供高质量的内容和良好的用户体验…...

【Linux】Linux下查看cpu信息指令(top/mpstat/iostat/pidstat)说明

top命令 top(1) - Linux manual page (man7.org) top查看总的CPU利用率 us: 用户空间消耗的CPU资源占比&#xff0c;进程在用户态执行函数调用&#xff0c;编解码消耗的都是us sy: 内核空间消耗的CPU资源占比&#xff0c;进程调用系统调用达到内核后会增加sy的消耗 ni&…...

HDLBIts习题(3):使用冒号表示位宽时,冒号两端必须是常量

&#xff08;1&#xff09;易错习题1&#xff1a;Circuits - Combinational Logic - Multiplexers - 256-to-1 4bit multiplexer 使用冒号表示位宽时&#xff0c;冒号两端必须是常量&#xff0c;因此如果使用变量&#xff0c;可以使用位拼接的方法。 &#xff08;2&#xff09;…...

C++20协程详解

文章目录 什么是协程为什么需要协程什么时候使用协程协程的类别C20的协程协程的使用关键字co_wait框架一阶段完成数据交换co_yieldco_return 什么是协程 我们在学习编程的过程中&#xff0c;逐渐从单线程&#xff0c;到多线程&#xff0c;再到异步编程和并发处理 这些异步与并…...

Chromium 中chrome.system.display扩展接口定义c++

一、chrome.system.display 使用 system.display API 查询展示元数据。 权限 system.display 类型 ActiveState Chrome 117 及更高版本 用于指示系统是否检测到和使用显示屏的枚举。如果系统未检测到显示屏&#xff08;可能断开连接&#xff0c;或因睡眠模式等原因而被视…...

容器docker的ulimit

Ulimit 在linux里ulimit命令可以对shell生成的进程的资源进行限制。 常用的ulimit限制 打开文件句柄数core文件大小设置进程能够消耗的虚拟内存设置用户能够打开的进程数目 不太常用的ulimit限制 设置数据段的最大值.单位:kbytes 设置创建文件的最大值.单位:blocks 设置在…...

一、HTML

一、基础概念 1、浏览器相关知识 这五个浏览器市场份额都非常大&#xff0c;且都有自己的内核。 什么是内核&#xff1a; 内核是浏览器的核心&#xff0c;用于处理浏览器所得到的各种资源。 例如&#xff0c;服务器发送图片、视频、音频的资源&#xff0c;浏览…...

使用Geekbench6软件对真实和虚拟的苹果桌面系统(macOS)进行打分比较

前言 感觉VMWare安装的MacOS使用起来非常的慢&#xff0c;所以特意用打分软件GeekBench进行了评测。 一、Geekbench的安装 可以从官网直接进行下载&#xff0c; 链接是&#xff1a; 二、Geekbench的直接使用 2.1、真机的信息 2.2、虚拟机的信息 三、打分的比较 3.1、真机…...

lua入门教程:随机数

在Lua中&#xff0c;生成随机数是通过math库中的math.random函数来实现的。这个函数可以生成一个[0, 1)区间内的随机浮点数。如果你需要生成其他范围内的随机数&#xff0c;或者需要整数类型的随机数&#xff0c;可以通过一些简单的数学运算来调整math.random的输出。 以下是如…...

华为大咖说 | 浅谈智能运维技术

本文分享自华为云社区&#xff1a;华为大咖说 | 浅谈智能运维技术-云社区-华为云 本文作者&#xff1a;李文轩 &#xff08; 华为智能运维专家 &#xff09; 全文约2695字&#xff0c;阅读约需8分钟 在大数据、人工智能等新兴技术的加持下&#xff0c;智能运维&#xff08;AI…...

creo toolkit二次开发学习之获取任意选择模型作为元件,并进行获取约束等

获取任意选择模型作为元件进行操作前&#xff0c;先了解组件路径和程序集的构成&#xff1a;creo toolkit二次开发学习之程序集&#xff08;ProAsmcomp&#xff09;和装配体组件路径对象&#xff08;ProAsmcomppath&#xff09;-CSDN博客 代码如下 ProError test1() {ProError…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

如何在看板中体现优先级变化

在看板中有效体现优先级变化的关键措施包括&#xff1a;采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中&#xff0c;设置任务排序规则尤其重要&#xff0c;因为它让看板视觉上直观地体…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要&#xff1a;设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP&#xff08;Work-in-Progress&#xff09;弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中&#xff0c;设立专门的紧急任务通道尤为重要&#xff0c;这能…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作

一、上下文切换 即使单核CPU也可以进行多线程执行代码&#xff0c;CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短&#xff0c;所以CPU会不断地切换线程执行&#xff0c;从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案

JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停​​ 1. ​​安全点(Safepoint)阻塞​​ ​​现象​​:JVM暂停但无GC日志,日志显示No GCs detected。​​原因​​:JVM等待所有线程进入安全点(如…...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...