Linux系统磁盘管理(实操演示磁盘分区建立,文件系统的挂载与自动挂载)

磁盘结构:

简介:

磁盘(disk)是指利用磁记录技术存储数据的存储器。
磁盘是计算机主要的存储介质,能够存储大量的二进制数据,而且断电后也能保持数据不丢失。
早期计算机使用的磁盘是软磁盘(soft disk,简称软盘),现在经常使用的磁盘是硬磁盘(hard disk,简称硬盘)。web

硬盘的物理结构:

  • **盘片:**硬盘中通常会有多个盘片组成,每一个盘片包含两个面,每一个盘面都对应地有一个读/写磁头。受到硬盘总体体积和生产成本的限制,盘片数量都受到限制,通常都在5片之内。盘片的编号自下向上从0开始,如最下边的盘片有0面和1面,再上一个盘片就编号为2面和3面。
  • **磁头:**用来读取盘面的存取数据,因为每一个盘面都有本身的磁头,所以,盘面数等于总的磁头数。

硬盘的数据结构:

  • **扇区:**盘片被分为多个扇形区域,扇区是磁盘的最小组成单元,一般是512字节。(因为不断提升磁盘的大小,部分厂商设定每一个扇区的大小是4096字节)
  • **磁道:**同一盘片不一样半径的同心圆,从圆心向外画直线,能够将磁道划分为若干个弧段,每一个磁道上一个弧段被称之为一个扇区
  • **柱面:**硬盘一般由重叠的一组盘片构成,每一个盘面都被划分为数目相等的磁道,并从外缘的“0”开始编号,具备相同编号的磁道造成一个圆柱,称之为磁盘的柱面。磁盘的柱面数与一个盘面上的磁道数是相等的。

磁盘容量的计算:

  • 计算公式:
    存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数
    能够用柱面/磁头/扇区来惟必定位磁盘上每个区域
    例子:
    若是一个硬盘3个磁盘6个磁头,7个柱面(每一个盘片7个磁道) 的磁盘,中每条磁道有12个扇区,因此此磁盘的容量为:存储容量 6 * 7 * 12 * 512 = 258048
  • 磁盘接口类型:
    **IDE(并口):**IDE接口硬盘多用于家用产品中,也部分应用于服务器,在实际的应用中,人们也习惯用IDE来称呼最先出现IDE类型硬盘ATA-1,这种类型的接口随着接口技术的发展已经被淘汰了。
    SATA(串口): SATA采用串行链接方式,串行ATA总线使用嵌入式时钟信号,具有了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不只仅是数据)进行检查,若是发现错误会自动矫正,这在很大程度上提升了数据传输的可靠性。是将来和如今PC机硬盘的主流趋势。
    **SCSI:**是一种智能的通用接口标准,它具有与多种类型的外设进行通讯的功能。SCSI采用ASPI(高级SCSI编程接口)的标准软件接口使驱动器和计算机内部安装的SCSI适配器进行通讯。SCSI接口具备应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等优势。主要应用于服务器市场。

磁盘读取响应时间:

读写一次磁盘信息所需的时间可分解为:寻道时间、延迟时间、传输时间。为提升磁盘传输效率,软件应着重考虑减小寻道时间和延迟时间。编程

  • **寻道时间:**磁头从开始移动到数据所在磁道所须要的时间,寻道时间越短,I/O操做越快,目前磁盘的平均寻道时间通常在3-15ms,通常都在10ms左右。
  • **旋转延迟:**盘片旋转将请求数据所在扇区移至读写磁头下方所须要的时间,旋转延迟取决于磁盘转速。普通硬盘通常都是7200rpm,慢的5400rpm。
  • **数据传输时间:**完成传输所请求的数据所须要的时间。

磁盘块/簇(虚拟出来的):

块是操做系统中最小的逻辑存储单位。操做系统与磁盘打交道的最小单位是磁盘块。通俗的来说,在Windows下如NTFS等文件系统中叫作簇;在Linux下如Ext4等文件系统中叫作块(block)。每一个簇或者块能够包括二、四、八、1六、3二、64…2的n次方个扇区。vim

Page:

操做系统常常与内存和硬盘这两种存储设备进行通讯,相似于“块”的概念,都须要一种虚拟的基本单位。因此,与内存操做,是虚拟一个页的概念来做为最小单位。与硬盘打交道,就是以块为最小单位。服务器

扇区、块/簇、page的关系:

