macOS的权限问题

前言

  • 开发ionic项目要打包ios App必须在macOS系统上进行
  • 在执行ionic命令的时候,总是需要在命令前面加上sudo或执行sudo -s获取到最高权限才能进行,否则报错,说是没有权限
  • 接下来就说说如何避免权限问题

问题重现

首先说明一下,我的mac电脑的用户名是kit-mac,我的app名称是care_elderly

  • 如下图执行ionic serve报错,说是权限问题

    macOS的权限问题_第1张图片
    问题重现1

  • 执行ionic platform add ios生成platforms文件夹带个小锁图标

    macOS的权限问题_第2张图片
    问题重现2

  • 以上两个问题都是因为当前用户(kit-mac)没有足够的权限导致的.当然还有很多因为权限导致的问题......

确定问题

  • 如下图进入到当前用户目录下,也就是桌面目录(Desktop)的上一个目录.

注意:返回上一个目录命令是:cd空格..
cd ..

  • 执行ls -la查看当前目录下的所有目录(包括隐藏目录)的详情,发现.ionic目录的所属权限是root(最高权限),这就是导致上面权限问题的根源了

你的用户目录下可能有很多目录所属权限是root

  • macOS的权限问题_第3张图片

解决权限问题

  • 在用户目录(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目录下,如下图
    macOS的权限问题_第4张图片

验证

  • 如下图在kit-mac用户下执行ionic serve已经没有报错,添加的platforms目录也没有小锁图标了
    macOS的权限问题_第5张图片

    macOS的权限问题_第6张图片

常用命令

  • cd空格点点返回到上级目录
    cd ..

  • 返回到当前根目录
    cd

  • 查看当前到底在哪个目录
    pwd

  • 查看当前目录所有文件夹列表详情(包括隐藏的目录)
    ls -la

  • 切换到root权限(超级管理员)
    sudo -s

  • 在当前文件夹,使用sudo - s切换到root权限,执行下面命令,把当前文件夹下所有文件夹的所属权更改到kit-mac用户下
    chown -R kit-mac .

你可能感兴趣的:(macOS的权限问题)