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"}'