无法初始化React项目,npm操作报EACCES权限错误如何解决
解决方案
- 首先修正npm的全局路径配置,避免访问需要root权限的/root目录:
执行以下命令创建当前用户专属的npm全局安装目录和缓存目录:
执行命令修改npm默认配置,指向新创建的目录:mkdir -p ~/.npm-global ~/.npm-cachenpm config set prefix '~/.npm-global' npm config set cache '~/.npm-cache' - 把npm全局命令的执行路径加入系统环境变量:
如果你使用bash终端,执行:
如果你使用zsh终端,执行:echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc source ~/.bashrcecho 'export PATH=~/.npm-global/bin:$PATH' >> ~/.zshrc source ~/.zshrc - 卸载之前安装在root权限下的全局create-react-app:
sudo npm uninstall -g create-react-app - 用当前用户重新安装全局create-react-app(无需加sudo):
npm install -g create-react-app - 测试项目创建:
进入你有读写权限的目录(比如/home/tiffane/Documents/Visi),执行创建命令即可:
也可以不用全局安装,直接用npx执行创建:create-react-app clientnpx create-react-app client
补充说明:之前修改/root/.npm所有权的命令无效,是因为/root目录默认只有root用户有权限访问,哪怕修改了子目录权限,普通用户依然无法进入上层的/root目录,将npm的缓存、全局包路径修改到当前用户的家目录下是最稳妥的解决方案,也不会破坏系统目录的权限配置。
内容的提问来源于stack exchange,提问作者Dev Beginner
相关产品推荐
相关产品推荐

