npm install导致的OOM解决方案

文章目录

    • 问题记录
    • 解决方法
    • Linux重启排查方法
  • 如何排查Linux自动重启的原因

问题记录

我在华为云服务器配置npm开发环境的时候, SSH远程连接一直掉线,无奈提了工单,被告知是NPM install导致的OOM问题。无语了,破NPM还有这个问题呢!
在这里插入图片描述

解决方法

在项目的跟路径下创建一个名为:.npmrc 的文件
在文件内部写入:

NODE_OPTIONS=--max-old-space-size=4096

4096 的单位是M, 如果还不够的话请自动调大一点。这个数字有个讲究,最好是1024的倍数哦。
然后可以通过命令: npm config ls 查看配置是否生效

base) ➜  gatsby-cds-blog git:(master)npm config ls
; "user" config from /Users/chendongsheng/.npmrc

chromedriver-cdnurl = "https://npm.taobao.org/mirrors/chromedriver" 
couchbase-binary-host-mirror = "https://npm.taobao.org/mirrors/couchbase/v{version}" 
debug-binary-host-mirror = "https://npm.taobao.org/mirrors/node-inspector" 
disturl = "https://npm.taobao.org/dist" 
electron-mirror = "https://npm.taobao.org/mirrors/electron/" 
flow-bin-binary-host-mirror = "https://npm.taobao.org/mirrors/flow/v" 
fse-binary-host-mirror = "https://npm.taobao.org/mirrors/fsevents" 
fuse-bindings-binary-host-mirror = "https://npm.taobao.org/mirrors/fuse-bindings/v{version}" 
git4win-mirror = "https://npm.taobao.org/mirrors/git-for-windows" 
gl-binary-host-mirror = "https://npm.taobao.org/mirrors/gl/v{version}" 
grpc-node-binary-host-mirror = "https://npm.taobao.org/mirrors" 
hackrf-binary-host-mirror = "https://npm.taobao.org/mirrors/hackrf/v{version}" 
home = "https://npm.taobao.org" 
leveldown-binary-host-mirror = "https://npm.taobao.org/mirrors/leveldown/v{version}" 
leveldown-hyper-binary-host-mirror = "https://npm.taobao.org/mirrors/leveldown-hyper/v{version}" 
mknod-binary-host-mirror = "https://npm.taobao.org/mirrors/mknod/v{version}" 
node-sqlite3-binary-host-mirror = "https://npm.taobao.org/mirrors" 
node-tk5-binary-host-mirror = "https://npm.taobao.org/mirrors/node-tk5/v{version}" 
nodegit-binary-host-mirror = "https://npm.taobao.org/mirrors/nodegit/v{version}/" 
operadriver-cdnurl = "https://npm.taobao.org/mirrors/operadriver" 
phantomjs-cdnurl = "https://npm.taobao.org/mirrors/phantomjs" 
profiler-binary-host-mirror = "https://npm.taobao.org/mirrors/node-inspector/" 
proxy = "http://127.0.0.1:7890" 
puppeteer-download-host = "https://npm.taobao.org/mirrors" 
python-mirror = "https://npm.taobao.org/mirrors/python" 
rabin-binary-host-mirror = "https://npm.taobao.org/mirrors/rabin/v{version}" 
registry = "https://registry.npmmirror.com/" 
sass-binary-site = "https://npm.taobao.org/mirrors/node-sass" 
sodium-prebuilt-binary-host-mirror = "https://npm.taobao.org/mirrors/sodium-prebuilt/v{version}" 
sqlite3-binary-site = "https://npm.taobao.org/mirrors/sqlite3" 
utf-8-validate-binary-host-mirror = "https://npm.taobao.org/mirrors/utf-8-validate/v{version}" 
utp-native-binary-host-mirror = "https://npm.taobao.org/mirrors/utp-native/v{version}" 
zmq-prebuilt-binary-host-mirror = "https://npm.taobao.org/mirrors/zmq-prebuilt/v{version}" 

; "project" config from /Users/chendongsheng/github/react_learner/gatsby-cds-blog/.npmrc

NODE_OPTIONS = "--max-old-space-size=4096" 

; node bin location = /usr/local/bin/node
; node version = v20.9.0
; npm local prefix = /Users/chendongsheng/github/react_learner/gatsby-cds-blog
; npm version = 10.1.0
; cwd = /Users/chendongsheng/github/react_learner/gatsby-cds-blog
; HOME = /Users/chendongsheng
; Run `npm config ls -l` to show all defaults.

