Linux---进程/磁盘管理

文章目录

  • 目录

    文章目录

    一.Linux中进程的概念

    二.显示系统执行的进程

    2.1: ps 命令

    2.2 top 命令

    三.终止进程 

    四.磁盘分区


一.Linux中进程的概念

        在Linux中,进程是指操作系统中正在执行的程序的实例。每个进程都由操作系统分配了独立的内存空间,用于存储程序的指令、数据和运行时的堆栈等信息。进程之间相互独立,彼此不会直接影响。

        Linux操作系统使用进程来实现多任务执行。进程可以执行各种不同的任务,包括运行用户应用程序、执行系统服务以及管理系统资源等。每个进程都有自己的唯一标识符(PID),可以通过PID来识别和管理进程。

        进程之间可以通过进程间通信(IPC)机制进行相互通信和数据交换。常用的IPC机制包括管道、消息队列、共享内存和信号等。

进程的运行状态:

Linux中,进程有以下几种状态:

  1. 运行态(Running):正在执行的进程。

  2. 就绪态(Ready):等待CPU执行的进程。

  3. 僵尸态(Zombie):已经结束,但是父进程还没有回收资源的进程。

  4. 停止态(Stopped):因为某种原因暂停执行的进程,例如收到了信号SIGSTOP。

磁盘,内存,CPU的区别

  • CPU是中央处理器的核心,负责处理各种计算任务和进程。
  • 内存又称运行内存,是服务器用于正在运行的程序,进程和数据的地方。
  • 硬盘用于存储数据和文件。

二.显示系统执行的进程

2.1: ps 命令

ps命令用于显示当前系统正在执行的进程,常用的参数:

-e:显示当前系统正在执行的权限
-f:显示进程的详细信息,包括进程的PID,父进程PID,进程状态等
-u:显示指定用户的进程

示例代码:

[root@localhost1 ~]# ps -ef#按照CPU使用率进行升序排序
ps -aux --sort %cpu#按照cpu使用率降序排序
ps -aux --sort -%cpu

示例输出:

UID          PID    PPID  C STIME TTY          TIME CMD
root           2       0  0 11:58 ?        00:00:00 [kthreadd]
root           3       2  0 11:58 ?        00:00:00 [rcu_gp]
root           4       2  0 11:58 ?        00:00:00 [rcu_par_gp]
root           5       2  0 11:58 ?        00:00:00 [netns]
root           7       2  0 11:58 ?        00:00:00 [kworker/0:0H-events_highpri]
root           9       2  0 11:58 ?        00:00:00 [kworker/0:1H-events_highpri]

在上面1输出中,每一列的含义如下:

  • UID:进程所属于的用户 
  • PID:表示用户的进程
  • PPID:父进程的PID
  • C:CPU的使用情况,表示进程在CPU上占用的时间
  • STIME:进程的启动时间
  • TTY:进程所在的终端
  • TIME:进程运行的时长
  • CMD:进程执行的命令

2.2 top 命令

top命令用于实时监控系统的性能和资源使用情况,并按照内存或CPU使用率进行排序。

示例代码:

[root@localhost1 ~]# top

 示例输出:

