Linux磁盘与文件管理

目录

一、磁盘介绍

1. 磁盘数据结构

2. 磁盘的接口类型

3. 磁盘在Linux上的表现形式

二、磁盘分区与MBR

1. 分区优缺点

2. 分区方式

3. MBR分区

4. GPT分区

三、文件系统

1. 文件系统的组成

2. 默认的文件系统 

3. 文件系统的作用

4. 模拟破坏文件与修复文件 

4.1 新建分区,选择ext4文件类型格式化安装,并挂载

4.2 破坏数据

4.3 尝试修复

四、分区工具与交互式命令

1. 工具

2. fdisk交换命令

3. 分区步骤

五、磁盘分区

1. 管理主分区

1.1 选择硬盘,默认点击下一步,完成

1.2 刷新磁盘接口,查看分区情况  

1.3 创建分区,fdisk /dev/sdb

1.4 分区后可能有延迟(内存到硬盘),手动刷新 

1.5 格式化,安装文件系统 

1.6 挂载验证

1.7 解挂载  

1.8 开机自动挂载(永久挂载)

2. 挂载配置有误无法启动排查解决

2.1 模拟错误编辑挂载相关配置 

2.2 重启,模拟排除故障 

2.3 故障解决 

3. 管理扩展分区和逻辑分区 

3.1 创建分区,fdisk /dev/sdb

3.2 格式化,安装xfs文件系统,挂载 

4. 删除分区 

 六、SWAP交换分区

1. 添加磁盘

2. 格式化swap分区,开启swap设备

3. 关闭swap分区 


一、磁盘介绍

1. 磁盘数据结构

① 柱面:不同盘片相同半径构成的圆(柱面和磁道数量相同)

② 扇区:是硬盘最小的存储单位,512字节,8个扇区组成1块

③ 磁道:同一盘片不同半径的同心圆

2. 磁盘的接口类型

ATA,全称 Advanced Technology Attachment,并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被 SATA 所取代

SATA,全称 SerialATA,抗干扰性强,支持热插拔等功能,速度快,纠错能力强

SCSI,全称是 Small Computer System Interface (小型机系统接口),SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时 CPU 占用率较低,转速快,支持热插拔等

SAS(Serial Attached SCSI) 是新一代的 SCSI 技术,和SATA 硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到 6Gb/s

M.2:M.2接口是为超极本(Ultrabook)量身定做的新一代接口标准,以取代原来的mSATA接口。无论是更小巧的规格尺寸,还是更高的传输性能,M.2都远胜于mSATA

3. 磁盘在Linux上的表现形式

/dev/sda

sda:代表第一块硬盘

s:代表接口(stas,sas),接口类型决定了数据传输的速率

d:disk盘

a:第一块盘

数字1-4:主分区;数字5开始:逻辑分区

二、磁盘分区与MBR

1. 分区优缺点

优点:

  • 优化I/O性能,读写:input,onput
  • 实现磁盘空间配额限制
  • 提高修复速度
  • 隔离系统和程序
  • 安装多个OS
  • 采用不同文件系统

缺点:

  • 一旦分区无法修改大小
  • 只能使用连续的空间
  • 没有备份冗余的功能 

2. 分区方式

MBR:只能对2T以下的盘进行分区,4个主分区

GPT:可以对2T以上的盘进行分区,128个分区

3. MBR分区

常见的硬盘可以划分为主分区、扩展分区和逻辑分区,通常情况下主分区只有四个,而扩展分区可以看成是一个特殊的主分区类型,在扩展分区中可以建立逻辑分区;扩展不是用的,是用来存储逻辑分区的分区表。主分区一般用来装系统、文件等可以直接访问。主分区编号不超过4,逻辑分区编号从5开始。

MBR分区需要依靠第一个扇区(一个扇区512字节)

  • 第一个扇区mbr(446字节的小程序)主引导记录:引导硬件找到操作系统,是gub程序的一部分
  • 分区表:记录分区的开始和结束的位置,一个分区要占16字节,4*16=64,所以mbr只能分4个主分区
  • 标记位:55 aa,代表结束位

总的来说,硬盘分区有 3 种,分别是主分区、扩展分区和逻辑分区。对于一个硬盘来说,主分区至少有 1 个,最多有 4 个;扩展分区可以没有,最多只能有 1 个,且主分区+扩展分区总共不能超过 4 个;逻辑分区可以有若干个。主分区可以直接存储数据,扩展分区不可以直接存储数据,还需要再分区。

4. GPT分区

GPT(GUID Partition Table)是一种磁盘分区表的标准,用于定义磁盘上的分区布局和相关信息。它是传统的MBR(Master Boot Record)分区方案的一种替代方案,具有一些优势,特别是在处理大容量硬盘和支持UEFI(Unified Extensible Firmware Interface)固件的系统时。GUID(Globals Unique Identifiers) partition table 支持128个分区,使用64位,支持8Z(512Byte/block )64Z ( 4096Byte/block),理论上无需新建扩展分区添加逻辑分区操作。

