Как изменить файл server.properties

Подготовка и доступ к серверу

1. Авторизация в панели proxify.cloud

  1. Откройте браузер и перейдите по адресу https://proxify.cloud.
  2. Введите логин и пароль от учётной записи.
  3. В списке услуг выберите выделенный сервер с установленной Ubuntu.
  4. Нажмите кнопку Консоль (Console) или VNC для прямого доступа к командной строке.
    Альтернатива: подключитесь по SSH с локальной машины:
    ssh root@<IP-адрес_сервера>
    
    IP-адрес указан в карточке сервера в панели proxify.cloud во вкладке Сеть или Доступ.

2. Определение пользователя и директории сервера

По умолчанию на выделенных серверах proxify.cloud Minecraft-сервер запускается от имени пользователя minecraft или ubuntu. Проверьте это командой:

ps aux | grep java

Пример вывода:

minecraft  1234  12.5  45.2  6543210 1234560 pts/0  Sl+  10:00   0:45 java -Xms4G -Xmx4G -jar paper.jar nogui

Запомните пользователя (в примере — minecraft) и рабочую директорию (обычно /home/minecraft/server или /opt/minecraft).

3. Остановка сервера перед редактированием

Никогда не редактируйте server.properties на работающем сервере — изменения не применятся, а файл может быть перезаписан процессом.

Если сервер запущен через systemd (рекомендуемый способ на Ubuntu):

systemctl stop minecraft

Если используется screen или tmux:

  1. Подключитесь к сессии:
    screen -r minecraft
    # или
    tmux attach -t minecraft
    
  2. В консоли сервера введите stop и дождитесь полной остановки (появление сообщения Server stopped).
  3. Отсоединитесь: Ctrl+A затем D (screen) или Ctrl+B затем D (tmux).

Проверьте, что процесс java больше не висит:

pgrep -f "java.*minecraft"

Команда не должна вернуть PID.

Редактирование файла server.properties

4. Переход в директорию сервера

cd /home/minecraft/server
# или
cd /opt/minecraft

Убедитесь, что файл существует:

ls -la server.properties

Ожидаемый вывод:

-rw-r--r-- 1 minecraft minecraft 2458 мая 15 12:30 server.properties

5. Создание резервной копии

Обязательный шаг перед любыми правками:

cp server.properties server.properties.backup.$(date +%F_%H-%M)

Проверка:

ls -la server.properties.backup.*

6. Редактирование через nano (рекомендуется для новичков)

nano server.properties

Основные горячие клавиши nano:

  • Стрелки — навигация
  • Ctrl+OEnter — сохранить
  • Ctrl+X — выйти
  • Ctrl+W — поиск по ключу
  • Ctrl+K — вырезать строку
  • Ctrl+U — вставить строку

7. Редактирование через vim (для опытных)

vim server.properties
  • i — вход в режим вставки
  • Esc — выход в нормальный режим
  • :wEnter — сохранить
  • :qEnter — выйти
  • :wq — сохранить и выйти
  • /motdEnter — поиск строки с motd

8. Редактирование одной строкой через sed (автоматизация)

Пример: смена порта на 25570:

sed -i 's/^server-port=.*/server-port=25570/' server.properties

Пример: включение online-mode=false:

sed -i 's/^online-mode=.*/online-mode=false/' server.properties

Пример: изменение MOTD (требует экранирования спецсимволов):

sed -i 's/^motd=.*/motd=\\u00a7aMy \\u00a7bServer/' server.properties

Важно: после sed всегда проверяйте результат: grep ^motd server.properties.

Ключевые параметры server.properties — справочник