top - 15:51:20 up  3:52,  2 users,  load average: 0.00, 0.00, 0.03
Tasks: 303 total,   1 running, 297 sleeping,   4 stopped,   1 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.2 hi,  0.0 si,  0.0 st
MiB Mem :   1743.7 total,     83.1 free,   1418.2 used,    417.4 buff/cache
MiB Swap:   2048.0 total,   1703.2 free,    344.8 used.    325.5 avail MemPID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND36220 mysql     20   0 1775464 430940  36396 S   0.7  24.1   0:22.88 mysqld36424 root      20   0       0      0      0 I   0.3   0.0   0:01.56 kworker/0:2-pm36438 root      20   0  226140   4412   3440 R   0.3   0.2   0:00.05 top1 root      20   0  174376  13572   6052 S   0.0   0.8   0:01.37 systemd2 root      20   0       0      0      0 S   0.0   0.0   0:00.02 kthreadd3 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_gp4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_par_gp5 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 netns

 示例输出的上半部分含义如下:

  • 当前时间:15:51:20
  • 系统运行时间:3小时52分钟
  • 当前有2个用户登录系统
  • 运行队列的平均负载情况:最近1分钟内的平均负载为0.00,最近5分钟内的平均负载为0.00,最近15分钟内的平均负载为0.03
  • 任务情况:总共有303个任务,其中有1个正在运行,297个正在睡眠,4个被暂停,1个为僵尸进程
  • CPU使用率情况:用户空间占用CPU时间为0.0%,内核空间占用CPU时间为0.0%,改变过优先级进程占用CPU时间为0.0%,空闲CPU时间为99.8%,等待磁盘I/O操作占用CPU时间为0.0%,硬件中断占用CPU时间为0.2%,软中断占用CPU时间为0.0%,虚拟化占用CPU时间为0.0%
  • 内存使用情况:总共有1743.7 MiB内存,其中有83.1 MiB空闲,1418.2 MiB被使用,417.4 MiB被用作缓存
  • 交换空间使用情况:总共有2048.0 MiB交换空间,其中有1703.2 MiB空闲,344.8 MiB被使用,325.5 MiB可用于内存回收

下半部分含义:

三.终止进程 

3.1 kill命令

kill 命令用于终止进程

示例代码:

[root@localhost1 ~]# kill 添加PID

四.磁盘分区

        在磁盘创建或格式化时,指定文件系统格式类型可以确保磁盘正确的被识别和挂载,以及提供适合的读写性能和功能。同时,不同的文件系统格式还有不同的特性,如支持文件大小、文件系统大小等方面的限制,需要根据需求选择适合的格式类型。

        通过分区可以将操作系统、应用程序和用户数据分开存储。这样,如果需要重新安装操作系统或者更换硬盘,只需要备份和恢复对应的分区,而不影响其他分区。

        磁盘中的最小存储单位是扇区,一个扇区512个字节,从数据存放角度来看,一个数据块默认4KB(4096字节)相当于8个扇区。

Linux系统中常见的分区:

  1. 根分区(/):用于安装操作系统和系统文件,包括/boot和/目录。

  2. 交换分区(swap):用于虚拟内存,当物理内存不足时,用来存储不常用的内存数据。

  3. /home分区:用于存储用户的个人文件和配置文件。

  4. /var分区:用于存储系统日志文件、数据库文件和其他变化较频繁的文件。

  5. /tmp分区:用于临时文件的存储,存放系统和应用程序临时生成的文件。

  6. /boot分区:用于存储启动加载器和内核映像文件。

  7. 其他分区:根据需要,可以创建其他独立分区,如/data用于存储数据或/app用于存放应用程序文件。

Linux磁盘数据写入原理:
Linux中磁盘需要通过操作系统对数据进行写入,默认的磁盘为dos,磁盘首先调用主引导程序mbr(占用一个扇区),该程序默认前446个字节存放主引导程序

示例操作:

首先查看你磁盘分区情况

[root@localhost ~]# fdisk -l
Disk /dev/nvme0n1:20 GiB,21474836480 字节,41943040 个扇区
磁盘型号:VMware Virtual NVMe Disk
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0f127cc4设备           启动    起点     末尾     扇区 大小 Id 类型
/dev/nvme0n1p1 *       2048  2099199  2097152   1G 83 Linux
/dev/nvme0n1p2      2099200 41943039 39843840  19G 8e Linux LVMDisk /dev/nvme0n2:30 GiB,32212254720 字节,62914560 个扇区
磁盘型号:VMware Virtual NVMe Disk
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xf53d2908Disk /dev/mapper/rhel-root:17 GiB,18249416704 字节,35643392 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节Disk /dev/mapper/rhel-swap:2 GiB,2147483648 字节,4194304 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@localhost ~]# fdisk /dev/nvme0n2欢迎使用 fdisk (util-linux 2.37.4)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

创建磁盘分区:

[root@localhost ~]# fdisk /dev/nvme0n2欢迎使用 fdisk (util-linux 2.37.4)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。命令(输入 m 获取帮助):n
分区类型p   主分区 (0 primary, 0 extended, 4 free)e   扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认  1): 1
第一个扇区 (2048-62914559, 默认 2048):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-62914559, 默认 62914559): +20G创建了一个新分区 1,类型为“Linux”,大小为 20 GiB。命令(输入 m 获取帮助):wq
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。

