前言
- 开发ionic项目要打包ios App必须在macOS系统上进行
- 在执行ionic命令的时候,总是需要在命令前面加上
sudo
或执行sudo -s
获取到最高权限才能进行,否则报错,说是没有权限 - 接下来就说说如何避免权限问题
问题重现
首先说明一下,我的mac电脑的用户名是
kit-mac
,我的app名称是care_elderly
-
如下图执行
问题重现1ionic serve
报错,说是权限问题
-
执行
问题重现2ionic platform add ios
生成platforms文件夹带个小锁图标
-
以上两个问题都是因为当前用户(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 .
网友评论