wall 命令 + 广播消息未出现在第二台集群机器上

wall 命令 + 广播消息未出现在第二台集群机器上

我有两台集群 solaris 机器( machine1 , machine2 )两台机器之间的连接 ping 和 ssh 工作正常(集群正常)

 more /var/tmp/mesg
 TEST

我执行以下命令:

    wall –a /var/tmp/mesg on machine1  ( on machine1 )

在机器 1 上,我看到消息“测试”

但是当我在 machine2 上检查消息“TEST”时,我没有看到消息“TEST”

请指教可能是什么问题——在机器2上我没有收到广播消息“测试”

来自 machine1 和 machine2 的详细信息

 machine1 - details


 [root@machine1 /var/tmp]#ifconfig -a


    lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
    inet 127.0.0.1 netmask ff000000 
e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
    inet 10.20.24.137 netmask ffffff80 broadcast 10.20.24.255
    groupname Data_ipmp
    ether 0:21:28:d2:31:3e 
e1000g0:1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
    inet 10.20.24.141 netmask ffffff80 broadcast 10.20.24.255
nxge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3
    inet 0.0.0.0 netmask ff000000 broadcast 0.255.255.255
    groupname Data_ipmp
    ether 0:21:28:e1:1:aa


machine2 – details


[root@machine2 /var/tmp]# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
    inet 127.0.0.1 netmask ff000000 
e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
    inet 10.20.24.140 netmask ffffff80 broadcast 10.20.24.255
    groupname Data_ipmp
    ether 0:21:28:4f:e9:1e 
nxge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3
    inet 0.0.0.0 netmask ff000000 broadcast 0.255.255.255
    groupname Data_ipmp
    ether 0:21:28:e0:15:8a







netstat -rn

Routing Table: IPv4
Destination           Gateway           Flags  Ref     Use     Interface 
-------------------- -------------------- ----- ----- ---------- --------- 
default              10.20.24.129         UG        1          0           
10.20.24.128         10.20.24.137         U         1        160 e1000g0   
10.20.24.128         10.20.24.141         U         1          0 e1000g0:1 
224.0.0.0            10.20.24.137         U         1          0 e1000g0   
127.0.0.1            127.0.0.1            UH       40     373257 lo0   

答案1

按设计工作。

wall向当前登录的任何用户的终端写入一条消息本地机器
它没有“集群”的概念,也没有与其他机器通信的能力(即使有,在大多数情况下,将这种行为作为默认行为也是非常不可取的)。

如果您想向多台机器上的用户写消息,您需要连接到每台机器并广播该消息(或者使用您的集群软件提供的消息传递工具,如果这样的工具存在的话)。

答案2

你可能正在考虑rwall服务

描述

rwall 命令将消息发送给网络上的所有用户。为此,rwall 命令从标准输入读取消息,直到到达文件结束符。rwall 命令接收此消息(以 Broadcast Message... 行开头),并将其广播给登录到指定主机的所有用户。用户只有在运行由 inetd 守护程序启动的 rwalld 守护程序时才会收到消息。

注意:超时时间相当短。这使得 rwall 命令能够在合理的时间内向一大组机器(其中一些机器可能已关闭)发送消息。因此,消息可能无法到达负载过重的机器。

相关内容