Megatest

Hex Artifact Content
Login

Artifact ce15f820738e72cfa33eac5ba6312d02726a2805:


0000: 23 21 2f 62 69 6e 2f 62 61 73 68 20 2d 65 0a 0a  #!/bin/bash -e..
0010: 66 69 6c 74 65 72 3d 60 72 65 66 64 62 20 6c 6f  filter=`refdb lo
0020: 6f 6b 75 70 20 24 4d 54 5f 52 55 4e 5f 41 52 45  okup $MT_RUN_ARE
0030: 41 5f 48 4f 4d 45 2f 24 43 46 47 5f 54 59 50 45  A_HOME/$CFG_TYPE
0040: 20 6d 61 63 68 69 6e 65 73 20 24 54 41 52 47 45   machines $TARGE
0050: 54 48 4f 53 54 20 66 69 6c 74 65 72 60 0a 0a 65  THOST filter`..e
0060: 63 68 6f 20 22 55 73 69 6e 67 20 66 69 6c 74 65  cho "Using filte
0070: 72 3a 20 24 66 69 6c 74 65 72 22 0a 0a 64 69 73  r: $filter"..dis
0080: 6b 61 72 65 61 73 3d 60 6d 6f 75 6e 74 20 7c 20  kareas=`mount | 
0090: 65 67 72 65 70 20 27 65 78 74 7c 6d 66 73 7c 6e  egrep 'ext|mfs|n
00a0: 66 73 27 7c 20 65 67 72 65 70 20 2d 76 20 22 24  fs'| egrep -v "$
00b0: 66 69 6c 74 65 72 22 20 7c 20 61 77 6b 20 27 7b  filter" | awk '{
00c0: 70 72 69 6e 74 20 24 33 7d 27 60 0a 0a 66 6f 72  print $3}'`..for
00d0: 20 64 69 72 6e 61 6d 65 20 69 6e 20 24 64 69 73   dirname in $dis
00e0: 6b 61 72 65 61 73 3b 64 6f 0a 0a 20 20 20 20 65  kareas;do..    e
00f0: 63 68 6f 20 22 64 69 72 6e 61 6d 65 3a 20 24 64  cho "dirname: $d
0100: 69 72 6e 61 6d 65 22 0a 0a 20 20 20 20 23 20 6d  irname"..    # m
0110: 65 61 73 75 72 65 20 74 68 65 20 66 72 65 65 20  easure the free 
0120: 73 70 61 63 65 0a 20 20 20 20 66 72 65 65 73 70  space.    freesp
0130: 61 63 65 3d 60 64 66 20 2d 50 20 2d 6b 20 24 64  ace=`df -P -k $d
0140: 69 72 6e 61 6d 65 20 7c 20 67 72 65 70 20 24 64  irname | grep $d
0150: 69 72 6e 61 6d 65 20 7c 20 61 77 6b 20 27 7b 70  irname | awk '{p
0160: 72 69 6e 74 20 24 34 7d 27 60 0a 0a 20 20 20 20  rint $4}'`..    
0170: 23 20 67 65 74 20 74 68 65 20 6d 69 6e 66 72 65  # get the minfre
0180: 65 20 61 6c 6c 6f 77 65 64 20 66 72 6f 6d 20 74  e allowed from t
0190: 68 65 20 72 65 66 64 62 0a 20 20 20 20 6d 69 6e  he refdb.    min
01a0: 66 72 65 65 3d 60 72 65 66 64 62 20 6c 6f 6f 6b  free=`refdb look
01b0: 75 70 20 24 4d 54 5f 52 55 4e 5f 41 52 45 41 5f  up $MT_RUN_AREA_
01c0: 48 4f 4d 45 2f 24 43 46 47 5f 54 59 50 45 20 6d  HOME/$CFG_TYPE m
01d0: 61 63 68 69 6e 65 73 20 24 54 41 52 47 45 54 48  achines $TARGETH
01e0: 4f 53 54 20 6d 69 6e 66 72 65 65 60 0a 0a 20 20  OST minfree`..  
01f0: 20 20 69 66 20 5b 5b 20 22 24 66 72 65 65 73 70    if [[ "$freesp
0200: 61 63 65 22 20 2d 6c 74 20 22 24 6d 69 6e 66 72  ace" -lt "$minfr
0210: 65 65 22 20 5d 5d 3b 74 68 65 6e 0a 09 65 63 68  ee" ]];then..ech
0220: 6f 20 22 45 52 52 4f 52 3a 20 61 76 61 69 6c 61  o "ERROR: availa
0230: 62 6c 65 20 73 70 61 63 65 20 24 66 72 65 65 73  ble space $frees
0240: 70 61 63 65 20 69 73 20 6c 65 73 73 20 74 68 61  pace is less tha
0250: 6e 20 6d 69 6e 69 6d 75 6d 20 61 6c 6c 6f 77 65  n minimum allowe
0260: 64 20 6f 66 20 24 6d 69 6e 66 72 65 65 20 6f 6e  d of $minfree on
0270: 20 24 64 69 72 6e 61 6d 65 22 0a 20 20 20 20 65   $dirname".    e
0280: 6c 73 65 0a 09 65 63 68 6f 20 22 49 4e 46 4f 3a  lse..echo "INFO:
0290: 20 73 70 61 63 65 20 61 76 61 69 6c 61 62 6c 65   space available
02a0: 20 6f 66 20 24 66 72 65 65 73 70 61 63 65 20 6b   of $freespace k
02b0: 20 6f 6e 20 24 64 69 72 6e 61 6d 65 20 6d 65 65   on $dirname mee
02c0: 74 73 20 72 65 71 75 69 72 65 64 20 6d 69 6e 69  ts required mini
02d0: 6d 75 6d 20 6f 66 20 24 6d 69 6e 66 72 65 65 2e  mum of $minfree.
02e0: 22 0a 20 20 20 20 66 69 0a 64 6f 6e 65 0a        ".    fi.done.