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

Linux 磁盘挂载

目录

Linux硬盘分区

硬盘设备的文件名 /dev/sd[a-z]

硬盘分区

识别硬盘的文件名

Linux文件系统

文件系统类型

Linux如何保存文件

VFS虚拟文件系统

磁盘挂载命令

lsblk 查看系统的磁盘使用情况

fdisk 硬盘分区

mkfs 格式化文件系统

mount 挂载命令

df 显示磁盘空间使用情况

umount  卸载文件系统

vim /etc/fstab 永久挂载


Linux硬盘分区

硬盘设备的文件名 /dev/sd[a-z]

/dev

根据FHS了解这是一个设备文件

sd

根据udev 这是一个硬盘文件

a-z

指的是识别号码(内核识别硬盘),并不是指插槽的位置,与插槽没有直接关系

此字母是由内核的识别顺序来决定的(而大部分主板的插槽顺序就是系统内核的识别顺序)

 即:如果识别码为b,并不代表此硬盘在第二个插槽,也有可能是在第一个插槽

     只是代表此硬盘是内核识别的第二个硬盘(硬件设备)

分区的编码

如果硬盘分区后,就会存在分区编号

这个编号并不代表分区的个数,以编号5举例子

5并不代表这是设备上的第5个分区,5只能表示编号为5的分区

根据下述硬盘分区信息可得,编号5一定是逻辑分区

注意:分区的编号可以手工指定,所以编号5也不能表示此硬盘最少有5个分区

硬盘分区

硬盘设备是由大量的扇区(一般一个扇区为512字节)组成的,其中第一个扇区最重要,保存着主引导记录和主分区表信息

其中主引导记录(MRB)占用446字节,主分区表占用64字节(有4个分区,每主个分区16字节),结束符占用2字节

 

扩展分区的作用

此时我们看到主分区只有4个,这个分区的数量显然是不够的,所以我们设计了扩展分区的概念,扩展分区的作用就是扩展更多的分区

扩展分区与主分区一样都是存在于主分区表中,它会占用一个主分区号(即如果使用扩展分区的话,主分区表中变为3个主分区,1个扩展分区;如果不创建扩展分区的话,主分区表就可以创建4个主分区)

逻辑分区的作用

扩展分区必须分成若干个逻辑分区来使用(扩展分区不存放信息,逻辑分区才存放信息)

扩展分区并不是一个真正的分区,因此扩展分区不能够直接使用,它更像是一个指针,能够指到另一个全新的扇区上面的分区(逻辑分区),通过全新的逻辑分区来存储更多的数据

硬盘分区可以分为三类

主分区(可以马上使用但是不能再分区)

扩展分区(必须再次进行分区后才可以使用(需要再次分为逻辑分区))

逻辑分区(由扩展分区再次分区而建立起来的分区)

注意事项

主分区+扩展分区的数量加起来最多4个(其中主分区最少1个,最多4个;扩展分区最少0个,最多1个);一般为3个主分区+1个扩展分区

逻辑分区的数量没有限制,不过所有逻辑分区加起来的总容量无法超过扩展分区

分区编号

1-4为主分区/扩展分区(主和扩展分区共同占用1-4,即编号1可以为主,也可以为扩展)

5以后的分区为逻辑分区

识别硬盘的文件名

/dev/sda4

 表示此硬盘是设备第一个识别的硬盘,并且是编号为4的分区(此分区可能是主分区,也可能是扩展分区)

/dev/sdb6

 表示此硬盘是设备第二个识别的硬盘,并且是编号为6的分区(此分区一定是逻辑分区)


Linux文件系统

文件系统类型

 RHEL 4 使用ext2文件系统

 RHEL 5 使用ext3文件系统

 RHEL 6 使用ext4文件系统

 RHEL 7 使用xfs文件系统

 RHEL 8 使用xfs文件系统

ext2 文件系统

没有日志功能(突然服务器断电、死机会造成数据丢失)

ext3 文件系统

加入了日志功能,不过性能不够

ext4 文件系统

相比于ext3性能提升了,支持的存储量达到1EB

xfs 文件系统

相比于ext4最大的变化就是容量提升了(为了满足云计算、大数据的大容量)

最大支持18EB的存储空间,不过性能与ext4差不多

Linux如何保存文件

Linux并不是直接把文件的内容写入到硬盘中,而是将文件分为两部分保存

通过inode保存文件的权限与属性信息,通过block保存实际的文件内容

inode 记录文件属性和指针

每个文件占用一个独立的inode表格,此表格默认128字节

inode是一串数据,不同文件对应的inode在文件系统里是唯一的

指针:通过指针指向一个block块(占4字节)

