Linux/UNIX ¾å¤Ç¥³¥Þ¥ó¥É¤Î¼Â¹ÔÍúÎò¤ò»Ä¤¹ÊýË¡

ºÇ¶á¡¢¥»¥­¥å¥ê¥Æ¥£´ØÏ¢¤ÎÏä¬Â¿¤¤¤¬¿È¤Î²ó¤ê¤Ç¿¤¤¤Î¤Ç¤¹¤¬¡¢º£²ó¤Ï¡¢Linux / UNIX ·Ï¤Ç郎¤¤¤Ä¤É¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¤«¤Ã¤Æ¤Î¤ò¥í¥°¤Ë¤È¤ëÊýË¡¤Î¤ªÏ䷤Ǥ¹¡£

¡Ö¡÷IT¡§»ß¤á¤é¤ì¤Ê¤¤UNIX¥µ¡¼¥Ð¤Î´ÉÍýÂкö Âè6²ó - Page2¡×¤Ë¤â»²¹Í¤Ë¤Ê¤ë¥í¥®¥ó¥°¤ÎÏ䬷Ǻܤµ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¼Â¹Ô¥³¥Þ¥ó¥É¤Î¥í¥°¤ò¤È¤ëÊýË¡¤Ï°Ê²¼¤Î£µ¤Ä¤¬¹Í¤¨¤é¤ì¤Þ¤¹¡£

  • sudo ¤ò»È¤Ã¤Æ¼Â¹Ô¥í¥°¤ò¤È¤ë
  • .bash_history ¤òÄê´üŪ¤Ë¥Ð¥Ã¥¯¥¢¥Ã¥×¤·¤Æ¼Â¹Ô¥í¥°¤È¤·¤ÆÊݸ¤¹¤ë
  • script ¥³¥Þ¥ó¥É¤ò»È¤¦¤³¤È¤Ç¼Â¹Ô¥í¥°¡Ê²èÌ̽ÐÎϤΥ³¥Ô¡¼¡Ë¤ò¤È¤ë
  • ¥·¥¹¥Æ¥à¥¢¥«¥¦¥ó¥Æ¥£¥ó¥°µ¡Ç½¡Êpsacct¡Ë¤òÍ­¸ú¤Ë¤·¤Æ¼Â¹Ô¥í¥°¤ò¤È¤ë
  • ¼Â¹Ô¥·¥§¥ë¤ò²þ¤¤·¡¢¥í¥°¤òÊݸ¤¹¤ë¤è¤¦¤Ë¤¹¤ë
- ¥¹¥Ý¥ó¥µ¡¼¥ê¥ó¥¯ -

Ëͤ¬¹Í¤¨¤Ä¤¯¤È¤³¤í¤Ç¡¢¥»¥­¥å¥ê¥Æ¥£Åª¤ËºÇ¤â¶¯¸Ç¤Ç¤¢¤ë¤Î¤Ï¥·¥§¥ë¤Î²þ¤¤È»×¤¤¤Þ¤¹¡£Ã¢¤·¡¢¤½¤Î OS ¾å¤Ç»È¤¨¤ë Shell ¤ò¤½¤Î²þ¤ Shell ¤Î¤ß¤Ë¸ÂÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¢¨Ê̤ΠShell ¤òµ¯Æ°¤·¤Æ¼Â¹Ô¤µ¤ì¤Æ¤Ï¥í¥°¤¬»Ä¤ê¤Þ¤»¤ó¤«¤é¡£¡£¡£

⤷¡¢Shell ¤Î²þ¤¤È¤Ê¤ë¤È¤«¤Ê¤êÆñ°×ÅÙ¤¬¹â¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¤¢¤Þ¤ê¸½¼ÂŪ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£

¤½¤ì°Ê³°¤ÎÊýË¡¤Ï²¿¤«¤·¤é·ê¤¬¤¢¤ë¤Î¤Ç¡¢¥»¥­¥å¥ê¥Æ¥£Í×·ï¤È¤·¤Æ»È¤¦¤Î¤Ï¤Á¤ç¤Ã¤È̵Íý¤Ã¤Ý¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£

  • sudo ¤Î¾ì¹ç¡¡¢ª sudo -s ¤ÇÈ´¤±Æ»¤¬¤¢¤ë¡£
  • .bash_history ¤Î¾ì¹ç¡¡¢ª¡¡¼Â¹Ô¥æ¡¼¥¶¤¬ .bash_history ¤òºï½ü¤Ç¤­¤ë
  • script ¥³¥Þ¥ó¥É¤Î¾ì¹ç¡¡¢ª¡¡¼Â¹Ô¥æ¡¼¥¶¤¬¥í¥°¥Õ¥¡¥¤¥ë¤òºï½ü¤Ç¤­¤ë
  • ¥·¥¹¥Æ¥à¥¢¥«¥¦¥ó¥Æ¥£¥ó¥°µ¡Ç½¡Êpsacct¡Ë¤Î¾ì¹ç¡¡¢ª¡¡Í¾Ê¬¤Ê¾ðÊó¤¬Â¿¤¹¤®
  • ¼Â¹Ô¥·¥§¥ë¤ò²þ¤¤·¡¢¥í¥°¤òÊݸ¤¹¤ë¤è¤¦¤Ë¤¹¤ë¡¡¢ª¡¡¼ÂÁõ¤¬Æñ¤·¤¤

