day18-磁盘管理(1)

1.磁盘的概念

每个硬盘中心的都是一摞高速运转的圆盘,在圆盘上附着一圈金属颗粒,每个金属颗粒都有自己的磁化程度,用于存储0和1;当记录数据时,磁盘的磁头开始通电,形成强磁场,数据在磁场的作用下转变成电流,使颗粒磁化,从而将信息记录在圆盘上,由海量颗粒组成的信息,就是我们存在硬盘里的数据。

2.磁盘的基本结构

(1)盘片:硬盘一般有一个或多个盘片,每个盘片可以有两面,第一个盘片的正面为0,反面为1;
(2)磁道:每个盘片的盘面在出厂的时候被划分出了多个同心圆环,数据就存储在这样的同心圆环上面,我们将这样的圆环称为磁道,每个盘面可以划分多个磁道,但肉眼不可见;
(3)扇区:在硬盘出厂的时会对磁盘进行一次低格,其实就是在每个磁道划分为若干个弧段,每个弧段就是一个扇区,扇区是硬盘上存储的物理单位,现在每个扇区可存储512字节数据已经成了业界的约定;
(4)柱面:柱面实际上就是我们抽象出来的一个逻辑概念,简单来说就是出于同一个垂直区域的磁道称为柱面,即各盘面上面相同位置磁道的集合。这样数据如果存储到相同半径磁道上的同一扇区,这样可以实现并读取,主要是减少磁头寻道时间;
(5)磁头:读取磁盘上面金属块,主要负责读或者写入数据

3.磁盘的预备知识

(1)磁盘的接口类型
①IDE和SCSI(已淘汰)
②SATA (个人机)和SAS(企业)
③SSD
msata(超极本)
m.2(超极本)
a.接口类型
SATA :几乎所有主板都兼容, 便宜 性能差
PCI-E:需要看主板是否兼容, 贵, 性能高
b.传输通道
PCI-E AHCI
NVMe
(2)磁盘的基本术语
尺寸:2.5英寸,3.5英寸
容量:KB、MB、GB、TB、PB、EB
转速:5400 7500 15000
IOPS:每秒能够发生IO的次数
(3)磁盘在系统上的命名方式

设备名称 分区信息 设备类型
/dev/sda /dev/sda1 第一块物理磁盘第一个分区
/dev/sdb /dev/sdb2 第二块物理磁盘的第二个分区
/dev/vdd /dev/vdd4 第四块物理磁盘的第四个分区

1~4留给主分区使用和扩展分区,逻辑分区从5开始
MBR分区表只能分配4个主分区
GPT支持分配128个主分区
MBR和GPT之间不能转换,会导致数据丢失
MBR=2T GPT=2T以上

4.磁盘基本分区fdisk

(1)给虚拟机添加一块新的硬盘
虚拟机不支持热插拔,在关机后编辑虚拟机,添加硬盘
(2)使用fdisk进行分区

[root@peachcat1 ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   40G  0 disk 
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0    1G  0 part [SWAP]
└─sda3   8:3    0   38G  0 part /
sdb      8:16   0    1T  0 disk 
sdc      8:32   0    4T  0 disk 
sr0     11:0    1  4.3G  0 rom  
[root@peachcat1 ~]# 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.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xa899a17f.

Command (m for help): m#列出常用的命令
Command action
   a   toggle a bootable flag               #切换分区启动标记
   b   edit bsd disklabel                   #编辑sdb磁盘标签
   c   toggle the dos compatibility flag    #切换dos兼容模式
   d   delete a partition                   #删除分区
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types           #显示分区类型
   m   print this menu                      #显示帮助菜单
   n   add a new partition                  #新建分区
   o   create a new empty DOS partition table     #创建新的空白分区表
   p   print the partition table                  #显示分区表的信息
   q   quit without saving changes                #不保存退出
   s   create a new empty Sun disklabel           #创建新的Sun磁盘标签
   t   change a partition's system id             #修改分区ID,可以通过l查看id
   u   change display/entry units                 #修改容量单位,磁柱或扇区
   v   verify the partition table                 #检验分区表
   w   write table to disk and exit               #保存退出
   x   extra functionality (experts only)         #拓展功能

#创建主分区
Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p#选择创建主分区
Partition number (1-4, default 1): #默认创建第一个主分区
First sector (2048-2147483647, default 2048): #默认扇区回车
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2147483647, default 2147483647): +10G#分配10G
Partition 1 of type Linux and of size 10 GiB is set

Command (m for help): p

Disk /dev/sdb: 1099.5 GB, 1099511627776 bytes, 2147483648 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: 0xa899a17f

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    20973567    10485760   83  Linux

#创建扩展分区
Command (m for help): n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): e#创建扩展分区
Partition number (2-4, default 2): 
First sector (20973568-2147483647, default 20973568): 
Using default value 20973568
Last sector, +sectors or +size{K,M,G} (20973568-2147483647, default 2147483647): #空间都给到扩展分区
Using default value 2147483647
Partition 2 of type Extended and of size 1014 GiB is set

#创建逻辑分区
Command (m for help): n
Partition type:
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
Select (default p): l#创建逻辑分区
Adding logical partition 5
First sector (20975616-2147483647, default 20975616): 
Using default value 20975616
Last sector, +sectors or +size{K,M,G} (20975616-2147483647, default 2147483647): +10G#分配10G空间
Partition 5 of type Linux and of size 10 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@peachcat1 ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   40G  0 disk 
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0    1G  0 part [SWAP]
└─sda3   8:3    0   38G  0 part /
sdb      8:16   0    1T  0 disk 
├─sdb1   8:17   0   10G  0 part 
├─sdb2   8:18   0    1K  0 part 
└─sdb5   8:21   0   10G  0 part 
sdc      8:32   0    4T  0 disk 
sr0     11:0    1  4.3G  0 rom    

(3)使用mkfs进行格式化

[root@peachcat1 ~]# mkfs -t xfs /dev/sdb1
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@peachcat1 ~]# mkfs -t xfs /dev/sdb5
meta-data=/dev/sdb5              isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

(4)使用mount进行挂载

[root@peachcat1 ~]# mkdir /data_1
[root@peachcat1 ~]# mkdir /data_5
[root@peachcat1 ~]# mount /dev/sdb1 /data_1
[root@peachcat1 ~]# mount /dev/sdb5 /data_5
[root@peachcat1 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        38G  5.5G   33G  15% /
devtmpfs        224M     0  224M   0% /dev
tmpfs           235M     0  235M   0% /dev/shm
tmpfs           235M  5.5M  229M   3% /run
tmpfs           235M     0  235M   0% /sys/fs/cgroup
/dev/sda1      1014M  127M  888M  13% /boot
tmpfs            47M     0   47M   0% /run/user/0
/dev/sdb1        10G   33M   10G   1% /data_1
/dev/sdb5        10G   33M   10G   1% /data_5

主分区 扩展分区 逻辑分区
MBR:只能分配4个主分区
分配7个分区怎么办
3个主分区,1个扩展分区(4个逻辑分区)
2个主分区,1个扩展分区(5个逻辑分区)
1个主分区,1个扩展分区(6个逻辑分区)

你可能感兴趣的:(day18-磁盘管理(1))