关于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文件。用记事本打开,内容如下所示,保存的配置信息。

D4B538B1-BB57-247A-C550-4DB08073F102.png

然后,当我想安装淘宝的镜像源cnpm时,报了这个错,意思是:操作不被允许。百度后发现有三种解决办法,我都尝试了一遍,现将三种方法加以比较

1、简单粗暴的删除C:\Users\JZT下配置文件

这种方法很简单,但是删除配置文件后,你以后下载的全局插件文件和缓存文件依然保存在C:\Users\admin\AppData\Roaming路径下,显然不是我想要的。

2、使用管理员权限打开终端,再下载

虽然这种方法安装成功,而且在nodeJs安装目录下的node_modules中也出现了cnpm文件

99F7A4A2-F25C-8313-B94D-287829320E97.png

但是,当我在终端用cnpm -v查看下载的cnpm版本时,终端提示我

不是内部或外部命令,也不是可运行的程序 或批处理文件。

这使我想到可能要增加环境变量,但是由于本人太懒QAQ,就没尝试(小声bb:不要学我),果断去找别的方法,还真让我找到了。

3、改变nodeJs安装目录中nodeJs目录的权限

这个错是因为文件夹权限不够,看到这个,我又去看了看我的nodeJs属性,发现这个目录不允许修改,淦,恍然大悟,原来罪魁祸首在这,因为没有权限,所以在执行操作时导致目录打不开,操作失败,将目录权限修改为可修改后,成功查看到cnpm版本。

9F401CDF-5CFD-1636-A305-40F889167FBC.png

ps:修改文件权限方法

右键文件夹,点击属性

8DA92B56-2999-1F79-1CE6-1C269A230760.png

点击安全,点击编辑

010AAE9E-3C09-98D3-3552-9D471977F43A.png

点击完全控制,确定即可。

3B254513-6B26-B1EA-CB71-AA082E2FB328.png

至此,问题解决。

收藏 (0)
评论列表
正在载入评论列表...
我是有底线的