Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > b611ea73723a8287cce23d3124a6eeea > files > 146

howto-sgml-ko-2006-5mdv2010.0.noarch.rpm

#!/bin/bash

PROCNAME=pppd        # ppp µ¥¸ó
PROCFILENAME=status  # ãÀ» °÷
NOTCONNECTED=65
INTERVAL=2           # ¸Å 2 Ãʸ¶´Ù ¾÷µ¥ÀÌÆ®

pidno=$( ps ax | grep -v "ps ax" | grep -v grep | grep $PROCNAME | awk '{ print $1 }' )
# 'ppp µ¥¸ó'ÀÎ 'pppd'ÀÇ ÇÁ·Î¼¼½º ¹øÈ£¸¦ ã´Âµ¥,
# ±× ÇÁ·Î¼¼½º¸¦ ã±â À§ÇÑ ÇÁ·Î¼¼½º ÀÚ½ÅÀº Á¦°ÅÇØ Áà¾ß µË´Ï´Ù.
#
#  ÇÏÁö¸¸, Oleg Philon ÀÌ ÁöÀûÇßµíÀÌ,
#+ ±×³É °£´ÜÈ÷ "pidof"¸¦ ½á¼­ ¾ÆÁÖ °£´ÜÇÏ°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù.
#  pidno=$( pidof $PROCNAME )
#
#  ¿©±â¼­ ¹è¿ï Á¡:
#+ ¸í·É¾îµéÀÌ ³Ê¹« º¹ÀâÇØ Áø´Ù¸é, °£´ÜÇÑ ¹æ¹ýÀ» ã¾Æ º¼ °Í.


if [ -z "$pidno" ]   # pid °¡ ¾ø´Ù¸é ±× ÇÁ·Î¼¼½º´Â ½ÇÇàÁßÀÌ ¾Æ´Ô.
then
  echo "¿¬°áÁßÀÌ ¾Æ´Õ´Ï´Ù."
  exit $NOTCONNECTED
else
  echo "¿¬°áÁßÀÔ´Ï´Ù."; echo
fi

while [ true ]       # ¹«ÇÑ ·çÇÁ, ÀÌ ºÎºÐÀº Á» ´õ °³¼±µÉ ¼ö ÀÖ½À´Ï´Ù.
do

  if [ ! -e "/proc/$pidno/$PROCFILENAME" ]
  # ÇÁ·Î¼¼½º°¡ ½ÇÇàÁßÀ̸é, "status" ÆÄÀϵµ Á¸ÀçÇÕ´Ï´Ù.
  then
    echo "¿¬°áÀÌ ²÷¾îÁ³½À´Ï´Ù."
    exit $NOTCONNECTED
  fi

netstat -s | grep "packets received"  # ¸î °¡Áö Á¢¼Ó Åë°è.
netstat -s | grep "packets delivered"


  sleep $INTERVAL
  echo; echo

done

exit 0

# ÀÌ ½ºÅ©¸³Æ®´Â Control-C ·Î¸¸ ³¡³¾ ¼ö ÀÖ½À´Ï´Ù.

#    µ¶ÀÚµéÀ» À§ÇÑ ¿¬½À¹®Á¦:
#    "q"¸¦ ´­·¶À» ¶§ Á¾·áÇϵµ·Ï °³¼±½ÃÄÑ º¸¼¼¿ä.
#    »ç¿ëÀÚ°¡ Á» ´õ ¾²±â ÁÁ°Ô(user-friendly) ¸¸µé¾î º¸¼¼¿ä.