解决git ssh -T git@github可以成功但无法clone
git时可以链接成功,
ssh -T git@github
但是clone时出错,提示无权限,如下:
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
反复重新配置ssh后无果,最后竟然发现是文件夹所有者和所有组的问题:
>ls -ll
drwxr-xr-x 4 root root 4096 Jul 17 15:07 wtz
第一个root表示所有者,第二个表示所有组。
- 所有者(Owner):
文件的所有者是创建该文件的用户。当你使用命令创建文件时,文件的所有者通常是当前登录用户。所有者对该文件拥有特权和控制权,可以更改文件的权限、修改内容或删除文件。
- 所属组(Group):
文件的所属组是一个用户组,通常由系统管理员创建。当文件创建时,它的所属组通常会设置为当前用户的默认组。所属组的成员具有特定的权限来访问该文件。系统管理员可以通过将用户添加到特定的用户组来管理文件的访问权限。
通过以下两条代码修改权限,再次clone,问题解决。
将文件夹 "wtz" 的所有者更改为 "qs" 用户(用户名为 "qs")
sudo chown qs wtz
将文件夹 "wtz" 的所属组更改为 "qs" 组(组名为 "qs")
sudo chown :qs wtz