¸½¼ÂŪ¤Ê¤È¤³¤í¤Ï¡¢psacct ¤¢¤¿¤ê¤Ç¤·¤ç¤¦¤«¡£

chkconfig --add psacct
chkconfig --level 2345 psacct on
¤È¤Ç¤â¤·¤Æ¤ª¤±¤Ð¡¢lastcomm ¥³¥Þ¥ó¥É¤Ç¥³¥Þ¥ó¥ÉÍúÎò¤ò±ÜÍ÷¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
chkconfig         S     root     pts/0      0.17 secs Wed Mar 15 22:02
perl                    apache   __         0.59 secs Wed Mar 15 22:02
chkconfig         S     root     pts/0      0.00 secs Wed Mar 15 22:02
runlevel          S     root     pts/0      0.00 secs Wed Mar 15 22:02
chkconfig         S     root     pts/0      0.00 secs Wed Mar 15 22:02
perl                    apache   __         0.09 secs Wed Mar 15 22:02
crond             SF    root     __         0.00 secs Wed Mar 15 22:02
chkproc.pl        S     root     __         0.00 secs Wed Mar 15 22:02
ps                S     root     __         0.01 secs Wed Mar 15 22:02
perl                    apache   __         0.09 secs Wed Mar 15 22:02
perl                    apache   __         0.09 secs Wed Mar 15 22:02
perl                    apache   __         0.09 secs Wed Mar 15 22:01
perl                    apache   __         0.09 secs Wed Mar 15 22:01
psacct            S     root     pts/0      0.01 secs Wed Mar 15 22:01
touch             S     root     pts/0      0.00 secs Wed Mar 15 22:01
initlog           S     root     pts/0      0.00 secs Wed Mar 15 22:01
accton            S     root     pts/0      0.00 secs Wed Mar 15 22:01

⤷¡¢Shell ¤«¤é¼Â¹Ô¤·¤¿¥³¥Þ¥ó¥É¤À¤±¤Ç¤Ê¤¯¡¢Apache Åù¤Î¥×¥í¥»¥¹¤¬¼Â¹Ô¤·¤¿¤â¤Î¤âÁ´¤Æ¥í¥°¤È¤·¤Æ½ÐÎϤµ¤ì¤ë¤Î¤Ç¡¢¥í¥°¤Ï·ë¹½ÈîÂç²½¤·¤Þ¤¹¤·¡¢¤Ê¤Ë¤è¤ê¥í¥®¥ó¥°¤¹¤ëÉԲĤ¬µ¤¤Ë¤Ê¤ë¤È¤³¤í¤Ç¤¹¡£


¤µ¤Æ¡¢¤Ç¤Ï¼«Ê¬¤¬¼Â¹Ô¤·¤¿¥³¥Þ¥ó¥ÉÍúÎò¤òÈ÷˺ϿŪ¤Ë¸«¤¿¤¤¤È¤¤¤¦Í×·ï¤À¤È¤¹¤ë¤È¤É¤¦¤Ç¤·¤ç¤¦¡©

¤³¤Î¾ì¹ç¤Ç¤Ï¡¢script ¥³¥Þ¥ó¥É¤Ë¤è¤ë¥í¥®¥ó¥°¤¬°µÅÝŪ¤Ë¾ðÊóÎ̤¬Â¿¤¤¤Ç¤¹¡£Î㤨¤Ð¡¢Shell ¤«¤é SQL*plus ¤òµ¯Æ°¤·¤Æ SQL ¤ò¼Â¹Ô¤·¤¿·ë²Ì¡£¤Ê¤ó¤Æ¤Î¤âÁ´¤Æ¥í¥°¤È¤·¤ÆÊݸ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤è¤¦¤Ï¡¢É¸½à½ÐÎϤȤ·¤Æ½ÐÎϤ·¤¿¤â¤Î¤òÁ´¤Æ¥³¥Ô¡¼¤·¤ÆÊݸ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¤½¤Î¤¿¤á¡¢¸½¾ì¤Ç¤Ï¥µ¡¼¥Ð¤Ë¥ß¥É¥ë¥¦¥§¥¢¤ò¥¤¥ó¥¹¥È¡¼¥ë¤ò¤·¤¿¤êÀßÄꤷ¤¿¤ê¤¹¤ë¤È¤­¤Ë¡¢script ¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤ÆÁ´¤Æ¤Î¼Â¹Ô¥í¥°¤ò¤È¤Ã¤Æ¡¢¤½¤ì¤ò¥É¥­¥å¥á¥ó¥È¤È¤·¤Æ²Ã¹©¤·¤Æ¤«¤éǼÉʤ¹¤ë¡£¤Ê¤ó¤Æ¤³¤È¤¬¹Ô¤ï¤ì¤Æ¤¤¤Þ¤¹¡£

