Linux磁盘(硬盘)分区配置

一、基础知识

1硬盘分类

常见磁盘类型说明图片
SAS硬盘(Serial Attached SCSI)串行连接SCSI接口,串行连接小型计算机系统接口 是新一代的SCSI技术,和现在流行的Serial ATA(SATA)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部空间等,SAS的接口技术可以向下兼容SATA在这里插入图片描述
SATA硬盘又称串口硬盘,将硬盘的外部传输速率理论值提高到了 150MB/s在这里插入图片描述
SSD硬盘固态硬盘,速度杠杠的在这里插入图片描述
SCSI硬盘接口速度快,并且由于主要用于服务器在这里插入图片描述
IDE硬盘IDE是表示硬盘的传输接口。我们常说的IDE接口,也叫ATA)、PATA接口在这里插入图片描述

2硬盘尺寸

3.5英寸和2.5英寸
此前主流的桌面磁盘和服务器磁盘都是采用3.5英寸设计,而SAS硬盘除了具有传统的3.5英寸规格之外,还采用了2.5英寸的缩小版,这样可以在机架式服务器有限的空间内安装更多的磁盘以扩充存储系统的容量,也能够为其他配件腾出更大的空间,以便通风散热,在2U高度内使用8个2.5英寸的SAS硬盘位已经成为大多数服务器厂商的选择

3电源接口

串型和并型 串口快,串口形容一下就是 一条车道,而并口就是有8个车道。同一时刻能传送8位(一个字节)数据
但是并不是并口快,由于8位通道之间的互相干扰。传输受速度就受到了限制。当传输出错时,要同时重新传8个位的数据,而且传输速度越快,干扰越严重。这是硬伤,这样速度就无法提升上来
串口没有干扰,传输出错后重发一位就可以了。而且串口传输的时钟频率要比并口高

4分类

最早的硬盘
1956年,一台5mb的IBM硬盘被装上飞机,重量超过一吨
在这里插入图片描述

原理上分类特点
固态价格相对贵,寿命长,读取速度块
机械怕摔、怕磁,(单位换下来的坏盘会做消磁处理),读取速度—》磁道寻址时间,潜伏时间
接口上分类特点
STAT用在低端服务器多
SAS、SCSI用在中高服务器
PCIE M.2性能追求上
操作系统标识IDESTAT|SCSISAS
RHEL5/dev/hda/dev/sda/dev/sda
RHEL6/dev/sda/dev/sda/dev/sda
KVM/dev/vda

硬盘依据颜色分类,蓝盘,绿盘、黑盘、红盘、紫盘

颜色品质
黑色企业级硬盘有着出色的性能和质量,多用于企业级硬盘
蓝盘主流PC硬盘蓝盘的特点是中规中矩,没有黑盘的高性能,也没有绿盘的大容量
绿色大容量存储硬盘绿盘转速从主流的7200转下降到5400转,以降低其功耗。绿盘另一个特点是大容量,最大容量可达到6TB,非常适合做数据存储仓库
红色NAS网络存储硬盘红盘具有大容量、低转速的特点,加上NASWare技术后,红盘即主打NAS网络存储市场,适合有搭建网络存储的个人及小型办公用户
紫盘为监控级硬盘针对监控存储进行优化,可以极低的功耗全天候24小时持续读写,通过独家固件升级与ATA流式传输技术协作,可减少错误地将台式硬盘用作安全系统的存储设备时发生的像素错误和视频中断次数

在这里插入图片描述
硬盘辨别真伪:上官网查看序列号

二、 硬盘分区

1基础知识

MBR概述:全称为Master Boot Record,即硬盘的主引导记录
硬盘的0柱面、0磁头、1扇区称为主引导扇区(也叫主引导记录MBR)。它由三个部分组成,主引导程序、硬盘分区表DPT(Disk Partition table)和分区有效标志(55AA)。在总共512字节的主引导扇区里主引导程序(boot loader)占446个字节,第二部分是Partition table区(分区表),即DPT,占64个字节,硬盘中分区有多少以及每一分区的大小都记在其中。第三部分是magic number,占2个字节,固定为55AA。

分区编号:主分区1-4 ,逻辑分区5-n,主分区只能有4个,逻辑分区可以有多个
LINUX规定:逻辑分区必须建立在扩展分区之上,而不是建立在主分区上
主分区:主要是用来启动操作系统的,它主要放的是操作系统的启动或引导程序,/boot分区最好放在主分区上
扩展分区不能使用的,它只是做为逻辑分区的容器存在的;我们真正存放数据的是主分区和逻辑分区,大量数据都放在逻辑分区中
如果你用的是GPT的分区方式,那么它没有限制主分区个数

