Perché il tuo sguardo è nel posto sbagliato (pacman funziona)?


8

Dopo aver rimosso yaourt e pacchetto-query, aggiornato pacman a v4.0.1 e reinstallato l'ultimo pacchetto-query e yaourt da AUR, non posso più utilizzare yaourt. Mi dice:

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

Non capisco perché ora sta guardando lì e non in / etc. Nel frattempo Pacman funziona normalmente. Se creo un collegamento simbolico a pacman.conf, visualizzo invece il seguente errore:

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

Il mio $ PATH è:

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

Ho provato a cercare nel file PKGBUILD prima di installarlo, reinstallarlo, cercare nel file di script del file yaourt e non riesco a trovare nulla di sospetto. Non sei sicuro di cosa cercare, cosa sarebbe potuto succedere?

EDIT: trovata la soluzione: / usr / bin deve essere prima di / usr / local / bin in $ PATH.


Pubblica la tua modifica come risposta! :)
iglvzx,

1
Lo farei, ma devo aspettare 7 ore. :)
Toerndev il

Risposte:


9

Apparentemente Yaourt usa la prima voce in $ PATH, quindi /usr/bindeve essere prima /usr/local/bin.

La modifica di questo ha /etc/profilerisolto il problema.


2
I programmi usano sempre la prima voce in $ PATH. Il vero problema sembra essere che avete yaourt installato due volte , in /usre /usr/local.
user1686

Buono a sapersi! Come fai a sapere che è installato due volte? L'ho rimosso con pacman -Rs prima di installare la nuova versione.
Toerndev il

1

Reinstallare la query del pacchetto usando vuoto --prefix:./configure --prefix=


1

Ho avuto lo stesso problema. Il problema (come menzionato in altre risposte) è che se si esegue:

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

Notare che / usr / local / sbin e / usr / local / bin compaiono per primi, quindi i programmi cercati verranno presi da queste posizioni (se presenti).

Dai un'occhiata in / usr / local / bin per vedere se riesci a vedere la query del pacchetto lì; se puoi, allora i tuoi problemi sono causati da questo, non dovrebbe essere lì (a meno che tu non l'abbia installato lì). Così. Risolviamolo ......

Inizia rimuovendo 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...

E quindi rimuovere 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...

Infine, rimuovere manualmente il binario di query-pacchetto randagio:

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

Ora, reinstalla yaourt (e package-query) usando le istruzioni fornite qui: https://archlinux.fr/yaourt-en

E dovresti essere bravo ad andare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.