最近小编整理了磁盘管理的相关知识,发现还是挺多的,所有就分了三个部分来给大家分享一下:

1、磁盘结构,认识分区

2、管理分区,文件系统格式化

3、mount挂载,/etc/fstab配置文件

这篇就先以最基础的磁盘知识开始——磁盘结构,认识分区。(讲基础的会有些无聊,但是基础还是很重要,所以还是希望大家详细了解)

一、设备类型:

(1)块设备:block ,存取单位“块”,磁盘

  字符设备:char ,存取单位“字符”,键盘

(2)机械硬盘和固态硬盘

机械硬盘(HDD ):即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。机械硬盘中所有的盘片都装在一个旋转轴上,每张盘片

之间是平行的,在每个盘片的存储面上有一个磁头,磁头与盘片之间的距离比头发丝的直径还小,所有的磁头联在一个磁头控制器上,由磁头控制器负责各个磁头的运动。磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。数据通过磁头由电磁流来改变极性方式被电磁流写到磁盘上,也可以通过相反方式读取。硬盘为精密设备,进入硬盘的空气必须过滤。

固态硬盘(SSD ):用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH 芯片、DRAM 芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,

在产品外形和尺寸上也与普通硬盘一致。

比较:

相较于HDD ,SSD 在防震抗摔、传输速率、功耗、重量、噪音上有明显优势,SSD 传输速率性能是HDD 的2倍

相较于SSD ,HDD 在价格、容量、使用寿命上占有绝对优势

硬盘有价,数据无价,目前SSD 不能完全取代HHD

(3)设备文件

① 磁盘设备的设备文件命名:/dev/DEV_FILE

② 不同磁盘标识:a-z,aa,ab…

/dev/sda, /dev/sdb, ... /dev/sdaa,/dev/sdab...

同一设备上的不同分区:1,2, ...

/dev/sda1, /dev/sda5

③ 硬盘存储术语

  head :磁头

  track :磁道

  cylinder:  柱面

  secotr:  扇区,512bytes(最小单位)

④ HDD磁盘结构

CHS

512bytes    *   64 sector数/track    *    1024  track数/盘面       256   head磁头数(盘面数)   8G

扇区                 扇区数/磁道                       磁道/盘面

( 512bytes    *   64 sector数/track    *   256 )一个柱面的大小:8M  * 1024磁道 =8G

单位:B KB MB GB TB PB EB ZB YB BB NB DB

(4)如何使用分区空间?(后边会详细讲解每一步)

① 设备识别

② 设备分区

③ 文件系统类型格式化

④ 在/etc/fstab 文件中创建条目

⑤ mount 挂载新的文件系统

(5)为什么分区?

① 优化I/O 性能

② 实现磁盘空间配额限制

③ 提高修复速度

④ 隔离系统和程序

⑤ 安装多个OS

⑥ 采用不同文件系统

(6)两种寻址方法:CHS和LBA

CHS:

  采用24bit 位寻址

  其中前10 位表示cylinder ,中间8 位表示head ,后面6 位表示sector。 。

  最大寻址空间8GB

LBA (logical block addressing):

  LBA 是一个整数,通过转换成CHS 格式完成磁盘具体寻址

  LBA 采用48 个bit 位寻址

  最大寻址空间128PB

由于CHS 寻址方式的寻址空间在大概8GB 以内,所以在磁盘容量小于大概8GB 时,可以使用CHS 寻址方式或是LBA 寻址方式;在磁盘容量大于大概8GB 时,则只能使用LBA 寻址方式

二、分区介绍

两种分区方式:MBR ,GPT

(1)MBR: Master Boot Record ,1982年, 使用32位表示扇区数 , 分区不超过2T

如何分区:按柱面

  0 磁道0 扇区:512bytes

  446bytes: boot loader

  64bytes :分区表

    16bytes:  标识一个分区

  2bytes: 55AA,结束标志

4 个主分区;3 主分区+1 扩展(N 个逻辑分区)

分区表(DPT)结构

(2)硬盘主引导记录MBR 主要由 3 个部分组成

① 主引导程序(偏移地址0000H--0088H ),它负责从活动分区中装载,并运行系统引导程序。

出错信息数据区,偏移地址0089H--00E1H 为出错信息,00E2H--01BDH 全为0 字节。

② 分区表(DPT,Disk Partition Table )含4 个分区项,偏移地址01BEH--01FDH, 每个分区表项长16 个字节,共64 字节为

分区项1 、分区项2 、分区项3 、分区项4

③ 结束标志字,偏移地址01FE--01FF 的2 个字节值为结束标志 55AA

(3)GPT分区

① GPT:GUID (Globals Unique Identifiers) partitiontable  支持128个分区,使用64 位,支持8Z(512Byte/block )64Z (4096Byte/block)

使用128 位UUID(Universally Unique Identifier)  表示磁盘区 和分区 GPT 分区表自动备份在头和尾两份,并有CRC 校验位

UEFI ( 统一扩展固件接口) 硬件支持GPT ,使操作系统启动

② EFI部分又可以分为4个区域:EFI信息区(GPT头)、分区表、GPT分区、备份区域

