Linux自动挂载额外硬盘后Git仓库可疑所有权错误咨询
Git可疑所有权错误的解决办法
错误原因
Git 2.35版本之后新增了仓库所有权安全检查机制,防止用户意外访问不属于自己的仓库。你把额外硬盘挂载到Home目录下的自建文件夹后出现这个错误,大概率是以下原因:
- 如果挂载的是NTFS这类不支持Linux权限模型的文件系统,即便用
chown命令修改所有权也不会生效,Git依然识别不到你是仓库的合法所有者; - 挂载时的权限参数设置问题,导致Git认为当前用户对仓库目录没有合法所有权。
解决方法
方法一:修正挂载权限(根治方案)
如果挂载的是NTFS文件系统,直接修改挂载参数让文件默认属于你的用户:
- 用以下命令查看你的用户ID和组ID:
id -u # 输出用户ID,比如1000 id -g # 输出组ID,比如1000 - 编辑
/etc/fstab文件(需要sudo权限),找到对应额外硬盘的挂载行,在defaults后添加uid=你的用户ID,gid=你的组ID,示例:# 原挂载行 /dev/sdb1 /home/my-name/folder ntfs defaults 0 0 # 修改后 /dev/sdb1 /home/my-name/folder ntfs defaults,uid=1000,gid=1000 0 0 - 执行以下命令重新挂载硬盘:
sudo mount -a
之后Git就能正常识别你是仓库所有者,不会再报错。
方法二:添加Git安全目录(快速解决)
如果不想修改挂载参数,或者文件系统本身支持权限但chown无效,执行git config --global --add safe.directory /home/my-name/folder/sub-folder/sub-folder1完全安全——这个命令只是告诉Git:这个目录是你信任的合法仓库目录,不会引入任何安全风险,因为这是你自己的仓库。
如果该挂载目录下有多个Git仓库,还可以用通配符批量添加(你的Git 2.42.0版本支持):
git config --global --add safe.directory /home/my-name/folder/**
内容的提问来源于stack exchange,提问作者Avijit Dey
相关产品推荐
相关产品推荐

