簡體   English   中英

錯誤:EACCES:權限被拒絕,mkdir '/usr/local/lib/node_modules/node-sass/build'

[英]Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/node-sass/build'

我正在嘗試運行 Angular 應用程序。 我執行ng serve命令,但隨后顯示:

錯誤:找不到模塊“node-sass”

解決方案:

您需要更改文件夾node_modules的所有權,因為您使用sudo npm install -g node-sass ,所以它的所有權設置為 root。

要將所有權更改為當前用戶作為組 -

sudo chown -R root:$(whoami) /usr/local/lib/node_modules/

sudo chmod -R 775 /usr/local/lib/node_modules/

並且永遠不要將sudo用於與npm相關的查詢。

運行此命令

sudo npm install -g <ModuleName> --unsafe-perm=true --allow-root

嘗試這個

sudo npm install -g --unsafe-perm node-sass

或這個

sudo npm install -g --unsafe-perm --verbose @angular/cli

我在Ionic工作並遇到了這個問題,所以我通過移動一個文件夾並運行以下命令來解決這個問題:

sudo chmod -R 777 project-directory

在此之后:

npm install node-sass --save

這是由於用戶的許可。 您運行npm install命令的用戶可能沒有權限。 所以你得到了錯誤。

對於該用戶,只需授予該項目文件夾的權限。 Mac中,使用以下步驟並授予用戶對該項目文件夾的讀取和寫入權限

  • 在 Mac 上,選擇磁盤、文件夾或文件,然后選擇菜單FileGet Info

  • 如果共享和權限中的信息不可見,請單擊箭頭。

  • 如果右下角的鎖被鎖定,單擊它以解鎖“獲取信息”選項,然后輸入管理員名稱和密碼。

  • 單擊名稱列中的用戶或組,然后從彈出菜單中選擇權限設置。

    • 讀寫:允許用戶打開項目並進行更改。

    • 只讀:這允許用戶打開項目但不能更改其內容。

    • 只寫(投遞箱):使文件夾成為投遞箱。 用戶可以將項目復制到投遞箱,但不能將其打開。 只有保管箱的所有者才能打開它。

    • 無權訪問:阻止對該項目的所有訪問權。

這幫助我解決了問題。

這對我有用 -

sudo chown -R `whoami` ~/.npm
sudo chown -R `whoami` /usr/local/lib/node_modules

如果您尚未添加 Node.js pakage.json ,請嘗試運行node init 如果你已經有了這個, npm install node-sass

如果兩者都存在並且您使用的是Ubuntu ,請嘗試使用chmod -R <path to node module>更改文件夾的權限。

試試這個: npm install node-sass@version

如果你想要最新的,那么試試npm install node-sass

如果您遇到訪問問題,那么:

  1. Windows:管理員模式下的命令提示符,然后運行上面的。

  2. 蘋果電腦:

     sudo npm install node-sass

參考

確保您不在目錄或其他位置。 你需要回到根目錄。

使用此命令

cd ..
cd ~

您當前的位置應如下所示:

~$

在此之后,運行命令來創建一個項目。

你需要在你的shell中使用“root”用戶,

使用此命令:

須藤蘇-

那么你應該輸入你的密碼

然后嘗試安裝該軟件包,我認為它可以與您嘗試全局安裝的任何軟件包一起使用

在這個網站上對我有幫助的更多信息

http://www.dark-hamster.com/programming/how-to-solve-error-message-eacces-permission-denied-in-nodejs-application/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM