디스크 사용량을 보는 명령은 df -k 을 사용한다. 이것을 좀 더 응용한 쉘 프로그램을 소개한다.
AIX 에서는 df -k 명령을 이용하면 아래와 같이 나온다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 |
$ df -k
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/hd4 1048576 481888 55% 12328 11% /
/dev/hd2 4718592 165192 97% 58400 56% /usr
/dev/hd9var 14680064 4061824 73% 9015 1% /var
/dev/hd3 10485760 7397560 30% 610 1% /tmp
/dev/hd1 16777216 3857024 78% 85819 10% /home
/proc - - - - - /proc
/dev/hd10opt 1048576 57332 95% 19828 57% /opt
/dev/hd11admin 262144 261776 1% 4 1% /admin
/dev/Tivolilv 1048576 889716 16% 336 1% /mgr
/dev/applv 90177536 26626236 71% 1297551 18% /appsvr
/dev/apllv 94371840 64757048 32% 119783 1% /appsvr_log
/dev/viewlv 10485760 10481956 1% 496 1% /ccase_view
/dev/comlv 10485760 4108088 61% 11870 2% /common |
cs |
사실 이렇게 봐도 문제는 없지만 어떤 특정 기준값을 정해 놓고 이 이상 사용량인 것만 추출해서 관찰하고 싶을 때를 위해서 별도의 쉘을 작성해 보았다. 여기서는 디스크 사용량이 80 %를 초과하는 것만 걸러서 보는 예제이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 |
maxusage=80
echo "-----------------------------------------------------------------------------------"
echo " o Checking ... File System over usage ${maxusage}%"
echo "-----------------------------------------------------------------------------------"
list=` df -k | grep -v - | awk '{printf "%s:%s:%s\n", $1,$4,$7 }'`
echo "Filesystem Used Mounted on "
for name in $list
do
fs=`echo $name | cut -d : -f 1`
use=`echo $name | cut -d : -f 2 |sed "s/\%//g"` # 끝에 붙어 있는 % 를 제거
mount=`echo $name | cut -d : -f 3`
if [ $use -gt $maxusage ]; then
echo "$fs $use $mount" | awk '{ printf "%-15s %10d %% %-10s\n", $1, $2, $3 }'
fi
done
echo "-----------------------------------------------------------------------------------"
echo 'To see more detail information, use "'df -k'" command \n'
|
cs |
17 line 에서 awk 에서 포매팅을 할 때 좌측정렬을 하고자 할 때는 -를 붙이는 것이 특징이다.
'컴퓨터활용 > 유닉스' 카테고리의 다른 글
dlopen error : Permission denied (0) | 2017.07.01 |
---|---|
디렉토리 사용량 조회 (1) | 2017.06.18 |
일괄 거래 재거래 (1) | 2017.06.08 |
AIX dbx 사용 core 분석 (2) | 2017.03.24 |
티베로 쿼리 실행 쉘 예제 (0) | 2016.10.29 |