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

Linux磁盘管理双雄:lsblk与df深度解析

如何理解

在Linux系统管理的日常工作里,磁盘管理占据着极为重要的地位,这里重点介绍lsblkdf这两个命令。

一、lsblk命令:呈现磁盘物理架构

lsblk是用于罗列块设备信息的实用命令,它以直观的树状结构呈现系统中的块设备,帮助我们清晰地把握磁盘、分区及逻辑卷等组件间的层次关联。

(一)命令参数

lsblk命令的参数不算多,但都很实用。比如,-f参数能展示文件系统的相关信息,包括文件系统类型、卷标等;-d参数可用于仅呈现块设备本身,不显示其下的分区等子设备。不过在日常使用中,最常见的还是直接运行lsblk,以此获取块设备的基础信息。

(二)输出信息解读

以实际输出为例,在lsblk的结果中,我们能看到如下信息:

NAMEMAJ:MINRMSIZEROTYPEMOUNTPOINT
sda8:0050G0disk
├─sda18:10600M0part/boot/efi
├─sda28:201G0part/boot
└─sda38:3048.4G0part
├─rhel - root253:00243.4G0lvm/
└─rhel - swap253:105G0lvm
sdc8:320200G0disk
└─sdc18:330200G0part
├─rhel - root253:00243.4G0lvm/
  • NAME:块设备的名称。例如,sda代表系统中的第一块SCSI磁盘,sda1sda磁盘的第一个分区。
  • MAJ:MIN:主设备号与次设备号,用于在系统中唯一标识设备。
  • RM:表明设备是否可移动,0代表不可移动,1代表可移动。
  • SIZE:清晰显示设备的容量大小。
  • RO:判断设备是否为只读设备,0意味着可读写,1表示只读。
  • TYPE:明确设备的类型,常见的有disk(磁盘)、part(分区)、lvm(逻辑卷)等。
  • MOUNTPOINT:即设备在文件系统中的挂载点,也就是设备接入文件系统的具体位置。

(三)特殊现象剖析

在输出结果中,我们常常会留意到一个有趣的现象:rhel - root逻辑卷的容量超过了单个设备sdasdc的容量。这是因为逻辑卷是借助逻辑卷管理器(LVM)创建的,它具备跨越多个物理设备整合空间的能力。在这个例子中,/dev/mapper/rhel - root这个逻辑卷实际上整合了sda3sdc1的空间。通过LVM技术,系统将来自不同物理分区(sda3sdc1)的空间组合在一起,形成了一个统一的逻辑卷rhel - root ,并挂载在根目录/下。这就解释了为什么rhel - root的容量好像大于了其“树根”设备的容量,其实**当其大于树根的时候,一定能够在别的”树根“下找到一个同名的“树枝” **。

二、df命令:聚焦文件系统使用状况

df命令主要用于展示磁盘分区上的可用空间,通过它,我们能够深入了解文件系统的整体使用情况。

(一)命令参数

df命令常用参数中,-h最为常用。它能以人类易于理解的格式(如GB、MB等)呈现磁盘空间信息,极大提升了数据的可读性。此外,-T参数可用于显示文件系统的类型,-i参数则专注于展示inode的使用情况。

(二)输出信息解读

以下是df -h的输出示例:

FilesystemSizeUsedAvailUse%Mounted on
devtmpfs32G032G0%/dev
tmpfs32G032G0%/dev/shm
tmpfs32G3.1G29G10%/run
/dev/mapper/rhel - root244G226G18G93%/
/dev/sda21014M217M798M22%/boot
  • Filesystem:代表文件系统的名称,它既可能是设备文件(如/dev/mapper/rhel - root),也可能是特殊文件系统(如devtmpfs)。
  • Size:直观呈现文件系统的总容量大小。这里/dev/mapper/rhel - root显示的244G,就是整合了sda3sdc1空间后的逻辑卷总容量。
  • Used:明确显示已被占用的空间大小。
  • Avail:精准标示出当前可用的空间大小。
  • Use%:以百分比形式展现空间的使用率。
  • Mounted on:清晰指出文件系统的挂载点位置。在这个例子中,/dev/mapper/rhel - root挂载在根目录/ ,这与lsblkrhel - root逻辑卷的挂载点信息相对应,进一步表明了df中显示的/dev/mapper/rhel - root空间使用情况,对应的就是lsblk里整合了sda3sdc1空间后挂载在/rhel - root逻辑卷。