文件属性:包括文件的权限(一般权限、特殊权限、隐藏权限)、所有者、所属组、文件大小、、文件最后一次访问时间、文件的修改时间等

block

真正保存数据的数据块(大小一般是1k、2k、4k)

当文件较大时,会有多个block,然后把多个block首尾相连(第一个block结尾作为指针指向第二个block,然后第二个block的结尾也作为指针指向第三个block,依次这样)

 

注意事项

一个文件被创建后至少会占用一个inode和一个block

文件的inode只能有一个,block有多个

如果block的大小为1k

当文件是1.2k的大小时,会直接占用2个block块

  当文件时0.8k的大小时,剩余的0.2k也不能被其它文件使用(即一个block只可以存放一个文件的数据)

VFS虚拟文件系统

VFS为各类文件系统提供了一个统一的操作界面和编程接口,使得用户进行系统调用时不再关心系统的底层文件系统,可以将系统调用指令转为具体文件系统能够读懂的指令


磁盘挂载命令

Linux中硬盘需要挂载之后才可以使用,挂载步骤:添加硬盘-分区-格式化文件系统-挂载

lsblk 查看系统的磁盘使用情况

新加入的硬盘是没有分区和挂载点的

lsblk -a  查看所有磁盘设备的使用情况

lsblk -f   显示磁盘设备的文件系统信息

 

lsblk -m  查案磁盘设备的归属以及权限信息

lsblk -s   查看系统所有SCSI类型的磁盘信息

fdisk 硬盘分区

可以将磁盘设备划分为多个分区(主、扩展、逻辑)

fdisk -l  查看当前系统分区情况

 

fdisk 磁盘文件   为此磁盘创建分区(fdisk是交互式的配置方式来配置分区的)

   d  删除分区

   l   列举分区的标识符

   n  新建分区

   p  查看此硬盘的分区表

   t   修改分区的标识符

   w  保存并退出

   q   退出

分区类型(p表示主分区、e表示扩展分区,l表示逻辑分区-前提是扩展分区已经创建)

输入结束的扇区时,可以简写 +300M 表示此扇区300M

注意事项

当分区表显示不全时,进行一下操作

使用partprobe更新分区表

如果更新分区表后还是显示不全,此时需要重启系统

如果以上操作都不行,可能是用户的配置错误

通过/dev/sdb为磁盘创建1个5G的主分区,然后创建1个10G的扩展分区,1个5G的逻辑分区

创建5G的主分区

 

创建10G的扩展分区

 

创建5G的逻辑分区(逻辑分区的容量是在扩展分区容量中分出来的)

 

查看分区创建结果并保存退出

mkfs 格式化文件系统

将硬盘分区格式化之后,可以使得Linux系统得知怎样在硬盘上写入数据

格式化文件之前先使用lsblk命令查看磁盘分区情况,如果磁盘分区没有显示出来

需要reboot系统

mkfs.文件系统1 设备1     将设备1格式化为文件系统1

mkfs -t 文件系统2 设备2  将设备2格式化为文件系统2

命令举例

mkfs.xfs /dev/sdb5       将sdb5格式化为xfs文件系统

mkfs -t xfs /dev/sdb1     将sdb1格式化为xfs文件系统

 

lsblk -f 查看磁盘文件系统

mount 挂载命令

将一个设备文件与目录(挂载点)做关联的动作叫做挂载

只有将设备文件挂载到挂载点之后,此设备才可以被使用

mount 设备1 挂载点1   将设备1挂载到挂载点1

 -t 指定挂载的文件类型

命令举例(需要先创建挂载目录 mkdir 目录)

将/dev/sdb1挂载到/media/sdb1目录

将/dev/sdb5挂载到/media/sdb5目录

 

挂载注意事项

扩展分区不能挂载

当把设备文件挂载到以后内容的目录时,目录的原始文件会被隐藏;当取消挂载后,文件内容还会回来

挂载目录不一定要是/media目录下的子目录,任意目录都可以,只是为了遵循FHS协议,建议挂载到/media目录下

df 显示磁盘空间使用情况

 df -a 显示所有系统文件

   -h 以容易阅读的方式显示

   -t  只显示指定类型的文件系统

   -T  输出时显示文件系统类型

 

umount  卸载文件系统

取消设备与挂载点的关联操作

umount  设备文件名/挂载目录  卸载设备的文件系统

  -v 执行时显示详细的信息

  -r 尝试以只读的方式重新挂载文件系统

 

vim /etc/fstab 永久挂载

使用mount命令挂载只是临时生效,重启后挂载点就消失了

我们需要通过编辑/etc/fstab文件来进行永久挂载,让计算机在重启后还可以自动挂载设备文件

