如果你有 看到类 似『
Aug 5 01:25:02 study rsyslogd: [origin software="rsyslogd" swVersion="7.4.7" x
-
pid="742"
x
-
info="http://www.rsyslog.com"] rsyslogd w
as HUPed
』之类的字样,就是表示
rsyslogd
8/5
有重新启动
(restart)
过了!
了½了这个用法以后,如果未来你想要½某个莫名其妙的登入者的联机删除的话,就可以透过使用
pstree -p
找到相关½程,
然后再以
kill -9
½该½程删除,该条联机就会被踢掉了!这样很简单吧!
.
killall -signal
指令名称
由于
kill
后面必须要加上
PID (
或者是
job number)
,所以,通常
kill
都会配合
ps
,
pstree
等指令,因
为我们必须要找到相对应的那个½程的
ID
嘛!但是,如此一来,很麻烦~有没有可以利用『下达指
令的名称』来给予讯号的?举例来说,能不能直½½
rsyslogd
这个½程给予一个
SIGHUP
的讯号呢?
可以的!用
killall
吧!
[root@study ~]#
killall [
-
iIe] [command name]
选项
参数
-
i
interactive
的意思,½互式的,若需要
提示字符
-
e
exact
的意思,表示『后面½的
command name
要一致』,但整
完整的指令
不能超
15
字符。
-
I
:指令名
(
可能含
参数
)
忽略大小
范例一:
rsyslogd
这个
指令
启动
PID
SIGHUP
讯号
[root@study ~]#
killall
-
1 rsyslogd
#
如果用
ps aux
看一下,若包含所有
参数
/usr/sbin/rsyslogd
-
n
才是最完整的!
范例二:
止所有以
httpd
启动
½
(
有此
½
程在系
统内
)
[root@study ~]#
killall
-
9 httpd
范例三:依次
询问
bash
程序是否需要被
作!
[root@study ~]#
killall
-
i
-
9 bash
Signal bash(13888) . (y/N)
n
<==
这个
Signal bash(13928) . (y/N)
n
<==
这个
Signal bash(13970) . (y/N)
n
<==
这个
Signal bash(14836) . (y/N)
y
<==
这个杀
掉!
#
具有互
的功能!可以
询问
你是否要
bash
这个
程序。要注意,若
-
i
参数
#
所有的
bash
这个
root
给杀
掉!包括
root
自己的
bash
喔!
^_^
总之,要删除某个½程,我们可以使用
PID
或者是启动该½程的指令名称,
而如果要删除某个服
务呢?呵呵!最简单的方法就是利用
killall
因为他可以½系统当中所有以某个指令名称启动的½
程全部删除。
举例来说,上面的范例二当中,系统内所有以
httpd
启动的½程,就会通通的被删除
啦!
^_^