Ошибка не удалось завершить транзакцию конфликтующие файлы

Обновлено: 04.07.2024

Я запустил sudo pacman -Syu , и у меня появилось несколько интересных ошибок:

ошибка: не удалось зафиксировать транзакцию (конфликтующие файлы)

Что мне делать? Должен ли я проверять все файлы и удалять те, у которых нет связанного пакета? Должен ли я принудительно обновлять (с помощью sudo pacman -S --force <package-name> ?)

Обновление

Я попытался запустить sudo pacman -S --force <package-name> и получил следующее:

Похоже, что pacman -S --force <package не перезаписывает каталоги, содержащие файлы. От человека:

Использование --force не позволит перезаписывать каталог с файлом или устанавливать пакеты с конфликтующими файлами и каталогами.

Должен ли я просто удалять конфликтующие каталоги? (у них нет связанных пакетов)

2 ответа

Хорошо, похоже, что работает sudo pacman -S --force <package-name> , но он не разрешает конфликтующие каталоги. В таких случаях запуск sudo rm -rf в конфликтующих каталогах, за которыми следует sudo pacman -S --force <package-name> работает.

Теперь мой код pacman -Syu хорошо разрешен.

tl; dr: удалите конфликтующее приложение перед запуском pacman .

pacman (и другие менеджеры пакетов) сохраняют индекс пакетов и файлов , которыми они управляют ( ---- +: = 2 = + ----). Некоторые файлы, такие как конфигурация, будут помечены как модифицируемые и не будут перезаписаны во время обновления (за исключением особых обстоятельств, когда диспетчер пакетов обычно удаляет старый файл перед созданием нового). Другие файлы будут помечены как не поддающиеся изменению. Если другое приложение каким-либо образом изменяет эти файлы без обновления индекса, менеджеру пакетов не будет знать, что делать с этими файлами во время обновления.

Многие приложения, установленные с использованием стандартного шаблона pacman --query --list , могут быть удалены с помощью ./configure && make && sudo make install . Если вы установили приложение каким-либо другим способом, вам может понадобиться что-то еще, чтобы удалить его. В общем случае может быть хорошей идеей сохранить копию установочных файлов где-нибудь (например sudo make uninstall ), чтобы быть в состоянии надежно удалить их в таких случаях. Просто удаление конфликтующих файлов, вероятно, оставит другие файлы, которые могут вызвать другие проблемы.

При установке программного обеспечения с другими менеджерами пакетов есть способы изолировать их от системных файлов. Это эффективная практика, например, во время разработки программного обеспечения, где вы действительно хотите поддерживать совместимость версий и избегать конфликтов с другим программным обеспечением. Примеры включают:

Просто о компьютерах и мобильных. Статьи о программах и операционных системах. Устранение ошибок и решения проблем.

Обновление Manjaro linux kde. Неверный или поврежденный пакет [решено]

  • Получить ссылку
  • Facebook
  • Twitter
  • Pinterest
  • Электронная почта
  • Другие приложения

Вместо обновления системы Manjaro linux вылазит ошибка: "не удалось завершить транзакцию (неверный или поврежденный пакет) Обнаружены ошибки, пакеты не обновлены"


Шаг первый.

Открываем терминал и вводим команду для поиска серверов/зеркал:

Терминал запросит пароль пользователя, который нужно ввести.


Шаг второй.

Терминал запросит подтверждение, тут нужно согласиться и ввести латинскую Y.



Ели же ошибка по прежнему появляется, то пускаем в ход удаление кэша пакетов командой:

После этого повторяем первый и второй шаги. Теперь система Manjaro должна спокойно обновиться.

Существует теоретическая причина появления данной ошибки. Однажды у меня были аналогичные проблемы с Deepin Linux. Система на отрез отказывалась обновляться и решение так и не было найдено. Точнее решение нашлось случайно, помогла смена роутера. Да да, именно замена маршрутизатора может решить подобные проблемы. В некоторых случаях можно попробовать сменить провайдера, иногда только это и помогает.

Друзья, если данное решение не помогло, или вы знаете другие способы решения подобной проблемы, пожалуйста напишите об этом в комментариях. Оставлять комментарии можно анонимно, без регистрации. Спасибо!

Читайте также: