Linux磁盘管理入门深入解析

简介: Linux磁盘管理学习报告

基础概念

1.硬盘中的概念

  • 磁头:【head】:磁头指的是通过磁性原理读取磁性介质上数据的部件,每个盘片一般有上下两面,分别对应1个磁头,共2个磁头。
  • 磁道:【track】当磁盘旋转时,磁头若保持在一个位置上,则每个磁头都会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道。
  • 柱面:【cylinder】:在有多个盘片构成的盘组中,由不同盘片的面,但处于同一半径圆的多个磁道组成的一个圆柱面。
  • 扇区:【sector】磁盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区。硬盘的读写以扇区为基本单位 。
  • CHS:【Cylinder-head-sector,柱面-磁头-扇区】是早期对硬盘驱动器的每一个物理数据块进行编址的一种方法
  • LBA:【Logical Block Address】逻辑区块地址,对是描述计算机存储设备上数据所在区块的通用机制,一般用在像硬盘这样的辅助记忆设备。LBA可以意指某个数据区块的地址或是某个地址所指向的数据区块。

2.分区类型

  • MBR:【Master Boot Record】主引导记录,又叫做主引导扇区,是计算机开机后访问硬盘时所必须要读取的首个扇区,它在硬盘上的三维地址为(柱面,磁头,扇区)=(0,0,1)。

主引导记录的组成(512字节,LBA0):启动代码(446个字节)+硬盘分区表(64字节)+结束标志字(2字节)
启动代码:【bootloader】446个字节为操作系统启动需要的数据;

  • 硬盘分区表:【DPT】64个字节表示磁盘的分区信息,由于MBR分区表64个字节的长度限制,最多只能划分4个主分区,或者3个主分区1个扩展分区。当使用扩展分区来划分逻辑分区时,会即扩展分区后生成一个EBR的512字节的扇区,使用类似MBR的方式来表示 逻辑分区,但是EBR前446个字节为空,后64个字节为逻辑分区的分区信息,同样以55AA结束该扇区;

结束标志字:最后2个字节内容为55AA表示扇区结尾。

  • GPT:GPT

GPT即全局唯一标识分区表(GUID Partition Table)是一个实体磁盘的分区表的结构布局的标准。它是可扩展接口(EFI)标准的一部分。由于MBR分区表最大可寻址的存储空间只有2TB这个局限性。CPT就诞生了,CGPT分类64bits给逻辑块地址,这就意味着寻址存储空间达到8ZB。GPT支持最多128个主分区。
GPT=保护性MBR(LBA0)+GPT头(LBA1)+分区表(LBA2 ~ 33)+分区(LBA34 ~ -34)+分区表备份(LBA-2 ~ -33)+GPT头备份(LBA-1)
通常每个逻辑块(LBA)为512字节,每个分区的记录为128字节。负数的LBA地址表示从最后的块开始倒数,−1表示最后一个块。
3.文件系统

  • 文件系统是操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。
  • 【文件系统类型】:
  • vfat:支持包括一系列相关文件系统 ( VFAT/FAT16/FAT32 ), 这些文件系统针对较旧版本的 Microsoft Windows 开发 , 在大量的系统和设备上受支持
  • 0iso9660: 光盘格式文件系统
  • nfs:网络文件系统
  • ramfs:内存文件系统
  • ext4:rhel6的标准文件系统。它非常强大可靠 , 具有多项可以提高现代工作量处理性能的功能
  • ext2:是常用于 Linux 中的较旧的文件系统。它简单可靠 ,非常适合小型存储设备,但是效率低于 ext4
  • xfs:rhel7的标准文件系统其具备数据完全、性能稳定、扩展性强 ( 8eb-1byte ) 、传输速率高 ( 7G/s )
  • Linux swap: 它是Linux中一种专门用于交换分区的swap文件系统

4.fstab文件

  • /etc/fstab是用来存放文件系统的静态信息的文件,当系统启动的时候,系统会自动地从这个文件读取信息,并且会自动将此文件中指定的文件系统挂载到指定的目录。
  • 规定格式:<fs_sepc> <fs_file> <fs_vfstype> <fs_mntops> <fs_freq> <fs_passno>
  • 第1个字段:设备分区
  • 第2个字段:挂载文件路径
  • 第3个字段:挂载分区文件系统类型
  • 第4个字段:挂载参数,参数如下
  • Async/sync 设置是否为同步方式运行,默认为async
  • auto/noauto 当下载mount -a 的命令时,此文件系统是否被主动挂载。默认为auto
  • rw/ro 是否以以只读或者读写模式挂载
  • exec/noexec 限制此文件系统内是否能够进行"执行"的操作
  • user/nouser 是否允许用户使用mount命令挂载
  • suid/nosuid 是否允许SUID的存在
  • uesrquota 启动文件系统支持磁盘配额模式
  • groupquota 启动文件系统对群组磁盘配额模式的支持
  • Defaults 同时具有rw,suid,dev,exec,auto,nouser,async等默认参数的设置
  • 第5个字段:能否被dump备份命令作用
  • 0 代表不做dump备份
  • 1代表要进行dump备份
  • 第6个字段:是否检验扇区,开机的过程中,系统默认会以fsck检验我们系统是否为完整
  • 0 不要检验
  • 1 1级别进行检验(一般根目录设置为1级别,选择最早检验)
  • 2 1级别检验完成后进行2级别检验

