Difference between revisions of "Pacman troubleshooting/ru"

Updating to match new version of source page
Tags: Mobile web edit Mobile edit
(Updating to match new version of source page)
Tags: Mobile web edit Mobile edit
Line 15: Line 15:
  error: could not open file /var/lib/pacman/sync/multilib.db: Unrecognized archive format
  error: could not open file /var/lib/pacman/sync/multilib.db: Unrecognized archive format


<div class="mw-translate-fuzzy">
Ошибка связана с несоответствием информации, содержащейся в файлах db в указанном месте и файлах db на первом зеркале в вашем списке зеркал. Pacman проверяет пакет в базе данных и смотрит, совпадает ли файл сигнатуры с файлом в базе данных. Если нет, то pacman сообщит, что пакет поврежден.
Ошибка связана с несоответствием информации, содержащейся в файлах db в указанном месте и файлах db на первом зеркале в вашем списке зеркал. Pacman проверяет пакет в базе данных и смотрит, совпадает ли файл сигнатуры с файлом в базе данных. Если нет, то pacman сообщит, что пакет поврежден.
</div>


Хотя иногда проблему можно решить, просто удалив файлы и запустив обновление pacman, это возможно далеко не каждый раз.
<div lang="en" dir="ltr" class="mw-content-ltr">
While it sometimes is possible to fix the issue simply by deleting the files and the running a pacman update it far from every time.
</div>


=== Один рецепт для исправления этого ===
<div lang="en" dir="ltr" class="mw-content-ltr">
'''Run pacman-mirrors to refresh your mirrorlist'''
{{UserCmd|command=sudo pacman-mirrors -c Global}}
</div>


Обязательно нужно убедиться, что связки ключей актуальны. Убедившись, что ключи в актуальном состоянии, а затем заново загрузив базы данных, мы восстановим связь между ключами и пакетами.
<div lang="en" dir="ltr" class="mw-content-ltr">
 
