2015-01-09 4 views
124

जबकि स्थापित करने पिप और अजगर मैं एक में भाग है का कहना है कि:पिप स्थापित: अनुमतियाँ और उस निर्देशिका के मालिक की जांच करें

निर्देशिका '/ उपयोगकर्ताओं/पार्थेनन/Library/लॉग्स/अनुकरणीय' या उसके मूल निर्देशिका का स्वामित्व वर्तमान उपयोगकर्ता के स्वामित्व में नहीं है और डीबग लॉग अक्षम कर दिया गया है। कृपया उस निर्देशिका की अनुमतियों और मालिक की जांच करें। यदि सूडो के साथ पाइप निष्पादित करते हैं, तो आप -एच ध्वज चाहते हैं।

क्योंकि अब मुझे sudo का उपयोग करके स्थापित करना है।

मेरे पास मैक पर पहले से ही पाइथन और कुछ हद तक पुस्तकालय स्थापित हैं, मैं योसामेट चला रहा हूं। मुझे हाल ही में एक साफ वाइप करना था और फिर ओएस की पुनर्स्थापित करना पड़ा। अब मैं इस शीघ्र हो रही है और मैं मुसीबत पता लगाना है कि यह कैसे

बदलने के लिए इससे पहले कि मेरे आदेश पंक्ति था आ रही Parthenon$ अब यह Philips-MBP:~ Parthenon$

मैं इस कंप्यूटर के एकमात्र मालिक हूँ और यह केवल खाता है इस पर। यह पाइथन 3.4 में अपग्रेड करते समय एक समस्या प्रतीत होती है, कुछ भी सही जगह पर नहीं लगता है, वर्चुअलएन्व नहीं जा रहा है, जहां मैं इसकी उम्मीद करता हूं, आदि

+0

क्या आपका खाता नाम फिलिप है? – komaromy

+0

मैंने देखा कि कल यह मेरी मशीन पर पीआईपी का उपयोग करते समय यह हो रहा था, वर्चुअलएन्व का क्या मतलब है, जहां आप इसकी अपेक्षा करते हैं? –

+0

मैंने पायथन 3 स्थापित किया।4 मेरी मशीन पर, फिर भी जब मैं अपने टर्मिनल में पायथन चलाता हूं तब भी यह पूरी स्थापना प्रक्रिया के माध्यम से 2.7 चलाता है। मैंने केवल वर्चुअलएन्व का उल्लेख किया क्योंकि मैं आमतौर पर इसे लाइब्रेरी/पायथन/3.4 में ढूंढने की उम्मीद करता हूं लेकिन लाइब्रेरी/पायथन/3.4 –

उत्तर

43

समस्या यह है कि आप किसी भी तरह वर्चुअलएन्व में स्थापित हैं sudo का उपयोग कर। शायद दुर्घटना से। इसका अर्थ यह है कि root उपयोगकर्ता पाइथन पैकेज डेटा को फिर से लिख देगा, जिससे रूट की स्वामित्व वाली सभी फाइलें बन जाएंगी और आपका सामान्य उपयोगकर्ता अब उन फ़ाइलों को नहीं लिख सकता है। आमतौर पर वर्चुअलनव का उपयोग आपके सामान्य यूनिक्स उपयोगकर्ता द्वारा ही किया जाना चाहिए और स्वामित्व में होना चाहिए।

आप अपने उपयोगकर्ता को यूनिक्स फ़ाइल अनुमति पैक को बदलकर समस्या को ठीक कर सकते हैं। आज़माएं:

$ sudo chown -R USERNAME /Users/USERNAME/Library/Logs/pip 
$ sudo chown -R USERNAME /Users/USERNAME/Library/Caches/pip 

तब pip उन फ़ाइलों को फिर से लिखने में सक्षम होना चाहिए।

More information about UNIX file permission management

+0

पिप अभी भी त्रुटि के साथ लिखता है। मेरे पास भी एक ही चेतावनी है और मेरी अनुमतियां सही हैं, ओपी वास्तव में वर्चुअलएन्व का उपयोग नहीं कर रहा है, इसलिए यह समझ में आता है कि वैश्विक स्तर पर पैकेज स्थापित करने के लिए सूडो की आवश्यकता होगी। –

+0

@ पैड्राइक कनिंघम: यदि पीपी एक त्रुटि देता है कि आपकी अनुमतियां गलत हैं, तो कृपया अपनी फ़ाइल अनुमतियां दिखाएं, ताकि हम यह पता लगा सकें कि उनके साथ क्या गलत है। अन्यथा अंधेरे में एक शॉट होगा। –

+0

इसके अलावा मेरा सुझाव है कि आप एक और प्रश्न खोलें क्योंकि मूल समस्या –

109

मैं भी अपने Mac पर इस परिवर्तन देखा है जब मैं sudo करने के लिए 'sudo पिप'

जोड़ा जा रहा है 'एच' को 'पिप' चलने से चला गया का कारण बनता है संदेश मेरे लिए दूर जाना। जैसे

sudo एच पिप foo

'आदमी sudo' मुझसे कहता है कि 'एच' (इस मामले में रूट) लक्ष्य उपयोगकर्ताओं के लिए $ HOME स्थापित करने के लिए sudo का कारण बनता है स्थापित करें।

तो ऐसा लगता है कि पीपी डिफ़ॉल्ट रूप से $ HOME/लाइब्रेरी/लॉग और सूडो में देख रहा है, होम को रूट पर सेट नहीं कर रहा है। आश्चर्य की बात नहीं है ~/लाइब्रेरी/लॉग आपके द्वारा रूट के बजाय उपयोगकर्ता के रूप में स्वामित्व में है।

मुझे संदेह है कि यह पीआईपी में हाल ही में कुछ बदलाव है। अब मैं काम करने के लिए इसे 'सूडो-एच' के साथ चलाऊंगा।

+14

पर आपकी समस्या अलग हो सकती है कृपया ध्यान दें कि 'सुडो पाइप' का उपयोग करना पूरी तरह से गलत है। अधिक जानकारी के लिए कृपया यहां देखें http://stackoverflow.com/questions/33004708/osx-el-capitan-sudo-pip-install-oserror-errno-1-operation-not-permitted/33004920#33004920 –

+0

मेरे पास समान था समस्या, लेकिन हाँ अब मुझे "-एच" ध्वज का उपयोग कर स्थापित करना होगा। –

38

pip install --user <package name>(कोई सूडो आवश्यक नहीं) एक बहुत ही समान समस्या के लिए मेरे लिए काम किया।

+0

आपको स्थापित करने के लिए कम से कम एक आवश्यकता देनी होगी (देखें "पीपी सहायता स्थापित करें") – Amir

संबंधित मुद्दे