linux下kill tty

2017年5月29日 发表评论 阅读评论

Linux下可以通过w命令或who命令查看当前登录的所有主机的pts信息,而非正常退出时,有时候pts并不会释放,这就会占用/dev/tty资源。如何将这种非正常退出的进程kill掉呢?当然,我们可以通过ps auxf指令进行查看,再获取相应的进程信息后,再kill掉进程。同样也可以也可以使用pkill直接进行查杀。

查看当前的pts占用情况:

[root@localhost ~]# w
 14:21:27 up 71 days,  3:54,  2 users,  load average: 0.64, 0.39, 0.35
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    127.0.0.1        14:21    7.00s  0.16s  0.04s w
root     pts/4    127.0.0.1        14:21    3.00s  0.12s  0.12s -bash

除了使用ps auxf进行详细的查看外,还可以使用如下命令查看其对的pid值:

[root@localhost ~]# ps -t tty1
  PID TTY          TIME CMD
 2363 tty1     00:01:05 X
[root@localhost ~]# ps -t /dev/tty1
  PID TTY          TIME CMD
 2363 tty1     00:01:05 X

查到对应的pid后,直接kill -9 pid就可以结束该进程了。不过除此之外,我们还可以使用pkil指令进行比较快速的杀tty,踢用户:

[root@redhat ~]# pkill -t tty1 #杀死终端1下的所有进程
[root@Centos ~]# pkill -kill -t pts/2 #踢用户
[root@redhat ~]# pkill -9 6985 #彻底杀死进程
[root@redhat ~]# pkill -u tank #杀死指定用户的所有进程
[root@redhat ~]# pkill -vu root #杀死不属于root用户的所有进程




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: Linux/unix/mac 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.