三、文件系统

1. 文件系统的组成

  • 内核中的模块:ext4, xfs, vfat
  • Linux的虚拟文件系统:VFS
  • 用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat

只有二进制的文件系统称为裸文件系统 

2. 默认的文件系统 

centos7:xfs

centos6:ext4

3. 文件系统的作用

它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的 存取,安全控制,日志,压缩,加密等。

[root@localhost ~]# cat /proc/filesystems
#查看当前系统支持的文件类型

4. 模拟破坏文件与修复文件 

4.1 新建分区,选择ext4文件类型格式化安装,并挂载

(新建分区步骤参考下文)

4.2 破坏数据

4.3 尝试修复

四、分区工具与交互式命令

1. 工具

fdisk:建议2t以下使用,需要保存生效

gdisk:建议2t以上使用,需要保存生效

parted:即时生效

2. fdisk交换命令

fdisk  -l   设备    #只看这个设备
fdisk  -l           #看所有设备

运行分区命令后交互命令:

n:新建分区

d:删除分区

t:改变分区类型

p:打印分区表

w:保存并退出

q:退出不保存

3. 分区步骤

① 分区,分出sdb1(主分区)

② 格式化,装文件系统

mkfs -t xfs 设备名

mkfs.xfs 设备名

③ 挂载

④ 验证:df查看磁盘剩余空间,df -T显示文件系统类型

五、磁盘分区

1. 管理主分区

1.1 选择硬盘,默认点击下一步,完成

1.2 刷新磁盘接口,查看分区情况  

注:刷新命令如下,当然重启机器也是可以的,不过生产环境不建议重启

