伴随着科技的飞速发展,越来越多的企业对于服务器的稳定要求越来越高,越来越多的企业开始采用linux系统来部署自己的服务,以求高效的稳定性,当然任何操作系统都需要一个最基本的基础,那就是硬盘,及硬盘分区,今天来给大家推荐几款CentOS Linux下的分区工具及如何查看分区环境,也会给大家来带一些硬盘的基本知识
一、硬盘的接口类型
分区肯定是对硬盘进行分区,那么先来聊一聊硬盘的接口类型,硬盘就现在来分,分为两类,并行接口和串行接口,现在服务器及PC机上普遍的都是串行接口啦。
并行接口,分为IDE与SCSI两种接口,并行接口的缺点在于电信号在传输的过程中会产生干扰。
接口速率:
IDE:133MB/s
SCIS:640MB/s
串行接口,分为STAT,SAS,USB,三种接口,我们的服务器和PC上部分上也是采用的SATA接口
串口:
SATA:6Gbps
SAS:6Gbps
USB:480MB/s
现在的磁盘分区模式分为两种,MBR、GPT两种。
MBR模式
MBR: Master Boot Record,1982年,使用32位表示扇区数,分区不超过2T
MBR模式可以分区的数量是:4个主分区;3主分区+1扩展(N个逻辑分区)
当然硬盘在分区的时候是需要一部分空间来存储这些分区信息的,这一部分空间就在0磁道0扇区:512bytes。
开始446bytes存放boot loader
中间64bytes存放分区表,每16bytes: 标识一个分区
最后2bytes:存放55AA来表示硬盘模式类型
GPT模式
GPT:GUID(Globals Unique Identifiers)partition table 支持128个分区,使用64位,支持8Z(512Byte/block )64Z (4096Byte/block)
使用128位UUID(Universally Unique Identifier) 表示磁盘和分区GPT分区表自动备份在头和尾两份,并有CRC校验位
UEFI (统一扩展固件接口)硬件支持GPT,使操作系统启动
二、让我们来一起见识见识Linux下3款分区工具的能力吧。
老当益壮fdisk。
fdisk在linux是一款非常老的分区工具了,工具虽然老,但是简单便利是fdisk的优点,当然gdisk也继承了这一优点,他们的功能非常相似,不过fdisk工具主要用来对MBR模式的硬盘进行分区,gdisk工具用来对GPT模式的硬盘进行分区,这里就讲一款fdisk工具。fdisk不能对2T以上的磁盘进行分区,是因为MBR模式不支持2T以上的分区格式。
fdisk、gdisk工具
fdisk /dev/sdb
fdisk -l [-u] [device...] 查看硬盘及分区的信息
常用的子命令:
m 帮助列表
p 分区列表
l 查看分区类型
t 更改分区类型
n 创建新分区
d 删除分区
w 保存并退出
fdisk分区后,操作只是在内存中并未真正的对硬盘分区,如果真的需要分区w保存即可
q 不保存并退出
当然如果你后悔了,输入q则不会保存之前的操作
选项介绍完,我来给大家做一个实验。让大家了解一下这款工具的使用方式。
[root@TianRandai ~]#fdisk /dev/sdb #对/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.
Command (m for help): n #建立一个分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p #分区类型为主分区,p是主分区,e是扩展分区
Partition number (1-4, default 1): 1 #指定分区号
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +2G
Partition 1 of type Linux and of size 2 GiB is set
Command (m for help): t #指定分区标记类型
Selected partition 1
Hex code (type L to list all codes): 82
Changed type of partition 'Linux' to 'Linux swap / Solaris'
Command (m for help): w #保存操作
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
强大的分区工具parted
parted
parted工具的分区是即时操作的,所以分区的时候要小心慎用,因为可能一个不小心就把再用的硬盘给分区了,所以使用时,一定要谨慎谨慎再谨慎。
用法:parted [选项]... [设备[命令[参数]...]...]
parted /dev/sdb mklabel gpt|msdos 为磁盘指定模式
parted /dev/sdb print 显示磁盘信息
parted /dev/sdb mkpart primary/extended/logical 0 200 (默认M)创建分区类型及大小
parted /dev/sdb rm 1 删除分区
parted -l 显示所有磁盘的信息
选项介绍完,我来给大家做一个实验。让大家了解一下这款工具的使用方式。
[root@TianRandai ~]#parted /dev/sdb mklabel gpt #指定磁盘模式为GPT
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk
will be lost. Do you want to continue?
Yes/No? yes
Information: You may need to update /etc/fstab.
[root@TianRandai ~]#parted /dev/sdb mkpart primary 0 2G #创建分区,分区类型为主分区,大小为2G
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? i
Information: You may need to update /etc/fstab.
[root@TianRandai ~]#parted /dev/sdb print #查看磁盘信息
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 17.4kB 2000MB 2000MB primary
[root@TianRandai ~]#parted /dev/sdb rm 1 #删除分区1
Information: You may need to update /etc/fstab.
[root@TianRandai ~]#parted /dev/sdb print #再次查看磁盘信息
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
介绍完了分区就要介绍格式化了
格式化的命令可以使用
mkfs.文件系统类型 分区
#mkfs.ext4 /dev/sdb1
格式化后就可以使用挂载了
[root@TianRandai ~]#mkfs #文件系统的各个类型
mkfs mkfs.cramfs mkfs.ext3 mkfs.fat mkfs.msdos mkfs.xfs
mkfs.btrfs mkfs.ext2 mkfs.ext4 mkfs.minix mkfs.vfat
[root@TianRandai ~]#mkfs.ext4 /dev/sdb1 #将/dev/sdb1格式化为ext4
[root@TianRandai ~]#mkdir /mnt/disk1 #在/mnt/下建一个disk1目录
[root@TianRandai ~]#mount /dev/sdb1 /mnt/disk1 #将格式化号的分区挂载到/mnt/disk1撒花姑娘
[root@TianRandai ~]#df -h #查看挂载及使用情况
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 10G 4.5G 5.5G 45% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 88K 912M 1% /dev/shm
tmpfs 912M 9.0M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 169M 846M 17% /boot
tmpfs 183M 20K 183M 1% /run/user/0
/dev/sdb1 1.9G 5.7M 1.7G 1% /mnt/disk1
mkswap 格式化swap类型的分区
格式化后需要swapon来启用格式化后的分区
开机自动挂载需要讲这些配置写到/etc/fstab中
具体的挂载的方法会在后面具体讲解。
[root@TianRandai ~]#free -h #先看一下swap的大小
total used free shared buff/cache available
Mem: 1.8G 483M 429M 10M 911M 1.1G
Swap: 2.0G 0B 2.0G
[root@TianRandai ~]#mkswap /dev/sdb1 #格式化/dev/sdb1分区
mkswap: /dev/sdb1: warning: wiping old ext4 signature.
Setting up swapspace version 1, size = 1953104 KiB
no label, UUID=5d9a150e-c247-4c7f-a4be-273a72bd3b5a
[root@TianRandai ~]#swapon /dev/sdb1 #启用swap分区
[root@TianRandai ~]#free -h #再次查看swap大小
total used free shared buff/cache available
Mem: 1.8G 484M 427M 10M 911M 1.1G
Swap: 3.9G 0B 3.9G