首页 > 代码库 > Linux下磁盘监控脚本
Linux下磁盘监控脚本
九月份偷了下懒,补上一篇
注释:shell脚本,需要fio工具,实时监控磁盘的读写性能
#!/bin/bash DATE=$(date +%m-%d) IOSTATLOG=/var/log/iostat${DATE}.log FIOLOG=/var/log/fio${DATE}.log /bin/ps -ef |grep "iostat -dk 5" | grep -v grep > /dev/null if [ $? == 0 ] then echo "Disk monitor already running" exit 1 else /usr/bin/iostat -dk 5 >>$IOSTATLOG & pid=$! fi while true do echo "-------------`date`--------">>$FIOLOG echo "--------------fio test---------------------">>$FIOLOG ######随机读: echo "-------------随机读s----------------">>$FIOLOG fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=4k -size=4096M -numjobs=10 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=128k -size=4096M -numjobs=10 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=1M -size=4096M -numjobs=10 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 #####顺序读: echo "-------------顺序读----------------">>$FIOLOG fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=4k -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=128k -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=1M -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 #####随机写: echo "-------------随机写----------------">>$FIOLOG fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=4k -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=128k -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=1M -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 #####顺序写: echo "-------------顺序写----------------">>$FIOLOG fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=4k -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=128k -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=1M -size=4096M -numjobs=30 -runtime=1000 -group_reporting -name=mytest >>$FIOLOG 2>&1 #####混合随机读写: echo "-------------混合随机读写----------------">>$FIOLOG #######4k fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=4k -size=4096M -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop >>$FIOLOG 2>&1 #######128k fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=128k -size=4096M -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop >>$FIOLOG 2>&1 #######1M fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=1M -size=4096M -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop >>$FIOLOG 2>&1 sleep 60 done
本文出自 “DanielQu” 博客,请务必保留此出处http://qujunorz.blog.51cto.com/6378776/1859968
Linux下磁盘监控脚本
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。