⤷¡¢Ç½Æ°Åª¤Ë script ¤ò¥³¥Þ¥ó¥É¤òÂǤÄɬÍפ¬¤¢¤ë¤Î¤Ç¡¢¼«Ê¬¤¿¤Á¤¬±¿ÍѼԤȤ·¤Æ Shell ¤ò¿¨¤Ã¤Æ¤¤¤ë»þ¤Ë¤Ï¡¢¤Û¤Ü£±£°£°¡ó¤Î³ÎΨ¤Ç¼Â¹Ô¤¹¤ë¤³¤È¤ò˺¤ì¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Þ¤¹¡£

¤½¤ó¤Ê¤³¤ó¤Ê¤ÇºÇ¶áºî¤Ã¤¿ÊØÍø¥·¥§¥ë¥¹¥¯¥ê¥×¥È¤Ï¤³¤Á¤é¡£

mkdir /tmp/log
mkdir /tmp/log/script_logs
chmod -R 777 /tmp/log

echo "
## loggin ----------
now=`date +%Y%m%d%H%M%S`
user=`whoami`
logfile=/tmp/log/script_logs/$user/$now

if [ ! -e /tmp/log/script_logs/$user ]
then
    mkdir /tmp/log/script_logs/$user
fi
if [ -e $logfile ]
then
    mv -f $logfile $logfile.bak
fi
p_proc=`ps -ef|grep $PPID|grep bash|awk '{print $8}'`
if [ "$p_proc" = -bash ]
then
    script $logfile 
    exit
fi" >> /etc/profile

²¿¤ò¤·¤Æ¤¤¤ë¥¹¥¯¥ê¥×¥È¤«¤È¤¤¤¦¤È¡¢/etc/profile ¤Ë script ¥³¥Þ¥ó¥É¤Î¼«Æ°µ¯Æ°¤ª¤è¤Ó script ¥³¥Þ¥ó¥É¤Î exit ¤Ë¤¢¤ï¤»¤Æ Shell ¤â¼«Æ°¤Ç exit ¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¡£Shell ¤â¼«Æ°¤Ç exit ¤¹¤ë¤³¤È¤Ç¡¢¼«Ê¬¼«¿È¡¢script ¥³¥Þ¥ó¥É·Ðͳ¤Ç¥í¥°¥¤¥ó¤·¤Æ¤¤¤ë¤È¸À¤¦¤³¤È¤Ï¡¢ps -ef Åù¤Ç¥×¥í¥»¥¹¤ò¸«¤Ê¤¤¤ÈÇÄ°®¤Ç¤­¤Ê¤¤¤¯¤é¤¤¤Ç¤¹¡£

¢¨µÕ¤Ë¡¢ps ¤Ç¥×¥í¥»¥¹¤ò¤ß¤ì¤Ð¡¢script ¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¤³¤È¤¬¤ï¤«¤ë¤Î¤Ç¡¢¥»¥­¥å¥ê¥Æ¥£¡¼Í×·ï¤È¤·¤Æ¤Ï½½Ê¬¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£kill ¤Ç¤­¤Æ¤·¤Þ¤¤¤Þ¤¹¤Î¤Ç¡£


¤µ¤Æ¡¢´Î¿´¤Î¥í¥°¤ÎÊý¤Ï¡¢/tmp/log/script_logs/¥æ¡¼¥¶Ì¾/yyyymmddhhmiss ·Á¼°¤Î¥í¥°¤¬¾¡¼ê¤Ë¤Ç¤­¤Æ¤¤¤Þ¤¹¡£É¬Í×»þ¤Ë¥í¥°¥¤¥ó¤·¤¿»þ´ÖÂӤʤɤ«¤é¥í¥°¤òŬµ¹±ÜÍ÷¤¹¤ì¤Ð¡¢¼«Ê¬¤¬²¿¤ò¤·¤Æ¡¢¤É¤ó¤Ê·ë²Ì¤Ë¤Ê¤Ã¤¿¤Î¤«¤ò¸«¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¾¡¼ê¤Ë¥í¥°¤¬Î¯¤Þ¤ë¡£¤Ã¤Æ¤È¤³¤í¤¬¥Ý¥¤¥ó¥È¤Ç¤¹¡£

¼Â¹Ô¥í¥°¤ò¤È¤ë¤Ë¤Ï¤É¤¦¤¹¤ë¤ó¤À¤Ã¤±¡©¤ÈÄ´¤Ù¤¿»þ¤Î»²¹Í¥µ¥¤¥È°ìÍ÷
¡¡- ¤º¤óWiki - acct¤Ç¥³¥Þ¥ó¥É¼Â¹Ô¤Î¥í¥°¤ò¼è¤ë
¡¡- ¡÷IT¡§»ß¤á¤é¤ì¤Ê¤¤UNIX¥µ¡¼¥Ð¤Î´ÉÍýÂкö Âè6²ó - Page2
¡¡- Linux¤Ç¤ÎÁàºî¥í¥° - Linux Square

- ¥¹¥Ý¥ó¥µ¡¼¥ê¥ó¥¯ -

´ØÏ¢¤¹¤ëµ­»ö¡õ¥¹¥Ý¥ó¥µ¡¼¥ê¥ó¥¯