saXファイルのsarコマンドを使用すると、以下のようにディスク使用率を取得できます。
sar -d -f /var/log/sa/sa18 | grep Average
Average: dev8-0 1.24 0.00 150.06 121.40 0.04 30.40 4.72 0.58
Average: dev253-0 0.32 0.00 3.75 11.83 0.01 17.95 3.48 0.11
Average: dev253-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev253-2 1.12 0.00 146.31 130.68 0.04 31.79 4.46 0.50
Average: dev8-16 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev8-32 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev8-48 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev253-3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
MAJ:MINで定義されたディスクは(dev8-16、dev8-48など)であることがわかります。
sdb、sdc sdcなどの物理ディスク名を取得できますか?sar
CLIを使用する(sar -d -f /var/log/sa/sa18 | grep Average
)
答え1
このマニュアルには、man sar
次の名前を検索する方法が記載されていますsar -d
。
-d
各ブロックデバイスのアクティビティを報告します。データを表示すると、デバイス名はに表示されているとおりに表示されます/dev
。sar
使用量データは、/sys
プライマリおよびセカンダリデバイス番号に基づいてデバイス名を決定します。この名前解決が失敗すると、ファイル制御名マッピングがsar
使用されます。 [...]オプションを使用/etc/sysstat/sysstat.ioconf
すると、永続デバイス名も印刷できます。-j
つまり、
- そんなことが起こらなければならなかった
- そうでない場合は、次の項目に追加できます。
/etc/sysstat/sysstat.ioconf
-j {option}
次のいずれかのオプションを使用することをお勧めしますLABEL
。
最近、Piでシステムアカウントを有効にしました。明らかに実行された統計は重要ではありませんが、このマシンでディスク名が正しく表示されていることをすでに確認できます。
sar -d -f /var/log/sysstat/sa18
Linux 4.9.35-v7+ (pi) 18/01/23 _armv7l_ (4 CPU)
12:16:05 LINUX RESTART (4 CPU)
12:40:01 DEV tps rkB/s wkB/s dkB/s areq-sz aqu-sz await %util
12:42:08 mmcblk0 3.37 14.35 19.58 0.00 10.06 0.08 23.15 0.58
12:42:08 dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: mmcblk0 3.37 14.35 19.58 0.00 10.06 0.08 23.15 0.58
Average: dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sa*
分析のためにファイルを別のサーバーにコピーしたかどうか疑問に思います。この場合、実際にsysstat.ioconf
名前を付けるために編集する必要があるかもしれません。
答え2
この試み:
#! /bin/bash
devrez()
{
l=/sys/dev/block/`echo "$1" | sed 's/dev//g;s/-/:/g'`
test ! -L "$l" && echo "[$1] not found" && return -1
readlink -f "$l" | awk -F / '{ORS="";print "\t"$NF}'
}
export -f devrez
sar -d -f /var/log/sa/sa18 | awk '{OFS="\t";ORS="";print $1; system("/bin/bash -c '\''devrez "$2"'\''");$1="";$2="";print "";print;print "\n"}'