第一篇基础就这些了,下一篇就是精彩的操作了,不要错过~~~

          希望对大家有帮助,有什么错误请告诉我~

linux 磁盘管理三部曲——(1)磁盘结构,认识分区的更多相关文章

  1. linux 磁盘管理三部曲——(3)mount挂载,/etc/fstab配置文件

    当我们分完区,并做好文件系统格式化,就到了最后的挂载mount了,挂载完毕就可以使用磁盘设备了. 一.什么是挂载,卸载 任何块设备都不能直接访问,需挂载在目录上访问 挂载: 将额外文件系统与根文件系统 ...

  2. linux 磁盘管理三部曲——(2)管理分区,文件系统类型格式化

    上篇小编给大家讲解了磁盘结构和分区的介绍,这篇小编就给大家演示如何管理分区和文件系统类型格式化. 小编上篇已经提到如何使用磁盘,今天这两步,就是其中很重要的两步.(前几天写的有点急,有点乱,今天又整理 ...

  3. linux磁盘管理、新增磁盘、分区、挂载

    1. du -sh 查看目录.文件总大小 -a:全部文件与目录大小都列出来.如果不加任何选项和参数只列出目录(包含子目录)大小. -c:最后加总2. df -h 查看磁盘使用量3. lsblk 查看系 ...

  4. [内存管理]linux内存管理 之 内存节点和内存分区

    Linux支持多种硬件体系结构,因此Linux必须采用通用的方法来描述内存,以方便对内存进行管理.为此,Linux有了内存节点.内存区.页框的概念,这些概念也是一目了然的. 内存节点:主要依据CPU访 ...

  5. Linux磁盘管理之创建磁盘分区05

    一.磁盘基础知识 磁盘安装在计算机上后,在系统读取到硬盘后并不能直接使用,必须经过分区.格式化才能够正确使用.这一次主要是针对磁盘分区进行简单总结,存储设备类型:U盘.光盘.软盘.硬盘.磁带. 硬盘接 ...

  6. Linux命令_磁盘管理_查看磁盘或目录的容量

    软件环境:虚拟机VM12,Linux版本 CentOS 7.3 命令 df (disk filesystem) 用于查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认以KB为单位显示 ...

  7. linux的基本操作(磁盘管理)

    磁盘管理 [查看磁盘或者目录的容量 df 和 du] df 查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的 df常用参数有 –i -h -k –m等 -i 使用 ...

  8. 【Linux开发】Linux磁盘管理

    第八章 Linux磁盘管理 [查看磁盘或者目录的容量 df 和 du] df 查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的:df常用参数有 –i -h -k ...

  9. linux磁盘管理(全面解析)

    目录 一:磁盘管理 1.磁盘管理作用 2.磁盘挂载顺序 3.磁盘分区 4.Linux 磁盘管理常用命令 5.磁盘分区内容 二:linux中分区的意义 三:分区的步骤与顺序 1.添加磁盘 2.查看创建新 ...

随机推荐

  1. GCC 中的编译器堆栈保护技术

    GCC 中的编译器堆栈保护技术 前几天看到的觉得不错得博客于是转发了,但这里我补充一下一些点. GCC通过栈保护选项-fstack-protector-all编译时额外添加两个符号,__stack_c ...

  2. C#中SQL语句参数写法

    OracleConnection oc=new OracleConnection("data source=osserver;User Id=****;password=**"); ...

  3. Nodejs学习笔记(十五)--- Node.js + Koa2 构建网站简单示例

    目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mys ...

  4. 微信分享 JSSDK的使用

    我现在做过的在微信中运行的项目,基本上都有微信分享功能,所以,会使用JSSDK分享页面是非常重要的.分享功能的代码一般会放在beforeCreate或mounted钩子中,代码如下: this.$ht ...

  5. MSSQL-并发控制-1-Transaction

         MSSQL并发控制原先打算分为两个部分写:隔离级别及锁,写的过程中,发现需要提及下事务的相关内容,故加多一篇博文,共3篇.         如果转载,请注明博文来源: www.cnblogs ...

  6. Node学习——开篇

    前言:自从下决心转学前端以来,我的专业课java基本荒废了,所以对于后台开发的逻辑也已基本忘干净了.但是作为一名准前端程序猿,我认为还是有必要了解后端开发的,虽不必深入学习,但是能够了解项目从前端到后 ...

  7. linux共享文件

    首先我们先创建一个组名为workgroup sudo groupadd workgroup 下面给我们这个团队创建两个用户 sudo useradd -G workgroup lucy sudo pa ...

  8. _2Python_注释命名等基本操作

    注释:注解,解释 主要用于在代码中给代码标识出相关的文字提示(提高代码的可读性)或调试程序,方便别人阅读和自己日后修改. Python中注释分为两类.单行注释:单行注释以#号开头,在一行内,#号后面的 ...

  9. input常见类型

       值   描述  text   默认.定义单行输入字段,用户可在其中输入文本.默认是 20 个字符  button   定义可点击的按钮(大多与 JavaScript 使用来启动脚本)  chec ...

  10. hadoop2.5的伪分布式安装配置

    一.windows环境下安装 根据博主写的一次性安装成功了: http://blog.csdn.net/antgan/article/details/52067441 二.linux环境下(cento ...