文件内容格式

/dev/sdb1     设备命令(绝对路径)  

/media/sdb1    设备挂载点(绝对路径)    

xfs                   挂载的文件系统格式 

defaults           权限(defaults为默认)

0                   (不要开启自动备份,为1或2表示开启自动备份 数字越小优先级越大)

0                   (不要开启自动校验,为1或2表示开启自动校验,数字越小优先级越大)

相关文章:

Linux 磁盘挂载

目录 Linux硬盘分区 硬盘设备的文件名 /dev/sd[a-z] 硬盘分区 识别硬盘的文件名 Linux文件系统 文件系统类型 Linux如何保存文件 VFS虚拟文件系统 磁盘挂载命令 lsblk 查看系统的磁盘使用情况 fdisk 硬盘分区 mkfs 格式化文件系统 mount 挂载命令 df 显示磁盘空间…...

命名冲突问题与命名空间

一、何为命名空间&#xff1f; 首先我们运行下面代码&#xff0c; #include <stdio.h> int rand 0; int main() {printf("%d", rand);return 0; } 我们会发现该代码能够正常运行&#xff0c;没有任何问题。 但是当我们再在上面代码的基础上包含stdlib.h头…...

Kafka漏洞修复之CVE-2023-25194修复措施验证

Kafka漏洞修复之CVE-2023-25194修复措施验证前言风险分析解决方案AdoptOpenJDK Zookeeper Kafka多版本OpenJDK安装切换Zookeeper安装Kafka安装与使用其他Kafka消息发送流程Linux配置加载顺序参考链接前言 场景介绍 Kafka最近爆出高危漏洞CNNVD-202302-515&#xff0c;导致Apa…...

中后序遍历构建二叉树与应用I

目录 题目描述 思路分析 AC代码 题目描述 按中序遍历和后序遍历给出一棵二叉树&#xff0c;求这棵二叉树中叶子节点权值的最小值。 输入保证叶子节点的权值各不相同。 输入 测试数据有多组 对于每组测试数据&#xff0c;首先输入一个整数N (1 < N < 10000)&#x…...

随机退化模型--基础篇(1)

随机退化模型--基础篇(1) 1. 随机退化建模1.1 瞬间失效1.2 存在缓慢退化过程的失效2. 通俗解释2.1 包引入2.2 参数定义2.3 基于递归函数的更新2.4 结果可视化1. 随机退化建模 随机模型亦称“非确定的、概率的模型”,是按随机变量建立的模型。其特点是; 模型参数、模拟对象发…...

2023.2.15工作学习记录 git Docker compose容器编排

关于Git错误提交了target目录 是因为在ignore目录中没有加入biz这个工程 以后提交代码时一定要检查好自己提交的代码 首先把所有的全部取消 然后再根据自己要提交的内容一个个来勾选 Docker网络 container模式&#xff1a;新建的容器和已经存在的一个容器共享一个网络…...

基于jeecgboot的flowable流程增加节点自动跳过功能

为了满足有时候需要在某个节点没有人员处理的时候需要自动跳过&#xff0c;所以增加了这个功能。 一、FlowComment意见里增加一个类型8&#xff0c;跳过流程 /** * 流程意见类型 * */ public enum FlowComment { /** * 说明 */ NORMAL("1", "…...

流程引擎之Activiti简介

背景Activiti 是一个开源架构的工作流引擎&#xff0c;基于 bpmn2.0 标准进行流程定义&#xff0c;其前身是 jBPM&#xff0c;Activiti 相对于 jBPM 更轻量&#xff0c;更易上手&#xff0c;且天然集成了 Spring。2010年 jBPM 创始人 Tom Baeyens 离开 JBoss&#xff0c;随之加…...

4.打包子应用 投票

接上回 最终得到这样的目录 mysite/manage.pymysite/__init__.pysettings.pyurls.pyasgi.pywsgi.pypolls/__init__.pyadmin.pyapps.pymigrations/__init__.py0001_initial.pymodels.pystatic/polls/images/background.gifstyle.csstemplates/polls/detail.htmlindex.htmlresult…...

华为OD机试 - 服务依赖(JavaScript) | 机试题算法思路 【2023】

服务依赖 题目 在某系统中有众多服务,每个服务用字符串(只包含字母和数字,长度<=10)唯一标识,服务间可能有依赖关系,如A依赖B,则当B故障时导致A也故障。 传递具有依赖性,如A依赖B,B依赖C,当C故障时导致B故障,也导致A故障。给出所有依赖关系以及当前已知故障服务…...

目标检测综述(一份全的自制PPT): 涵盖各种模型简介对比,适合入门和了解目标检测现状

