macOS的權限問題

前言

  • 開發ionic項目要打包ios App必須在macOS系統上進行
  • 在執行ionic命令的時候,總是需要在命令前面加上sudo或執行sudo -s獲取到最高權限才能進行,否則報錯,說是沒有權限
  • 接下來就說說如何避免權限問題

問題重現

首先說明一下,我的mac電腦的用戶名是kit-mac,我的app名稱是care_elderly

  • 如下圖執行ionic serve報錯,說是權限問題

    問題重現1

  • 執行ionic platform add ios生成platforms文件夾帶個小鎖圖標

    問題重現2

  • 以上兩個問題都是因為當前用戶(kit-mac)沒有足夠的權限導致的.當然還有很多因為權限導致的問題......

確定問題

  • 如下圖進入到當前用戶目錄下,也就是桌面目錄(Desktop)的上一個目錄.

注意:返回上一個目錄命令是:cd空格..
cd ..

  • 執行ls -la查看當前目錄下的所有目錄(包括隱藏目錄)的詳情,發現.ionic目錄的所屬權限是root(最高權限),這就是導致上面權限問題的根源了

你的用戶目錄下可能有很多目錄所屬權限是root

解決權限問題

  • 在用戶目錄(kit-mac)下執行sudo -s,輸入密碼獲得root權限
  • 然后執行命令chown -R kit-mac .把當前目錄下所有文件夾的權限分配到kit-mac用戶下,注意不要忘記命令后面還有個點,這個命令大概用時2分鐘

也可以執行chown -R kit-mac .ionic.ionic目錄的權限分配到kit-mac下
注意把kit-mac改成你的用戶名

  • 最后在執行ls -la查看并確定.ionic的權限已經分配到kit-mac目錄下,如下圖

驗證

  • 如下圖在kit-mac用戶下執行ionic serve已經沒有報錯,添加的platforms目錄也沒有小鎖圖標了

常用命令

  • cd空格點點返回到上級目錄
    cd ..

  • 返回到當前根目錄
    cd

  • 查看當前到底在哪個目錄
    pwd

  • 查看當前目錄所有文件夾列表詳情(包括隱藏的目錄)
    ls -la

  • 切換到root權限(超級管理員)
    sudo -s

  • 在當前文件夾,使用sudo - s切換到root權限,執行下面命令,把當前文件夾下所有文件夾的所屬權更改到kit-mac用戶下
    chown -R kit-mac .

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容