硬盘命名方式: /dev/sd[a-z]n
a-z 表示设备的序号,如sda表示第一块scsi硬盘,sdb就是第二块…
n 表示每块磁盘上划分的磁盘分区编号

[root@qianshuiliyu ~]# ls /dev/sda1
/dev/sda1
dev:设备的目录
sd:硬盘类型SCSI
a:第一块硬盘
1:分区号

2使用fdisk工具进行分区

centos7选择xfs格式作为默认文件系统
xfs 专为大数据产生,每个单个文件系统最大可以支持8eb,单个文件可以支持16tb,不仅数据量大,而且扩展性高。还可以通过xfsdump,xfsrestore来备份和恢复。
磁盘添加使用的过程:添加磁盘>分区>格式化>挂载

使用虚拟机进行模拟
1、添加一块SCSI类型的硬盘
在这里插入图片描述
2、查看电脑是是否有显示,sdb是第二块硬盘

[root@qianshuiliyu ~]# ls /dev/sd*
/dev/sda  /dev/sda1  /dev/sda2  /dev/sdb

3、fdisk分区

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

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0x90636adc 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):m
命令操作
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   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
   t   change a partition's system id#改变分区类型
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit#写分区表信息到硬盘,保存操作并退出
   x   extra functionality (experts only)

4、查看分区信息

命令(输入 m 获取帮助):p

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x90636adc

   设备 Boot      Start         End      Blocks   Id  System

5、添加分区

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)#p:主分区
   e   extended#e:扩展分区
Select (default p): p#直接回车默认p
分区号 (1-4,默认 1):1#设置主分区
起始 扇区 (2048-20971519,默认为 2048)#起始扇区,默认就行
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+5G#第一个主分区的大小
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):w#保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。

6、新分区生效

reboot重启
或者
partx -a /dev/sda 
获取分区列表信息
[root@qianshuiliyu ~]# partx -l /dev/sdb
# 1:     2048- 10487807 ( 10485760 个扇区,  5368 MB)

7、格式化

[root@qianshuiliyu ~]# mkfs.xfs -f /dev/sdb1
#-f 对已经存在文件系统的分区,强制格式化
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=327680 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=1310720, 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

8、挂载使用

[root@qianshuiliyu ~]# mkdir /sdb1
[root@qianshuiliyu ~]# mount /dev/sdb1 /sdb1/
[root@qianshuiliyu ~]# cp /etc/passwd /sdb1/

在这里插入图片描述
9、永久挂载,开机自动挂载

[root@qianshuiliyu ~]# vim /etc/fstab 
/dev/sdb1 /sdb1 xfs defaults 0 0
要挂载的分区设备挂载点文件系统类型挂载选项是否备份是否检测
/dev/sdb1/sdb1xfsdefaults00

配置完之后,重启电脑进行测试

10、使用uuid进行挂载
查看uuid

[root@qianshuiliyu ~]# blkid 
/dev/sda1: UUID="f42a5b4c-66be-4b26-9866-47fb67bb911d" TYPE="xfs" 
/dev/sda2: UUID="FdT2Nu-X53I-ur1e-Nenx-CR7O-F6EI-gX5ocS" TYPE="LVM2_member" 
/dev/sdb1: UUID="6f904616-4a53-4282-9804-32afaa975c9f" TYPE="xfs" 
/dev/sr0: UUID="2020-11-02-15-15-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/mapper/centos-root: UUID="7891a781-6e28-4362-8e37-c58252c3f9ad" TYPE="xfs" 

将设备名字换成uuid就行了

[root@qianshuiliyu ~]# vim /etc/fstab 
UUID="6f904616-4a53-4282-9804-32afaa975c9f" /sdb1 xfs defaults 0 0

3 挂载的配置列配置

要挂载的分区设备挂载点文件系统类型挂载选项是否备份是否检测扇区
/dev/sdb1/sdb1xfsdefaults00

第一列:要挂载的设备
第二列:挂载点
第三列:文件系统类型
第四列:挂载选项
第五列:是否备份
第六列:是否检验扇区,开机的过程中,系统默认会以fsck检验我们系统是否为完整

