10

我安装了node.js v0.8.22并尝试在Windows 7 32bit Socket.io安装socket.io连续失败。控制台日志是:

C:\Program Files\nodejs>npm install socket.io
npm http GET https://registry.npmjs.org/socket.io
npm http GET https://registry.npmjs.org/socket.io
npm http 200 https://registry.npmjs.org/socket.io
npm http GET https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
npm http 200 https://registry.npmjs.org/socket.io/-/socket.io-0.9.13.tgz
npm ERR! Error: EPERM, mkdir 'C:\Program Files\nodejs\node_modules\socket.io'
npm ERR!  { [Error: EPERM, mkdir 'C:\Program Files\nodejs\node_modules\socket.io
']
npm ERR!   errno: 50,
npm ERR!   code: 'EPERM',
npm ERR!   path: 'C:\\Program Files\\nodejs\\node_modules\\socket.io',
npm ERR!   fstream_type: 'Directory',
npm ERR!   fstream_path: 'C:\\Program Files\\nodejs\\node_modules\\socket.io',
npm ERR!   fstream_class: 'DirWriter',
npm ERR!   fstream_stack:
npm ERR!    [ 'DirWriter._create (C:\\Program Files\\nodejs\\node_modules\\npm\\
node_modules\\fstream\\lib\\dir-writer.js:36:23)',
npm ERR!      'C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\mkdir
p\\index.js:37:53',
npm ERR!      'Object.oncomplete (fs.js:297:15)' ] }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Windows_NT 6.1.7601
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "socket.io"
npm ERR! cwd C:\Program Files\nodejs
npm ERR! node -v v0.8.21
npm ERR! npm -v 1.2.11
npm ERR! path C:\Program Files\nodejs\node_modules\socket.io
npm ERR! fstream_path C:\Program Files\nodejs\node_modules\socket.io
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code EPERM
npm ERR! errno 50
npm ERR! stack Error: EPERM, mkdir 'C:\Program Files\nodejs\node_modules\socket.
io'
npm ERR! fstream_stack DirWriter._create (C:\Program Files\nodejs\node_modules\n
pm\node_modules\fstream\lib\dir-writer.js:36:23)
npm ERR! fstream_stack C:\Program Files\nodejs\node_modules\npm\node_modules\mkd
irp\index.js:37:53
npm ERR! fstream_stack Object.oncomplete (fs.js:297:15)
npm ERR! Error: EPERM, open 'C:\Program Files\nodejs\npm-debug.log'
npm ERR!  { [Error: EPERM, open 'C:\Program Files\nodejs\npm-debug.log']
npm ERR!   errno: 50,
npm ERR!   code: 'EPERM',
npm ERR!   path: 'C:\\Program Files\\nodejs\\npm-debug.log' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Windows_NT 6.1.7601
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "socket.io"
npm ERR! cwd C:\Program Files\nodejs
npm ERR! node -v v0.8.21
npm ERR! npm -v 1.2.11
npm ERR! path C:\Program Files\nodejs\npm-debug.log
npm ERR! code EPERM
npm ERR! errno 50
npm ERR! stack Error: EPERM, open 'C:\Program Files\nodejs\npm-debug.log'
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Program Files\nodejs\npm-debug.log
npm ERR! not ok code 0

有什么解决方法吗?如何在 Windows 7 32 位上安装 Socket.io?

4

6 回答 6

13

当我尝试运行 npm install 并得到“npm ERR!错误:EPERM,mkdir”时,我将分享在 Windows 上对我有用的东西......

我必须手动授予写入文件夹的权限...

在你的情况下,你需要去

C:\Program Files\nodejs\node_modules\

使用 Windows 资源管理器,右键单击,选择“属性”并转到“安全”选项卡

您会看到很多用户...只需将权限授予您需要的用户,然后再次尝试运行 npm install...

于 2014-05-09T16:17:44.140 回答
12

看起来您需要以管理员权限运行它,尝试以管理员身份运行 CMD(以管理员身份运行),然后npm install socket.io

于 2013-03-07T13:35:53.283 回答
2

我使用 windows powershell(在 win7 上)而不是 vanilla 命令提示符,并且上面的错误消失了。

于 2015-03-10T07:06:51.047 回答
1

谢谢@Griiettner 的指点。如果您通过 gitbash 运行/执行,则授予“C:\Program Files (x86)\Git”文件夹的管理员权限。

与上面相同,使用 Windows 资源管理器,右键单击,选择“属性”并转到“安全”选项卡。

当我使用“npm config set prefix”命令更改配置(遵循此博客http://blog.webbb.be/command-not-found-node-npm/)时,这发生/让我很震惊,但我已经把回到旧位置。使用“npm config set prefix C:/Users/[Username]/AppData/Roaming/npm”。

于 2014-11-04T09:22:33.177 回答
0

我想我会分享一个尚未发布的解决方案:确保您的节点应用程序尚未运行。我在运行 Node 应用程序时尝试删除依赖项 ( npm uninstall mongoose --save) 时遇到了这个问题,这显然不起作用。

于 2014-12-10T16:18:53.053 回答
0

在我的情况下,我对 Babel 有同样的问题,通过全局安装他来解决

于 2016-03-02T05:26:44.577 回答