Здравствуйте!
Я использую питоновский модуль multiping (https://pypi.python.org/pypi/multiping/1.1.0) для проверки доступности узлов. На Астру устанавливаю, скачав multiping-1.1.0.tar.gz, через easy_install. Вот код работы программы:
#!/usr/bin/env python2.7
# -*- coding: UTF-8 -*-
from multiping import MultiPing
host_list = ["8.8.8.8", "127.0.0.1"]
mp = MultiPing(host_list)
mp.send()
resp = mp.receive(1)
print(resp)
Но на строке
resp = mp.receive(1)
Происходит вылет прогаммы:
Traceback (most recent call last):
File "./test.py", line 11, in <module>
resp = mp.receive(1)
File "/usr/local/lib/python2.7/dist-packages/multiping-1.1.0-py2.7.egg/multiping/__init__.py", line 388, in receive
"d", payload[:self._time_stamp_size])[0]
struct.error: unpack requires a string argument of length 8
При этом, на машине с Debian 9 модуль благополучно работет, проблем не возникает. Я даже смотрел на Астра линукс файл usr/local/lib/python2.7/dist-packages/multiping-1.1.0-py2.7.egg/multiping/__init__.py, где происходит ошибка, и выводил на экран размер структуры struct - она составляла как раз 8 байт (как и на Debian). Из-за чего может возникать такая ошибка?
Астра линукс:
# lsb_release -a
No LSB modules are available.
Distributor ID: AstraLinuxSE
Description: Astra Linux SE 1.5 (Smolensk)
Release: 1.5
Codename: smolensk
Программу запускаю от пользователя root.