5.crypttab文件

  • /etc/crypttab 文件用于描述 在系统启动过程中创建的加密块设备(加密卷)。
  • 规定格式: [password] [options]
  • 第1个字段:(必须)是加密卷的映射名称, 也就是映射在 /dev/mapper/ 目录下的设备名称。
  • 第2个字段:(必须)是加密卷自身。
  • 第3个字段:(可选)是加密卷的密码文件。 密码文件必须以绝对路径表示,并且其中仅包含用于解开加密卷的密码。
  • 第4个字段:(可选)是逗号分隔的加密卷选项。
相关文章
|
11月前
|
存储 监控 Linux
Linux: 检测磁盘坏块 你得会吧!
Linux: 检测磁盘坏块 你得会吧!
747 19
Linux: 检测磁盘坏块 你得会吧!
|
10月前
|
Unix Linux
对于Linux的进程概念以及进程状态的理解和解析
现在,我们已经了解了Linux进程的基础知识和进程状态的理解了。这就像我们理解了城市中行人的行走和行为模式!希望这个形象的例子能帮助我们更好地理解这个重要的概念,并在实际应用中发挥作用。
203 20
|
10月前
|
Ubuntu Linux
"unzip"命令解析:Linux下如何处理压缩文件。
总的来说,`unzip`命令是Linux系统下一款实用而方便的ZIP格式文件处理工具。本文通过简明扼要的方式,详细介绍了在各类Linux发行版上安装 `unzip`的方法,以及如何使用 `unzip`命令进行解压、查看和测试ZIP文件。希望本文章能为用户带来实际帮助,提高日常操作的效率。
2223 12
|
10月前
|
Linux
在线对Linux进行磁盘扩容的技术指南。
综上所述,Linux磁盘扩容的过程,重要的不仅是技术,更是对每一步骤的深刻理解和投入的爱心。只要手握正确的工具,我们不仅能满足"孩子"的成长需求,还能享受其中的乐趣和成就。
639 10
|
11月前
|
监控 固态存储 Linux
如何判断Linux磁盘是SSD还是HDD?
总的来说,判断磁盘是SSD还是HDD并不复杂,只需要使用正确的命令和方法,就可以轻松得到结果。希望这些信息对你有所帮助,如果你还有其他问题,欢迎随时提问。
1307 15
|
11月前
|
Linux
Linux命令的基本格式解析
总的来说,Linux命令的基本格式就像一个食谱,它可以指导你如何使用你的计算机。通过学习和实践,你可以成为一个真正的“计算机厨师”,创造出各种“美味”的命令。
296 15
|
11月前
|
存储 Linux
Linux内核中的current机制解析
总的来说,current机制是Linux内核中进程管理的基础,它通过获取当前进程的task_struct结构的地址,可以方便地获取和修改进程的信息。这个机制在内核中的使用非常广泛,对于理解Linux内核的工作原理有着重要的意义。
497 11
|
12月前
|
Linux
Linux系统ext4磁盘扩容实践指南
这个过程就像是给你的房子建一个新的储物间。你需要先找到空地(创建新的分区),然后建造储物间(格式化为ext4文件系统),最后将储物间添加到你的房子中(将新的分区添加到文件系统中)。完成这些步骤后,你就有了一个更大的储物空间。
1246 10
|
12月前
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
Web App开发 移动开发 前端开发
React音频播放器样式自定义全解析:从入门到避坑指南
在React中使用HTML5原生&lt;audio&gt;标签时,开发者常面临视觉一致性缺失、样式定制局限和交互体验割裂等问题。通过隐藏原生控件并构建自定义UI层,可以实现完全可控的播放器视觉风格,避免状态不同步等典型问题。结合事件监听、进度条拖拽、浏览器兼容性处理及性能优化技巧,可构建高性能、可维护的音频组件,满足跨平台需求。建议优先使用成熟音频库(如react-player),仅在深度定制需求时采用原生方案。
520 12