关于Error:EPERM:operation not permitted,mkdir...的几种解决办法对比
作者:孤城浪人
问题描述
nodeJs安装好后,下载的插件文件和缓存文件默认保存在C:\Users\admin\AppData\Roaming
路径下,但是我不想这些文件保存在默认路径下,于是我在终端执行这两句,
配置全局安装插件目录
npm config set prefix “D:\JZT\nodejs”
配置缓存的目录
npm config set cache “D:\JZT\nodejs\npm_cache”
将全局安装的插件文件保存在nodeJs安装目录下。然后在C:\Users\JZT
路径下生成了一个.npmrc文件。用记事本打开,内容如下所示,保存的配置信息。
然后,当我想安装淘宝的镜像源cnpm时,报了这个错,意思是:操作不被允许。百度后发现有三种解决办法,我都尝试了一遍,现将三种方法加以比较
1、简单粗暴的删除C:\Users\JZT下配置文件
这种方法很简单,但是删除配置文件后,你以后下载的全局插件文件和缓存文件依然保存在C:\Users\admin\AppData\Roaming
路径下,显然不是我想要的。
2、使用管理员权限打开终端,再下载
虽然这种方法安装成功,而且在nodeJs安装目录下的node_modules中也出现了cnpm文件
但是,当我在终端用cnpm -v
查看下载的cnpm版本时,终端提示我
不是内部或外部命令,也不是可运行的程序 或批处理文件。
这使我想到可能要增加环境变量,但是由于本人太懒QAQ,就没尝试(小声bb:不要学我),果断去找别的方法,还真让我找到了。
3、改变nodeJs安装目录中nodeJs目录的权限
这个错是因为文件夹权限不够,看到这个,我又去看了看我的nodeJs属性,发现这个目录不允许修改,淦,恍然大悟,原来罪魁祸首在这,因为没有权限,所以在执行操作时导致目录打不开,操作失败,将目录权限修改为可修改后,成功查看到cnpm版本。
ps:修改文件权限方法
右键文件夹,点击属性
点击安全,点击编辑
点击完全控制,确定即可。
至此,问题解决。
总结
到此这篇关于关于Error:EPERM:operation not permitted,mkdir...的几种解决办法对比的文章就介绍到这了,更多相关Error:EPERM:operation not permitted内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!