Страница 1 из 1
После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 1:22 pm
jokero
Здравствуйте. Ранее создавал тему по вопросу обновления NodeJS. У меня была версия NodeJS 22.4.1.
ОС: Ubuntu 24.04
Я выполнил команду:
После этого переустановил NodeJS в списке приложений через панель.
Версию встала 22.17.0, но теперь при сборке выдают ошибку:
Segmentation fault (core dumped)
ELIFECYCLE Command failed with exit code 139
Видел в одной из тем, что надо выполнить
Код: Выделить всё
apt-get update && apt-get install php74w-v8js
Пробовал. Результат ноль.
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 1:52 pm
sbury
Проверьте что все пакеты обновились до актуальной версии. Покажите выводы эих команд
Код: Выделить всё
dpkg -l | grep nodejs
dpkg -l | grep npm
dpkg -l | grep libuv
Версия libuv должна быть v1.51.0
Зайдите в консоль под именем вашего пользователя. Проверьте что у него nodejs действительно обновился. Должно быть
Или нажмите 'Перестроить Jail Skeleton'. Потом пересобрать JailShel и JailPHP
И последнее перезапустите сервис с nodejs в ручную
systemctl restart node@<id>.service
PHP модули php74w-v8js, относятся к пхп, если у вас сайт на nodejs он ни как не участвует в процессе. Сайт у вас c nodejs или php-fpm?
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 2:57 pm
jokero
sbury писал(а): ↑Вт июл 22, 2025 1:52 pm
Проверьте что все пакеты обновились до актуальной версии. Покажите выводы эих команд
Код: Выделить всё
dpkg -l | grep nodejs
dpkg -l | grep npm
dpkg -l | grep libuv
Версия libuv должна быть v1.51.0
Зайдите в консоль под именем вашего пользователя. Проверьте что у него nodejs действительно обновился. Должно быть
Или нажмите 'Перестроить Jail Skeleton'. Потом пересобрать JailShel и JailPHP
И последнее перезапустите сервис с nodejs в ручную
systemctl restart node@<id>.service
PHP модули php74w-v8js, относятся к пхп, если у вас сайт на nodejs он ни как не участвует в процессе. Сайт у вас c nodejs или php-fpm?
Код: Выделить всё
root:~# dpkg -l | grep nodejs
ii nodejs 22.17.0-0brainy0.24.04 all Node.js is a platform built on Chrome's JavaScript runtime
ii nodejs-libs 22.17.0-0brainy0.24.04 all Libraries to support Node.js and provide stable v8 interfaces.
root:~# dpkg -l | grep npm
ii npm 22.17.0-0brainy0.24.04 all npm is a package manager for node.js. You can use it to install and publish
root:~# dpkg -l | grep libuv
ii libuv1-dev:amd64 1.51.0-0brainy1 amd64 asynchronous event notification library - developm ent files
ii libuv1t64:amd64 1.51.0-0brainy1 amd64 asynchronous event notification library - runtime library
root:~# node -v
v22.17.0
У меня связка Nginx + NodeJS. PHP-FPM тоже используется.
Выдает: -bash: id: No such file or directory. Какой ID инстанса я к сожалению не знаю.
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 3:09 pm
sbury
зайдите в меню сайты , там номер порта в строке с сайтом. Это он и есть. Или посмотрите что есть физически
Код: Выделить всё
ls -1 /usr/lib/systemd/system | grep 'nodejs@'
и проверьте что у самого пользователя. Зайдите в терминал под его именем и дайте команду
Еще, для проверки, можете создать нового пользователя и ему какой нибудь новый сайт на NodeJS
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 4:00 pm
jokero
sbury писал(а): ↑Вт июл 22, 2025 3:09 pm
Зайдите в терминал под его именем и дайте команду
Еще, для проверки, можете создать нового пользователя и ему какой нибудь новый сайт на NodeJS
Код: Выделить всё
user:~$ node -v
v22.17.0
user:~$ npm -v
10.9.2
Попробую объяснить, вот такой у меня набор:
NodeJS установлен через менеджер приложений. Для сайтов используется PHP-FPM, PHP8.4.
Забегая наперед, я пробовал переустанавливать для своего сайта NodeJS вместо PHP8.4 в выборке при создании нового сайта, это не изменило ситуацию.
Команда: ls -1 /usr/lib/systemd/system | grep 'nodejs@' - ничего не выдает
Проблема №2
После перестройки JAIL Skeleton и пересборки Jail Shell/PHP вылезла новая проблема. В nginx конфигах дублируется директива root и при перезагрузке Nginx выдает ошибку:
[emerg] "root" directive is duplicate in /etc/nginx/sites-available/site.conf:6 nginx: configuration file /etc/nginx/nginx.conf test failed
При попытке ее убрать через
/?do=setting_virthost снова выдает эту ошибку и все. Помогает только ручное удаление через файловый менеджер, но это явно не решение проблемы.
Вот как выглядит начало конфига:
Код: Выделить всё
server {
listen 127.0.0.1:443 ssl http2;
root /home/cxd/sites/site.ua/app; # корректный root
index index.php;
server_name site.ua www.site.ua;
root /home/cxd/sites/site.ua; # тот, что добавляется
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 4:14 pm
jokero
Проблему №2 удалось решить при помощи удаления сайта и создания нового, затем обновления данных в /?do=setting_virthost
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 5:34 pm
sbury
Как я понял вы создаете сайт c PHP84w и потом используете модуль v8js для nodejs. Так?
Segmentation fault (core dumped)
ELIFECYCLE Command failed with exit code 139
И при какой команде вы получаете эту ошибку?
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Вт июл 22, 2025 7:53 pm
jokero
sbury писал(а): ↑Вт июл 22, 2025 5:34 pm
Как я понял вы создаете сайт c PHP84w и потом используете модуль v8js для nodejs. Так?
Segmentation fault (core dumped)
ELIFECYCLE Command failed with exit code 139
И при какой команде вы получаете эту ошибку?
Не совсем. Я использую просто PHP.
NodeJS выполняет роль моста проекта на NuxtJS (VueJS).
Выполняю команду установки пакетов pnpm i, после чего получаю эту ошибку.
Дело в том, что на версии 22.4.1 эта команда работала и было все ок (за исключением проблем из-за старой версии NodeJS), после обновления что-то пошло не так.
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Ср июл 23, 2025 4:53 am
sbury
Добавил nodejs-24.4.1 (пока не в паблик)
для Ubuntu 24.04. Все операции в консоле с правами рута
Добавить строку в конец файла
/etc/apt/sources.list
Код: Выделить всё
deb [trusted=yes] http://repubra.netxi.in/centos/ubuntu24f/ ubuntu24f main
или использовать патч
Код: Выделить всё
diff -urN a/sources.list b/sources.list
--- a/sources.list 2025-07-23 04:46:34.193461621 +0000
+++ b/sources.list 2024-11-25 01:14:43.254751798 +0000
@@ -1,3 +1,4 @@
# Ubuntu sources have moved to /etc/apt/sources.list.d/ubuntu.sources
deb [trusted=yes] http://repubra.netxi.in/centos/ubuntu24/ ubuntu24 main
deb [trusted=yes] http://repubra.netxi.in/centos/ubuntu24d/ ubuntu24d main
+deb [trusted=yes] http://repubra.netxi.in/centos/ubuntu24f/ ubuntu24f main
выполнить
переустановить nodejs в панеле.
Проверить что требуемые версии пакетов были установлены
Пересобрабрать джаил для пользователей
Следует обратить внимание, что модули PHP v8js не совместимы с новой версией nodejs , их следует отключить в панеле
Re: После обновления NodeJS с v22.4.1. на v22.17.0. выдает ошибку
Добавлено: Чт июл 24, 2025 3:29 am
sbury
Новый NodeJS v24.4.1-1 доступен
Такие версии должны быть установлены.
Код: Выделить всё
dpkg -l | grep -E '(libcares|node|libuv|nghttp|ngtcp)'
ii libcares2:amd64 1.34.5-1 amd64 asynchronous name resolver
ii libnghttp2-14:amd64 1.59.0-1ubuntu0.2 amd64 library implementing HTTP/2 protocol (shared library)
ii libnghttp3-9:amd64 1.8.0-1 amd64 HTTP/3 library with QUIC and QPACK (library)
ii libngtcp2-16:amd64 1.11.0-1 amd64 implementation of QUIC protocol (library)
ii libnode109 24.4.1-1brainy0.24.04 all Libraries to support Node.js and provide stable v8 interfaces.
ii libuv1t64:amd64 1.51.0-0brainy1 amd64 asynchronous event notification library - runtime library
ii nodejs 24.4.1-1brainy0.24.04 all Node.js is a platform built on Chrome's JavaScript runtime
ii nodejs-libs 24.4.1-1brainy0.24.04 all Libraries to support Node.js and provide stable v8 interfaces.
ii npm 24.4.1-1brainy0.24.04 all npm is a package manager for node.js. You can use it to install and publish
Обновляется через панель в менеджере приложений.
Подключить репозитарий ubuntu24f (смотрите пост выше)
С консоли
Удалить в панеле в Менеджере приложений NodeJS
с консоли
Код: Выделить всё
apt-get remove --purge libnode109 nodejs-libs
apt-get install libngtcp2-16 libcares2 libnghttp3-9 libnghttp2-14
В менеджере приложений установить NodeJS и пересобрать Jailshell и JailPHP для всех существующих пользователей
nuxi/nuxt. Работает