格式化分区+临时挂载:

#对新创建的磁盘分区进行格式化
[root@localhost ~]# mkfs.xfs /dev/nvme0n2p1
#将新分区挂载到下载安装Oracle数据库的目录如:/oracle (挂载后该目录所有下载内容将挂载到新建分区)
[root@localhost ~]# mount /dev/nvme0n2p1 /oracle

永久挂载

vim /etc/fstab
文件系统名称      挂载点目录     格式化类型    文件参数信息        开机是否检查/dev/nvme0n2p1   /install       xfs           默认defaults       默认0通过mount -a 或 reboot 使配置文件生效


 


总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/25130.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

共识算法之争(PBFT,Raft,PoW,PoS,DPoS)

文章目录 共识算法拜占庭容错技术(Byzantine Fault Tolerance,BFT)PBFT:Practical Byzantine Fault Tolerance,实用拜占庭容错算法Raft协议POW(Proof of Work)工作量证明机制POSDPoS(Delegated Proof of St…

多关键字排序

成绩排序 查看测评数据信息 给出班里某门课程的成绩单&#xff0c;请你按成绩从高到低对成绩单排序输出&#xff0c;如果有相同分数则名字字典序小的在前。 输入格式 第一行为n (0 < n < 20)&#xff0c;表示班里的学生数目&#xff1b; 接下来的n行&#xff0c;每行为每…

[创业之路-115] :互联网时代的创客文化与创客文化在企业中的应用

目录 一、什么是创客文化 》美国人的文化基因 1.1、创客文化的起源与发展 1.2、创客文化的特点 1.3、创客文化的应用与价值 1.4、创客文化的挑战与解决方案 二、创业文化对新职场人思维方式的转变 》美国人的文化基因 2.1、从固定思维到创新思维 2.2、从单打独斗到团队…

08-Eureka-eureka原理分析

08-Eureka-eureka原理分析 1.服务调用出现的问题: 1.服务消费者该如何获取服务提供者的地址信息? 2.如果有多个服务提供者,消费者该如何选择? 3.消费者如何得知服务提供者的健康状态? 2.Eureka的作用(原理): 在Eureka的结构当中,他分成了两个概念,两个角色。第…

LNWT--篇章三小测

问题1: BERT训练时候的学习率learning rate如何设置? 在训练初期使用较小的学习率&#xff08;从 0 开始&#xff09;&#xff0c;在一定步数&#xff08;比如 1000 步&#xff09;内逐渐提高到正常大小&#xff08;比如上面的 2e-5&#xff09;&#xff0c;避免模型过早进入…

Lua 元表(Metatable)深入解析

Lua 元表&#xff08;Metatable&#xff09;深入解析 Lua 是一种轻量级的编程语言&#xff0c;因其简洁性和强大的扩展能力而被广泛应用于游戏开发、脚本编写和其他领域。在 Lua 中&#xff0c;元表&#xff08;Metatable&#xff09;是一个非常重要的概念&#xff0c;它允许我…

hexo更新流程及解析

文章目录 文件解析md文件头部内容&#xff08;1&#xff09;文章顶置&#xff0c;排序&#xff08;2&#xff09;文章隐藏&#xff08;3&#xff09;分类和标签&#xff08;4&#xff09;其他属性 更新博客注意安装插件注意&#xff1a;1、关于中括号的问题 文件解析 . ├──…

【Redis】Redis实现分布式锁合理的控制锁的有效时长的方法

在分布式系统中&#xff0c;合理地控制 Redis 分布式锁的有效时长&#xff08;即过期时间&#xff09;非常重要&#xff0c;以确保锁既能防止死锁又能提供高可用性。设置合理的过期时间可以防止客户端在持有锁期间崩溃而导致其他客户端无法获取锁的情况&#xff0c;同时也能确保…

[数据集][目标检测]足球场足球运动员身份识别足球裁判员数据集VOC+YOLO格式312张4类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;312 标注数量(xml文件个数)&#xff1a;312 标注数量(txt文件个数)&#xff1a;312 标注类别…

调查显示各公司在 IT 安全培训方面存在差距

网络安全提供商 Hornetsecurity 最近进行的一项调查显示&#xff0c;许多组织的 IT 安全培训存在严重缺陷。 这项调查是在伦敦举行的 Infosecurity Europe 2024 期间发布的&#xff0c;调查发现 26% 的组织没有为其最终用户提供任何 IT 安全培训。 这些调查结果来自世界各地的…

阿里云活动推荐:AI 应用 DevOps 新体验

活动简介 阿里云新活动&#xff0c;体验阿里云的云效应用交付平台。体验了下&#xff0c;总体感觉还不错。平台把常规的开发过程封装成了模板&#xff0c;部署发布基本都是一键式操作&#xff0c;并且对自定义支持的比较好。 如果考虑将发布和部署搬到云上&#xff0c;可以玩一…

代码随想录算法训练营DAY32|122.买卖股票的最佳时机II、55. 跳跃游戏、45.跳跃游戏II

122.买卖股票的最佳时机II 题目链接&#xff1a;122.买卖股票的最佳时机II class Solution(object):def maxProfit(self, prices):""":type prices: List[int]:rtype: int"""max_profit 0profit 0buyin_idx 0for i in range(len(prices)):p…

力扣第185题:部门工资前三高的员工

关注微信公众号 数据分析螺丝钉 免费领取价值万元的python/java/商业分析/数据结构与算法学习资料 在本篇文章中&#xff0c;我们将详细解读力扣第185题“部门工资前三高的员工”。通过学习本篇文章&#xff0c;读者将掌握如何使用SQL语句来解决这一问题&#xff0c;并了解相关…

使用selenium/drissionpage时如何阻止chrome自动跳转http到https

加个启动参数&#xff1a; --allow-running-insecure-content没了 参考文章&#xff1a;List of Chromium Command Line Switches

Directory Opus 13.6 可用的apk文件右键菜单脚本

// apk文件的右键经过adb安装的脚本,可以在多个设备中选择function OnClick(clickData) {try {// 检查是否选中了文件if (clickData.func.sourcetab.selected_files.count 0) {DOpus.Output("没有选中任何文件");return;}// 获取选中的文件名var selectedFile clic…

JSTL知识点讲解与配置

JSTL&#xff08;JavaServer Pages Standard Tag Library&#xff09;是Java EE平台中的一个标准库&#xff0c;提供了一组用于在JSP&#xff08;JavaServer Pages&#xff09;中简化和标准化常见任务的标签。这些标签封装了很多常见的JSP功能&#xff0c;可以使得JSP页面更加简…

18-Nacos-NacosRule负载均衡

18-Nacos-NacosRule负载均衡 1.根据集群负载均衡 1.修改order-service中的application.yml,设置集群为HZ: spring:cloud:nacos:server-addr: localhost:8848 #nacos服务端地址discovery:cluster-name: HZ #配置集群名,也就是机房位置,例如:HZ,杭州2.然后在order-servi…

服务部署:Ubuntu安装搭建docker

1. 更新系统包 首先&#xff0c;确保你的系统包是最新的&#xff1a; sudo apt-get update sudo apt-get upgrade 2. 安装必要的依赖包 安装一些必要的依赖包&#xff0c;以便后续添加 Docker 的 APT 源&#xff1a; sudo apt-get install apt-transport-https ca-certifi…

LabVIEW软件开发人员如何在软件开发中捕捉需求?

在LabVIEW软件开发过程中&#xff0c;捕捉需求是确保项目成功的关键步骤。以下是一个系统化的方法&#xff0c;帮助LabVIEW软件开发人员有效地捕捉、分析和管理需求。 步骤1&#xff1a;需求收集 1.1 与客户沟通 与客户进行初步沟通&#xff0c;了解项目的背景、目标和期望。…

天工开物 #14 分析时序数据:从 InfluxQL 到 SQL 的演变

近年来&#xff0c;时序数据的增长是 Data Infra 领域一个不容忽视的趋势。这主要得益于万物互联带来的自然时序数据增长&#xff0c;以及软件应用上云和自身复杂化后的可观测性需求。前者可以认为是对联网设备的可观测性&#xff0c;而可观测性主要就建构在设备或应用不断上报…