Linux 无法使用任何git命令:拒绝访问.gitconfig文件错误消息

Linux 无法使用任何git命令:拒绝访问.gitconfig文件错误消息,linux,git,Linux,Git,我很好地使用了我的git,但当我试图使用git状态时,它突然显示了我的能力 fatal: unable to access '/home/username/.gitconfig': Bad message 我最初认为这是因为我的git config文件在venv中,但它没有问题,正如错误所示,这是因为我的用户目录中的.gitconfig文件 首先,正如我在互联网上发现的那样,我使用了git config--global user.name“NewUser”和git config--global

我很好地使用了我的git,但当我试图使用
git状态时,它突然显示了我的能力

fatal: unable to access '/home/username/.gitconfig': Bad message
我最初认为这是因为我的git config文件在venv中,但它没有问题,正如错误所示,这是因为我的用户目录中的
.gitconfig
文件

首先,正如我在互联网上发现的那样,我使用了
git config--global user.name“NewUser”
git config--global user.emailnewuser@example.com
但它的结局和以前一样

在我关闭并再次打开我的VScode后,一个Git扩展给了我一个警告,它无法在系统上检测到任何Git exe文件,我需要再次安装Git
当我检查git--version
时,它又给了我同样的错误

chmod: cannot access '.gitconfig': Bad messag
从字面上说,我不能使用任何
git
命令

然后我试着自己写配置,当我在终端上用nano打开它时,里面什么都没有!当我想保存更改时,它给出了另一个错误

[ Error writing .gitconfig: Bad message ]
然后我查看了文件的权限,它只是问号,而不是普通权限

然后我试图通过
chmod
更改权限,但它再次给出拒绝访问错误

chmod: cannot access '.gitconfig': Bad messag
然后我试着把它移走,但它也不能被移走

rm: cannot remove '.gitconfig': Bad message
我安装和删除了几次git!它也不起作用

我使用的是manjaro 20.2

任何想法都将不胜感激

已更新

这是dmesg中的错误
到处都是这些错误

也许这会有所帮助:

sudo chown username.gitconfig


正如这里提到的,ls输出中的问号只是表示它无法stat()目录项。
这可能是磁盘错误,也可能是文件系统损坏:对于ArchLinux发行版,请参阅以揭示更多详细信息

检查您所在的分区(
df-h.
),看看这是否是一个分区

如果您看到一堆消息,如:

EXT4-fs error (device nvme0n1p2): ext4_lookup:1574: inode #4833958: comm ls: iget: checksum invalid
您应该从外部会话(意思是a)中查看分区,如下所示:

  • 重新启动到实时USB
  • 安装了一个辅助驱动器
  • fsck.ext4-p[我的根设备]
  • fsck.ext4-z[撤消辅助驱动器上的文件][我的根设备]
  • 逐步解决所有错误,并允许fsck修复这些错误
  • 重新启动到系统并选择重新安装所有软件包(请参阅下面的脚本)
  • 重新启动
该公司确认:

因为我正处于Linux的第一步,所以我的发行版总是有一个实时启动

所以它很快,当我第一次使用它“
fsck
”时,它说我不能使用任何
-p
-z
,因为有一些错误,我必须手动操作,所以我只是键入
y
y

当我再次开机时,它工作了


如果使用
rm
chmod
会给您带来
坏消息
,那么问题似乎不仅在于git,而且在于更大范围内。我猜可能是硬盘坏了?还有其他命令可用吗?你能打开其他终端吗?系统重启是否有帮助?能否尝试将
.gitconfig
的权限列为root用户?例如,
sudols-l~/.gitconfig
@mnestorov我不确定是否有更大规模的问题!因为我没有遇到任何其他部件或任何命令的问题,但最近我收到了一条关于zsh坏历史或Coruppeted历史的消息,我修复了它,从那时起nothing@CH.我在帖子中加入了,但我会用图片更新!对于权限,它只显示一堆??。只不过是个问题mak@amirmohammadian是的,我看到了发布的权限,但是当以root用户身份运行时,它们是否也会显示问号?您可能没有权限以当前用户的身份读取
.gitconfig
的权限。我也使用了这个!它不起作用。我的/var/log/中没有任何“消息”或“dmesg”!我想应该是吧!但它not@amirmohammadian
dmesg
是一个命令,而不是一个文件()@amirmohammadian manjaro是一个ArchLinux发行版(),因此命令不同:我编辑了我的答案。非常感谢!我显然有错误,我会更新post@amirmohammadian这看起来像是一个损坏的磁盘。我已经更新了我的答案来解决这个问题。