yaourtが間違った場所を探しているのはなぜですか(pacmanは動作します)?


8

yaourtとpackage-queryを削除し、pacmanをv4.0.1にアップグレードして、最新のpackage-queryとyaourtをAURから再インストールすると、yaourtを使用できなくなります。それは私に伝えます:

Unable to open file: /usr/local/etc/pacman.conf

なぜそれが今そこにあり、/ etcにないのか理解できません。その間、pacmanは正常に動作しています。pacman.confへのシンボリックリンクを作成すると、代わりに次のエラーが発生します。

failed to initialize alpm library (could not find or read directory)

私の$ PATHは:

/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/bin/vendor_perl:/usr/bin/core_perl

インストール、再インストール、yaourtスクリプトファイルの前にyaourt PKGBUILDを調べてみましたが、疑わしいものは何も見つかりません。何を探すべきかわからない、何が起こったのでしょうか?

編集:解決策が見つかりました:/ usr / binは$ PATHの/ usr / local / binの前にある必要があります


編集内容を回答として投稿してください!:)
iglvzx 2012年

1
私はそうしますが、7時間待つ必要があります。:)
Toerndev 2012年

回答:


9

Yaourt は$ PATHの最初のエントリを使用しているため、そこにある/usr/bin必要/usr/local/binがあります。

これを変更することで/etc/profile問題は解決しました。


2
プログラムは常に $ PATHの最初のエントリを使用します。本当の問題は、yaourtがとの2回インストールされていることです。/usr/usr/local
user1686 2012年

知っておくと便利です。それが2回インストールされていることをどうやって見分けることができますか?新しいバージョンをインストールする前に、pacman -Rsでそれを削除しました。
Toerndev 2012年


1

同じ問題がありました。問題(他の回答で述べたとおり)を実行すると、

[linux]$ echo $PATH
[linux]$ /usr/local/sbin:/usr/local/bin:/usr/bin .....

/ usr / local / sbinおよび/ usr / local / binが最初に表示されるため、検索されたプログラムはこれらの場所(存在する場合)から取得されます。

/ usr / local / binを見て、package-queryがそこにあるかどうかを確認してください。可能であれば、問題はこれが原因で発生しているはずです(インストールしていない限り)。そう。修正しましょう......

まず、YAOURTを削除します。

sudo pacman -R yaourt
checking dependencies...

Packages (1) yaourt-1.9-1

Total Removed Size:  0.81 MiB

:: Do you want to remove these packages? [Y/n] y
:: Processing package changes...
(1/1) removing yaourt                                                                                                             [############################################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

そして、package-queryを削除します。

[linux]$ sudo pacman -R package-query
checking dependencies...

Packages (1) package-query-1.9-3

Total Removed Size:  0.08 MiB

:: Do you want to remove these packages? [Y/n] y
:: Processing package changes...
(1/1) removing package-query                                                                                                      [############################################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

最後に、手動でstray package-queryバイナリを削除します。

[linux]$ sudo rm -rf /usr/local/bin/package-query

ここで、https//archlinux.fr/yaourt-enの指示に従って、yaourt(およびpackage-query)を再インストールします。

そして、あなたは行ってもいいはずです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.