在继续安装,如果还有该问题的话,请继续调大该值,直到解决问题。

Linux重启排查方法

如何排查Linux自动重启的原因

Linux 服务器自动重启是常见的故障现象,可能由多种原因导致。在排查该问题时,可以按照以下步骤进行:

  1. 查看重启时间

首先,可以通过 lastuptime 命令查看重启时间。例如:

[root@localhost ~]# last
reboot    Wed 2023-11-15 12:00:00 CST

这表示系统在 2023-11-15 12:00:00 CST 重启。

  1. 查看系统日志

系统日志通常会记录重启的原因。可以使用 grep 命令查找关键字,例如 panicerrorexceptionshutdown。例如:

[root@localhost ~]# cat /var/log/messages | grep -E -i "panic|error|exception|shutdown"

这将显示系统日志中包含上述关键字的行。

  1. 检查定时任务

定时任务可能会导致系统自动重启。可以使用 crontab -l 命令查看定时任务列表。

  1. 检查硬件故障

硬件故障也可能导致系统自动重启。可以检查 CPU、内存、磁盘、电源等硬件是否存在异常。

如果通过以上步骤仍无法确定重启原因,可以使用 kdumpcrash 工具生成内核崩溃转储文件。然后,可以使用分析工具查看转储文件,以获取更多信息。

  • 常见的导致Linux自动重启的原因
    以下是一些常见的导致Linux自动重启的原因:

  • 软件错误:例如,某个程序存在错误,导致系统崩溃。

  • 硬件故障:例如,内存损坏或电源故障。

  • 配置错误:例如,系统配置文件存在错误。

  • 恶意软件:例如,病毒或木马程序导致系统自动重启。


  • 本文参考

GitHub上有人提过相关的 github-npm-ISSUE
statck overflow 也有相关记载: npm install stackoverflow

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/138716.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

项目二:家庭记账系统

目录 一:目标 二:需求说明 2.1:基本资金和收支明细的记录 2.2:键盘访问的实现 三:实现步骤 3.1:实现主程序结构 3.2:实现收入和支出登记处理 3.3:工具类的使用 四:代…

跨境电商的数据安全:隐私保护的前沿

在数字时代,跨境电商已经成为了国际贸易的重要组成部分,为企业和消费者提供了便捷的购物和销售途径。然而,这一快速增长的领域也伴随着数据安全和隐私保护的挑战。本文将深入探讨跨境电商的数据安全问题,以及行业在维护用户隐私权…

第七章 块为结构建模 P5|系统建模语言SysML实用指南学习

仅供个人学习记录 应用泛化对分类层级建模 继承inherit更通用分类器的公共特性,并包含其他特有的附加特性。通用分类器与特殊分类器之间的关系称为泛化generalization 泛化由两个分类器之间的线条表示,父类端带有空心三角形箭头 块的分类与结构化特性…

Haskell添加HTTP爬虫ip编写的爬虫程序

下面是一个简单的使用Haskell编写的爬虫程序示例,它使用了HTTP爬虫IP,以爬取百度图片。请注意,这个程序只是一个基本的示例,实际的爬虫程序可能需要处理更多的细节,例如错误处理、数据清洗等。 import Network.HTTP.Cl…

想要轻松上手Docker?Portainer帮你实现零基础快速部署!

Portainer简介 前面我们已经讲解了安装docekr和使用docker run 部署容器了,但是这些可能需要使用CLI(命令行参数)才能快乐的玩耍,因此可以使用一个工具在web界面进行配置管理容器与镜像,方便大家使用。 Portainer是一款Docker容器管理系统&am…

《QT从基础到进阶·二十一》QGraphicsView、QGraphicsScene和QGraphicsItem坐标关系和应用

前言: 我们需要先由一个 QGraphicsView,这个是UI显示的地方,也就是装满可见原色的Scene,然后需要一个QGraphicsScene 用来管理所有可见的界面元素,要实现UI功能,我们需要用各种从QGraphicsItem拼装成UI控件…

sqlmap requires ‘python-pymysql‘ third-party library

使用sqlmap进行udf提权报错: [14:06:04] [CRITICAL] sqlmap requires python-pymysql third-party library in order to directly connect to the DBMS MySQL. You can download it from https://github.com/PyMySQL/PyMySQL. Alternative is to use a package pyt…

高频SQL50题(基础班)-4