[TOC](目标检测综述(一份全的自制PPT): 涵盖各种模型简介对比&#xff0c;适合入门和了解目标检测现状) 注&#xff1a;本文仅供学习&#xff0c;未经同意勿转。分享的PPT请勿二次传播&#xff0c;或者用于其他商用途径。若使用本文PPT请注明来源&#xff0c;感谢配合 前言&…...

Vulnhub-DC-2实战靶场

Vulnhub-DC-2实战靶场 https://blog.csdn.net/ierciyuan/article/details/127560871 这次试试DC-2&#xff0c;目标是找到官方设置的5个flag。 一. 环境搭建 1. 准备工具 虚拟机Kali&#xff1a; 自备&#xff0c;我的kali的IP为192.168.3.129 靶场机&#xff1a; https…...

从输入URL到渲染的过程中到底发生了什么?

CDN缓存DNSTCP三次握手、四次挥手浏览器渲染过程输入URL到页面渲染过程的一些优化 下面我将“从输入URL到渲染的全过程”大概的描述出来&#xff0c;再对其过程加以解释&#xff0c;了解过程中可以做哪些优化。文章内容有点长&#xff0c;需要有足够的耐心看完哟&#xff01;&…...

旋转屏幕导致 Fragment 中的 onConfigurationChanged 被调用两次

环境 IDE Android Studio Dolphin 2021.3.1&#xff1b; 项目配置 Android Gradle plugin version: 7.1.3 Gradle Version: 7.2 Gradle JDK: 11 Compile Sdk Version: 32 问题描述 项目使用的 Bottom Navigation Activity 基本结构&#xff0c;在调试程序时发现&#xff0c…...

23年校招DL/NLP/推荐系统/ML/算法基础面试必看300问及答案

2020年校招已经开始了&#xff0c;在疫情全球肆虐的背景下&#xff0c;全球就业情况异常艰难&#xff0c;加上美国对中国企业打压持续升级&#xff0c;对于马上开始秋招找工作的毕业生而言&#xff0c;更是难上加难。我们不能凭一己之力改变现状&#xff0c;但我们可以凭借自己…...

Python基础知识汇总(字符串二)

目录 检索字符串 count()方法 find()方法 in关键字 index()方法 rindex()方法 startswith()方法...

【FPGA】Verilog:实现十六进制七段数码管显示 | 7-Segment Display

写在前面&#xff1a;本章主要内容为理解七点数码管显示的概念&#xff0c;并使用 Verilog 实现。生成输入信号后通过仿真确认各门的动作&#xff0c;通过 FPGA 检查在 Verilog 中实现的电路的操作。 Ⅰ. 前置知识 七段数码管是利用多重输出功能的非常有用的元件。该元件用于字…...

Android开发:Activity启动模式

1.怎样设置Activity的启动模式 可以在清单文件中自己添加活动的启动模式, android : launchMode"standard", 不写的话系统默认就是标准模式. 2.启动模式 2.1.默认启动模式 标准启动模式就是栈, 打开一个活动就将活动压入栈中, 返回就将活动退出栈中. 不同的Activit…...

01_Docker 简介

01_Docker 简介 文章目录01_Docker 简介1.1 Docker 简介1.2 Docker 组件1.2.1 Docker 客户端和服务区1.2.2 Docker 镜像1.2.3 Registry1.2.4 Docker 容器参考资料https://www.runoob.com/docker/ubuntu-docker-install.html 1.1 Docker 简介 Docker 是一个能够把开发的应用程…...

一文精通MVCC机制

MVCC(Multi-Version Concurrency Control)多版本并发控制机制使用串行化隔离级别时&#xff0c;mysql会将所有的操作加锁互斥&#xff0c;来保证并发安全。这种方式必然降低并发性能。mysql在读已提交和可重复读隔离级别下&#xff0c;对一行数据的读和写两个操作默认是不会通过…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡&#xff08;如 HAProxy、AWS NLB、阿里 SLB&#xff09;发起上游连接时&#xff0c;将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后&#xff0c;ngx_stream_realip_module 从中提取原始信息…...

ElasticSearch搜索引擎之倒排索引及其底层算法

文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面&#xff0c;gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress&#xff0c;说明目标所使用的cms是wordpress&#xff0c;访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构&#xff1a; 传统SMO中LPF会带来相位延迟和幅值衰减&#xff0c;并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF)&#xff0c;可以去除高次谐波&#xff0c;并且不用相位补偿就可以获得一个误差较小的转子位…...

Python实现简单音频数据压缩与解压算法

Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中&#xff0c;压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言&#xff0c;提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...