第四列作用
Async/sync设置是否为同步方式运行,默认为async
auto/noauto当执行mount -a 的命令时,此文件系统是否被主动挂载。默认为auto
rw/ro是否以以只读或者读写模式挂载
exec/noexe限制此文件系统内是否能够进行"执行"的操作
user/nouser是否允许用户使用mount命令挂载
suid/nosuid是否允许SUID的存在
Usrquota启动文件系统支持磁盘配额模式
Grpquota启动文件系统对群组磁盘配额模式的支持
Defaults同时具有rw,suid,dev,exec,auto,nouser,async等默认参数的设置 samba nfs
第五列作用
0代表不要做备份
1代表要每天进行操作
2代表不定日期的进行操作
第六列作用
0不要检验
1最早检验(一般根目录会选择)
21级别检验完成之后进行检验

4卸载不掉怎么处理

卸载:

umount 挂载点   
umount 设备路径 
[root@qianshuiliyu ~]# umount /sdb1 
umount: /sdb1:目标忙。
        (有些情况下通过 lsof(8) 或 fuser(1) 可以
         找到有关使用该设备的进程的有用信息)
[root@qianshuiliyu ~]# lsof /sdb1/
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sftp-serv 3771 root    5r   DIR   8,17       20   64 /sdb1
[root@qianshuiliyu ~]# kill -9 3771

5使用gdisk工具分区

gdisk主要是用来划分容量大于2T(2T以上一般就是4T了)的硬盘,大于2T fdisk搞不定
两种类型的分区表:GPT和MBR ; MBR不支持4T以上
GPT分区:GPT,全局唯一标识分区表(GUID Partition Table),它使用128位GUID来唯一标识每个磁盘和分区,与MBR存在单一故障点不同,GPT提供分区表信息的冗余,一个在磁盘头部一个在磁盘尾部;它通过CRC校验和来检测GPT头和分区表中的错误与损坏;默认一个硬盘支持128个分区

1、gdisk分区

[root@qianshuiliyu ~]# gdisk /dev/sdb
GPT fdisk (gdisk) version 0.8.10

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by
typing 'q' if you don't want to convert your MBR partitions
to GPT format!
***************************************************************



Command (? for help): ? 查看帮助#?
b	back up GPT data to a file
c	change a partition's name
d	delete a partition #删除分区
i	show detailed information on a partition
l	list known partition types
n	add a new partition# 添加一个分区
o	create a new empty GUID partition table (GPT)
p	print the partition table# 打印分区表
q	quit without saving changes# 退出不保存
r	recovery and transformation options (experts only)
s	sort partitions
t	change a partition's type code
v	verify disk
w	write table to disk and exit# 写入分区表并退出
x	extra functionality (experts only)
?	print this menu

2、添加分区

Command (? for help): n#添加分区
Partition number (2-128, default 2): 2#默认2,1上面已经被使用了
First sector (34-20971486, default = 10487808) or {+-}size{KMGTP}: #直接回车,从头开始
Last sector (10487808-20971486, default = 20971486) or {+-}size{KMGTP}: +3G#分区给3G大小
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): L#分区类型,可以通过L查看,默认8300 Linux filesystem
0700 Microsoft basic data  0c01 Microsoft reserved    2700 Windows RE          
3000 ONIE boot             3001 ONIE config           4100 PowerPC PReP boot   
4200 Windows LDM data      4201 Windows LDM metadata  7501 IBM GPFS            
7f00 ChromeOS kernel       7f01 ChromeOS root         7f02 ChromeOS reserved   
8200 Linux swap            8300 Linux filesystem      8301 Linux reserved      
8302 Linux /home           8400 Intel Rapid Start     8e00 Linux LVM           
a500 FreeBSD disklabel     a501 FreeBSD boot          a502 FreeBSD swap        
a503 FreeBSD UFS           a504 FreeBSD ZFS           a505 FreeBSD Vinum/RAID  
a580 Midnight BSD data     a581 Midnight BSD boot     a582 Midnight BSD swap   
a583 Midnight BSD UFS      a584 Midnight BSD ZFS      a585 Midnight BSD Vinum  
a800 Apple UFS             a901 NetBSD swap           a902 NetBSD FFS          
a903 NetBSD LFS            a904 NetBSD concatenated   a905 NetBSD encrypted    
a906 NetBSD RAID           ab00 Apple boot            af00 Apple HFS/HFS+      
af01 Apple RAID            af02 Apple RAID offline    af03 Apple label         
af04 AppleTV recovery      af05 Apple Core Storage    be00 Solaris boot        
bf00 Solaris root          bf01 Solaris /usr & Mac Z  bf02 Solaris swap        
bf03 Solaris backup        bf04 Solaris /var          bf05 Solaris /home       
bf06 Solaris alternate se  bf07 Solaris Reserved 1    bf08 Solaris Reserved 2  
bf09 Solaris Reserved 3    bf0a Solaris Reserved 4    bf0b Solaris Reserved 5  
c001 HP-UX data            c002 HP-UX service         ea00 Freedesktop $BOOT   
eb00 Haiku BFS             ed00 Sony system partitio  ed01 Lenovo system partit

