首页 > 解决方案 > 我不小心删除了我(usr/)家中的目录 .npm,我该怎么办

问题描述

我不小心删除了 ubuntu 网络服务器上主目录(甚至包括 package.json)中的“不可见”目录“.npm”

而且我还有一个 Node.js 网站正在运行(它在 /var/www/ 下)

那么我该如何检查我的 npm 的状态或如何重建它呢?

现在我的网站似乎运行良好,但我很害怕在我重新启动其他东西后它会死...

提前感谢您的帮助,并为我的愚蠢感到抱歉...

下面是 npm 给我的一些反馈

root@localhost:/home/alex# npm restart
npm ERR! Linux 4.15.0-112-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "restart"
npm ERR! node v8.10.0
npm ERR! npm  v3.5.2
npm ERR! path /home/alex/package.json
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open

npm ERR! enoent ENOENT: no such file or directory, open '/home/alex/package.json'
npm ERR! enoent ENOENT: no such file or directory, open '/home/alex/package.json'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent 

npm ERR! Please include the following file with any support request:
npm ERR!     /home/alex/npm-debug.log
root@localhost:/home/alex# npm install
npm WARN enoent ENOENT: no such file or directory, open '/home/alex/package.json'
npm WARN alex No description
npm WARN alex No repository field.
npm WARN alex No README data
npm WARN alex No license field.

标签: node.jsnpmwebserver

解决方案


.npm目录是一个缓存,因此删除它不会影响系统上运行的任何内容。

丢失的package.json文件可能是一个更大的问题,但我怀疑你只是在错误的目录中。通常在其主目录的根级别没有 a package.json(在您的情况下,/home/alex)。如果我是对的,那么答案就是找出真实package.json的地方。

另一方面,如果它确实在您的主目录中,并且您没有主目录的备份,那么您将需要重新生成它,但是您首先设法创建它。(当您使用它时,请创建一个备份系统,这样您就不会再次陷入这种情况!)

我还看到您正在运行 Node.js 8.x。该版本的 Node.js 最后一次支持是在 2019 年。您正在运行的 Node.js 版本存在已知的 TLS/SSL 漏洞。至少更新到 12.x,最好是 14.x。


推荐阅读