簡體   English   中英

firebase-tools 錯誤:EACCES:權限被拒絕

[英]firebase-tools error: EACCES: permission denied

我正在嘗試部署 Firebase 托管我的 web 應用程序。

在命令行中,當我鍵入firebase deploy時,出現以下錯誤。

注意: firebase deploy只是一個例子。 所有firebase命令都會出現相同的錯誤。 (例如, firebase --helpfirebase -vfirebase loginfirebase logout等)

錯誤

/usr/local/lib/node_modules/firebase-tools/node_modules/configstore/index.js:53 拋出錯誤; ^

錯誤:EACCES:權限被拒絕,打開“/Users/mowzer/.config/configstore/update-notifier-firebase-tools.json”您無權訪問此文件。

出錯時(本機)
在 Object.fs.openSync (fs.js:549:18)
在 Object.fs.readFileSync (fs.js:397:15)
在 Object.create.all.get (/usr/local/lib/node_modules/firebase-tools/node_modules/configstore/index.js:34:26)
在 Object.Configstore (/usr/local/lib/node_modules/firebase-tools/node_modules/configstore/index.js:27:44)
在新的 UpdateNotifier (/usr/local/lib/node_modules/firebase-tools/node_modules/update-notifier/index.js:34:17)
在 module.exports (/usr/local/lib/node_modules/firebase-tools/node_modules/update-notifier/index.js:123:23)
在 Object。(/usr/local/lib/node_modules/firebase-tools/bin/firebase:5:48)
在 Module._compile (module.js:409:26)
在 Object.Module._extensions..js (module.js:416:10)

到目前為止,我嘗試過的所有操作(包括每條 CLI firebase指令)都因無法訪問而拒絕我。

我能做什么? 我應該嘗試什么?

(我在 Mac OSX Yosemite v10.10.5 和 firebase-tools v3.0.3 上)

編輯:當我執行sudo firebase deploy時,出現以下錯誤。

錯誤:輸入的憑據不正確。

我嘗試了以下解決方案。

我嘗試刪除問題文件,然后重新安裝firebase-tools

終端.sh
 cd cd.config/configstore # Delete problematic files rm firebase-tools.json override rw------- root/staff for firebase-tools.json? y rm update-notifier-firebase-tools.json override rw------- root/staff for update-notifier-firebase-tools.json? y # Reinstall firebase-tools cd sudo npm install -g firebase-tools

然后...

 cd path/to/directory cd firebase deploy

現在此文件生成錯誤:

/usr/local/lib/node_modules/firebase-tools/node_modules/configstore/index.js:53

cd /usr/local/lib/node_modules/firebase-tools/node_modules/configstore

我通過在命令行開頭添加sudo來修復它!

這看起來像是您安裝了 npm 的模塊的權限問題。 這是很多開發人員遇到的問題,npm 實際上有 一些關於如何解決它的文檔 一旦你完成了,再試一次(你可能需要重新安裝firebase-tools ),一切都會好起來的。

在命令之前添加sudo它應該可以工作

sudo npm -g i firebase-tools

將更多細節擴展到@jacobawenger 提供的解決方案:

最強大的解決方案是安裝 Homebrew 並讓 Homebrew 為您管理 npm 包安裝

終端.sh
 # EACCESS error reference: https://docs.npmjs.com/getting-started/fixing-npm-permissions # Install Homebrew # Reference: brew.sh # Ensures NPM is installed properly to avoid EACCESS errors /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" # Install npm # Reference: brew.sh brew install node # Install firebase-tools npm install -g firebase-tools # Non-recurring task # Also updates to newest version (see notice)

我有同樣的問題,我通過對configstore目錄中的所有文件執行chmod 755來修復它

您可以嘗試使用--unsafe-perm標志。 像這樣:

sudo npm install -g firebase-tools --unsafe-perm

嘗試運行命令

蘇根

如果您使用的是 ubuntu。 對我來說,只是使用 sudo,沒有用。 我正在使用 Ubuntu 18.xx,我正在嘗試通過 npm 安裝 firebase

簡單的方法:

備份您的計算機。

如果你有權限問題首先運行這個

 sudo chown -R $USER /usr/local/lib/node_modules

然后是第二

1)-  mkdir ~/.npm-global
2)-  npm config set prefix '~/.npm-global'
3)-  export PATH=~/.npm-global/bin:$PATH
4)-  source ~/.profile
5)-  npm install -g jshint
6)-  NPM_CONFIG_PREFIX=~/.npm-global

對我有用的基本上是使用節點版本管理器重新安裝節點。 為此,您只需以這種方式安裝最新的節點 js 版本

就我而言,在此回復時,Node JS 的 LTS 版本是 v14.17.0,因此nvm use 14.17.0現在嘗試重新運行構建。

我有同樣的問題,我使用這個命令( curl -sL firebase.tools | upgrade=true bash )修復了它

我最近遇到了同樣的問題。 運行這個命令為我解決了這個問題

sudo chown -R $USER ~/.config/configstore

有信息解釋了為什么 sudo 命令會有所不同,通常,當我們在終端模式下調用命令時,我們不會被識別為計算機管理員,而某些命令僅供管理員使用。 sudo 命令使終端命令能夠以管理員身份執行。 您可以在此處閱讀有關 sudo 命令的信息:)

感謝您為解決此問題所做的貢獻。

暫無
暫無

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

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