您当前所在位置:首页脚本Centos 磁盘4K对齐脚本

Centos 磁盘4K对齐脚本

更新:2022-05-21 09:31:50编辑:Story归类:脚本人气:235

4K对齐对磁盘性能有什么影响这边不单独讲解,有权威网站已经给出测试结果。感兴趣的可以去看->传送门。

#!/bin/bash

# Format all FOUND datadisks.

declare -a Disk_Name

#筛出有几块磁盘,如/dev/sda
Disk_Name=(`fdisk -l 2> /dev/null | grep '^Disk /dev' | awk '{print $2}' | tr -d ':' | sort -k1.1,1.1`)

Disk_Count="`fdisk -l 2> /dev/null | grep '^Disk /dev' | awk '{print $2}' | tr -d ':' | wc -l`"

for ((i=1;i<$Disk_Count;i++))

  do

    #根据磁盘数量创建文件夹,用户挂载磁盘
    mkdir /cache$i

    echo "LABEL=/cache$i /cache$i ext4 defaults 0 0" >> /etc/fstab

    parted ${Disk_Name[$i]} -s mklabel gpt

    #配置磁盘4k对齐
    parted ${Disk_Name[$i]} -s mkpart primary 2048s 100%

    Disk_Partition_Name="`fdisk -l 2>/dev/null | grep ^${Disk_Name[$i]} | awk '{print $1}'`"

    #计算出磁盘大小
    Disk_Size="`parted -s ${Disk_Name[$i]} print | grep "^Disk" | grep "/dev" | awk '{print $3}' | sed 's/GB//g'`"

    #当磁盘大于1800g时
    if [ ${Disk_Size%.*} -gt 1800 ]; then

     # inodes调整为200000000
        mkfs.ext4 -N 200000000 -L "/cache$i" "${Disk_Partition_Name}" 2>&1 &  
    else
        mkfs.ext4 -N 20000000 -L "/cache$i" "${Disk_Partition_Name}" 2>&1 &

     fi

sleep 10
done
wait
#挂载磁盘
mount -a
echo -e '\nCongratulation: all disks have been format and mount!!!'

成长的对话版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

Centos下验证磁盘4K是否对齐脚本 使用Ansible批量部署Zabbix_agent