МихаНическая Wiki!

Обновление Node.js для MeshCentral

Экспорт в PDF Преобразовать страницу в формат Open Document

Дата создания: 2026/05/16 03:51 (C) mihanik

Дано

MeshCentral пишет: «MeshCentral will require Node v20 or above in the future, your current version is v16.20.2.».

Надо

Обновить Node.js до нужной версии.

Решение

Обновление Node.js для MeshCentral — стандартная процедура, но требует аккуратности, чтобы не прервать работу сервиса. Ниже приведена безопасная пошаговая инструкция для Linux.


⚠️ Важно перед началом

  1. Не обновляйте Node «на горячую» — остановите MeshCentral, иначе сервис может завершиться с ошибкой или повредить сессии.
  2. Проверьте, как установлен Node
which node
node -v

Если путь /usr/bin/node или /usr/local/bin/node → скорее всего, ставился через пакетный менеджер или n /nvm .

📦 Шаг 1: Остановка сервиса и бэкап

# Остановите MeshCentral
sudo systemctl stop meshcentral
 
# Бэкап данных и конфига
sudo cp -r /opt/meshcentral/meshcentral-data /opt/meshcentral/meshcentral-data.backup
sudo cp /opt/meshcentral/meshcentral-data/config.json /opt/meshcentral/config.json.backup

(Путь /opt/meshcentral/ может отличаться. Уточните через systemctl cat meshcentral )

🔧 Шаг 2: Установка Node.js v20 через официальный репозиторий NodeSource

Этот метод самый надёжный для production-серверов.

🐧 Debian/Ubuntu:

# Удалите старую версию (если ставилась из стандартных репозиториев)
sudo apt remove -y nodejs npm
 
# Подключите репозиторий Node.js v20
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
 
# Установите Node.js v20 (включает npm)
sudo apt install -y nodejs

🐧 RHEL/CentOS/Rocky/Alma/Fedora:

sudo dnf remove -y nodejs
curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo bash -
sudo dnf install -y nodejs
✅ NodeSource автоматически заменяет старую версию на v20.x LTS. Ручное удаление node_modules не требуется.

✅ Шаг 3: Проверка и обновление MeshCentral

# Убедитесь, что версии корректные
node -v   # должно быть v20.x.x
npm -v    # должно быть v10.x.x

Если MeshCentral был установлен глобально (npm -g ), обновите его до последней версии, совместимой с Node 20:

sudo npm install -g meshcentral@latest

Если MeshCentral установлен локально в папку (например, /opt/meshcentral ):

cd /opt/meshcentral
sudo npm install

🔄 Шаг 4: Запуск и проверка

sudo systemctl start meshcentral
sudo systemctl status meshcentral
 
# Посмотрите логи на предмет ошибок
sudo journalctl -u meshcentral -n 50 --no-pager

Ищите строку: MeshCentral v… started… и отсутствие ERROR .

💡 Нюансы и частые вопросы

СитуацияРешение
всё ещё показывает v16Очистите кэш: hash -r или перезагрузите терминал. Проверьте, не стоит ли nvm/n выше в $PATH.
MeshCentral падает с EACCESДобавьте флаг –unsafe-perm: sudo npm install -g meshcentral@latest –unsafe-perm
Сервис использует старый путь к NodeОткройте sudo systemctl edit meshcentral и проверьте ExecStart. Должно быть ExecStart=/usr/bin/node /opt/meshcentral/…
Нужно оставить v16 для других проектовИспользуйте n или nvm, но для systemd-сервиса лучше сделать symlink: sudo ln -sf /usr/bin/node /usr/local/bin/node

🆘 Если что-то пошло не так

1. Остановите сервис: sudo systemctl stop meshcentral
2. Восстановите бэкап: sudo mv /opt/meshcentral/meshcentral-data.backup /opt/meshcentral/meshcentral-data
3. Откатите Node (если ставили через NodeSource):

sudo apt purge nodejs nodejs-doc
sudo rm /etc/apt/sources.list.d/nodesource.list
sudo apt update
sudo apt install nodejs npm  # вернётся версия из репозитория ОС

4. Запустите MeshCentral снова и проверьте логи.

Источники

Наверх

В моей WIKI постоянно ведётся какая-то работа со статьями.
Если у вас возникли вопросы или замечания,
можете их отправлять на почту support@mihanik.net
Только авторизованные участники могут оставлять комментарии.
web-серверы_и_движки/meshcentral/обновление_node.js_для_meshcentral.txt · Последнее изменение: 2026/05/16 04:15 — mihanik
Яндекс.Метрика