在我的 Mac 上,由于文件权限不正确,我无法使用 git(以及 Heroku)。root 用户可以正常访问它们,但我的用户却不能,尽管我拥有它并且它位于我的主目录中。
$ ls -al
表明我拥有该文件的所有权并且只具有读写权限:
drw------- 7 george staff 238 27 Aug 16:53 .ssh
虽然没有 ACL。
然而:
$ chmod -R 0600 /Users/george/.ssh
chmod: /Users/george/.ssh/github_rsa: Permission denied
chmod: /Users/george/.ssh/github_rsa.pub: Permission denied
chmod: /Users/george/.ssh/id_rsa: Permission denied
chmod: /Users/george/.ssh/id_rsa.pub: Permission denied
chmod: /Users/george/.ssh/known_hosts: Permission denied
chmod: /Users/george/.ssh: Permission denied
我已经尝试了所有能想到的方法,chown
以及chmod
(chmod -N
删除任何 ACL)。但我仍然无法读取或写入它们,git 也无法读取或写入它们。
欢迎任何解决方案!
答案1
要访问您想要访问的文件夹,您需要x
该目录的权限(执行)。
因此,如果你使用
chmod u+x .ssh
应该可以访问您的文件夹。
只有当您拥有适当的执行权限时,您才可以进入该文件夹。
答案2
我已成功删除 SSH 文件夹并重新生成密钥。我不知道 .ssh 文件夹是怎么进来的,但现在我可以重新使用 git 了。