क्यों गलत जगह (pacman काम करता है) में yaourt दिख रहा है?


8

यॉटको और पैकेज-क्वेरी को हटाने के बाद, pacman को v4.0.1 में अपग्रेड करना और AUR से नवीनतम पैकेज-क्वेरी और yaourt को फिर से इंस्टॉल करना, मैं yaourt का उपयोग नहीं कर सकता। यह मुझे बताता है:

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

मुझे समझ नहीं आ रहा है कि यह अब वहां क्यों दिख रहा है और / आदि में नहीं। इस बीच pacman सामान्य रूप से काम कर रहा है। यदि मैं pacman.conf के लिए एक सिमलिंक बनाता हूं, तो मुझे इसके बजाय निम्नलिखित त्रुटि मिलती है:

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

मेरा $ पेट है:

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

मैंने स्थापित करने से पहले yaourt PKGBUILD में देखने की कोशिश की है, इसे फिर से स्थापित करना, yaourt स्क्रिप्ट फ़ाइल में देखना, और मुझे कुछ भी संदिग्ध नहीं मिल सकता है। निश्चित नहीं है कि क्या देखना है, क्या हो सकता है?

संपादित करें: समाधान मिला: / usr / बिन $ PATH में usr / स्थानीय / बिन से पहले होना चाहिए।


उत्तर के रूप में अपना संपादन पोस्ट करें! :)
iglvzx

1
मैं करूंगा, लेकिन मुझे 7 घंटे इंतजार करना होगा। :)
तोरदेव

जवाबों:


9

यॉटो जाहिरा तौर पर $ PATH में पहली प्रविष्टि का उपयोग करता है , इसलिए वहां /usr/binसे पहले होना चाहिए /usr/local/bin

इस /etc/profileसमस्या को हल करने में बदल रहा है।


2
कार्यक्रम हमेशा $ PATH में पहली प्रविष्टि का उपयोग करते हैं। वास्तविक समस्या होने के लिए आपके पास दिखाई देती है कि yaourt स्थापित दो बार , में /usrऔर /usr/local
user1686

यह जानकर अच्छा लगा! आप यह कैसे बता सकते हैं कि यह दो बार स्थापित है? मैंने नया संस्करण स्थापित करने से पहले इसे pacman -Rs के साथ हटा दिया।
तेरनदेव

1

खाली का उपयोग करके पैकेज-क्वेरी को पुनर्स्थापित करें --prefix:./configure --prefix=


1

मेरी भी यही समस्या थी। समस्या (जैसा कि अन्य उत्तरों में वर्णित है) यह है कि यदि आप चलते हैं:

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

ध्यान दें कि / usr / स्थानीय / sbin और / usr / स्थानीय / बिन पहले दिखाई देते हैं, इसलिए खोजे गए प्रोग्राम इन स्थानों से लिए जाएंगे (यदि वे मौजूद हैं)।

देखने के लिए / usr / स्थानीय / बिन में देखें कि क्या आप वहां पैकेज-क्वेरी देख सकते हैं; यदि आप कर सकते हैं, तो आपके मुद्दे इसके कारण हो रहे हैं, यह वहां नहीं होना चाहिए (जब तक कि आपने इसे वहां स्थापित नहीं किया है)। इसलिए। इसे ठीक करें ......

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

और फिर पैकेज-क्वेरी निकालें:

[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...

अंत में, मैन्युअल रूप से आवारा पैकेज-क्वेरी बाइनरी को हटा दें:

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

अब, यहां दिए गए निर्देशों का उपयोग करके yaourt (और पैकेज-क्वेरी) को फिर से स्थापित करें: https://archlinux.fr/yaourt-en

और आपका जाना अच्छा होना चाहिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.