Не могу использовать любую команду git: доступ запрещен .gitconfig файл плохое сообщение

Я отлично использовал свой git, но внезапно, когда я попытался использовать git status, он показал мне

fatal: unable to access '/home/username/.gitconfig': Bad message

Сначала я подумал, что это из-за того, что мой файл конфигурации git находится в venv, но все было в порядке, и, как показывает ошибка, это из-за файла .gitconfig в моем пользовательском каталоге!

В первую очередь из того, что я нашел в Интернете, я использовал git config --global user.name "NewUser" и git config --global user.email [email protected] но это заканчивается той же ошибкой, что и раньше.

После того, как я закрыл и снова открыл свой VScode, расширение Git выдало мне предупреждение о том, что оно не может обнаружить какой-либо git exe-файл в системе, и мне нужно снова установить Git! И когда я проверил git --version, он снова выдал ту же ошибку!

Буквально я не могу использовать любую команду git!

Затем я попытался написать конфигурацию самостоятельно, и когда я открыл ее в терминале с помощью nano, в ней ничего не было! и когда я хотел сохранить изменения, он выдал еще одну ошибку, поскольку

[ Error writing .gitconfig: Bad message ]

Затем я посмотрел на права доступа к файлу, и это был просто вопросительный знак вместо обычных разрешений.

Затем я попытался изменить разрешение с помощью chmod, но это снова выдало ошибку отказа в доступе!

chmod: cannot access '.gitconfig': Bad messag

Затем я попытался удалить его, но он тоже не может быть удален!

rm: cannot remove '.gitconfig': Bad message

Я устанавливал и удалял git несколько раз! это тоже не сработало.

Я использую манджаро 20.2

Любая идея будет оценена!

ОБНОВЛЕНО

Это ошибки для dmesg
Куча этих ошибок тут и там

Если использование rm и chmod дает вам Bad message, то проблема, похоже, не только в git, но и в более широком масштабе. Я предполагаю, что может быть поврежден жесткий диск? Другие команды работают? Можете ли вы открыть другие терминалы? Помогла ли перезагрузка системы?

mnestorov 23.12.2020 08:26

Можете ли вы попробовать перечислить разрешения .gitconfig как root? Например, sudo ls -l ~/.gitconfig.

CH. 23.12.2020 08:37

@mnestorov Я не уверен в более масштабной проблеме! потому что я не сталкиваюсь с какими-либо проблемами с другими частями или какой-либо командой, но недавно у меня было сообщение о плохой истории zsh или поврежденной истории, которую я исправил, и с тех пор ничего

amir mohammadian 23.12.2020 08:59

@Ч. Я включил в пост, но я обновлю с изображением! для разрешений он просто показывает кучу ???? ?? ??? ???. не более чем вопросительный знак

amir mohammadian 23.12.2020 09:01

@amirmohammadian Да, я видел опубликованные разрешения, но они также показывают вопросительные знаки при запуске от имени пользователя root? Возможно, у вас нет прав на чтение разрешений .gitconfig по какой-то причине в качестве вашего текущего пользователя.

CH. 23.12.2020 09:03

@amirmohammadian А ты не мог бы попробовать ls -ld .gitconfig? Возможно, по какой-то причине .gitconfig стал каталогом, для которого у вас нет прав на выполнение.

CH. 23.12.2020 09:04

@Ч. может дело в нем! Я не уверен, но что я могу сделать больше, чем использовать sudo! если это проблема пользователя, почему не какие-либо другие файлы и из-за того, что я не работаю с chmod, я не знаю, как еще я могу это исправить!

amir mohammadian 23.12.2020 09:07

Пахнет аппаратной проблемой

Basile Starynkevitch 23.12.2020 09:07

@CH.about "ls -ld .gitconfig" показывает ту же самую ошибку недоступности неверного сообщения!

amir mohammadian 23.12.2020 09:08

@BasileStarynkevitch правда? любой совет?

amir mohammadian 23.12.2020 09:09

@amirmohammadian Можете ли вы получить доступ ко всему остальному в вашем домашнем каталоге без проблем с разрешениями?

CH. 23.12.2020 09:09

Попробуйте бежать fsck ; см. fsck(8) но будьте осторожны

Basile Starynkevitch 23.12.2020 09:10
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
12
252
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Возможно, это поможет:

имя пользователя sudo chown .gitconfig

Ответ принят как подходящий

Как упоминалось здесь, вопросительные знаки в выводе ls просто указывают на то, что он не может stat() запись в каталоге.
Это может быть ошибка диска или, возможно, повреждение файловой системы: для дистрибутива ArchLinux см. sudo journalctl --since=today или, при последней загрузке, sudo journalctl -b -1, чтобы раскрыть дополнительные подробности.

Проверьте раздел, в котором вы находитесь (df -h .), и посмотрите, не является ли это проблемой монтирования файловой системы.

Если вы видите кучу сообщений типа:

EXT4-fs error (device nvme0n1p2): ext4_lookup:1574: inode #4833958: comm ls: iget: checksum invalid

Вы должны посмотреть на свой раздел из внешнего сеанса (имеется в виду живая сессия с USB-диска ), как здесь:

  • Перезагрузился в живой USB
  • Подключил второй диск.
  • fsck.ext4 -p [my root device]
  • fsck.ext4 -z [undo file on secondary drive] [my root device]
  • Выполнил все ошибки и разрешил fsck их исправить.
  • Перезагрузился в систему и решил переустановить все пакеты (см. сценарий ниже)
  • Перезагрузился снова...

ОП амир-мухаммадиан подтверждает в комментариях:

Поскольку я делаю первые шаги в Linux, у меня всегда есть живая загрузка моего дистрибутива.

Так что это было быстро, и когда я сначала использовал его «fsck», он сказал, что я не могу использовать ни -p, ни -z из-за некоторых ошибок, и мне нужно сделать это вручную, поэтому я просто набирал y и y и y!
И когда я загружаюсь снова, это сработало!

в моем /var/log/ нет никаких "сообщений" или "dmesg"! Я думаю, это должно быть! но это не

amir mohammadian 23.12.2020 09:34

@amirmohammadian dmesg — это команда, а не файл (man7.org/linux/man-pages/man1/dmesg.1.html)

VonC 23.12.2020 09:34

@amirmohammadian manjaro — это дистрибутив ArchLinux (itsfoss.com/manjaro-vs-arch-linux), поэтому команды разные: я отредактировал свой ответ.

VonC 23.12.2020 09:39

большое спасибо! У меня есть ошибки видимо, я обновлю пост

amir mohammadian 23.12.2020 09:40

@amirmohammadian Это похоже на поврежденный диск. Я обновил свой ответ, чтобы решить эту проблему.

VonC 23.12.2020 09:49

@amirmohammadian Молодец! Какие команды вы выполняли? Вы сделали команды fsck из живого USB-сеанса?

VonC 23.12.2020 10:13

да! потому что я в своих первых шагах в Linux у меня всегда есть живая загрузка моего дистрибутива. так что это было быстро, и когда я использовал его, «fsck» сначала сказал, что я не могу использовать какие-либо -p или -z из-за некоторых ошибок, и мне нужно сделать это вручную, поэтому я просто набирал y, y и y! и когда я загружаюсь снова, это сработало! еще раз спасибо

amir mohammadian 23.12.2020 10:18

@amirmohammadian Спасибо за этот отзыв. Я включил ваш комментарий в ответ для большей наглядности.

VonC 23.12.2020 10:26

Другие вопросы по теме