初学者的磁盘与系统文件管理

初学者的磁盘与系统文件管理

文章目录

  • 初学者的磁盘与系统文件管理
    • 一、磁盘基础知识
      • 磁盘结构
      • 磁盘接口
      • 固态硬盘(SSD)
      • MBR与磁盘分区表示
          • MBR
      • 磁盘分区结构
          • XFS文件系统
          • SWAP,文件交换系统(虚拟内存)
    • 二、Linux fdisk命令
      • 实例
        • fdisk分区实验
          • 1)进入磁盘/sdb 配置
          • 2)键入n,创建新分区
          • 3)键入p,设置主分区
          • 4)键入1,设置分区号为1
          • 5)容量配置
          • 6)确认分区大小
          • 7)逻辑分区建立
          • 8)e 扩展,键入e
          • 9)回车,默认设置到最后
          • 10)键入n,创建新的分区
          • 11)键入l,创建逻辑分区,编号5
          • 12)逻辑分区容量设置
          • 13)键入w,保存并退出
          • 14)查看

一、磁盘基础知识

磁盘结构

磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘),如今常用的磁盘是硬磁盘(Hard disk,简称硬盘)

硬盘主要由磁盘盘片、磁头、主轴与传动轴等组成,数据就存放在磁盘盘片中。大家见过老式的留声机吗?留声机上使用的唱片和我们的磁盘盘片非常相似,只不过留声机只有一个磁头,而硬盘是上下双磁头,盘片在两个磁头中间高速旋转

初学者的磁盘与系统文件管理_第1张图片

什么是磁道呢?每个盘片都在逻辑上有很多的同心圆,最外面的同心圆就是 0 磁道。我们将每个同心圆称作磁道(注意,磁道只是逻辑结构,在盘面上并没有真正的同心圆)。硬盘的磁道密度非常高,通常一面上就有上千个磁道。但是相邻的磁道之间并不是紧挨着的,这是因为磁化单元相隔太近会相互产生影响

那扇区又是十么呢?扇区其实是很形象的,大家都见过折叠的纸扇吧,纸扇打开后是半圆形或扇形的,不过这个扇形是由每个扇骨组合形成的。在磁盘上每个同心圆是磁道,从圆心向外呈放射状地产生分割线(扇骨),将每个磁道等分为若干弧段,每个弧段就是一个扇区。每个扇区的大小是固定的,为 512Byte。扇区也是磁盘的最小存储单位

初学者的磁盘与系统文件管理_第2张图片

柱面又是什么呢?如果硬盘是由多个盘片组成的,每个盘面都被划分为数目相等的磁道,那么所有盘片都会从外向内进行磁道编号,最外侧的就是 0 磁道。具有相同编号的磁道会形成一个圆柱,这个圆柱就被称作磁盘的柱面

硬盘的大小是使用"磁头数 x 柱面数 x 扇区数 x 每个扇区的大小"这样的公式来计算的。其中,磁头数(Heads)表示硬盘共有几个磁头,也可以理解为硬盘有几个盘面,然后乘以 2;柱面数(Cylinders)表示硬盘每面盘片有几条磁道;扇区数(Sectors)表示每条磁道上有几个扇区;每个扇区的大小一般是 512Byte

磁盘接口

机械硬盘通过接口与计算机主板进行连接。硬盘的读取和写入速度与接口有很大关系。大家都见过大礼堂吧,大礼堂中可以容纳很多人,但是如果只有一扇很小的门,那么人是很难进入或出来的,这样会造成拥堵,甚至会出现事故。机械硬盘的读取和写入也是一样的,如果接口的性能很差,则同样会影响机械硬盘的性能。

目前,常见的机械硬盘接口有以下几种:

  • IDE 硬盘接口(Integrated Drive Eectronics,并口,即电子集成驱动器)也称作 “ATA硬盘” 或 “PATA硬盘”,是早期机械硬盘的主要接口,ATA133 硬盘的理论速度可以达到 133MB/s(此速度为理论平均值)

