web-dev-qa-db-ja.com

Archlinuxをアップグレードできません(pacman -Syuが機能しません)

私はArchLinuxでSudo pacman -Syuを実行していますが、次のものが得られます:

cristian@localhost:~$ Sudo pacman -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
 xenlism-Arch is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: package-query: requires pacman<4.3

これを解決する解決策は何ですか?

更新

私は、@ jhamによって提案された両方のソリューションを試しました。 yaourtとpackage-queryを完全に削除しました。 「必要」のpacman -Qi pacmanには、noneがあります。 pacman.confのmultilibとxenlism-Archについてもコメントしました。 pacman -Syuを実行すると、次の結果が得られます。

:: Proceed with installation? [Y/n] 
(244/244) checking keys in keyring                              [###################################] 100%
(244/244) checking package integrity                            [###################################] 100%
error: confuse: signature from "Thorsten Töpper <[email protected]>" is unknown trust
:: File /var/cache/pacman/pkg/confuse-2.8-2-x86_64.pkg.tar.xz is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n] 
error: failed to commit transaction (invalid or corrupted package)
Errors occurred, no packages were upgraded.
30
Cristian

これとまったく同じエラーが発生しました。問題は、archlinux-keyringパッケージに新しいキーがあり、それらのキーで署名された新しいパッケージ(confuse)があるようです。両方のパッケージは同じトランザクションで更新されるため、更新が完了するまで新しいキーは使用できませんが、パッケージがチェックされるまでトランザクションは開始されません...

解決策は、archlinux-keyringを単独で更新することです。

pacman -S archlinux-keyring

そして、残りを行います:

pacman -Su

それが失敗した場合、次の方法でキーを手動で実行してみてください。

pacman-key --populate

ただし、通常は必要ありません。

54
rodrigo

私はたまたま同じ問題を抱えていて、次のように解決しました:

$ Sudo pacman -Rdd package-query # Purge the conflicting package-query
$ Sudo pacman -Syu               # There it works

# Now reinstall package-query
$ git clone https://aur.archlinux.org/package-query.git
$ cd package-query && makepkg -si
7
Denis Chevalier

Roridoが動作することによる解決策を見つけられなかった他の人がここに来る場合は、ユーザーBernhardFürstまたはJhamの答えpacman -S package-query問題なく私のために働いた。

また、 this with libalpm.so.8: cannot open shared object file: No such file or directoryその後、package-queryとyaourtを手動で再インストールする必要があります。

Sudo pacman-db-upgrade
yaourt -R package-query yaourt

git clone https://aur.archlinux.org/package-query.git
cd package-query
makepkg -si
cd ..
git clone https://aur.archlinux.org/yaourt.git
cd yaourt
makepkg -si
cd ..
2
hak8or

私はManjaroを使用していますが、長い検索の後、これらの簡単なコマンドに従うことで問題を修正することができました。

注:最初にpacmanを使用する前にpacman-key --initを実行する必要があります。ローカルのキーリングには、すべての公式Manjaro Linuxパッケージャーのキーをpacman-key --populate archlinux manjaroで設定できます。

1
Ajay Mishra

トランザクションの準備に失敗しました(無効または破損したデータベース

ここでは、実際の(障害のある)ミラーサーバーがジャンクを配信していることが原因でした。

それらの標準サーバーをコメントアウトし、品質の高いサーバーを使用します。

ftp://ftp5.gwdg.de/pub/linux/archlinux/community/os/x86_64/

/etc/pacman.confのコメントがあまりにも悪いので、あえて役に立たず無頓着で、常に曖昧で、具体的には役に立たないかのように残念です。これは、pacmanからの無限に見えるエラーの最後のエラーでした。キーは管理できず、サーバーは混乱し、ライブラリは混乱を招きます。この恐ろしいArchの経験をたどるのに1日以上かかりました。

0
dotbit