联线用户命令

1、查看联线用户命令who、finger和w

(1)使用who命令查看当前联线到系统中的用户:

[root@localhost ~]# who
root     tty1         2013-11-19 20:50
zhu      pts/0        2013-12-03 09:56 (192.168.1.6)

who命令输出了所有联线的用户、登录的终端时间和IP等信息。

(2)使用finger命令查看联线到系统的用户及详细个人信息:

[root@localhost ~]# finger
Login     Name       Tty      Idle  Login Time   Office     Office Phone
root      root       tty1           Nov 19 20:50
zhu       zhu        pts/0       4  Dec  3 09:56 (192.168.1.6)

finger输出了登录到系统的用户名称、终端和电话等详细个人信息,要查阅联线的用户及个人信息,可以使用该命令。

(3)使用w命令查看正在使用系统的用户,并可以查看用户占用系统资源的情况:

[root@localhost ~]# w
 10:00:24 up 1 day,  6:19,  4 users,  load average: 0.00, 0.03, 0.03
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1     -                19Nov13  0.00s  0.21s  0.01s w
zhu      pts/0    192.168.1.6      09:56    3:37   0.02s  0.02s -bash

以上输出结果可以看出,命令w功能很强大,不仅输出了用户及使用的终端,还输出了用户正在执行的命令及cpu占用时间等信息。

从以上3个命令的输出可以看出,who命令主要用于一般性查看,finger命令则侧重于用户的个人详细信息,而w命令则更侧重于输出用户使用系统的情况。

2、与联线用户通信的命令wall、write和mesg

(1)如果要向所有的在线用户发送公告、通知等消息,可以使用wall命令。例如要向使用系统的所有用户发送关机公告:

[root@localhost ~]# wall The system is going DOWN for system halt in 5 minutes!

此时登录到系统的用户都会得到以下提示:

Broadcast message from root (pts/0) (Tue Dec  3 10:04:09 2013):

The system is going DOWN for system halt in 5 minutes!

(2)要向登录到系统中的一个用户发送消息,可以使用write命令。例如用户zhu要向root发送消息:

[zhu@localhost ~]$ write root
#输入以上命令之后将会进入即时消息模式
Hello!
See it?
#此时按Ctrl+C键退出即时消息模式

输入命令和用户之后,将会进入命令的即时消息模式,此时用户可以继续输入消息,这些消息都会动态地显示到指定用户的终端屏幕。

在即时消息模式中,可以使用Enter键换行。当输入结束要退出时,可以使用组合键Ctrl+C。

当用户输入以上消息时,root用户终端屏幕将会 显示如下内容:

Message from zhu@localhost.localdomain on pts/0 at 10:31...
Hello!
See it?
EOF

(3)有时用户可能不希望别其他用户的消息打扰,此时可以使用命令mesg n拒绝其他用户发送来的消息。不过,这个mesg的功能对root传送来的信息没有抵挡能力。

(4)如果用户使用了命令mesg n拒绝消息,可以使用mesg y重新接受消息。

3、断开联线用户命令fuser

在一些特殊情况下,需要对系统进行紧急维护,这时应该将已经联线到系统的用户强制断开,并且不允许除root以外的用户登录。

(1)紧急维护时,首先需要强制断开用户连接的终端设备,这时可以使用fuser命令。例如要断开用户zhu连接的终端设备:

#断开用户连接的终端设备
[root@localhost ~]#fuser -k /dev/pts/0
#fuser命令将通过结束终端的方式断开与用户的连接
/dev/pts/0:        7814

此时用户zhu将会主动断开与系统的连接。

(2)紧急维护的另一种情况是禁止所有用户登录,这时可以在目录/etc中新建一个名为nologin的空文件(逐一修改每个用户的shell为/sbin/nologin,也可以禁止用户登录,但这种方法太繁琐),此时除root外的所有用户都将无法登录到系统。

#touch /etc/nologin

此时系统将不会接受除root以外的用户登录,但是已经登录的用户将不会受到影响(即使将运行级别切换到单用户模式,系统也不会主动断开已经存在的用户连接),所以应该使用fuser将这些用户断开.

posted @ 2013-12-03 10:22  ITtecman  阅读(303)  评论(0编辑  收藏  举报