云计算【第一阶段(18)】磁盘管理与文件系统 分区格式挂载(一)
目录
一、磁盘基础
二、磁盘结构
2.1、机械硬盘
2.2、固态硬盘
2.3、扩展移动硬盘
2.4、机械磁盘的一些计算(了解)
2.5、磁盘接口类型
二、Linux 中使用的文件系统类型
2.1、磁盘分区的表示
2.1.1、主引导记录(MBR)
2.1.2、Linux中将硬盘、分区等设备均表示为文件
2.2、磁盘的分区结构
2.2.1、扩展IDE设备和SCSI设备
2.3、文件系统类型
三、检测并确认新硬盘
四、规划硬盘中的分区
五、创建文件系统
六、挂载,卸载文件系统
七、查看磁盘使用情况
一、磁盘基础
磁盘(disk)是指利用磁记录技术存储数据的存储器。
磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。
早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘),如今常用的磁盘是硬磁盘(Hard disk,简称硬盘)。
也就是现在说的硬盘就相当于是说我们的磁盘。
二、磁盘结构
磁盘分为:
- 机械硬盘(HDD)
- 和固态硬盘(SSD)
2.1、机械硬盘
由盘片、磁头、盘片转轴及控制电机、磁头控制器、数据转换器、接口和缓存等部分组成。磁头通过沿盘片半径方向运动,加上盘片的高速旋转,定位在指定位置上进行数据的读写操作。
速度较慢,通常约为120MB/S
通常具有较大的存储容量,便宜!!,适合需要大量存储空间的场景。
机械硬盘有 磁盘、磁道、扇区、柱面,这都是机械硬盘的概念,固态硬盘没有这些东西。
磁道、扇区
每个盘片被划分为一个个磁道,每个磁道又划分为一个个扇区(每个扇区存放512字节
的数据,是硬盘的最小存储单位)。其中,最内侧磁道上的扇区面积最小,因此数据密度最大。
盘片
一个磁盘(如一个 1T 的机械硬盘)由多个盘片叠加而成。盘片的表面涂有磁性物质,这些磁性物质用来记录二进制数据。因为正反两面都可涂上磁性物质,故一个盘片会有两个盘面。
柱面
不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成。
磁头
每面一个磁头
每个盘面对应一个磁头。所有的磁头都是连在同一个磁臂上的,因此所有磁头只能“共进退”。所有盘面中相对位置相同的磁道组成柱面。
2.2、固态硬盘
采用闪存技术作为存储介质,由闪存芯片、控制芯片、接口和缓存等部分组成。没有机械运动部件,通过电子信号进行数据读写。
快得多,SATA协议的固态硬盘速度约为500MB/S
NVMe协议的固态硬盘速度则更高,可达3500MB/S。
价格较高,但是性能好!!
固态硬盘没有机械件,由主控芯片、闪存、缓存颗粒、PCB板和外壳这五个部分组成。
ps:其他网友:机械硬盘的划伤是无法修复的,而且是一个普遍现象,相比之下,固态硬盘的数据安全性强很多。机械硬盘早晚退出历史舞台。
2.3、扩展移动硬盘
pssd是移动硬盘,最高的性能能达到2000M/s,电影秒传,不过价格...有点贵,2000M/s的 pssd 4T大概2500元
选购 PSSD 的第一步其实就是弄清楚自己电脑的 USB 口到底能消受多高的速度
USB 4
最高的理论传输速度可以达到 40 Gbps,也就是说,市面上一切你可以卖到的消费级 PSSD 他都能给hold 住,然后他长这样:
通常“雷电”接口旁边都会有一个雷电标识
一般是英特尔i7或者更新的电脑支持
usb3的话没有什么好说的了大概是这几代,一般不是特别老的电脑都支持
也可以选则支持这些的pssd作为使用,会比u盘好一些,但是u盘便宜,但是还是要具体分析。
2.4、机械磁盘的一些计算(了解)
硬盘存储容量=磁头数(8个2进制)×磁道(柱面)数×每道扇区数(6个二进制)×每扇区字节数
1柱面=512 * 扇区数/磁头数×磁道=512*63*255=7.84M
可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域
2.5、磁盘接口类型
IDE ,SATA ,SCSI , SAS , 光纤通道
二、Linux 中使用的文件系统类型
2.1、磁盘分区的表示
2.1.1、主引导记录(MBR)
在每一个磁盘第一个物理扇区处都有MBR(Master Boot Record)主引导记录
位于硬盘的0磁道、0柱面、1扇区中,MBR的主要功能是存储启动引导程序和磁盘分区表。
分区表有4个分区记录区,每个分区记录区占16个字节
MBR总共512字节, 前446字节是主引导记录,分区表保存在MBR扇区中的第447-510字节中。
磁盘分区支持最大卷为2.2TB,每个磁盘最多有4个主分区,或3个主分区、1个扩展分区和在扩展分区里面分多个逻辑分区。
2.1.2、Linux中将硬盘、分区等设备均表示为文件
Linux中“一切皆文件”
/dev/sdb3
sd表示SCSI设备
hd表示IDE设备
硬盘的顺序号,以字母a、b、c....表示
分区的顺序号,以数字1、2、3...表示。主分区从1-4, 第一个逻辑分区始终从5开始。
2.2、磁盘的分区结构
- 硬盘中的主分区数目只有4个
- 主分区和扩展分区的序号限制在1~4
- 扩展分区再分为逻辑分区
- 逻辑分区的序号将始终从5开始
2.2.1、扩展IDE设备和SCSI设备
IDE设备
定义:
IDE(Integrated Drive Electronics)设备,全称“集成驱动器电子装置”,是一种硬盘驱动器接口技术。IDE的本意是将硬盘的“控制器”与“盘体”集成在一起,从而构成硬盘驱动器。
特点:
- 接口技术:IDE接口也被称为ATA接口,是现代PC(个人电脑)中硬盘驱动器的主要接口类型。
- 简化与可靠性:将盘体与控制器集成在一起的做法减少了硬盘接口的电缆数目与长度,增强了数据传输的可靠性,并使得硬盘的制造变得更为容易。
- 应用广泛:在个人电脑中,IDE设备主要包括硬盘和光驱(如CD-ROM驱动器、DVD-ROM驱动器和CD-R/RW光盘刻录机)。
- 安装简便:IDE设备的安装相对简单,主要需要连接电源线和数据电缆。
- 主从关系:IDE设备存在主设备和从设备的区分,主设备拥有更高的控制优先权。
SCSI设备
定义:
SCSI(Small Computer System Interface)设备,是一种计算机和智能设备之间(如硬盘、软驱、光驱、打印机、扫描仪等)系统级接口的独立处理器标准。
特点:
- 智能通用接口:SCSI是一种智能的通用接口标准,可以连接多种设备。
- 性能优越:与IDE相比,SCSI在性能上更为出色,尤其在处理大文件和大目录时。
- 价格较高:由于SCSI主要针对服务器和专业环境设计,其价格相对较高。
- 使用复杂:SCSI的使用相对复杂,如SCSI ID和总线终结器的设置不当可能导致问题。
- 扩展性强:SCSI具有极强的扩展能力,一条通道上最多可以连接15个设备(除去控制卡本身占用的一个设备空间)。
总结
IDE设备和SCSI设备在定义、特点、性能、价格和使用复杂性等方面存在显著的差异。IDE设备以其简便、广泛的应用和相对较低的成本,在个人电脑中占据主导地位;而SCSI设备则以其高性能、高扩展性和复杂的专业应用,在服务器和专业环境中备受青睐。
2.3、文件系统类型
XFS
- 是一种高性能的日志文件系统,特别擅长于处理大文件,可支持上百万 T 字节的存储空间。由于 XFS 文件系统开启日志功能,所以即便发生宕机也不怕数据遭到破坏,这种文件系统可以根据日志记录在短时间内进行数据恢复
- 存放文件和目录数据的分区
- 优化算法,日志记录对文件操作非常小,它是全64位的文件系统,最大可以支持8EB的文件系统,而且支持单个文件达到8EB能以接近裸设备一的io性能存储。
- centos7默认使用
SWAP
- 交换文件系统,用于为 Linux 系统建立交换分区。交换分区的作用相当于虚拟内存,能够在一定程度上缓解物理内存不足的问题。一般建议将交换分区的大小设置为物理内存的 1.5~2 倍。例如,对于拥有 512MB物理内存的主机,其交换分区的大小建议设置为 1024MB。如果服务器的物理内存足够大(如 8GB 以上),也可以不设置交换分区。交换分区不用于直接存储用户的文件和目录等数据。【不过如果使用k8s不能使用这个,所以不怎么用,而且只能暂时使用,不能真正替代】
- 相当与内存不够用时使用磁盘空间,做虚拟内存
EXT4
- 第 4 代扩展文件系统,用于存放文件和目录数据的分区,是 Linux 系统中默认使用的文件系统(CentOS 7 默认使用 XFS)。EXT4 是典型的日志型文件系统,其特点是保存有磁盘存取记录的日志数据,便于恢复,在存取性能和稳定性方面更加出色。
- 在处理小文件和目录时,EXT4表现更优
- 支持加密和快照等功能
XFS更适合大型企业环境和大容量数据存储,因为它在性能、可靠性和可扩展性方面表现出色。而EXT4则适用于中小型企业和家庭用户,特别是当需要处理大量小文件或需要与其他操作系统兼容时。
Linux 系统还广泛支持其他各种类型的文件系统,
如 JFS、FAT16、FAT32、NTFS 等。JFS 文件系统多用于商业版本的 UNIX 操作系统中,具有出色的性能表现。由于 NTFS 是微软公司的专有文件系统,Linux 系统默认只支持从 NTFS 分区读取文件,如果需要向 NTFS 分区中写入文件数据,需要结合其他辅助软件(如 NTFS-3G)。
FAT16 FAT32
且支持文件最大32g ,2g单个文件支持最大4gb
ext4文件系统最大支持1EB文件系统
- 1EB=1024PB
- 1PB=1024TB
- 1TB=1024GB
三、检测并确认新硬盘
查看硬盘的整体情况和分区情况
fdisk -l 【磁盘设备】
在Linux系统中,磁盘设备通常被命名为 /dev/sdX
(其中 X
是一个小写字母,如 a
, b
, c
等)
- Device:分区的设备文件名称。
- Boot:是否是引导分区。若是,则有“*”标识。
- Start:该分区在硬盘中的起始位置(柱面数)。
- End:该分区在硬盘中的结束位置(柱面数)。
- Blocks:分区的大小,以 Blocks(块)为单位,默认的块大小为 1024 字节。
- Id:分区对应的系统 ID 号。83 表示 Linux 中的 XFS 分区或 EXT4 分区、8e 表示 LVM 逻辑卷。LVM 是 Linux 操作系统中对磁盘分区进行管理的一种逻辑机制,与之相关的知识将在后面的章节介绍。
- System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在 Linux 操作系统中,分区和格式化的过程是相对独立的,关于格式化分区的操作将在后续内容中讲解。
四、规划硬盘中的分区
交互模式中的常用指令
fdisk指令说明
- Command (m for help): m #输入m指令
- a toggle a bootable flag #设置可引导标记
- b edit bsd disklabel #修改bsd的磁盘标签
- c toggle the dos compatibility flag #设置DOS操作系统兼容标记
- d delete a partition #删除一个分区
- l list known partition types #显示已知的分区类型,其中82为 Linux swap分区,83为Linux分区
- m print this menu #显示帮助菜单
- n add a new partition #增加一个新的分区
- o create a new empty DOS partition table #创建一个新的空白的DOS分区表
- p print the partition table #显示磁盘当前的分区表
- q quit without saving changes #退出fdisk程序,不保存任何修改
- s create a new empty Sun disklabel #创建一个新的空白的Sun磁盘标签
- t change a partition's system id #改变一个分区的系统号码
- u change display/entry units #改变显示记录单位
- v verify the partition table #对磁盘分区表进行验证
- w write table to disk and exit #保存修改结果并退出fdisk程序
- x extra functionality (experts only) #特殊功能,不建议初学者使用
需要重启动 init 6
或者
不重启加载新建的硬盘
磁盘添加完成,进入系统,使用下面命令扫描SCSI总线
echo "- - -" > /sys/class/scsi_host/host0/scan
host1
host2
再查看fdisk -l
或者
lsblk 以树形查看磁盘分区
创建主分区
扩展分区
swap分区
逻辑分区
五、创建文件系统
mkfs命令
mkfs -t 文件系统类型 分区设备
或者mkfs.xfs /dev/sdb1
sdb2相同
sdb3是swap有区别
- swapon 是开启swap 注:/dev/sdb2(swap分区)
- swapof 是关闭swap 注:/dev/sdb2(swap分区)
- swapon -s #查看每个分区的swap状态信息
- free -m#查看总的swap状态信息
需要打开
sbd5
查看
六、挂载,卸载文件系统
mount命令
挂载文件系统,iso镜像到指定文件夹
mount 【-t 类型】存储设备 挂载点目录
mount -o loop iso镜像文件 挂载点目录
loop:用来把一个文件当成硬盘分区挂接上系统
卸载已挂载的文件系统
umount存储设备位置
umount 挂载点目录
挂载到创建文件/home/laowang
永久性挂载
先看 uuid用blkid
vim /etc/fstab 永久挂载
需要重启
七、查看磁盘使用情况
查看磁盘使用情况
df命令
df 【选项】 [文件】
比如T可以看到类型
i:显示in 示inode信息而非块使用量
相关文章:

云计算【第一阶段(18)】磁盘管理与文件系统 分区格式挂载(一)
目录 一、磁盘基础 二、磁盘结构 2.1、机械硬盘 2.2、固态硬盘 2.3、扩展移动硬盘 2.4、机械磁盘的一些计算(了解) 2.5、磁盘接口类型 二、Linux 中使用的文件系统类型 2.1、磁盘分区的表示 2.1.1、主引导记录(MBR) 2.1.2、Linux中将硬盘、分…...
Flask-cache
Flask-cache 目录 Flask-cache基本使用配置可用参数SimpleCacheNullCacheFileSystemCacheRedisCacheRedisSentinelCacheRedisClusterCacheMemcachedCacheSASLMemcachedCacheUWSGICache Flask-Cache是一个强大的缓存库,为基于Flask的应用提供了简单易用的API和多种缓…...

【面试题】面试小技巧:如果有人问你 xxx 技术是什么?_面试问你对什么技术特别了解
前端工程越来越大,前面几种方案不能很好的支持单元测试。 在这样的背景下,React 诞生了。React 带来了新的思维模式,UI fn(props),React 中一个组件就是一个函数或者一个类,一个函数或者一个类就是一个基础单位&…...
简单分享Python语言(发现其实并不难)
一. Python基础 Python是一种解释型语言,这意味着开发者可以在代码被编写后立即执行它们,而无需编译。Python的基本语法简单明了,以下是一些基础知识点: 变量和数据类型:Python支持多种数据类型,包括整型&…...

基于VTK9.3.0+Visual Studio2017 c++实现DICOM影像MPR多平面重建
开源库:VTK9.3.0 开发工具:Visual Studio2017 开发语言:C 实现过程: void initImageActor(double* Matrix, double* center, vtkSmartPointer<vtkImageCast> pImageCast,vtkSmartPointer<vtkImageReslice> imageRe…...

【论文精读】ViM: Out-Of-Distribution with Virtual-logit Matching 使用虚拟分对数匹配的分布外检测
文章目录 一、文章概览(一)问题来源(二)文章的主要工作(三)相关研究 二、动机:Logits 中缺失的信息(一)logits(三)基于零空间的 OOD 评分…...

【面试题】前端 移动端自适应?_前端移动端适配面试题
设备像素比 设备像素比 (DevicePixelRatio) 指的是设备物理像素和逻辑像素的比例 。比如 iPhone6 的 DPR 是2。 设备像素比 物理像素 / 逻辑像素。可通过 window.devicePixelRatio 获取,CSS 媒体查询代码如下 media (-webkit-min-device-pixel-ratio: 3), (min-…...

在Maven工程中手动配置并测试SpringBoot(巨详)
本篇博客承继自博客: 在IDEA 2024.1.3 (Community Edition)中创建Maven项目_idea2024.1.3如何创建maven项目-CSDN博客 配置POM文件 打开工程中的pom.xml文件,先向其中写入 <parent><groupId>org.springframework.boot</groupId><…...
c# 去掉字符串首尾的 特殊符号
如果首尾的 - 数量不确定,可以使用以下方法来去掉字符串两端的 - 字符: 使用正则表达式: using System.Text.RegularExpressions;string input "---Hello, World!---"; string trimmed Regex.Replace(input, "^-*|-*$", ""); // trimmed 为 …...
在容器中共享本地文件
在容器中共享本地文件 目录 卷与绑定挂载的对比在主机和容器之间共享文件Docker 访问主机文件的文件权限试一试 运行一个容器使用绑定挂载在 Docker Dashboard 中访问文件停止容器 额外资源下一步 每个容器都有一切需要运行的资源,而不依赖于主机机器上预先安装的…...
Java Matcher类方法深度剖析:查找和匹配、索引方法
1. 引言 在Java中,正则表达式是处理字符串的强大工具,而java.util.regex包中的Matcher类则是实现这一功能的核心。对于Java工程师而言,熟练掌握Matcher类的使用方法,无疑能够极大地提升字符串处理的效率和准确性。本文将对Matcher类的方法进行深度讲解,并按照查找和匹配方…...

Redis-数据类型-zset
文章目录 1、查看redis是否启动2、通过客户端连接redis3、切换到db4数据库4、将一个或多个member元素及其score值加入到有序集key当中5、升序返回有序集key6、升序返回有序集key,让分数一起和值返回的结果集7、降序返回有序集key,让分数一起和值返回到结…...

手撕RPC——前言
手撕RPC——前言 一、RPC是什么?二、为什么会出现RPC三、RPC的原理3.1 RPC是如何做到透明化远程服务调用?3.2 如何实现传输消息的编解码? 一、RPC是什么? RPC(Remote Procedure Call,远程过程调用ÿ…...

Vite: 关于预构建的毫秒级响应
概述 在我们的项目代码中,我们所说的模块代码其实分为两部分 一部分是源代码,也就是业务代码另一部分是第三方依赖的代码,即 node_modules 中的代码 Vite 是一个提倡 no-bundle 的构建工具,相比于传统的 Webpack能做到开发时的模…...
Docker 中 MySQL 迁移策略(单节点)
目录 一、 简介二、操作流程2.1 进入mysql容器2.2 导出 MySQL 数据2.3. 将导出的文件复制到宿主机2.4 创建 Docker Compose 配置2.5 启动新的 Docker 容器2.6 导入数据到新的容器2.7 验证数据2.8 删除旧的容器(删除操作需慎重) 三、推荐配置四、写在后面…...

猫头虎 分享已解决Error || API Rate Limits: HTTP 429 Too Many Requests
猫头虎 分享已解决Error || API Rate Limits: HTTP 429 Too Many Requests 🐯 摘要 📄 大家好,我是猫头虎,一名专注于人工智能领域的博主。在AI开发中,我们经常会遇到各种各样的错误,其中API Rate Limits…...

开发一个python工具,pdf转图片,并且截成单个图片,然后修整没用的白边及循环遍历文件夹全量压缩图片
今天推荐一键款本人开发的pdf转单张图片并截取没有用的白边工具 一、开发背景: 业务需要将一个pdf文件展示在前端显示,但是基于各种原因,放弃了h5使用插件展示 原因有多个,文件资源太大加载太慢、pdf展示兼容性问题、pdf展示效果…...

【数据结构与算法 经典例题】使用栈实现队列(图文详解)
💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《数据结构与算法 经典例题》C语言 期待您的关注 目录 一、问题描述 二、前置知识 三、解题思路 原理: 图解&…...

不知大家信不信,竟有这么巧的事,我领导的老婆,竟然是我老婆的下属,我在想要不要利用下这层关系,改善下领导对我的态度,领导怕老婆
职场如战场,每个人都身不由己。每天上班,除了要面对堆积如山的工作,还要小心应对来自领导的“狂风暴雨”。最近,我无意间发现领导一个秘密,这个秘密让我对职场关系和人性都产生了新的思考。 故事要从那天晚上说起。我…...
使用pkg -r 命令选项向jail虚拟子系统里安装软件@FreeBSD
刷FreeBSD 论坛的时候,看到这样一招:使用pkg -r选项,往jail等虚拟机子系统里安装软件。jails - How to install a pkg offline into a jail? | The FreeBSD Forums rootfbhost:~ # pkg pkg: not enough arguments Usage: pkg [-v] [-d] [-l…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...