2014-04-15 15 views
8

जब मैं संगीतकार स्वयं अद्यतन चलाने का प्रयास, मैं त्रुटि मिलती है:संगीतकार स्वयं अद्यतन करने में विफल रहता

The file is corrupted (creating archive "/home/heytherejake/.composer/cache/composer-temp.phar" disabled by the php.ini setting phar.readonly). 
Please re-run the self-update command to try again. 

मैं phar.readonly बंद करने के लिए सेट की स्थापना की है (और मेरे phpinfo इस दर्शाता है), फिर भी त्रुटि अभी भी होती है। क्या किसी को पता है कि इसका क्या कारण हो सकता है?

+1

संभवतः 'rm -rf ~/.composer/cache/* 'जैसे कुछ कोशिश करें (अपने जोखिम पर चलाएं, लेकिन यह न देखें कि यह कैसे चोट पहुंचा सकता है)। या पूरी तरह से संगीतकार फिर से स्थापित करें? – Sam

+0

संगीतकार को पुनर्स्थापित करने का प्रयास दुर्भाग्यवश, वही त्रुटि देता है। (अलग-अलग स्थान, हालांकि: डाउनलोड दूषित है (संग्रह "/etc/php5/apache2/composer.phar" php.ini सेटिंग phar.readonly द्वारा अक्षम) बना रहा है, निरस्त कर रहा है।) –

+0

दिलचस्प .. आप इसे किस विधि को इंस्टॉल करते हैं साथ में? भले ही मैं इसकी अनुशंसा नहीं करता हूं, मुझे यह जानकर उत्सुकता है कि क्या यह सुपरसियर के रूप में स्थापित करना काम करता है। – Sam

उत्तर

8

संगीतकार अद्यतन या ठीक से काम नहीं कर रहा है आमतौर पर दो चीजों में से एक के कारण होता है। खराब अनुमति और/या खराब कैश।

कैश निकालने के लिए, का उपयोग sudo rm -rf ~/.composer/cache/

755 करने की अनुमति मुद्दा परिवर्तन composer.phar अनुमति ठीक करने के लिए:

which composer 
sudo chmod 755 path/to/composer 

के रूप में इस समस्या का समाधान का एक आखिरी मतलब, sudo के साथ अद्यतन करने के लिए कोशिश sudo -H composer self-update

+3

कृपया 'chmod 777' कभी न करें, कृपया! टिप के लिए –

+0

@UnamataSanatarai Thx, लेकिन क्या आप विस्तृत कर सकते हैं और मुझे एक सुधार दे सकते हैं ताकि मैं अपनी पोस्ट अपडेट कर सकूं? – NMC

+0

@ एनएमसी पाउलो परेरा से जवाब देखें – bastey

9

सबसे अच्छा समाधान संगीतकार को हटाने और फिर इसे पुनर्स्थापित करना है:

i। संगीतकार खोजें:

which composer 

ii। तब sudo के रूप में इसे हटाने (का उपयोग निर्देशिका ऊपर से लौटे)

sudo rm -rf /usr/local/bin/composer 
sudo rm -rf ~/.composer/cache/ 

iii। फिर इसे apt-get

sudo apt-get update 
sudo apt-get install curl php5-cli git 
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer 

iv का उपयोग करके इंस्टॉल करें। तो अगर यह

composer self-update 
0

काम कर रहा है सिर्फ इतना है कि अपने टर्मिनल

-sS https://getcomposer.org/installer में लिखने का परीक्षण | sudo php - --install- dir =/usr/local/bin --filename = संगीतकार

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