首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误: EACCES:权限被拒绝,取消链接-运行$离子型启动时

错误: EACCES:权限被拒绝,取消链接-运行$离子型启动时
EN

Stack Overflow用户
提问于 2018-05-11 17:38:56
回答 1查看 10.2K关注 0票数 2

我刚刚从离子开始,现在我正面临一个阻滞剂在一个非常早期的步骤运行离子。

我正在使用操作系统: Linux 18,肉桂64位

节点版本: v10.0.0 (从无根访问的NVM安装)

NPM版本: 5.6.0 (安装自无根访问的NVM )

我正在学习本教程:https://coursetro.com/posts/code/36/Installing-Ionic-2-&-Starting-a-Project

我通过以下方式安装离子:

代码语言:javascript
复制
$ npm install -g ionic cordova

它返回以下内容:

代码语言:javascript
复制
home/brian/.nvm/versions/node/v10.0.0/bin/cordova -> /home/brian/.nvm/versions/node/v10.0.0/lib/node_modules/cordova/bin/cordova
/home/brian/.nvm/versions/node/v10.0.0/bin/ionic -> /home/brian/.nvm/versions/node/v10.0.0/lib/node_modules/ionic/bin/ionic
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.3 (node_modules/ionic/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted {“os”:“darwin”,“arch”:“any”} (current: {“os”:“linux”,“arch”:“x64”})

    cordova@8.0.0
    ionic@3.20.0
    added 677 packages in 16.679s

然后,我检查了cordova和离子型-v是否由$离子型安装,然后返回

代码语言:javascript
复制
3.20.0

我想这意味着尽管发出警告消息,离子型设备还是安装好了。

然后,我尝试运行教程的下一步:

代码语言:javascript
复制
$ ionic start firstProject blank

然后出现这个错误:

代码语言:javascript
复制
? The directory firstProject contains file(s) that could conflict. Would you like to overwrite the directory with this new project? Yes
:heavy_multiplication_x: Creating directory ./firstProject - failed!
Error: EACCES: permission denied, unlink ‘/home/brian/firstProject/.editorconfig’

我试图通过以下方式批准这条道路:

代码语言:javascript
复制
$ sudo chown -R brian /home/brian/firstProject/.editorconfig

但是,当我运行$离子型启动firstProject空白时,同样的错误仍然存在。

我还尝试使用根$ sudo离子启动firstProject空白运行该命令,但它返回

代码语言:javascript
复制
sudo: ionic: command not found.

我尝试过在没有全局属性的情况下安装离子型的,但结果是它无法安装,因为npm警告可选跳过可选依赖项: fsevents@1.2.3

有人能解决这类问题吗?任何帮助都将不胜感激。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-05-12 17:31:19

谢谢你的回应,尼丁,我刚刚解决了这个问题。

我意识到firstProject文件夹被锁定了。所以我的建议是,如果您想使用节点和npm,最好使用NVM来安装它,这样您就不会使用根访问来安装它。

让我告诉你如何重现这个问题。

因此,在实际从NVM (Node )安装Node和NPM之前,首先使用以下命令(我跟踪了这个参考资料)使用sudo (根访问)从包管理器安装它:

代码语言:javascript
复制
$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - 
$ sudo apt-get install -y nodejs

这将导致我下面的npm命令应该使用sudo (用于根访问)。

所以,当我运行这个命令(遵循本教程)时:

代码语言:javascript
复制
$ npm install -g ionic cordova

我无法安装它:

代码语言:javascript
复制
npm WARN checkPermissions Missing write access to /usr/lib/node_modules

我需要使用root访问来安装它:

代码语言:javascript
复制
$ sudo npm install -g ionic cordova

这使得离子和科多瓦总是运行在根访问--我认为你应该避免它!

因此,从这里继续,在本教程之后运行下一个命令:

代码语言:javascript
复制
$ ionic start firstProject blank

这样,文件夹/firstProject/就需要根访问(请参阅附加的图像)。继续使用sudo并不是一个好主意,因为有时离子在运行它的过程时运行另一个命令。文件夹锁定

总之,使用sudo安装Node和NPM并不是一个好主意。我不知道是否有一个好的理由使用sudo,如果你知道为什么,请回复评论。

所以跟着我的案子,

我实际上做得很正确:

  1. 从NVM安装Node和NPM
  2. 安装离子和科多瓦没有sudo (根访问)
  3. 只需运行离子启动命令,例如离子启动firstProject空;,但首先要确保没有名为 (firstProject)的现有锁定文件夹。

我希望它能帮助你解决类似的问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50297528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档