У меня есть два кластера Solaris (machine1, machine2), у меня есть соединение между двумя машинами, ping и ssh работают нормально (кластер в порядке)
more /var/tmp/mesg
TEST
Выполняю следующую команду:
wall –a /var/tmp/mesg on machine1 ( on machine1 )
на машине 1 я вижу сообщение «ТЕСТ»
Но когда я проверяю сообщение «ТЕСТ» также на машине2, я не вижу сообщения «ТЕСТ».
Пожалуйста, посоветуйте, в чем проблема - на машине2 я не получаю широковещательное сообщение «ТЕСТ»
детали из машины1 и машины2
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
Работает как задумано.
wall
пишет сообщение на терминал любого пользователя, который в данный момент вошел в систему локальная машина.
У него нет понятия «кластер» и нет возможности общаться с другими машинами (и даже если бы это было так, то поведение по умолчанию было бы крайне нежелательным в большинстве ситуаций).
Если вы хотите написать сообщение для пользователей на нескольких машинах, вам необходимо подключиться к каждой машине и передать сообщение (или использовать средство обмена сообщениями, предоставляемое программным обеспечением вашего кластера, если такое средство существует).
Вы, наверное, думаете о rwall
служба.
Описание
Команда rwall отправляет сообщения всем пользователям сети. Для этого команда rwall считывает сообщение со стандартного ввода до тех пор, пока не достигнет символа конца файла. Команда rwall принимает это сообщение, которое начинается со строки Broadcast Message ..., и передает его всем пользователям, вошедшим в систему на указанные хост-машины. Пользователи получают сообщения только в том случае, если на них запущен демон rwalld, который запускается демоном inetd.
Примечание: время ожидания довольно короткое. Это позволяет команде rwall отправлять сообщения на большую группу машин (некоторые из которых могут быть отключены) за разумное время. Таким образом, сообщение может не пройти на сильно загруженный компьютер.