Linux初学(八)磁盘管理

一、磁盘管理

1.1 简介

磁盘的工作原理:

  • 添加磁盘
  • 对磁盘进行分区
  • 格式化磁盘
  • 挂载和使用磁盘

磁盘的类型:

  • 固态
  • 机械

磁盘的接口类型:

  • IDE
  • STST
  • SCSI

磁盘工作的原理:

磁盘,特别是硬盘,和内存不同,它能够在断电后保留数据。其工作原理主要涉及以下几个方面:

  1. 外部结构:硬盘的外部结构主要包括金属固定面板、控制电路板和接口。控制电路板负责处理硬盘与计算机之间的通信,而接口则是硬盘与计算机之间数据传输的通道。
  2. 内部结构:硬盘内部包含多个碟片(盘片),每个碟片的上下表面都涂有磁性物质,用于存储数据。这些碟片围绕中心主轴旋转,每张碟片都有对应的读写磁头,用于数据的读取和写入。
  3. 电磁原理:磁盘的存储和读取数据依赖于电磁效应和电磁感应。当电流通过磁头时,会在磁头周围产生磁场,这个磁场可以改变磁盘表面的磁性粒子的方向,从而实现数据的写入。当磁头经过一个已经改变了磁极方向的区域时,会在磁头中感应出电流,这个电流的变化可以被检测并转换为数据信号,实现数据的读取。
  4. 读写过程:在写数据时,磁头会根据数据的电信号产生相应的磁场,改变下方碟片表面的磁极方向。在读数据时,磁头会检测通过的碟片表面的磁极方向变化,并将这些变化转换为电信号,进而转换为计算机能够理解的数据。
  5. 机械运动:磁盘工作时,碟片会以高速旋转,这使得磁头能够快速地访问磁盘表面的不同区域。同时,磁头本身也位于一个精密的机械臂上,这个臂可以移动磁头到碟片的特定轨道上,已访问或存储特定的数据。

  • track:磁道,其实就是磁盘上的同心圆,从外向里,依次是1号磁道、2号....
  • sector:扇区,将磁盘分成的一个一个扇形区域,每个扇区大小都是512字节,从外向里,依次是1号扇区、2号扇区...
  • cylinder:柱面,不同盘面上的同位置上的扇区构成了柱面,从外向里,依次是1号柱面2号...
  • 分区的时候,都是从1号开始分区的,所以,越靠前的分区,读写性能越好

MBR 

Main Boor Record 主引导记录,系统启动,必须依靠MBR才能启动
MBR是磁盘的第一个扇区,大小是512字节,这512字节分为三个部分

        最前面的64字节:分区表

        中间的446字节:bootloader,这是一个程序,用于引导系统开机启动

        最后的2字节:magic number,这个是用于指定boot loader是否有效

分区表

  • 大小是64字节
  • 在分区表中,记录了分区从那个柱面开始,到那个柱面结束
  • 但是,在进行记录的时候,用8字节记录开始,用8字节记录结束,也就是说,16字节可以记录一个分区,因此64字节最多可以分4个,这里的分区称为主分区
  • 为了分更多的分区,就需要在磁盘上额外找个空间,存储更多的分表,这个存储更多的分区表的空间,称之为扩展分区
  • 通过扩展分区所分的更多的分区,称之为逻辑分区

注意:

  • 主分区的数量:0-4
    • 主分区可以没有,也就是将所有的分区都做成扩展分区来使用
  • 扩展分区数量:0-1
  • 主分区+扩展分区的数量:1-4
  • 逻辑分区数量:0~+
    • 必须得先有扩展分区,才能有逻辑分区

1.2 正确的分区方法

P 主分区

E 扩展分区

V 逻辑分区

例如:

  • P
  • P + P 
  • P + P + P
  • P + P + P + P
  • P + E
  • P + P + E
  • P + P + P + E
  • E

1.3 编号问题:

  • 主分区编号是:1-4
  • 扩展分区编号:1-4
  • 逻辑分区编号:5+

1.4 磁盘的命名:

Linux中,一切皆为文件

/dev/sd字母

        /dev/sda 表示第一个磁盘

        /dev/sdb 表示第二个磁盘

        ...

举例说明

/dev/sda1 表示第一个磁盘的第一个分区

/dev/sdc4 表示第三个磁盘的第四个分区

