我试图在由Node.js创建的项目中链接由我创建的两个模块,并且一如既往地做到:npm link .
在要调用的模块内部,从另一个调用package.json,它给了我以下错误:
npm ERR! path /home/miguel/cursos/cursoJs-Node/proyectoMichaelgram/michaelgram-db
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '/home/miguel/cursos/cursoJs-Node/proyectoMichaelgram/michaelgram-db' -> '/usr/lib/node_modules/michaelgram-db'
npm ERR! { Error: EACCES: permission denied, symlink '/home/miguel/cursos/cursoJs-Node/proyectoMichaelgram/michaelgram-db' -> '/usr/lib/node_modules/michaelgram-db'
npm ERR! stack: 'Error: EACCES: permission denied, symlink \'/home/miguel/cursos/cursoJs-Node/proyectoMichaelgram/michaelgram-db\' -> \'/usr/lib/node_modules/michaelgram-db\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '/home/miguel/cursos/cursoJs-Node/proyectoMichaelgram/michaelgram-db',
npm ERR! dest: '/usr/lib/node_modules/michaelgram-db' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).
npm ERR! A complete log of this run can be found in:
npm ERR! /home/miguel/.npm/_logs/2018-07-17T12_02_46_081Z-debug.log
我应该如何全局安装Node?
我看过那些文件,它们是由root拥有的。我安装了新版本的Ubuntu 18.04,安装了节点。安装节点时可能出现问题吗?我不记得我是怎么做的,但是在以前的情况下我没有这个权限问题。我不知道是否应该卸载node和npm,我必须以一种可以从我执行的任何项目中访问的方式来安装它。我已经给了另一个文件问题,并且我使用sudo
进行了改正,但这似乎不是一种实践,因为它不应该引起问题,也不要给它们节点。您建议我做什么以解决问题并在不使用sudo
的情况下访问node_modules?也许我应该以其他方式卸载并安装它?谢谢,希望您能理解我的需求,请原谅语法,但我必须使用翻译器。谢谢。
答案 0 :(得分:1)
我会建议您使用npm文档中给出的2种明确方法
1)使用版本管理器重新安装npm(推荐)
2)手动更改npm的默认目录。
请访问https://docs.npmjs.com/getting-started/fixing-npm-permissions