文章目录 主要内容一.SQL练习题1.1789-员工的直属部门代码如下(示例): 2.610-判断三角形代码如下(示例): 3.180-连续出现的数字代码如下(示例): 4.1164-指定日期的产品价格代码如下(示例&#x…

【深度学习】pytorch——常用工具模块

笔记为自我总结整理的学习笔记,若有错误欢迎指出哟~ 深度学习专栏链接: http://t.csdnimg.cn/dscW7 pytorch——常用工具模块 数据处理 torch.utils.data模块DatasetDataLoadersamplertorch.utils.data的使用 计算机视觉工具包 torchvisiontorchvision.d…

在Android上使用Jetpack Compose定制下拉刷新

在Android上使用Jetpack Compose定制下拉刷新 在Jetpack Compose中向LazyList添加下拉刷新非常简单。说真的,只需几行代码。然而,默认的外观和感觉并不是那么令人满意。我们希望做得更好一些,类似于iOS版本:当用户向下拉动列表时…

【解刊】IEEE(trans),中科院2区,顶刊,CCF-A类,圈外人别想投?

计算机类 • 好刊解读 今天小编带来IEEE旗下计算机领域好刊的解读,如有相关领域作者有意向投稿,可作为重点关注!后文有真实发表案例,供您投稿参考~ 01 期刊简介 IEEE Transactions on Computers ☑️出版社:IEEE …

PayPal的CISO谈GenAI如何提高网络安全

在最近一个季度(2023财年第二季度),PayPal报告收入为73亿美元,同比增长7%,5%的交易增长和37%的增值服务收入增长带来了强劲的季度业绩。截至2022年,PayPal的营收为275亿美元。 在进入PayPal之前,Keren创建了两家网络安…

地面沉降监测站可以监测什么?

随着城市化的飞速发展,地面沉降问题日益凸显。为了及时掌握土地沉降情况,确保人们安全,就需要借助地面沉降监测站的力量。 一、实时监测土地沉降 地面沉降监测站的核心功能是实时监测土地沉降。通过高精度GNSS位移监测站和先进的数据分析技术…

CS224W6.3——图深度学习

在这篇中,将介绍图神经网络的架构。关键思想是,在GNNs中,根据局部网络邻域生成节点嵌入。gnn通常由任意数量的层组成,而不是单层,以集成来自更大上下文的信息。介绍了如何使用gnn来解决优化问题,以及它强大…

vue3配置@别名

在项目开发中,通常我们是不写相对路径的,因为有些文件需要在不同的文件中使用,如果使用相对路径,那么我们每次去CV路径的时候就要重新修改。因此通常我们是写跟路径的,但是从头开始又太过于麻烦,因此我们使…

行情不好,程序员的路在哪里?

最近有人提问,行情不好,程序员的路在哪里?今天的文章从远程工作、市场和流量思维、新技术、自媒体几个维度来讲讲。 远程工作 如果你在二三线城市,机会比较少,可以考虑一下远程工作。找一份美国或欧洲的远程工作&…

【OpenVINO】基于 OpenVINO C# API 部署 RT-DETR 模型

基于 OpenVINO C# API 部署 RT-DETR 模型 1. RT-DETR2. OpenVINO3. 环境配置4. 模型下载与转换5. C#代码实现5.1 模型推理类实现1. 模型推理类初始化2. 图片预测API 5.2 模型数据处理类RTDETRProcess1. 定义RTDETRProcess2. 输入数据处理方法3. 预测结果数据处理方法 6. 预测结…

【实例分割】用自己数据集复现经典论文YOLACT

YOLACT:You Only Look At CoefficienTs 🏆论文下载:paper 🏆代码下载:code 🏆论文详解:YOLACT 目录 🍂🍂1.安装环境 🍂🍂2.数据准备 &…

AIGC|如何将Milvus集成到LangFlow中?详细代码演示!

目录 一、基本介绍 二、修改langflow代码使其支持milvus 三、效果演示 langflow是一个LangChain UI,它提供了一种交互界面来使用LangChain,通过简单的拖拽即可搭建自己的实验、原型流。通过在langflow中引入Milvus,用户可以更方便地存储和…

Mac电脑安装打印机驱动

1.在打印机背面找到型号,当想要安装的驱动在官网找不到时可直接搜索该系列:比如MF系列 2.安装完成后需要添加打印机 当打印机和电脑在同一个WiFi下的时候查找打印机IP,输入IP后可以查到对应的打印机,添加后即可使用