初学者的磁盘与系统文件管理_第3张图片

  • SATA 接口(Serial ATA,串口),是速度更高的硬盘标准,具备了更高的传输速度,并具备了更强的纠错能力。目前已经是 SATA 三代,理论传输速度达到 600MB/s(此速度为理论平均值)

初学者的磁盘与系统文件管理_第4张图片

  • SCSI 接口(Small Computer System Interface,小型计算机系统接口),广泛应用在服务器上,具有应用范围广、多任务、带宽大、CPU 占用率低及热插拔等优点,理论传输速度达到 320MB/s

初学者的磁盘与系统文件管理_第5张图片

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

固态硬盘(SSD)

固态硬盘和传统的机械硬盘最大的区别就是不再采用盘片进行数据存储,而采用存储芯片进行数据存储。固态硬盘的存储芯片主要分为两种:一种是采用闪存作为存储介质的;另一种是采用DRAM作为存储介质的。目前使用较多的主要是采用闪存作为存储介质的固态硬盘
初学者的磁盘与系统文件管理_第6张图片

MBR与磁盘分区表示

MBR
  • MBR是主引导记录(Master Boot Record),位于硬盘第一个物理扇区处(引导扇区)
  • MBR中包含硬盘的主引导程序和硬盘分区表。分区表有4个分区记录区,每个分区记录区占16个字节
  • MBR最多四个分区,可创建逻辑分区
  • MBR使用fdisk命令分区

///GPT,有128个分区,适用于2TB以上的磁盘文件大小,使用parted

磁盘分区结构

  • 硬盘中的主分区数目只有4个
  • 主分区和扩展分区的序号限制在1~4
  • 扩展分区再分区为逻辑分区
  • 逻辑分区的序号将始终从5开始
XFS文件系统
  • 存放文件和目录数据的分区
  • 高性能的日志型文件系统
  • CentOS 7系统中默认使用的文件系统
  • 支持PB以上的存储
SWAP,文件交换系统(虚拟内存)
  • 为Linux系统建立交换分区

Linux支持的其他文件系统类型

  • FAT16、FAT32、NTFS

    ///FAT不支持安全选项功能,不支持4GB以下单个文件的存储

  • EXT4、JFS…

二、Linux fdisk命令

Linux fdisk是一个创建和维护分区表的程序,它兼容DOS类型的分区表、BSD或者SUN类型的磁盘列表

必要参数:

  • -l 列出素所有分区表
  • -u 与"-l"搭配使用,显示分区数目

选择参数:

  • -s<分区编号> 指定分区
  • -v 版本信息

菜单操作说明

  • m :显示菜单和帮助信息
  • a :活动分区标记/引导分区
  • d :删除分区
  • l :显示分区类型
  • n :新建分区
  • p :显示分区信息
  • q :退出不保存
  • t :设置分区号
  • v :进行分区检查
  • w :保存修改
  • x :扩展应用,高级功能

实例

显示当前分区情况

[root@localhost ~]# fdisk -l

Disk /dev/sda: 214.7 GB, 214748364800 bytes, 419430400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000a5b41

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      616447      307200   83  Linux
/dev/sda2          616448     8744959     4064256   82  Linux swap / Solaris
/dev/sda3         8744960   419430399   205342720   83  Linux

Disk /dev/sdb: 2147.5 GB, 2147483648000 bytes, 4194304000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x53ad45fa

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048   209717247   104857600   83  Linux
/dev/sdb2       209717248  4194303999  1992293376    5  Extended
/dev/sdb5       209719296   838864895   314572800   83  Linux

Disk /dev/sdd: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sde: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

fdisk分区实验

磁盘分区,一个磁盘可以划分4个主分区,1~4是主分区和扩展分区的分区号,从5以后是逻辑分区

添加一块2T的磁盘,磁盘编号:/sdb

1)进入磁盘/sdb 配置
[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

###[root@localhost~]\fdisk/dev/sdb
欢迎使用fdisk(util linux 2.23.2)。

更改将只保留在内存中,直到您决定写入它们。
在使用write命令之前要小心
2)键入n,创建新分区
Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
   命令(m表示帮助):n
