本教程以6个方面讲解
1、硬盘
2、磁盘RAID、LVM等
3、磁盘分区
4、磁盘格式化
5、磁盘挂载后磁盘管理
一、硬盘
机械硬盘内部结构
磁道:每个盘片有两个面,都可记录信息。盘片表面以盘片中心为圆心,用于记录数据的不同半径的圆形磁化轨迹就称为磁道。磁化轨迹是磁化区域,是看不见的。磁道看起来是一个平而园周形。
扇区:盘面由圆心向四周画直线,不同的磁道被直线分成许多扇形(弧形)的区域,每个弧形的区域叫做扇区,每个扇区大小一般为512字节,扇区看起来就是圆弧或扇形。。
柱面:磁盘中,不同的盘片(或盘面)相同半径的磁道轨迹从上到下所组成的圆柱型区域就称为柱面,往而看起来是一个圆柱形。
Linux 系统硬盘大小计算
[root@oldboy ~]#
fdisk -l
Disk /dev/sda: 10.7GB, 10737418240 bytes
255 heads, 63sectors/track, 1305 cylinders
Units = cylinders of16065 * 512 = 8225280 bytes
Sector size(logical/physical): 512 bytes / 512 bytes
I/O size(minimum/optimal): 512 bytes / 512 bytes
Disk identifier:0x0008b6b5
磁盘大小=512字节*扇区数*磁头数*磁道数
一个磁道大小=512字节*扇区数
一个盘面大小=磁道大小*磁道数
一个磁盘=磁头数*磁道大小*磁道数
一个磁盘=磁头数*512字节*扇区数*磁道数
企业场景选择
(1)、默认SAS,线上业务SAS
(2)、线下业务,数据库备份SATA(企业节省成本的情况下采用)
(3)、线上高并发用SSD(有钱、业务重要)
二、磁盘RAID、LVM等
RAID(Redundant Arrays of Independent Drives)独立磁盘冗余阵列是将1个或1个以上的硬盘通过不同的方式组合成一个容量更大的磁盘组。
RAID的直接好处:
(1)、提高磁盘容量
(2)、提升磁盘读写性能
(3)、提高数据安全性
三、磁盘分区
Linux 系统前两个字母代表的意思
sd开头SCSI硬盘(SSD/SAS/SATA)
hd开头IDE硬盘
硬盘数量以字母区分
第一块硬盘sda
第二块硬盘sdb
第二块硬盘sdc
分区以数字区分
/dev/sda1 第一个分区
/dev/sda2 第二个分区
/dev/sda3 第三个分区
分区类别
1、主分区 primary
2、扩展分区 extended
3、逻辑分区 logical
说明:
1、扩展分区不是一个真正的可用分区,建立完扩展分区后,还需要在扩展分区上面建立逻辑分区才可以使用。
2、对于主分区和逻辑分区在一般的数据存储使用上是没有区别的(对于大多数的数据存储),在安装操作系统时第一个分区要选主分区。
3、分区数字编号1~4留给主分区或扩展分区使用,逻辑分区编号只能从5开始,即使1-4分区号即使有剩余,也不会分配给逻辑分区。
4、对硬盘分区,实际上就是在修改硬盘的分区表(Partition table),也就是说我们通过fdisk分区实际上就是在改64字节的分区表,分区和对应的数据没有关系。因此,理论上,调整分区大小,不会删除分区内的数据。
四、磁盘格式化
相关操作系统使用的文件系统:
ISUSE linux的默认文件系统ReiserFS文件系统。
IBM的AlX使用的jfs日志文件系统。
Sun OS 所用的文件系统ufs。
Centos7采用XFS文件系统。
Centos6采用ext4文件系统。
Centos5采用ext3文件系统。
SAS/SATA硬盘文件系统选择:
1、reiserfs大量小文件业务首选reiserfs(100K以内)。.
2、xfs有的门户的数据库MySQL业务会选择xfs。
3、ext4视频下载,流媒体,数据库,小文件业务也OK,可以用默认的。
4、ext2没有且志,蓝汛的cache业务,CDN网站加速服务的。
常规应用:
对于Centos5.x系列,常规应用就选默认的ext3文件系统即可。。对于Centos6.x系列,常规应用就选默认的ext4文件系统即可。。
对于Centos7.x系列,常规应用就选默认的xfs文件系统即可。
注意:如果服务器数量少,怎么选择都可以。.
如果海量服务器,考虑维护成本和性能,选一个折中。.
*超级块:记录文件系统的控制与管理信息
·block和inode的个数和大小,及其已用和未用数量文件系统的载入时间、最近一次写入数据时间、最近一次执行fsck进行磁盘检查的时间等有效位:为0已载入,为1未载入
组描述:记录不块组从何处开始
*块位示图:使用位示图记录哪些块已用哪些块未用
*inode位示图:使用位示图记录inode的使用情况
*inode区:各inode组成的区域,每个inode都有一个唯一编号
数据块区:各block组成的区域,用于存放文件数据
五、磁盘挂载后磁盘管理
1、分区(大于2t用parted)
fdisk-cu/dev/sd
2、通知内核将分区结果写入分区表
partprobe/dev/sdb1
3、格式化创建文件系统
mkfs.ext4-b 4096-I256/dev/sdb1
tune2fs-c-1/dev/sdb1
4、查看格式化信息
dumpe2fs/dev/sdbllgrep-iE"blocksizelinode size"
5、挂载
mount-text4/dev/sdb1/mnt
6、测试
touch/mnt/oldboy.txt
7、查看挂载信息
df-h
cat/proc/mounts
dfi