尽管归我所有,但无权访问 .ssh 文件夹和其中的密钥

gal*_*ite 2 mac ssh filesystems permissions

在我的 Mac 上,由于文件权限不正确,我无法使用 git(以及 Heroku)。root 用户可以很好地访问它们,但我的用户不能,尽管我拥有它并且它在我的主目录中。

$ ls -al
Run Code Online (Sandbox Code Playgroud)

显示我拥有该文件并且只有读写权限:

drw-------    7 george  staff     238 27 Aug 16:53 .ssh
Run Code Online (Sandbox Code Playgroud)

虽然没有 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
Run Code Online (Sandbox Code Playgroud)

我已经尝试了我能想到的所有方法chownchmod以及chmod -N(删除任何 ACL)。但是我仍然无法读取或写入它们,也无法使用 git。

欢迎任何解决方案!

Uwe*_*nus 6

要访问您想要访问的文件夹,您需要x该目录的权限(执行)。

所以如果你用

chmod u+x .ssh
Run Code Online (Sandbox Code Playgroud)

应该可以访问您的文件夹。

只有当您具有相应的执行权限时,才能更改到文件夹。