(三)与lsblk的差异及重点特性

值得特别强调的是,df命令只会呈现挂载点的情况,像未挂载的sda3sdb1,或者那些和当前文件系统使用情况无关的设备,是不会在df命令的输出中出现的。这是因为df命令的设计初衷就是为了让用户快速了解文件系统的空间占用状态,而非展示磁盘的物理结构细节。在df的输出中,/dev/mapper/rhel - root对应的空间信息,实际上反映的就是lsblk中挂载在/rhel - root逻辑卷(整合了sda3sdc1空间)的使用情况,二者存在紧密的对应关系。

三、lsblk与df命令的差异总结

(一)信息侧重点

lsblk着重于展现块设备的物理架构和层次脉络,让我们对磁盘的物理布局有全面而清晰的认知。而df命令则将核心关注点置于文件系统的使用状况上,帮助我们洞悉系统中各个文件系统的资源占用态势。

(二)数据呈现形式

lsblk以形象的树状结构展示信息,层次分明,设备间的层级关系一目了然;df则采用简洁的表格形式呈现数据,重点突出文件系统的空间使用各项指标。

(三)应用场景

当我们需要深入探究磁盘的物理构成,比如新添置一块磁盘后想明晰其分区状况,或者排查逻辑卷的创建是否准确无误时,lsblk无疑是首选工具。而当我们将目光聚焦于磁盘空间的使用情况,比如检查根目录空间是否告急,或者查看某个特定挂载点的剩余可用空间时,df命令便能大显身手。

相关文章:

Linux磁盘管理双雄:lsblk与df深度解析

在Linux系统管理的日常工作里,磁盘管理占据着极为重要的地位,这里重点介绍lsblk和df这两个命令。 一、lsblk命令:呈现磁盘物理架构 lsblk是用于罗列块设备信息的实用命令,它以直观的树状结构呈现系统中的块设备,帮助…...

C#里设计Modbus-RTU(Remote Terminal Unit)协议

Modbus-RTU(Remote Terminal Unit)是一种串行通信协议,广泛用于工业自动化领域,支持主从式(Master-Slave)通信架构。它是Modbus协议的两种传输模式之一(另一种是ASCII模式),具有高效、简洁、可靠性强的特点,常用于RS-485或RS-232物理层通信。 核心特性 物理层 通常基…...

spark学习内容总结

Spark运行架构总结 一、核心结构 Spark框架的核心是一个计算引擎,整体采用标准的master-slave结构。其中,Driver作为master,负责管理整个集群中的作业任务调度;Executor作为slave,负责实际执行任务。 二、核心组件 ‌…...

MySQL多表查询、事务与索引的实践与应用

摘要:本文围绕MySQL数据库操作展开,通过构建部门与员工管理、餐饮业务相关的数据库表,并填充测试数据,系统地阐述了多表查询的多种方式,包括内连接、外连接和不同类型的子查询,同时介绍了事务的处理以及索引…...

MySQL【8.0.41版】安装详细教程--无需手动配置环境

一、MySQL 介绍 1. 概述 MySQL 是一个开源的关系型数据库管理系统,由瑞典公司 MySQL AB 开发,现属于 Oracle 旗下。它基于 SQL(结构化查询语言)进行数据管理,支持多用户、多线程操作,广泛应用于 Web 应用、…...

FRP练手:hello,world实现

方案一:使用 Flask(推荐) from flask import Flaskapp Flask(__name__)app.route(/) def hello_world():return "你好啊世界"if __name__ __main__:# 监听所有网络接口(0.0.0.0),端口 3344app.…...

Mysql | 主从复制的工作机制

主从复制的工作机制 Mysql的主从复制 从库主要是读取主库的binlog日志来完成数据同步的, binlog中存储了对数据库所有修改SQL的语句。 首先Master开启BinLog二进制的写入。Slave从库通过ip、port、账号、密码链接到Master主数据库,链接成功后从库会向主数据库获取B…...