分区类型:
p主(0主,0扩展,4可用)
e扩展
3)键入p,设置主分区
Select (default p): p
选择(默认p):p
4)键入1,设置分区号为1
Partition number (1-4, default 1): 1
分区号(1-4,默认为1):1
5)容量配置

第一扇区(2048-4194303999,默认2048):
使用默认值2048

First sector (2048-4194303999, default 2048): 
Using default value 2048
第一扇区(2048-4194303999,默认2048):
使用默认值2048
6)确认分区大小

最后一个扇区,+扇区或+大小{K,M,G}(2048-4194303999,默认值4194303999):+100G
已设置Linux类型的分区1,大小为100 GiB

###我这边给第一个分区分配了100G的容量,设置容量输入‘+’号跟具体容量和容量单位

Last sector, +sectors or +size{K,M,G} (2048-4194303999, default 4194303999): +100G
Partition 1 of type Linux and of size 100 GiB is set
最后一个扇区,+扇区或+大小{K,M,G}(2048-4194303999,默认值4194303999):+100G
已设置Linux类型的分区1,大小为100 GiB
7)逻辑分区建立

建立了主分区后,我打算创建逻辑分区,但是建立逻辑分区之前,要先建立一个扩展分区,然后才能在扩展分区内建立逻辑分区(逻辑分区要在拓展分区内才能创建)

依旧输入n,创建新分区

Command (m for help): n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
   命令(m表示帮助):n
分区类型:
p主(1主,0扩展,3可用)
e扩展
8)e 扩展,键入e
Select (default p): e
选择(默认p):e
9)回车,默认设置到最后
Partition number (2-4, default 2): 
First sector (209717248-4194303999, default 209717248): 
Using default value 209717248
Last sector, +sectors or +size{K,M,G} (209717248-4194303999, default 4194303999): 
Using default value 4194303999
Partition 2 of type Extended and of size 1.9 TiB is set
分区号(2-4,默认为2):
第一扇区(209717248-4194303999,默认209717248):
使用默认值209717248
最后一个扇区,+扇区或+大小{K,M,G}(209717248-4194303999,默认值4194303999):
使用默认值4194303999
设置了Extended类型和1.9tib大小的分区2
10)键入n,创建新的分区

logical (numbered from 5) 逻辑(从5开始编号)

Command (m for help): n
Partition type:
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
   命令(m表示帮助):n
分区类型:
p主要(1个主要,1个扩展,2个空闲)
逻辑(从5开始编号)
11)键入l,创建逻辑分区,编号5
Select (default p): l
Adding logical partition 5
选择(默认p):l
添加逻辑分区5
12)逻辑分区容量设置

我这边设置逻辑分区5号的大小设置的是300G,先回车,默认设置,然后’+300G’

First sector (209719296-4194303999, default 209719296): 
Using default value 209719296
Last sector, +sectors or +size{K,M,G} (209719296-4194303999, default 4194303999): +300G
Partition 5 of type Linux and of size 300 GiB is set

第一扇区(209719296-4194303999,默认209719296):
使用默认值209719296
最后一个扇区,+扇区或+大小{K,M,G}(209719296-4194303999,默认值4194303999):+300G
设置Linux类型的分区5,大小为300 GiB
13)键入w,保存并退出
Command (m for help): w
The partition table has been altered!
命令(m表示帮助):w
分区表已被更改!
14)查看

这边注意,我只划分了一个主分区,一个逻辑分区,而逻辑分区的编号是5,说明分区号1~4,只用于主分区和扩展分区,逻辑分区的编号只从5开始

[root@localhost ~]# fdisk -l
Disk /dev/sdb: 2147.5 GB, 2147483648000 bytes, 4194304000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x53ad45fa

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048   209717247   104857600   83  Linux
/dev/sdb2       209717248  4194303999  1992293376    5  Extended
/dev/sdb5       209719296   838864895   314572800   83  Linux

你可能感兴趣的:(初学者的LINUX)