Параметр Значение по умолчанию Описание Рекомендации
server-port 25565 Порт для подключения игроков Меняйте, если на сервере несколько инстансов. Откройте порт в Firewall proxify.cloud (панель → Сеть → Firewall).
server-ip (пусто) IP, на котором слушает сервер Оставьте пустым для прослушивания всех интерфейсов (0.0.0.0). Указывайте только при необходимости биндинга на конкретный внутренний IP.
online-mode true Проверка лицензии через Mojang false — для оффлайн-режима (требует плагин авторизации: AuthMe, LuckPerms).
max-players 20 Максимальное количество игроков Подбирайте под RAM: 1 ГБ ≈ 15-20 игроков (Paper/Purpur).
motd A Minecraft Server Сообщение в списке серверов Поддерживает цветовые коды § (в файле пишите как \u00a7). Пример: motd=\\u00a76Proxify \\u00a7bCloud.
difficulty easy Сложность: peaceful, easy, normal, hard normal — стандарт для выживания.
gamemode survival Режим по умолчанию: survival, creative, adventure, spectator
level-name world Название папки мира Не используйте пробелы и кириллицу.
level-seed (пусто) Сид генерации мира Оставьте пустым для случайной генерации.
view-distance 10 Радиус загрузки чанков (чанков) 6-8 для экономии ресурсов, 10-12 для комфорта.
simulation-distance 10 Радиус симуляции сущностей Ставьте равно или меньше view-distance.
spawn-protection 16 Радиус защиты спавна (блоков) 0 — отключить защиту.
enable-command-block false Разрешить командные блоки true для карт с командами.
enable-rcon false Включить RCON true + задайте rcon.password и rcon.port (по умолчанию 25575). Обязательно ограничьте доступ в Firewall proxify.cloud до вашего IP.
rcon.password (пусто) Пароль RCON Сложный пароль, минимум 16 символов.
max-tick-time 60000 Макс. время тика (мс) перед крашем Увеличьте до 120000 при тяжелых фермах/редактах WorldEdit.
network-compression-threshold 256 Порог сжатия пакетов (байт) -1 — отключить сжатие (для локальной сети), 512 — снизить нагрузку на CPU.

Проверка и применение изменений

9. Валидация синтаксиса

Файл должен содержать только пары ключ=значение, по одной на строке. Пустые строки и строки, начинающиеся с #, игнорируются. Проверка на дубликаты:

awk -F= '/^[^#]/ {print $1}' server.properties | sort | uniq -d

Если вывод пуст — дубликатов нет.

10. Исправление прав доступа (если редактировали от root)

chown minecraft:minecraft server.properties
chmod 644 server.properties

Замените minecraft на реального пользователя из шага 2.

11. Запуск сервера

Через systemd:

systemctl start minecraft
systemctl status minecraft --no-pager

Через screen:

su - minecraft -c "cd /home/minecraft/server && screen -dmS minecraft java -Xms4G -Xmx4G -jar paper.jar nogui"

Через tmux:

su - minecraft -c "cd /home/minecraft/server && tmux new-session -d -s minecraft 'java -Xms4G -Xmx4G -jar paper.jar nogui'"

12. Проверка логов на ошибки

journalctl -u minecraft -f --no-pager
# или, если нет systemd:
tail -f /home/minecraft/server/logs/latest.log

Ищите строки:

  • Done (X.Xs)! For help, type "help" — успешный старт.
  • Invalid configuration / Failed to load properties — ошибка в server.properties.

13. Тестирование подключения

  1. Запустите клиент Minecraft той же версии.
  2. В меню МультиплеерДобавить сервер.
  3. Адрес: <IP_сервера_proxify>:<server-port>.
  4. Попробуйте зайти. Проверьте в чате/консоли: Player[/IP:port] logged in.

Работа с несколькими инстансами (дополнительно)

Если на одном выделенном сервере proxify.cloud запущено несколько серверов (например, лобби + выживание), используйте разные порты и systemd-юниты.

Пример структуры:

/opt/minecraft/
├── lobby/
│   ├── server.properties   (server-port=25565)
│   └── paper.jar
└── survival/
    ├── server.properties   (server-port=25566)
    └── paper.jar

Systemd юниты: /etc/systemd/system/minecraft-lobby.service, /etc/systemd/system/minecraft-survival.service.

В панели proxify.cloud (вкладка СетьFirewall) откройте оба порта: 25565/tcp и 25566/tcp.

Возможные проблемы и решения

1. Изменения не применяются после перезапуска

Причина: Файл отредактирован, но сервер запущен от другого пользователя, у которого нет прав на чтение, или файл заблокирован запущенным процессом. Решение:

  • Убедитесь, что сервер полностью остановлен (systemctl stop minecraft + проверка pgrep).
  • Проверьте владельца: ls -l server.properties. Владелец должен совпадать с пользователем запуска.
  • Проверьте,