Ошибка «sendmsg: Недостаточно буферного пространства» (или если у вас в качестве языка выбран английский, то ошибка будет «ping: sendmsg: No buffer space available») может возникнуть при использовании сети в Linux.
Проблема может быть периодической, то есть Интернет-подключение может работать нормально, но иногда «зависать». Чаще возникает на Wi-Fi подключениях, а не на беспроводных сетевых интерфейсах. Обычно помогает включение и отключение Wi-Fi адаптера. К сожалению, не всегда эту проблему можно решить изменив настройки системы — в некоторых случаях это признак аппаратной проблемы сетевого адаптера или неполной совместимости.
Пример команды, которая может вызвать:
ping 192.168.0.1
Пример вывода:
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data. ping: sendmsg: Недостаточно буферного пространства ping: sendmsg: Недостаточно буферного пространства ping: sendmsg: Недостаточно буферного пространства ping: sendmsg: Недостаточно буферного пространства
Данная ошибка означает, что вы достигли максимального значения системного параметра. Вероятно, /proc/sys/net/core/wmem_max (но это может потребовать некоторого исследования в системе, которая показывает эту ошибку). Этот параметр представляет собой максимальный объем «принимаемой памяти сокета».
Вполне вероятно, что причиной является неисправный сетевой адаптер или сетевой адаптер, который не поддерживается на 100%, но в принципе работает, если система не перегружена.
На случай, если кто-то захочет узнать: файл, в котором хранятся указанные настройки, - это /etc/sysctl.conf, и вы можете изменить их — для этого нужны права root. Некоторые примеры можно найти здесь (также включает параметр, указанный в начале этого ответа). Но это следует делать только в том случае, если замена самой сетевой карты не решает эту проблему.
Связанная статья: Тонкая настройка сетевого стека Linux (размер буферов) для повышения производительности сети
Скорее всего, проблема в драйвере или в самом оборудовании. Это можно временно исправить, отключив/включив интерфейс. В основном очередь вывода заполнена, и если вы не обрабатываете какой-либо основной сетевой трафик или не имеете тонны хостов в сети, вы не должны видеть эту ошибку.
Некоторым пользователям удаётся решить эту проблему изменив настройки Wi-Fi в роутере, например, выбрав режим «802.11 b/g/n mixed».
Иногда проблему удаётся решить только заменив дефектный модем или беспроводной адаптер.
В качестве быстрого исправления вы можете выключить/включить Wi-Fi адаптер в NetwordManager или с помощью команд:
sudo ip link set ИНТЕРФЕЙС down sudo ip link set ИНТЕРФЕЙС up
Если вы хотите разобраться в причинах и корне данной проблемы, то обратитесь к статье «Памятка по Wi-Fi в Linux: подсказки и решение проблем», найдите там раздел «Как увидеть, что происходит с беспроводными интерфейсами» и используйте указанные команды.
Связанные статьи:
- Как использовать команду ip в Linux (92.5%)
- Тонкая настройка сетевого стека Linux (размер буферов) для повышения производительности сети (92.5%)
- Где NetworkManager хранит настройки (РЕШЕНО) (92.5%)
- Почему при смене MAC-адреса в VirtualBox пропадает подключение (РЕШЕНО) (77.5%)
- Ошибка «Authentication helper program /usr/lib64/squid/basic_ncsa_auth: (2) No such file or directory» (РЕШЕНО) (77.5%)
- Одновременное использование нескольких OpenVPN на одном сервере (RANDOM - 27.5%)