Linux 磁盘管理详解--企业实战篇

Posted 涤生手记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 磁盘管理详解--企业实战篇相关的知识,希望对你有一定的参考价值。

 \'Linux

写在前面:

 一、磁盘的认识

磁盘的分类

机械硬盘(HDD)

机械硬盘的内部核心图:

\'Linux

 

 固态硬盘(SSD)

 固态硬盘内部核心图:

\'Linux

 

机械硬盘与SSD固态对比首先差距最大的就是性能,也就是读写速度的差距。

一般机械硬盘的都区委读取速度为150MB/s左右,而SATA SSD的读取速度能够达到600MB/s,NVMe M.2 SSD最高甚至可以达到3500MB/s以上。

\'Linux

二、磁盘的使用

 磁盘的使用,也即是磁盘的管理,在整个系统中的使用中是起到很核心的作用的,磁盘管理好坏直接关系到整个系统的性能状况。

2.磁盘分区

1.1分区的作用:

  1. 分区是将一个硬盘驱动器分成若干个逻辑驱动器,分区是把硬盘连续的区块当做一个独立的磁硬使用。
  2. 分区表是一个硬盘分区的索引,分区的信息都会写进分区表
  3. 多个分区可以防止数据的丢失,如果系统只有一个分区,那么这个分区损坏,用户将会丢失所的有数据,如果将用户数据和系统数据分开,其中数据盘的数据激增到极限,也不会影响系统的正常运行。
  4. 对磁盘根据文件大小的平均值进行不同区块大小来格式化分区,比如有很多2K的文件,而硬盘分区区块大小为6K,那么每存储一个文件将会浪费4K空间。合理的分区可以很大提高磁盘的使用率。

2.2分区工具一【fdisk】

fdisk是Linux下常用的磁盘分区工具。受mbr分区表的限制,fdisk工具只能给小于2TB的磁盘划分分区。如果使用fdisk对大于2TB的磁盘进行分区,虽然可以分区,但其仅识别2TB的空间,所以磁盘容量若超过2TB,就要使用parted分区工具(后面会讲)进行分区。

【语法格式】

 4.创建一个扩展分区:/dev/sdb2

\'Linux

 5.在扩展分区中创建逻辑分区:/dev/sdb5

\'Linux

 6.创建第二个逻辑分区:/dev/sdb6

\'Linux

 7.剩下磁盘空间再创建一个主分区(8G-10G),结尾出使用【w】会保存所有的操作【q】会直接退出不保存此次磁盘的分区操作。

\'Linux

2.3 分区工具二【Parted】

 【语法格式】

后续操作:

非交互式操作示例:分区-格式化-挂载 磁盘:/dev/sdi

[root@test ~]# parted  -s /dev/sdi mklabel gpt            ##对磁盘/dev/sdi进行分区
[root@test ~]# parted  -s /dev/sdi mkpart primary 1 100%  ##指定分区类型和容量大小
[root@test ~]# mkfs.xfs -f /dev/sdi1                      ##格式化磁盘
meta-data=/dev/sdi1              isize=256    agcount=32, agsize=61042880 blks
         =                       sectsz=4096  attr=2, projid32bit=0
data     =                       bsize=4096   blocks=1953372160, imaxpct=5
         =                       sunit=64     swidth=64 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal log           bsize=4096   blocks=521728, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

[root@test ~]# mkdir /hadoop11                                  ##创建挂载点
[root@test ~]# mount -o noatime,nodiratime /dev/sdi1 /hadoop11  ##挂载盘
[root@test ~]# df -h                                            ##查看挂载是否成功
/dev/sdi1       7.3T   34M  7.3T   1% /hadoop11

磁盘的开机自动挂载:

一般磁盘 分区-->格式化-->挂载 之后都会配置一个开机自动挂载,否则下册机器自动重启之后,磁盘不会自动挂载,也就无法正常使用,所以需要将分区信息写到/etc/fstab文件中,实现开机自动挂载。

操作方式:

1.通过【blkid】命令查看磁盘的uuid,也是磁盘的唯一标识:

[root@test ~]# blkid 
/dev/sdi1: UUID="5a120f30-cfbe-4b70-b837-949f2054e654" TYPE="xfs"

2.打开/etc/fstab文件,追加需要挂载的磁盘分区信息

           注意:/etc/fstab文件中已有内容不要动,将内容追加即可。

vim /etc/fstab

UUID=5a120f30-cfbe-4b70-b837-949f2054e654   /hadoop11   xfs   noatime,nodiratime 0    0

内容说明:

测试配置是否生效:

可以手动先umount卸载已挂载好的磁盘,配置好上述文件之后,执行mount -a 执行命令 df -h 查看磁盘又重新挂载上去,则说明配置生效。

 小记:

 分享一个自动化分区的脚本:【注意:需要根据线上环境微调部分参数】

#!/bin/bash

df -h|grep \'/hadoop\' && exit 1

yum install parted kmod-xfs xfsprogs -y
disk_num=`fdisk -l | grep 8001 | awk \'{print $2}\'| awk -F \':\' \'{print $1}\'`
NUM=0
for i in $disk_num
do
        parted  -s $i mklabel gpt
        parted  -s $i mkpart primary 1 100%
        mkfs.xfs -f ${i}1
 
        if [ $NUM -eq 0 ];then
                TMP=""
        else
                TMP=$NUM
        fi
 
        mkdir /hadoop${TMP}
        mount -o noatime,nodiratime ${i}1 /hadoop${TMP}
        uuid=`blkid ${i}1 |awk \'{print $2}\' |sed s#\\"##g`
        echo "$uuid     /hadoop${TMP}   xfs     noatime,nodiratime 0       0">>/etc/fstab
        ((NUM++))
done
三、磁盘的运维

1.查看磁盘使用情况 【df -h】

[root@10-90-49-176-jhdxyjd ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       530G  1.3G  502G   1% /
tmpfs           126G     0  126G   0% /dev/shm
/dev/sdi1       7.3T   34M  7.3T   1% /hadoop11

参数说明:

 2.查看磁盘负载状况 推荐命令【top】【iostat】

[root@test ~]# top
top - 14:58:05 up 15 days, 21:46,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 1733 total,   1 running, 1731 sleeping,   1 stopped,   0 zombie
Cpu(s):  0.0%us,  0.1%sy,  0.0%ni, 99.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  264143368k total,  3548440k used, 260594928k free,    88548k buffers
Swap:        0k total,        0k used,        0k free,   592176k cached

 参数说明:

小记:

\'Linux  

以上是关于Linux 磁盘管理详解--企业实战篇的主要内容,如果未能解决你的问题,请参考以下文章

Linux 磁盘管理详解--企业实战篇

NFS企业级实战应用详解-技术流ken

Liunx系统下进行LVM的创建以及相关磁盘配额——实战篇

linux12企业实战 -- 33磁盘夯住问题

linux12企业实战 -- 13多主机磁盘挂载

linux12企业实战 -- 15磁盘报警解决