linux当前有哪些正在登陆用户?怎么查看?

发布时间:2020-09-04编辑:脚本学堂
有关linux下查看当前正在登陆的用户信息的方法,在linux下查看当前登录的用户,并踢掉定用户的命令用法,需要的朋友参考下。

怎么在linux下查看当前登录的用户,并且踢掉某些用户?>> Linux 查看用户登陆后操作记录的方法

在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是每一个远程连接都会产生的,比如现在使用ftp客户端连接到主机上,主机就会产生一个pts,事实上上面的192.168.8.235就是我,那两个http就我的连接。

要踢出某个用户以及该用户运行的程序(很野蛮),请采用如下方法:

比如:想踢除http这个用户和他的所有开启的程序执行以下linux命令
 

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,然后:
 

kill -9 16628