Hex code or GUID (L to show codes, Enter = 8300): #默认直接回车就行
Changed type of partition to 'Linux filesystem'

Command (? for help): p#查看分区
Disk /dev/sdb: 20971520 sectors, 10.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 7766A8BC-C7E1-486E-B3A1-ED70B5B0C0EE
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 20971486
Partitions will be aligned on 2048-sector boundaries
Total free space is 4194237 sectors (2.0 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048        10487807   5.0 GiB     8300  Linux filesystem
   2        10487808        16779263   3.0 GiB     8300  Linux filesystem

Command (? for help): w#保存

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): y#是否确定写入
OK; writing new GUID partition table (GPT) to /dev/sdb.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.

3、使分区生效

reboot重启
或者
partx -a /dev/sdb

4、格式化

[root@qianshuiliyu ~]# mkfs.xfs /dev/sdb
sdb   sdb1  sdb2  
[root@qianshuiliyu ~]# mkfs.xfs /dev/sdb2 
meta-data=/dev/sdb2              isize=512    agcount=4, agsize=196608 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=786432, 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

5、挂载使用(配置开机自动挂载)
与fdisk的操作一样

6添加开机启动重启报错

在将硬盘挂载信息设置开机自动挂载报错
1、错误
在这里插入图片描述
2、登录到系统
在这里插入图片描述
3、修改fstable的信息
将信息修改正确,或删除配置
在这里插入图片描述在这里插入图片描述
4、reboot重启就正常了

7swap扩展分区增加空间

1、当前扩展分区大小

[root@qianshuiliyu ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            972         396         233          14         342         422
Swap:          2047           0        2047

2、添加分区

[root@qianshuiliyu ~]# fdisk /dev/sdb 
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。


命令(输入 m 获取帮助):n
分区号 (3-128,默认 3):
第一个扇区 (34-20971486,默认 16779264):
Last sector, +sectors or +size{K,M,G,T,P} (16779264-20971486,默认 20971486):+1G
已创建分区 3


命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。

3、分区生效

[root@qianshuiliyu ~]# partx -a /dev/sdb

4、格式化为swap分区

[root@qianshuiliyu ~]# mkswap /dev/sdb3 
正在设置交换空间版本 1,大小 = 1048572 KiB
无标签,UUID=ff3b77f8-baf0-4805-a3e7-9fc186372d23

5、添加到swap分区

[root@qianshuiliyu ~]# swapon /dev/sdb3 
#swapoff关闭

6、查看

[root@qianshuiliyu ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            972         395         233          14         344         423
Swap:          3071           0        3071

8、fdisk对已有的分区进行扩容

1、查看当前分区信息
对当前分区sdb1进行扩容,当前有3G空间,准备在+2G空间,扩容到5G
在这里插入图片描述
当前磁盘挂载路径的内容
挂载在根目录下的/sdb1目录中

[root@qianshuiliyu /]# ls /sdb1/
passwd

2、查看硬盘总大小以及当前分区大小,看是否配有分配空间

[root@qianshuiliyu /]# lsblk /dev/sdb
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb      8:16   0  10G  0 disk 
└─sdb1   8:17   0   3G  0 part /sdb1

3、卸载分区,所有跟所操作磁盘相关的服务都停止
最好先进行数据备份,防止数据丢失

[root@qianshuiliyu /]# umount /sdb1 

4、查看扇区柱面信息,后续使用

[root@qianshuiliyu /]# fdisk /dev/sdb 
命令(输入 m 获取帮助):p

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xb96c30d4

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6293503     3145728   83  Linux

5、分区调整

命令(输入 m 获取帮助):d	#删除之前的分区
已选择分区 1
分区 1 已删除

命令(输入 m 获取帮助):n#添加一个分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-20971519,默认为 2048)#扇区起始要跟之前的保持一致,不一致可能数据丢失,重新格式化才能使用
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB

命令(输入 m 获取帮助):w#保存
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。

6、重启生效
在这里插入图片描述
7、挂载之后还是原来的容量

[root@qianshuiliyu ~]# ls /sdb1/
passwd

在这里插入图片描述
8、刷新挂载之后的容量
刷新命令跟文件系统格式有关系,我的是xfs文件系统

[root@qianshuiliyu ~]# xfs_growfs /dev/sdb1
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=196608 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=786432, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 786432 to 1310720

在这里插入图片描述

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浅水鲤鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值