清明之后叙

经历了漫长的冬季,春天的脚步近了,要说讲这一年的开始,绝大数人说是从春季,但是我说应该是从冬季开始,中国传统讲冬至是一阳生,冬季收藏好了,开始收敛精气,养精蓄锐,好好…...

Docker新型容器镜像构建技术,如何正确高效的编写Dockerfile

一、容器与容器镜像之间的关系 说到Docker管理的容器不得不说容器镜像,主要因为容器镜像是容器模板,通过容器镜像我们才能快速创建容器。 如下图所示: Docker Daemon通过容器镜像创建容器。 二、容器镜像分类 操作系统类 CentOSUbuntu在do…...

Starrocks的Bitmap索引和Bloom filter索引以及全局字典

写这个的主要作用是梳理一下Starrocks的索引效率以及使用场景。 Starrocks Bitmap索引 原理: Bitmap 索引是一种使用 bitmap 的特殊数据库索引。bitmap 即为一个 bit 数组,一个 bit 的取值有两种:0 或 1。 每一个 bit 对应数据表中的一行&…...

从 0 到上线:Java 项目打包 Docker 镜像全流程实战

📖 摘要 本文是一份超详细的Java项目Docker化实战手册,从环境准备到最终上线,手把手带你完成整个容器化部署流程。你将学会: Docker基础概念与核心原理如何为Java项目编写高效的Dockerfile多阶段构建优化镜像体积镜像推送与容器…...

【符号引用和直接引用是什么?有什么作用?什么场景下使用?为什么符号引用和直接引用在常量池里?】

符号引用与直接引用详解 1. 符号引用(Symbolic Reference) 定义: 符号引用是编译阶段使用的抽象标识符,通过全限定名、方法签名等符号描述目标(如类、方法、字段)。它不涉及具体内存地址,仅作为…...

ESModule和CommonJS在Node中的区别

ESModule console.log(require);//>errorconsole.log(module);//>errorconsole.log(exports);//>errorconsole.log(__filename);//>errorconsole.log(__dirname);//>error全部报错commonjs console.log(require);console.log(module);console.log(exports);co…...

阿里发布实时数字人项目OmniTalker,实时驱动技术再突破~

简介 OmniTalker 是一个由 阿里巴巴集团 Tongyi Lab(通义实验室) 开发的研究项目,专注于实时文本驱动的说话头像生成技术。该项目旨在通过文本输入生成同步的语音和视频内容,同时保留参考视频中的音视频风格。以下是关于 OmniTalk…...

Kubernetes-如何进入某POD中

Kubernetes 如何进入某POD中 工作中需要进入pod中查询比如pod 网络等问题 步骤: 1、 查询某pod, 比如该pod 为namespace test 下的 ip 为 192.168.1.100 #查询namespace 列表 #kubectl get ns #查询该ns下ip 为 192.168.1.100的pod # kubectl -n test get pods …...

java导出postgis空间数据几何对象shapefile文件