[root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host0/scan
[root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host1/scan
[root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host2/scan

1.3 创建分区,fdisk /dev/sdb

1.4 分区后可能有延迟(内存到硬盘),手动刷新 

1.5 格式化,安装文件系统 

1.6 挂载验证

1.7 解挂载  

1.8 开机自动挂载(永久挂载)

  •  查看uuid号,设备唯一标识符

  • 修改配置文件/etc/fstab,输入mount  -a 重新挂载设备检查配置文件是否有问题;查看磁盘剩余空间

2. 挂载配置有误无法启动排查解决

2.1 模拟错误编辑挂载相关配置 

 

2.2 重启,模拟排除故障 

 

2.3 故障解决 

3. 管理扩展分区和逻辑分区 

3.1 创建分区,fdisk /dev/sdb

3.2 格式化,安装xfs文件系统,挂载 

4. 删除分区 

 六、SWAP交换分区

1. 添加磁盘

2. 格式化swap分区,开启swap设备

3. 关闭swap分区 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

项目总结报告

《项目总结报告》 1.项目概要(项目基本信息,项目期间,项目成果,项目开发工具环境) 2.项目工作分析(需求变更,计划与进度实施,投入情况,收益情况,质量情况&…

【Linux】Linux 下基本指令 -- 详解

无论是什么命令,用于什么用途,在 Linux 中,命令有其通用的格式: command [-options] [parameter] command:命令本身。-options:[可选,非必填]命令的一些选项,可以通过选项控制命令的…

navicat premium历史版本下载及更新navicat premium15 永久(使用)有效期

1、navicat premium介绍 Navicat Premium 是一套可创建多个连接的数据库开发工具,让你从单一应用程序中同时连接 MySQL、Redis、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL 和 SQLite 。它与 GaussDB 、OceanBase 数据库及 Amazon RDS、Amazon Aurora、Amaz…

windows和linux操作Git(序章2)

Git 分布式版本控制系统(序章1) ## Linux 下安装 Git🔺 ​ ## Git命令大全🔺 windows和linux通用 安装完 Git 后,需要进行配置,如姓名、Email 等 git config --global user.name "你的名字"git config --global us…

解算人生--写于2023跨年之夜

最近买了一本书,书名叫《计算》 读了部分内容,虽然理解上还需要再下下功夫,但是直观的感觉冲击还是挺大的,最明显的就是表面与本质的把握。大家可能都有这样一种感觉,初步涉足某一领域时,开始我们都会被大量…

vmware部署docker+springboot+MySQL(超详细)

一、前期准备 (一)安装jdk #docker search openjdk #docker pull openjdk:8 (二)确认网络 如果局域网其他终端(如手机访问),虚拟机网络连接需要选择《桥接》模式,而且,需要使用有线连接,不能使用Wi-Fi,切忌切忌! 并且要选择实际的那个有线连接。比如我这里是“R…

Leetcode 剑指 Offer II 059. 数据流中的第 K 大元素

题目难度: 简单 原题链接 今天继续更新 Leetcode 的剑指 Offer(专项突击版)系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 设计一个找到数据流中第 k 大元素的类(class&#xf…

文心一言 VS 讯飞星火 VS chatgpt (169)-- 算法导论13.2 2题

二、用go语言,证明:在任何一棵有 n 个结点的二叉搜索树中,恰有 n-1种可能的旋转。 文心一言: 要证明在任何一棵有 n 个结点的二叉搜索树中,恰有 n-1 种可能的旋转,我们可以按照以下步骤逐步推导&#xff…

声明式导航传参详情

1 动态路由传参 路由规则path ->/article/:aid 导航链接 <router-link to"/article/1">查看第一篇文章</router-link> 组件获取参数: this.$route.params.aid 如果想要所有的值&#xff0c;就用this. $route. params 注意&#xff1a;这两个必须匹配…

【数据结构】图论与并查集

一、并查集 1.原理 简单的讲并查集&#xff0c;就是查询两个个元素&#xff0c;是否在一个集合当中&#xff0c;这里的集合用树的形式进行表示。并查集的本质就是森林, 即多棵树。 我们再来简单的举个例子: 假设此时的你是大一新生&#xff0c;刚进入大学&#xff0c;肯定是…

【C++对于C语言的扩充】C++与C语言的联系,命名空间、C++中的输入输出以及缺省参数

文章目录 &#x1f680;前言&#x1f680;C有何过C之处&#xff1f;&#x1f680;C中的关键字&#x1f680;命名空间✈️为什么要引入命名空间&#xff1f;✈️命名空间的定义✈️如何使用命名空间中的内容呢&#xff1f; &#x1f680;C中的输入和输出✈️C标准库的命名空间✈…

SpringBoot实用篇

SpringBoot实用篇 1、热部署 什么是热部署&#xff1f; 所谓热部署&#xff0c;就是在应用正在运行的时候升级软件&#xff0c;却不需要重新启动应用。对于Java应用程序来说&#xff0c;热部署就是在运行时更新Java类文件。 热部署有什么用&#xff1f; 节约时间&#xff0c;热…

Mybatis枚举类型处理和类型处理器

专栏精选 引入Mybatis Mybatis的快速入门 Mybatis的增删改查扩展功能说明 mapper映射的参数和结果 Mybatis复杂类型的结果映射 Mybatis基于注解的结果映射 Mybatis枚举类型处理和类型处理器 再谈动态SQL Mybatis配置入门 Mybatis行为配置之Ⅰ—缓存 Mybatis行为配置…

linux下docker搭建Prometheus +SNMP Exporter +Grafana进行核心路由器交换机监控

一、安装 Docker 和 Docker Compose https://docs.docker.com/get-docker/ # 安装 Docker sudo apt-get update sudo apt-get install -y docker.io# 安装 Docker Compose sudo apt-get install -y docker-compose二、创建配置文件及测试平台是否正常 1、选个文件夹作为自建…

医学图像分割中的频域多轴表示学习

摘要 https://arxiv.org/pdf/2312.17030v1.pdf 最近&#xff0c;视觉Transformer (ViT)在医学图像分割&#xff08;MIS&#xff09;中得到了广泛应用&#xff0c;这归功于其在空间域应用自注意力机制来建模全局知识。然而&#xff0c;许多研究都侧重于改进空间域模型&#xff…

LeetCode刷题--- 不同路径 III

个人主页&#xff1a;元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏 力扣递归算法题 http://t.csdnimg.cn/yUl2I 【C】 ​​​​​​http://t.csdnimg.cn/6AbpV 数据结构与算法 ​​​http://t.csdnimg.cn/hKh2l 前言&#xff1a;这个专栏主要讲述递…

x-cmd pkg | gum - 很好看的终端 UI 命令行工具

目录 简介首次用户功能特点Bubbles 与 Lip Gloss进一步探索 简介 gum 由 Charm 组织于 2022 年使用 Go 语言开发。旨在帮助用户编写 Shell 脚本与 dotfiles 时提供一系列快捷使用&#xff0c;可配置&#xff0c;可交互&#xff0c;美观的 Terminal UI 组件。 首次用户 使用 x…

U4_3 语法分析-自底向上分析-LR0/LR1/SLR分析

文章目录 一、LR分析法1、概念2、流程3、LR分析器结构及分析表构造1&#xff09;结构2&#xff09;一些概念 二、LR(0)分析法1、流程2、分析动作1&#xff09;移近2&#xff09;归约(reduce) 3、总结1&#xff09;LR分析器2&#xff09;构造DFA3&#xff09;构造LR(0)的方法(三…

Apache SSI 远程命令执行漏洞

一、环境搭建 二、访问upload.php 三、写shell <!--#exec cmd"id" --> 四、访问 如图所示&#xff0c;即getshell成功&#xff01;​

K8s实战入门

1.NameSpace Namespace是kubernetes系统中的一种非常重要资源&#xff0c;它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。 默认情况下&#xff0c;kubernetes集群中的所有的Pod都是可以相互访问的。但是在实际中&#xff0c;可能不想让两个Pod之间进行互相…