XX服务器上的npm不知道咋突然坏了

收到同事的V,说是:182上的npm不知道咋突然坏了,查到这里了,不敢动了。

咱一定要抓重点:突然坏了。这里的突然肯定不是瞬间(大概率是上次可用,这次不可用,中间间隔了多长时间,不好说~_~)。

来吧,登录到服务器上,执行npm命令:

~]# npm
node: relocation error: /lib64/libnode.so.93: symbol FIPS_selftest, version OPENSSL_1_1_0g not defined in file libcrypto.so.1.1 with link time reference

libcrypto.so.1.1不支持/lib64/libnode.so.93,但是呢后者依赖前者,这就是原因:

~]# ldd /lib64/libnode.so.93 | grep libcrypto

libcrypto.so.1.1 => /usr/local/openssl/lib/libcrypto.so.1.1 (0x00007f19e3eaf000)

显然是编译安装了一个openssl版本:

~]# ll /bin/openssl

lrwxrwxrwx 1 root root 30 Aug 12 09:45 /bin/openssl -> /usr/local/openssl/bin/openssl

~]# openssl version

OpenSSL 1.1.1p 21 Jun 2022

这台机器是CentOS7.9,缺省安装的是1.0.2k ,这里应该是升级openssh 的时候将openssl升级了。

~]# rpm -qa|grep openssl
openssl-1.0.2k-26.el7_9.x86_64

openssl11-libs-1.1.1k-6.el7.x86_64
openssl11-1.1.1k-6.el7.x86_64

openssl-libs-1.0.2k-26.el7_9.x86_64

查看RPM包可以看到,除了原生安装的1.0.2.k外,还安装了1.1.1k版本,这么一来/usr/local/openssl就没必要了。

1、如下将/usr/local/openssl/lib注释掉

~]# cat /etc/ld.so.conf

include ld.so.conf.d/*.conf

#/usr/local/openssl/lib

2、使用 ldconfig 命令更新动态链接库缓存:

~]# ldconfig

3、确认是否生效,引用到了/lib64/libcrypto.so.1.1

~]# ldd /lib64/libnode.so.93 | grep libcrypto

libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007efee33dd000)

最后,执行npm -v命令,问题解决:

~]# npm -v

8.19.4

刚通知同事,问题解决了,Please enjoy!结果告诉我还是不能用~~我这一脸问号还没消失,截图就过来了,问题回显如下:

~]# npm ping http://192.168.1XX.XX:4873/

npm notice PING http://192.168.1XX.XX:4873/
npm ERR! code ERR_INVALID_URL
npm ERR! Invalid URL

npm ERR! A complete log of this run can be found in:

npm ERR! /root/.npm/_logs/2024-11-22T07_26_02_329Z-debug-0.log

问题定位:

1、telnet 192.168.1XX.XX 4873,是通的

2、在另外一台服务器上装了一个npm命令,OK的

3、问问AI,百度搜搜,无果~~不过AI回答的一个可能原因提醒了我(无心插柳,踏破铁鞋):因为之前的HVV,设置了防火墙策略,不允许访问互联网,我就设置了web代理。

解决:

注释掉代理配置,然后重新登录即可。

相关推荐
舒一笑14 小时前
程序员效率神器:一文掌握 tmux(服务器开发必备工具)
运维·后端·程序员
NineData16 小时前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
梦想很大很大2 天前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
Sinclair2 天前
内网服务器离线安装 Nginx+PHP+MySQL 的方法
运维
叶落阁主2 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
茶杯梦轩2 天前
从零起步学习RabbitMQ || 第二章:RabbitMQ 深入理解概念 Producer、Consumer、Exchange、Queue 与企业实战案例
服务器·后端·消息队列
甲鱼9293 天前
MySQL 实战手记:日志管理与主从复制搭建全指南
运维
无责任此方_修行中3 天前
如何利用 pnpm 的安全控制功能防御 npm 供应链攻击
javascript·npm·node.js
YuMiao4 天前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
臣妾没空5 天前
里程碑5:完成框架npm包抽象封装并发布
前端·npm