项目开发中,需要java后端实现导出postgis空间数据几何对象shapefile文件,以便能直观查看数据详情。注意事项Shapefile 默认的几何字段名为 the_geom,若导出时未显式指定或字段名被修改,部分软件(如 ArcGIS、QGI&#x…...

蓝桥杯嵌入式按键长按双击

直接上代码这个代码里面我们简单实现了如果按键按下时间超过0.8秒K1的值增加,短按只增加一次,按键2长按K2值增加,按键3双击K1的值减1,按键4双击K2的值减1 #include "fun.h" #define long_press_time 800//定义长按时间…...

深入解析Java中的栈:从JVM原理到开发实践

一、栈的双重身份:JVM运行时数据区 vs 数据结构 1. JVM层面的栈 线程私有:每个线程独立拥有自己的栈 LIFO结构:后进先出的方法调用模型 栈帧存储:每个方法对应一个栈帧(Stack Frame) 2. 数据结构中的栈…...

408 计算机网络 知识点记忆(6)

前言 本文基于王道考研课程与湖科大计算机网络课程教学内容,系统梳理核心知识记忆点和框架,既为个人复习沉淀思考,亦希望能与同行者互助共进。(PS:后续将持续迭代优化细节) 往期内容 408 计算机网络 知识…...

从ETL到ELT:大数据时代下两者的选型建议及优势

随着大数据时代的到来,数据量呈爆炸式增长,数据类型日益复杂,ETL与ELT两种技术路径的抉择直接影响着数据处理效率。我们这次来深入解析下两种模式的本质差异与应用场景,为企业提供选型建议。 一、ETL架构的优势 ETL架构遵循“提…...

Java蓝桥杯习题一:for循环和字符串的应用

知道循环次数用for循环 练习题1 小明对数位中含有2.0.1.9的数字很感兴趣,在1到40中这样的数包含1.2.9.10至32.39.40,共28个,他们的和是574.请问,在1到2019中,所有这样的数的和是多少?(2019Jav…...

Windows 图形显示驱动开发-WDDM 2.0功能_分配用法跟踪

随着分配列表的消失,视频内存管理器 (VidMm) 不再能够查看特定命令缓冲区中引用的分配。 因此,VidMm 不再能够跟踪分配使用情况和处理相关同步。 此责任现在由用户模式驱动程序 (UMD) 承担。 具体而言,UMD 需要处理与直接 CPU 访问分配和重命…...

SpringMVC的请求-文件上传

文件上传客户端三要素 1. 表单项type“file” 2. 表单的提交方式是post 3. 表单的enctype属性是多部分表单形式&#xff0c;及enctype“multipart/form-data” <% page contentType"text/html;charsetUTF-8" language"java" %> <html> <he…...

MySQL表的增删查改(基础)

一.插入数据 数据准备 create table student(id INT,sn INT comment 学号,name VARCHAR(20) comment 姓名,qq_mail VARCHAR(20) comment QQ邮箱 ); 1.单行数据全列插入 INSERT INTO student VALUES (100, 10000, 唐三藏, NULL); INSERT INTO student VALUES (101, 10001, …...

C++初阶-C++的讲解1

目录 1.缺省(sheng)参数 2.函数重载 3.引用 3.1引用的概念和定义 3.2引用的特性 3.3引用的使用 3.4const引用 3.5.指针和引用的关系 4.nullptr 5.总结 1.缺省(sheng)参数 &#xff08;1&#xff09;缺省参数是声明或定义是为函数的参数指定一个缺省值。在调用该函数是…...

【NLP 面经 9.逐层分解Transformer】

如果我能给你短暂的开心 —— 25.4.7 一、Transformer 整体结构 1.Tranformer的整体结构 Transformer 的整体结构&#xff0c;左图Encoder和右图Decoder&#xff0c;下图是Transformer用于中英文翻译的整体结构&#xff1a; 可以看到 Transformer 由 Encoder 和 Decoder 两个…...

Diffusion Policy Visuomotor Policy Learning via Action Diffusion官方项目解读(二)(5)

运行官方代码库中提供的Colab代码&#xff1a;vision-based environment&#xff08;二&#xff09;&#xff08;5&#xff09; Network十八、类SinusoidalPosEmb&#xff0c;继承自nn.Module十八.1 def __init__()十八.2 def forward()总体说明 十九、类Downsample1d&#xff…...

西门子S7-1200PLC 工艺指令PID_Temp进行控温

1.硬件需求&#xff1a; 西门子PLC&#xff1a;CPU 1215C DC/DC/DC PLC模块&#xff1a;SM 1231 TC模块 个人电脑&#xff1a;已安装TIA Portal V17软件 加热套&#xff1a;带加热电源线以及K型热电偶插头 固态继电器&#xff1a;恩爵 RT-SSK4A2032-08S-F 其他&#xff1…...

【深度学习:理论篇】--Pytorch进阶教程

目录 1.神经网络 1.1.torch.nn 核心模块 1.2.定义神经网络 1.3.损失函数 1.4.反向传播 1.5.梯度更新 2.图片分类器 2.1.数据加载 2.2.卷积神经网络 2.3.优化器和损失 2.4.训练网络 2.5.测试网络 2.6.GPU上训练 3.数据并行训练--多块GPU 3.1.导入和参数 3.2.构造…...

卷积神经网络(CNN)基础

目录 一、应用场景 二、卷积神经网络的结构 1. 输入层&#xff08;Input Layer&#xff09; 2. 卷积层&#xff08;Convolutional Layer&#xff09; 3. 池化层&#xff08;Pooling Layer&#xff09; 最大池化&#xff08;max_pooling&#xff09;或平均池化&#xff08;…...

第 28 场 蓝桥入门赛 JAVA 完整题解

前言 本文总结了六个编程题目的解题思路与核心考点&#xff0c;涵盖基础语法、逻辑分析、贪心算法、数学推导等知识点。每个题目均从问题本质出发&#xff0c;通过巧妙的算法设计或数学优化降低复杂度&#xff0c;展现了不同场景下的编程思维与解题技巧。以下为各题的详细考点解…...

Python 网络请求利器:requests 包详解与实战

诸神缄默不语-个人技术博文与视频目录 文章目录 一、前言二、安装方式三、基本使用1. 发起 GET 请求2. 发起 POST 请求 四、requests请求调用常用参数1. URL2. 数据data3. 请求头 headers4. 参数 params5. 超时时间 timeout6. 文件上传 file&#xff1a;上传纯文本文件流7. jso…...

聊透多线程编程-线程基础-1.进程、线程基础概念

目录 一、进程 二、线程 三、进程与线程的关系 四、进程与线程的比较 注&#xff1a;本文多张图片来源于网络&#xff0c;如有侵权&#xff0c;请联系删除 一、进程 1. 进程的定义 进程是指在系统中正在运行的一个应用程序的实例&#xff0c;是操作系统进行资源分配和调…...

Android:Android Studio右侧Gradle没有assembleRelease等选项

旧版as是“Do not build Gradle task list during Gradle sync” 操作这个选项。 参考这篇文章&#xff1a;Android Studio Gradle中没有Task任务&#xff0c;没有Assemble任务&#xff0c;不能方便导出aar包_gradle 没有task-CSDN博客 在as2024版本中&#xff0c;打开Setting…...

LeetcodeBST2JAVA

235.二叉搜索树的最近公共祖先 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个结点 p、q&#xff0c;最近公共祖先表示为一个结点 x&#xff0c;满足 x 是 p、q 的祖先且 x 的深度尽可能大&…...

如何创建单独的城市活码?活码能永久使用吗?

如何创建单独的城市活码 创建单独的城市活码通常需要借助专业的第三方工具&#xff0c;以下是具体步骤&#xff1a; 1.选择合适的工具 推荐使用专业的活码生成工具。 2.注册并登录 访问官网&#xff0c;完成注册并登录。 3.创建活码 在首页点击“创建活码”按钮。输入活码…...

用户画像(https://github.com/memodb-io/memobase)应用

1.下载项目的源代码,我们要先启动后端,用docker启动 cd src/server cp .env.example .env cp ./api/config.yaml.example ./api/config.yaml 这里我的配置内容如下config.yaml(因为我是调用的符合openai格式的大模型,所以我没改,如果要是别的大模型的话,需要自己再做兼容…...

基于形状补全和形态测量描述符的腓骨游离皮瓣下颌骨重建自动规划|文献速递-深度学习医疗AI最新文献

Title 题目 Automated planning of mandible reconstruction with fibula free flap basedon shape completion and morphometric descriptors 基于形状补全和形态测量描述符的腓骨游离皮瓣下颌骨重建自动规划 01 文献速递介绍 因创伤、骨髓炎和肿瘤而接受下颌骨节段切除术…...

Python3笔记之号称替代pip的uv包管理器

uv是什么&#xff1f; uv&#xff0c;这是一个由 Astral 团队开发的极快速的Python包和项目管理工具&#xff0c;用Rust语言编写。它集成了多种功能&#xff0c;旨在替代pip、pip-tools、pipx、poetry、pyenv、twine、virtualenv等多个工具&#xff0c;提供更高效、更全面的Py…...

面试如何应用大模型

在面试中,如果被问及如何应用大模型,尤其是面向政务、国有企业或大型传统企业的数字化转型场景,你可以从以下几个角度进行思考和回答: 1. 确定应用大模型的目标与痛点 首先,明确应用大模型的业务目标,并结合企业的实际需求分析可能面临的痛点。这些企业通常会关注如何提…...

贪心算法:部分背包问题深度解析

简介&#xff1a; 该Java代码基于贪心算法实现了分数背包问题的求解&#xff0c;核心通过单位价值降序排序和分阶段装入策略实现最优解。首先对Product数组执行双重循环冒泡排序&#xff0c;按wm(价值/重量比)从高到低重新排列物品&#xff1b;随后分两阶段装入&#xff1a;循环…...

Java程序的基本规则

java程序的基本规则 1.1 java程序的组成形式 Java程序是一种纯粹的面向对象的程序设计语言&#xff0c;因此Java程序 必须以类&#xff08;class&#xff09;的形式存在&#xff0c;类&#xff08;class&#xff09;是Java程序的最小程序 单位。Java程序不允许可执行性语句…...

机器学习-线性回归模型

机器学习-线性回归模型 线性模型笔记1、向量化2、线性回归模型公式3、损失函数&#xff08;代价函数&#xff09;4、梯度下降法5、Python 实现示例 6、使用 sklearn 实现线性回归模型✅ 基本步骤如下&#xff1a;&#x1f4e6; 示例代码&#xff1a; 7、numpy中的切片X[n,:]是取…...

Linux 入门指令(1)

&#xff08;1&#xff09;ls指令 ls -l可以缩写成 ll 同时一个ls可以加多个后缀 比如 ll -at (2)pwd指令 &#xff08;3&#xff09;cd指令 cd .是当前目录 &#xff08;4&#xff09;touch指令 &#xff08;5&#xff09;mkdir指令 &#xff08;6&#xff09;rmdir和rm…...

密码学基础——AES算法

目录 一、算法背景 AES算法与Rijndael算法 二、算法特点 1.安全性高 2.效率高 3.灵活性好 三、算法说明 3.1状态、种子密钥和轮数的概念 &#xff08;1&#xff09;状态&#xff08;State&#xff09; 定义 结构&#xff1a;通常状态是一个 4N 字节的矩阵&#xff0…...

淘宝API与小程序深度联动:商品详情页“一键转卖”功能开发

要实现淘宝 API 与小程序深度联动&#xff0c;开发商品详情页 “一键转卖” 功能&#xff0c;可按以下步骤进行&#xff1a; 1. 前期准备 淘宝开放平台接入&#xff1a;在淘宝开放平台注册开发者账号&#xff0c;创建应用&#xff0c;获取 App Key 和 App Secret&#xff0c;…...

深入解析 C++ 设计模式:原理、实现与应用

一、引言 在 C 编程的广袤领域中&#xff0c;设计模式犹如闪耀的灯塔&#xff0c;为开发者指引着构建高效、可维护软件系统的方向。设计模式并非神秘莫测的代码魔法&#xff0c;实际上&#xff0c;我们在日常编程中或许早已与之打过交道。简单来说&#xff0c;设计模式常常借助…...

配置与管理代理服务器

安装squid Squid软件包在标准yum存储库中可用&#xff0c;因此&#xff0c;我们正在使用yum命令安装Squid代理。 [rootserver ~]# dnf install -y squid //安装 [rootserver ~]#systemctl enable --now squid.service [rootserver ~]#systemctl status squid.serv…...

RuntimeError: CUDA error: invalid device function

CUDA内核编译时的架构设置与当前GPU不兼容导致 -- The CUDA compiler identification is NVIDIA 11.5.119 &#xff08;实际为 12.6&#xff09; 解决方案&#xff1a; 1. 查看显卡计算能力 2. CMakeLists.txt 修改 set_target_properties(my_library PROPERTIESCUDA_AR…...

vulnhub:sunset decoy

靶机下载地址https://www.vulnhub.com/entry/sunset-decoy,505/ 渗透过程 简单信息收集 nmap 192.168.56.0/24 -Pn # 确定靶机ip&#xff1a;192.168.56.121 nmap 192.168.56.121 -A -T4 # 得到开放端口22,80 在80端口得到save.zip&#xff0c;需要密码解压。 john破解压缩…...