mongodb - 尝试通过 npm 安装 mongodb 并收到 EINVAL 错误

标签 mongodb ubuntu npm

我正在尝试使用 NPM 安装软件包。例如,我试图通过通常的方式在 ubuntu 14.04 上安装 mongodb

Sudo npm install mongodb

我收到这个错误
npm ERR! tar.unpack untar error /home/cougs/.npm/mongodb/2.0.45/package.tgz
npm ERR! Linux 3.13.0-61-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "mongodb"
npm ERR! node v4.1.2
npm ERR! npm  v2.14.4
npm ERR! path  /mnt/nfs_data/byucougars.com/RebelFleet/app/node_modules/mongodb/package.json
npm ERR! code EINVAL
npm ERR! errno -22
npm ERR! syscall chown

npm ERR! EINVAL: invalid argument, chown    '/mnt/nfs_data/byucougars.com/RebelFleet/app/node_modules/mongodb/package.json'
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     /mnt/nfs_data/byucougars.com/RebelFleet/app/npm-debug.log

我很确定这是我的用户的权限问题。可能当我通过 FTP 将内容复制到服务器时,它搞砸了。我只是不知道如何解决这个问题。

最佳答案

解决此问题的一种方法是通过 LD_PRELOAD 覆盖 chown() 以插入一个始终返回零(“成功”)的函数。所以而不是

#npm install

你会做的
#echo "int chown() { return 0; }" > preload.c && gcc -shared -o preload.so preload.c 
#LD_PRELOAD=$PWD/preload.so npm install

关于mongodb - 尝试通过 npm 安装 mongodb 并收到 EINVAL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33022597/

相关文章:

ubuntu - 如何使用 Amazon EC2 面板运行 GPU 实例?

ubuntu - 如何在 ubuntu 19.10 中安装 saltslack

Git push 说 - 请求的 URL 返回错误 : 403 but with sudo - works

node.js - npm 依赖解析 - 或者 - 帮助!我无法安装 derbyjs

node.js - mongodb 聚合更新集合

java - Spring Boot项目中在多个数据库中执行搜索操作

javascript - 注销 npm 的 GitHub Packages

angularjs - 如何使用 npm install 解决隧道套接字错误?

mongodb - 从 mongo 返回数据表的正确方法

javascript - 使用 mongoose 和 node.js 在 mongoDB 中插入文档时遇到问题