我正在尝试安装 repo 命令,以便可以为我的手机编译 CyanogenMod,但每当我输入命令时:
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
我收到一条错误消息:
bash: /home/r0b458/bin/repo: Permission denied
有人能帮我吗?
答案1
r0b458 是您的用户名吗?我认为不是:因为错误通知可能意味着您不是,并且当将文件放到不属于您的系统中的位置时,您需要使用sudo
。
sudo curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
顺便说一句:当我以 rinzwind 身份登录时,您的命令在我的系统上运行:
rinzwind@schijfwereld:~$ mkdir bin
rinzwind@schijfwereld:~$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 23618 100 23618 0 0 113k 0 --:--:-- --:--:-- --:--:-- 113k
rinzwind@schijfwereld:~$ cd bin
rinzwind@schijfwereld:~/bin$ ls -l
total 24
-rw-r--r-- 1 rinzwind rinzwind 23618 dec 14 21:30 repo
rinzwind@schijfwereld:~/bin$
如果您忘记在命令末尾的 /bin/repo 前面添加 ~,则会出现权限被拒绝的错误。否则,我认为它应该像上面显示的那样工作。
答案2
答案3
如果你检查 的权限/bin/
。那么,你将看到 root 用户可以访问它。
因此,有三种方法可以将文件保存到 bin 目录。
将 /bin/repo 权限设为公开
sudo chmod 777 /bin/repo
#然后你就可以按照你之前做的您可以使用 sudo 命令运行 curl 命令
sudo curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
sudo 以 root 用户身份工作。
以 root 用户身份工作。
sudo su
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
如果目录中没有 repo 目录bin
。那么上述命令可能不起作用。这就是为什么您必须repo
在 中创建一个名为 的目录bin
。
sudo mkdir /bin/repo