使用XManager登录Redhat AS4的XWindow,在退出时会出现相关进程没有完全关闭从而导致下次无法登录的情况。
实例一:
文件名:killuser1
#! /bin/bash
UNAME=$1
echo "==> Will Kill User $UNAME"
PID=`ps -aux|awk -v uname=$UNAME '$1==uname {print $2}'`# 记录要删除的PID
date >> kill.log # 记录时间
ps -aux|awk -v uname=$UNAME '$1==uname {print $1,$2,$11}' >> killinfo
# 记录内容
for NUM in $PID # 删除PID
do
echo "==> Will Kill $NUM"
kill -9 $NUM
done
echo "==> Kill User $UNAME OK ..."
执行:
# ./killuser1 eda8
实例二:
文件名:killuser2
#! /bin/bash
UNAME=$1
echo "==> Will Kill User $UNAME"
STARTPID=`ps -aux|\
awk -v uname=$UNAME '$1==uname {print $2,$11}'|\
grep /usr/libexec/gconfd-2|\
awk '{print $1}'` # 获取相关进程
echo "==> /bin/gconfd-2 PID is $STARTPID"
USERPID=`ps -aux|\
awk -v uname=$UNAME '$1==uname {print $2}'|\
awk -v startpid=$STARTPID '$1>=startpid {print $1}'`
for NUM in $USERPID
do
echo "==> Will Kill $NUM"
kill -9 $NUM
done
echo "==> Kill User $UNAME OK ..."
执行:
./killuser2 eda8