/dev/sdd6 表示第四个磁盘的第六个分区

/dev/sda1 可能是主分区,也可能是扩展分区
/dev/sdc4 可能是主分区,也可能是扩展分区

/dev/sdd6 是第二个逻辑分区

1.5 磁盘的操作

相关命令

分区:fdisk /dev/sd字母

查看分区信息:fdisk -l

安装文件系统(格式化):mke2fs

挂载分区:mount

查看分区使用率:df

查看当前系统磁盘的分区信息

[root@localhost ~]# fdisk -l

对sdb进行分区

  • d 删除分区
  • n 创建分区
  • e 扩展分区
  • l 创建逻辑分区
  • p 打印分区信息
  • q 不保存,直接退出
  • w 保存分区,然后退出

磁盘分区以后,无法直接使用,必须先进性格式化

mke2fs 设备文件名

使用格式好的分区,其实就是在系统中,新建几个目录,然后将格式好的分区挂载到这个目录

1、创建一个空目录

        mkder /d2

2、将分区的设备文件挂载到这个目录

        mount /dev/sdb3 /d2

3、查看分区的使用情况【查看磁盘的使用情况】

        df -h

1.6 实现开机自动挂载

查看文件类型

[root@localhost dev]# lsblk -f sda1
NAME FSTYPE LABEL UUID                                 MOUNTPOINT
sda1 xfs          57e8e95e-f931-48b7-b1c4-b15cd320d1bb /boot

 /etc/fstab

一个关键的系统配置文件,用于定义系统启动时要挂载的文件系统和存储设备及其相关信息

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

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

相关文章

目标检测——PP-YOLO算法解读

PP-YOLO系列,均是基于百度自研PaddlePaddle深度学习框架发布的算法,2020年基于YOLOv3改进发布PP-YOLO,2021年发布PP-YOLOv2和移动端检测算法PP-PicoDet,2022年发布PP-YOLOE和PP-YOLOE-R。由于均是一个系列,所以放一起解…

【JavaEE初阶系列】——带你了解volatile关键字以及wait()和notify()两方法背后的原理

目录 🚩volatile关键字 🎈volatile 不保证原子性 🎈synchronized 也能保证内存可见性 🎈Volatile与Synchronized比较 🚩wait和notify 🎈wait()方法 💻wait(参数)方法 🎈noti…

【单元测试】一文读懂java单元测试

目录 1. 什么是单元测试2. 为什么要单元测试3. 单元测试框架 - JUnit3.1 JUnit 简介3.2 JUnit 内容3.3 JUnit 使用3.3.1 Controller 层单元测试3.3.2 Service 层单元测试3.3.3 Dao 层单元测试3.3.4 异常测试3.3.5 测试套件测多个类3.3.6 idea 中查看单元测试覆盖率3.3.7 JUnit …

Avl 平衡二叉树 概念与代码实现

概念: 二叉树存在值顺序插入导致树高度过大的问题、平衡二叉树通过旋转的方式、使二叉树处于平衡状态、子树高度差不能大于1 旋转规则: 左子树高右旋、右子树高左旋 右旋时插入节点在最右、则子树先左旋 左旋时插入节点在最左、则子树先右旋 代码实现: package com.info.data…

第28章 ansible的使用

第28章 ansible的使用 本章主要介绍在 RHEL8 中如何安装 ansible 及 ansible的基本使用。 ◆ ansible 是如何工作的 ◆ 在RHEL8 中安装ansible ◆ 编写 ansible.cfg 和清单文件 ◆ ansible 的基本用法 文章目录 第28章 ansible的使用28.1 安装ansible28.2 编写ansible.cfg和清…

Arrays.binarySearch 详解

Arrays.binarySearch 详解 Arrays类的binarySearch()方法,可以使用二分搜索法来搜索指定的数组,以获得指定对象。该方法返回要搜索元素的索引值。务必注意:数组必须经过排序才可以使用此方法,否则返回下标显示不准。binarySearch…

HDFS集群环境配置

环境如下三台服务器: 192.168.32.101 node1192.168.32.102 node2192.168.32.103 node3 一、Hadoop安装包下载,点此官网下载 二、Hadoop HDFS的角色包含: NameNode,主节点管理者DataNode,从节点工作者SecondaryNameN…