'''Download the databases and update the system'''
'''Вы должны будете найти правильные имена, посмотрев на'''.
[https://mirror.easyname.at/manjaro/pool/overlay/ https://mirror.easyname.at/manjaro/pool/overlay/] для текущего manjaro-keyring
и
[https://mirror.easyname.at/manjaro/pool/sync https://mirror.easyname.at/manjaro/pool/sync] для текущего archlinux-keyring
 
'''Замените yyyymmdd и x на информацию, найденную по вышеуказанным ссылкам'''.
 
{{UserCmd|command=sudo pacman -U <nowiki>https://mirror.easyname.at/manjaro/pool/overlay/manjaro-keyring-yyyymmdd-x-any.pkg.tar.xz</nowiki>}}
{{UserCmd|command=sudo pacman -U <nowiki>https://mirror.easyname.at/manjaro/pool/sync/archlinux-keyring-yyyymmdd-x-any.pkg.tar.xz</nowiki>}}
 
'''Удалите неисправные базы данных'''
{{UserCmd|command=sudo rm -f /var/lib/pacman/sync/*}}
 
'''Загрузите базы данных и обновите систему'''
{{UserCmd|command=sudo pacman -Syyu}}
{{UserCmd|command=sudo pacman -Syyu}}
</div>


== Ошибка "Невозможно заблокировать базу данных" ==
== Ошибка "Невозможно заблокировать базу данных" ==
Line 64: Line 58:
{{Warning|Следующие команды работают только тогда, когда ваше системное время установлено правильно!}}
{{Warning|Следующие команды работают только тогда, когда ваше системное время установлено правильно!}}


'''1. Удалите старые (и, возможно, сломанные) ключи''', введя эту команду:
<div lang="en" dir="ltr" class="mw-content-ltr">
{{UserCmd|command=sudo rm -r /etc/pacman.d/gnupg}}
{{BoxInfo|Info|Retrieving the latest keyring packages can be done by browsing a current mirrors pool folder. E.g. from '''https://mirror.easyname.at/manjaro/pool''' - using the '''overlay''' for Manjaro keyring and '''sync''' for Arch keyring and downloading them to your system. Do not download '''.sig''' files.}}
</div>


'''2. Переустановите связки ключей, включая последние ключи''':
<div lang="en" dir="ltr" class="mw-content-ltr">
{{UserCmd|command=sudo pacman -Sy gnupg archlinux-keyring manjaro-keyring}}
{{BoxInfo|Info|Those running ARM can find the '''archlinuxarm-keyring''' and '''manjaro-arm-keyring''' in the '''sync-arm''' and '''overlay-arm''' folders respectively.}}
</div>


'''3. Инициализируйте связку ключей pacman''':
<div lang="en" dir="ltr" class="mw-content-ltr">
{{UserCmd|command=sudo pacman-key --init}}
'''Download the new keyring packages'''
Before you download ensure no keyring packages is in the current folder.
{{UserCmd|command=rm manjaro-keyring* archlinux-keyring*}}
</div>


'''4. Загрузите ключи подписи''':
<div lang="en" dir="ltr" class="mw-content-ltr">
{{UserCmd|command=sudo pacman-key --populate archlinux manjaro}}
Use either your browser or curl to download. Using curl assumes you know the correct package name as located with the mirror. Replace '''YYYYMMDD-R''' as available from the mirror.
</div>


'''5. Обновите и актуализируйте ключи подписей'''(это может занять достаточно много времени):
<div lang="en" dir="ltr" class="mw-content-ltr">
{{UserCmd|command=sudo pacman-key --refresh-keys}}
{{UserCmd|command=curl -O <nowiki>https://mirror.easyname.at/manjaro/pool/overlay/manjaro-keyring-YYYYMMDD-R-any.pkg.tar.xz</nowiki>}}
{{UserCmd|command=curl -O <nowiki>https://mirror.easyname.at/manjaro/pool/sync/archlinux-keyring-YYYYMMDD-R-any.pkg.tar.zst</nowiki>}}
</div>


'''6. Очистите пакеты программ, загруженные во время прерванной установки''' (необязательно):
<div lang="en" dir="ltr" class="mw-content-ltr">
{{UserCmd|command=sudo pacman -Sc}}</s>
'''Remove the dysfunctional keyrings''' by entering this command:
 
{{BoxInfo|Info|Добавлена улучшенная версия, так как выше она не работает. Пакеты подписаны, и поскольку '''/etc/pacman.d/gnupg''' был удален, он не может быть установлен из-за проверки. Вместо редактирования '''/etc/pacman.conf''' и понижения SigLevel, было бы лучше установить ключи без проверки вручную, чтобы решить эту проблему.}}
 
'''1. Удалите старые (и, возможно, сломанные) ключи''', введя эту команду:
{{UserCmd|command=sudo rm -r /etc/pacman.d/gnupg}}
{{UserCmd|command=sudo rm -r /etc/pacman.d/gnupg}}
</div>


'''2. Инициализируйте связку ключей pacman''':
<div lang="en" dir="ltr" class="mw-content-ltr">
'''Initialize the pacman keyring''':
{{UserCmd|command=sudo pacman-key --init}}
{{UserCmd|command=sudo pacman-key --init}}
</div>


'''3. Скачайте пакеты:'''
<div lang="en" dir="ltr" class="mw-content-ltr">
{{BoxInfo|Информация| Ошибки проверки GPG можно игнорировать, так как загружаются только пакеты связок ключей.
'''Install the downloaded packages'''
 
Assuming the files is the current folder and using wildcard so you don't have to deal with dates and versions - remove the packages after successful installation
Тем, кто работает на ARM, возможно, также потребуется загрузить archlinuxarm-keyring и manjaro-arm-keyring.
{{UserCmd|command=sudo pacman -U manjaro-keyring*.pkg.tar.xz archlinux-keyring*.pkg.tar.zst}}
 
</div>
}}
{{UserCmd|command=mkdir -pv $HOME/.cache/pkg/ && sudo pacman -Syw archlinux-keyring manjaro-keyring --cachedir $HOME/.cache/pkg/}}


'''4. Удалите подписи:'''
<div lang="en" dir="ltr" class="mw-content-ltr">
{{BoxInfo|Info| Подписи должны быть удалены во избежание автоматической проверки пакетов.}}
'''Populate the keyrings''' - (optional as the install process will do that)
{{UserCmd|command=rm -f $HOME/.cache/pkg/*.sig}}
{{UserCmd|command=sudo pacman-key --populate manjaro archlinux}}
</div>


'''5. Установите загруженные пакеты вручную:
<div lang="en" dir="ltr" class="mw-content-ltr">
{{BoxInfo|Информация|Это также запустит процесс заполнения.}}
'''Clear out the software packages downloaded during the aborted installation''' (optional):  
{{UserCmd|command=sudo pacman -U $HOME/.cache/pkg/*.tar.zst}}
{{warning|The command clears the pacman cache completely, and one will not be able to downgrade to a previous version of a package if required. Instead packages that are causing signing errors can be removed individually when upgrading.}}
{{UserCmd|command=sudo pacman -U $HOME/.cache/pkg/*.tar.xz}}
 
'''6. Очистите пакеты программ, загруженные во время прерванной установки''' (необязательно):  
{{warning|Вышеуказанная команда полностью очищает кэш pacman и вы не сможете перейти к предыдущей версии пакета при необходимости. Вместо этого пакеты, вызывающие ошибки подписи, могут быть удалены по отдельности при обновлении}}.
{{UserCmd|command=sudo pacman -Sc}}
{{UserCmd|command=sudo pacman -Sc}}
</div>


'''7. Удалите каталог пользовательских пакетов:''' (необязательно):
<div lang="en" dir="ltr" class="mw-content-ltr">
{{UserCmd|command=sudo rm -Rf $HOME/.cache/pkg/}}
After that try running '''sudo pacman -Syyu''' to see if the errors were resolved.
 
</div>
После этого попробуйте запустить '''sudo pacman -Syu''' и посмотреть, были ли устранены ошибки.


== Конфликтующие файлы - ''FILENAME'' exists in filesystem ==
== Конфликтующие файлы - ''FILENAME'' exists in filesystem ==
8,138

edits