为什么 yaourt 找错了地方(pacman 工作)?

Toe*_*dev 8 linux arch-linux

去掉yaourt和package-query,把pacman升级到v4.0.1,从AUR重新安装最新的package-query和yaourt后,我不能再使用yaourt了。它告诉我:

Unable to open file: /usr/local/etc/pacman.conf
Run Code Online (Sandbox Code Playgroud)

我不明白为什么它现在在那里而不是在 /etc 中。同时 pacman 正常工作。如果我创建指向 pacman.conf 的符号链接,则会出现以下错误:

failed to initialize alpm library (could not find or read directory)
Run Code Online (Sandbox Code Playgroud)

我的 $PATH 是:

/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/bin/vendor_perl:/usr/bin/core_perl
Run Code Online (Sandbox Code Playgroud)

在安装、重新安装它之前,我尝试查看 yaourt PKGBUILD,查看 yaourt 脚本文件,但我找不到任何可疑的东西。不知道要寻找什么,可能发生了什么?

编辑:找到解决方案:/usr/bin 需要在 $PATH 中的 /usr/local/bin 之前。

Toe*_*dev 9

Yaourt 显然使用$PATH 中的第一个条目,所以/usr/bin需要在/usr/local/bin那里之前。

改变这一点/etc/profile解决了问题。

  • 程序*总是*使用 $PATH 中的第一个条目。真正的问题似乎是你在 `/usr` 和 `/usr/local` 中安装了 *yaourt* **两次**。 (2认同)