掌握Go语言:Go语言结构体进阶,探索高级特性与实用技巧(23)

Go语言中的结构体(Struct)除了基本的定义和使用外,还有一些高级用法,可以让我们更灵活地使用结构体。下面详细解释一些高级用法: 结构体嵌套 结构体可以嵌套在其他结构体中,形成更复杂的数据结构。这种嵌…

Linux 中使用ISO文件 作为yum源

Linux 中使用ISO文件 作为yum源 在Linux中,可以将ISO文件挂载为本地YUM源。以下是如何操作的步骤和示例代码: 挂载ISO文件到某个目录(例如/mnt/iso): mkdir /mnt/cdrom mount -o loop /path/to/your.iso /mnt/cdrom…

【科普向】什么是数据湖架构

数据湖架构是一种用于存储和管理大规模数据的设计模式。它的核心思想是将各种类型和格式的数据以原始形式存储在一个集中的存储系统中,而不需要预先定义数据结构或模式。以下是我对数据湖架构的理解和相关经验: 1. 构建数据湖:构建数据湖需要…

React Native: could not connect to development server

问题: 运行模拟器错误:无法连接到开发服务器 原因分析: 1、确认模拟器连接状态,是连接成功的 查看进程的端口占用,也没问题 lsof -i tcp:8081 kill pid2、检查包服务器是否运行正常 连接真机进行调试发现真机是正常…

基于springboot+vue+Mysql的“智慧食堂”设计与实现

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

Python 如何优雅编写多进程读取文件代码

文章目录 1. 背景2. multiprocessing库介绍2.1 创建进程2.2 进程池2.3 进程间通信2.4 进程同步 3. 多进程读取文件代码 1. 背景 在读取文件时,希望能够利用 Python 的多进程并行读取多个文件。有时,我们是基于类去编写代码的,那么对于类的方…

Basic RNN

文章目录 回顾RNNRNN CellRNNCell的使用RNN的使用 RNN例子使用RNN Cell实现使用RNN实现 嵌入层 Embedding独热向量的缺点Embedding LSTMGRU(门控循环单元)练习 回顾 DNN(全连接):和CNN相比,拥有巨大的参数量,CNN权重共…

游泳耳机哪个牌子好?强烈推荐这4大高性能款式!

在如今的科技时代,游泳耳机已经成为了许多游泳爱好者和运动员的必备装备。一款好的游泳耳机不仅可以让你在水中享受到美妙的音乐,还可以为你提供更好的训练体验。 (下图是我测试过的一部分游泳耳机:) 但在市场上众多的…

基于FPGA实现的UDP协议栈设计_汇总

基于FPGA实现的千兆以太网UDP协议栈设计(汇总篇) 1. MAC设计 2. IP层设计 3. ARP层设计 4. UDP层设计 5. ICMP层设计 6. 仲裁器设计 8. RGMII接口设计 9. 跨时钟域设计

公募基金公开市场数据基础分析实例

公募基金公开市场数据基础分析 公募基金公开市场数据基础分析示例代码1.1 公开市场数据表结构 字段 字段类型 含义 SecurityID SYMBOL 基金代码 FullName STRING 基金全称 Name STRING 基金简称 Management SYMBOL 基金公司 Type SYMBOL 基金类型 Custodian SYMBOL 托管人 Issu…

AI大模型在医疗领域的应用案例:自然语言处理与医疗文本分析

随着人工智能技术的快速发展,AI大模型在自然语言处理、图像识别、语音识别等领域的应用越来越广泛。在医疗领域,AI大模型的应用正在深刻改变着医疗实践,为患者和医生带来前所未有的便利。近期AI医疗的概念也比较火热,本文将聚焦于…

编程题:相同数字的积木游戏(Java)

题目描述 小华和小薇一起通过玩积木游戏学习数学。 他们有很多积木,每个积木块上都有一个数字,积木块上的数字可能相同。 小华随机拿一些积木挨着排成一排,请小薇找到这排积木中数字相同目所处位置最远的2块积木块,计算他们的…

css的border详解

CSS的border属性是一个简写属性,用于设置以下四个边框属性: border-width:定义边框的宽度。可以使用具体的像素值,或者使用预定义的关键字如thin、medium和thick。border-width不支持百分比值。默认情况下,边框的宽度是…