Все об Arch Linux

Arch Linux будет тем, что вы из него сделаете!

Quetoo не стартует: порт 1998 уже занят

Quetoo не стартует, серверы не видны, список обновляется по кругу с надписью «Refreshing servers»? Причина проста: зависший процесс quetoo держит TCP-порт 1998, и новый экземпляр не может его занять. Решение: убить старый процесс и запустить игру заново.

Почему Quetoo не подключается к серверам

Симптомы выглядят жутко: запустил игру, а она висит на «Refreshing servers», своего сервера нет, чужие не показываются, статус — «Server down». Но серверы работают, проблема на твоей стороне.

Quetoo при запуске пытается занять TCP-порт 1998 для локального сервера и общения с мастер-сервером. Если предыдущий экземпляр завис или закрылся некорректно, его процесс всё ещё жив в системе и держит порт. Такое случается после крашей или принудительного завершения через среду рабочего стола.

Новый запуск получает ошибку «Address already in use» на этапе bind. Сетевой стек игры не поднимается: клиент не может связаться с мастер-сервером и поднять локальный сервер. Весь сетевой стек Quetoo завязан на этом порте, и пока он занят — игра мертва.

Мастер-сервер Quetoo работает на master.quetoo.org (52.6.189.159:1996, UDP). ICMP-пинги до него не доходят (100% loss), но это нормально: игровой трафик идёт по UDP, а не по ICMP.

Как проверить, занят ли порт 1998

Открой терминал и выполни:

ss -tlnp | grep 1998

Команда покажет, какой процесс слушает порт. В выводе будет что-то вроде:

LISTEN  0  128  0.0.0.0:1998  0.0.0.0:*  users:(("quetoo",pid=1234,fd=7))

PID и имя процесса на месте — значит, старый quetoo висит и занимает порт.

Для полноты картины проверь все процессы с именем quetoo:

pgrep -a quetoo

Вывод покажет PID и команду запуска каждого экземпляра. Обычно висит один, максимум два процесса, которые остались после предыдущего закрытия игры через крестик или краша.

Как убить зависший процесс и перезапустить Quetoo

Одна команда решает проблему:

pkill quetoo && sleep 1 && ~/Games/Quetoo/bin/quetoo &

Что тут происходит:

  1. pkill quetoo убивает все процессы с именем quetoo.
  2. sleep 1 ждёт секунду, чтобы ядро освободило порт.
  3. ~/Games/Quetoo/bin/quetoo & запускает игру в фоне.

Путь ~/Games/Quetoo/bin/quetoo — стандартный для установки в домашнюю директорию. Если ты ставил игру иначе, подставь свой.

Признак успеха — строка в консоли:

HTTP server listening on port 1998

Видишь её? Всё поднялось. Серверы появятся, можно играть.

Если у тебя KWin или другой оконный менеджер с диспетчером задач, процесс можно убить и через него. Но через терминал надёжнее: видишь, что именно убиваешь, и проверяешь результат.

Как избежать проблемы в будущем

Зависание quetoo — штука редкая, но неприятная. Вот что реально помогает:

  • Правильно закрывай игру. Нажал крестик — подожди пару секунд, процесс завершится сам. Убийство через kill -9 почти гарантирует висяк порта.
  • Проверяй порт перед запуском. Привычка ss -tlnp | grep 1998 перед стартом экономит минуты. На блоге есть отдельная статья про поиск занятых портов.
  • Не запускай несколько копий. Вторая копия quetoo не поднимется, а вот порт заблокирует.
  • Следи за логом при запуске. Если вместо HTTP server listening on port 1998 видишь Failed to create listen socket — порт занят, лечится по схеме выше.

Для тех, кто играет в Linux постоянно, полезно заглянуть в статью про PortProton и другие инструменты для игр в Linux — там больше контекста про игровую экосистему.

Частые вопросы

Как узнать, какой именно процесс занимает порт?

Команда ss -tlnp | grep 1998 покажет PID и имя процесса. Если в выводе видишь users:(("quetoo",pid=1234,...)) — виновник найден. Дополнительно pgrep -a quetoo покажет все экземпляры с командами запуска.

Что делать, если pkill не помогает?

Проверь, что процесс действительно убит: pgrep -a quetoo не должен ничего выводить. Если процесс всё ещё жив, повтори pkill quetoo и подожди пару секунд, затем запускай игру заново. В крайнем случае перезагрузи сессию — порт освободится гарантированно.

Почему мастер-сервер не отвечает на ping?

Мастер-сервер Quetoo работает по UDP на порту 1996. ICMP-пакеты к нему не приходят, и это нормально. Игровой трафик идёт по другому протоколу. Если серверы не видны, проблема скорее всего на стороне клиента (порт 1998), а не из-за мастер-сервера.

Порт 1998 свободен, но Quetoo всё равно не работает?

Проверь, нет ли проблем с настройкой сети. Убедись, что файервол не блокирует исходящие соединения. Если сеть в порядке, а игра молчит — перезапусти quetoo полностью: pkill quetoo && sleep 1 && ~/Games/Quetoo/bin/quetoo &.

Заключение

Проблема «Quetoo не стартует, серверы не видны» почти всегда сводится к одному: старый процесс держит порт 1998. Проверь ss -tlnp | grep 1998, убей зависший через pkill quetoo, запусти игру заново. Всё занимает минуту.


Официальный сайт Quetoo: https://www.quetoo.org. Архивная страница по играм на ArchWiki: https://wiki.archlinux.org/title/Gaming.



Не получилось? Поможем настроить

Задай вопрос в чате — отвечаем быстро, по делу и без воды.

Читайте также

Комментарии

Загрузка…

Откроется GitHub: создайте новый issue с вашим комментарием (кнопка «Submit new issue»). После отправки обновите эту страницу — комментарий появится ниже.

Telegram Max