扇区: 硬盘的最小读写单元
块/簇: 是操做系统针对硬盘读写的最小单元
page: 是内存与操做系统之间操做的最小单元。数据结构

MBR与磁盘分区表示:

主引导记录(MBR:Master Boot Record)

MBR位于硬盘第一个物理扇区处。
MBR中包含硬盘的主引导程序和硬盘分区表。
分区表有4个分记录区,每一个分记录区占16个字节。编辑器

磁盘分区结构:

硬盘中的主分区数目只有4个,所以主分区和扩展分区的序号也就限制在1~4。
在拓展分区再分为逻辑分区,逻辑分区的序号将始终从5开始。svg

文件系统类型:

  • XFS文件系统:
    存放文件和目录数据的分区
    高性能的日志型文件系统
    CentOS 7系统中默认使用的文件系统
  • SWAP,交换文件系统:
    为Linux系统创建交换分区
  • Linux支持的其它文件系统类型:
    FAT1六、FAT3二、NTFS
    EXT四、JFS

检测并确认新硬盘:

  • fdisk命令:查看或管理磁盘分区oop

  • 交互模式中经常使用指令:性能

m-----------帮助信息
p------------显示分区列表
n------------建立分区
d------------删除分区delete
t-------------转换分区类型  ID
w-----------保存修改
q------------退出

查看磁盘分区状况“fdisk -l [磁盘设备]”
操作系统

管理磁盘分区“fdisk [磁盘设备]”

实际操做:

建立磁盘分区:

1.添加磁盘后重启系统(命令“init 6”),查看磁盘是否添加成功。
输入:fdisk -l

2.进入磁盘sdb的磁盘管理界面。
输入:fdisk /dev/sdb

3.输入“n”建立分区。

4.建立一个主分区,分区号默认1号。

5.选择其起始扇区,这里直接回车选择默认的起始扇区便可。(扇区之因此不从0开始,是由于磁盘有一个保留区用来保存分区表)

6.设置分区的大小为10G,若是不设置直接默认所磁盘有空间全分配给这个主分区。
输入:+10G

7.输入“p”显示分区列表,看是否添加分区成功。

8.用上面的方法再建立一个主分区。

9.再用相同的方法建立一个拓展分区。

10.在拓展分区基础上再创建一个逻辑分区。(注意:逻辑分区只能在拓展分区上创建)

11.再建立一个逻辑分区。

修改磁盘分区:

1.选择将逻辑分区sdb5的分区类型进行修改。
输入:t
输入:5

2.修改分区类型须要知道你想修改的分区类型代码,若是不知道能够输入L查询。

输入:L

3.将分区类型修改成Linux swap
输入:82

4.将逻辑分区sbd6的分区类型改成FAT32。

输入:t
输入:6
输入:b

删除磁盘分区:

假如我不想要主分区sdb2了,此时我能够将它删除。

输入:d
输入:2

保存退出磁盘管理界面:

输入w直接保存退出

建立文件系统(格式化):

命令mkfs(make filesystem):(用来格式化通常类型磁盘分区)
格式1:mkfs…-t…文件系统类型…分区设备

输入:mkfs -t xfs /dev/sdb1

格式2:mkfs.文件系统类型…分区设备
输入:mkfs.vfat /dev/sdb6

命令:mkswap:(用来格式化Linux swap类型磁盘分区)

格式:mkswap…分区设备

输入:mkswap /dev/sdb5


通常类型磁盘分区,格式化后须要挂载才能使用,而Linux swap类型直接用“swapon”命令便可开启,“swapoff”命令关闭。

挂载文件系统:

命令:mount

格式1:mount…[-t 类型]…存储设备…挂载点目录(挂载通常存储设备)
输入:mount /dev/sdb1 /mnt/

格式2:mount…-o…loop…ISO镜像文件…挂载点目录(挂载系统镜像)

卸载文件系统:

命令:umount

格式1:umount…存储设备位置
输入:umount /dev/sdb6


格式2:umount…挂载点目录
输入:umount /mnt/FAT32/

设置文件的自动挂载:

咱们用mount命令挂载的文件系统,在重启系统后须要再次挂载,若是是经常使用的文件系统,能够经过在/etc/fstab配置文件中添加自动挂载的配置命令,让系统每次开机时自动挂载文件系统。

1.用vim编辑器对配置文件进行编辑。

2.添加sdb1的自动挂载命令。

3.保存并退出vim编辑器

4.重启系统检查sdb1是否自动挂载