-bash: meteor: command not found
我在这里看过几篇有类似问题的帖子.我试过用磁盘工具修复磁盘权限.我试过了:
sudo chown -R $myUsername /usr/local/bin/meteor
我不确定我还能做什么,因为它似乎是一个权限问题.有没有人有什么建议?
可能有用的其他信息:
$sudo which meteor /usr/local/bin/meteor $sudo ls -l /usr/local/bin/meteor -rwxrwxrwx 1 root wheel 3528 Dec 18 23:14 /usr/local/bin/meteor $ls -ld /usr/local/bin drwx------ 6 502 wheel 204 Dec 18 23:14 /usr/local/bin
顺便说一下,ls -l /usr/local / bin / meteor只适用于sudo.
问题变得非常清楚:
> Meteor二进制文件位于/usr/local / bin / meteor中
>您的用户没有权限访问/usr/local / bin目录
要解决的步骤:
>添加基目录的权限:sudo chmod rx /usr/local / bin
>如有必要,将基目录添加到PATH:PATH = $PATH:/usr/local / bin
备查:
>当您收到此类错误时:-bash:XYZ:找不到命令
>要检查的第一件事是找到XYZ的绝对路径,例如/ path / to / XYZ
>尝试使用绝对路径/ path / to / XYZ运行
>如果使用/ path / to / XYZ运行,则给出-bash:/ path / to / XYZ:权限被拒绝意味着您对文件和/或目录的权限有问题:
>您需要对文件本身的读取和执行权限:sudo chmod rx / path / to / XYZ
>您需要对导致文件的所有路径元素的exec权限:sudo chmod x / path / path / to
>修复权限问题后,使用/ path / to / XYZ运行应该有效
>修复权限问题后,如果使用XYZ(没有完整路径)运行仍然不起作用,则表示/ path / to不在PATH上.修复PATH = $PATH:/ path / to
注意:上面的sudo chmod命令为所有用户提供权限(read和exec):owner group other.在OP的情况下(在大多数情况下),这是完全正常的.
在具有更复杂权限设置的情况下,您可能需要更具体,并使用g rx而不是rx.
(作为记录)
如果它适用于sudo,并且没有sudo你得到命令未找到,这意味着meteor在PATH上为root而不是你的用户.要使其适合您的用户,您需要找到meteor的路径并将其添加到用户的PATH中.例如:
>与sudo su成为root用户 –
>找到流星的路径,运行命令:哪个流星
>从root(Control-D)注销以返回给您的用户
>将基目录添加到PATH,例如,如果之前哪个meteor给你/usr/local / bin / meteor,那么执行以下操作:PATH = $PATH:/usr/local / bin
在此之后,它应该与您的用户一起工作.要使其“永久”,请在〜/ .bashrc中添加最后一步.
如果这仍然不起作用,那么您的用户可能没有该文件的执行权限.使用此命令修复此问题:
sudo chmod +x /usr/local/bin/meteor
从您的评论中,您的用户似乎也没有/usr/local / bin目录本身的权限.使用此命令修复此问题:
sudo chmod +rx /usr/local/bin