在linux下如何查看和踢除正在登陆的其它用户
使用who这个命令来查看当前正在登录的用户
[root@localhost http]# who root tty1 Apr 9 13:17 http pts/0 Apr 16 15:13 (192.168.8.235) http pts/1 Apr 16 15:13 (192.168.8.235)
上面的消息告诉我们:tty是指在任何一个虚拟控制台登录则产生一个tty,比如你插上显示器登录主机,就会增加一个tty,那pts是什么呢?pts是每一个远程连接都会产生的
要踢出某个用户以及该用户运行的程序(很野蛮),请采用如下方法:
比如:想踢除http这个用户和他的所有开启的程序执行下面命令
pkill -u http
注意:这个命令实际上很危险,要相当小心的执行!!
说他危险的原因是:该用户所有有关的程序都会被关掉,那意味着什么呢?那意味着:如何你使用http这个用户开启的apache服务的 话,apache服务业停掉了,你必须手动开启apache服务!说得更严重点:如果你不小心执行了踢出root的命令,那意味着使用root开启的 ssh服务也停止了,你必须(是的!是必须!)接显示器到服务器上了,或者你必须按一下reset键了~~
那么安全的方法是什么呢?
安全的做法是先查看终端号,然后查看该终端执行的所有进程,根据进程号来停止服务!
示例:
[root@localhost http]# who root tty1 Apr 9 13:17 http pts/0 Apr 16 15:13 (192.168.8.235) [root@localhost http]# ps -ef|grep pts/0 http 16627 16595 0 15:13 ? 00:00:00 sshd: http@pts/0 http 16628 16627 0 15:13 pts/0 00:00:00 -bash root 16680 16628 0 15:13 pts/0 00:00:00 su root 16681 16680 0 15:13 pts/0 00:00:00 bash root 18089 16681 0 15:41 pts/0 00:00:00 ps -ef root 18090 16681 0 15:41 pts/0 00:00:00 grep pts/0
如果你要终止某个进程,看准进程号,执行。比如要敲掉http的bash,看准进程号是16628