/ ऑप्ट निर्देशिका में अनुमतियाँ पढ़ें / लिखें


54

मैंने बिना किसी अड़चन के अपनी / ऑप्ट निर्देशिका में Android स्टूडियो स्थापित किया है और इसका उपयोग कर रहा हूं। हाल ही में, हालांकि, एंड्रॉइड स्टूडियो ने मुझे एक अपडेट की जानकारी दी। हालाँकि, यह अपडेट का प्रदर्शन नहीं करेगा, क्योंकि यह कहता है कि इसमें ऑप्ट डायरेक्टरी में रीड / राइट परमिशन नहीं है जहाँ यह स्थापित है।

क्या कोई इस स्थिति के लिए सबसे अच्छा उपाय सुझा सकता है? मैं अपनी स्थापना को किसी अन्य निर्देशिका में स्थानांतरित नहीं करना पसंद करूंगा। मुझे यह भी नहीं पता है कि मैं निर्देशिका पर अनुमति बदलना चाहता हूं, हालांकि मुझे अपडेट के लिए ऐसा करने के लिए लुभाया जा सकता है, फिर इसे वापस कर दें।

त्रुटि संदेश:

Studio does not have write access to /opt/android-studio. Please run it by a privileged user to update

आप कैसे अपडेट करने का प्रयास कर रहे हैं? आपने कैसे स्थापित किया? PPA? क्या आप एंड्रॉइड स्टूडियो को रूट के रूप में चला सकते हैं? यानी sudo /opt/android-studioऔर फिर अद्यतन?
मार्क किर्बी

1
मुझे लगता है कि आपने इसे / ऑप्ट / डायरेक्टरी में कॉपी किया है। मैं इसे वहां रखने की सलाह नहीं दूंगा, इसलिए आपको अनुमति के मुद्दों से परेशान नहीं होना पड़ेगा। अपने एंड्रॉइड डेवलपमेंट वातावरण को सेट करने के लिए umake का उपयोग करना सबसे अच्छा है
गायन वीरकुट्टी

@markkirby मैंने इसे वहां कॉपी किया और इंस्टॉलेशन स्क्रिप्ट स्टूडियो का उपयोग किया। मैं sudo द्वारा चलाऊंगा, लेकिन studio.sh फिर से इंस्टॉलेशन शुरू करता है। हैरानी की बात है कि मैं सिर्फ कार्यक्रम शुरू करने के लिए चलाने के लिए एक फ़ाइल नहीं देखता। हो सकता है कि मुझे इंस्टॉलेशन स्क्रिप्ट को देखना चाहिए कि
एग्जीक्यूटेबल

मैं उत्तरों में से किसी एक को सही उत्तर की स्थिति प्रदान करने की सलाह देता हूं। अन्यथा, यह उन उपयोगकर्ताओं के लिए भ्रामक हो सकता है जो भविष्य में इस पोस्ट के द्वारा आते हैं - यदि 1 वर्ष बाद सही उत्तर नहीं दिया गया है, तो इसका मतलब है कि न तो उत्तर सही है। जब, वास्तव में, दोनों हाथ में समस्या को कुशलता से संबोधित करते हैं। मैंने आपका प्रश्न छोड़ दिया, BTW:)
tony gil

जवाबों:


99

मैंने rootअपने userखाते से एंड्रॉइड स्टूडियो डायरेक्टरी के मालिक को बदल दिया और यह काम कर गया। यहां वह कमांड है, जहां $USERआपके द्वारा अपने वर्तमान सक्रिय उपयोगकर्ता को बदल दिया जाएगा:

sudo chown -R $USER:$USER /opt/android-studio

2
वास्तव में मेरे लिए काम करता है .. मेरे 10 दिनों की खोज यहाँ समाप्त होती है
रंजीथ कुमार

8
यह काम करेगा, लेकिन क्या यादृच्छिक उपयोगकर्ता के स्वामित्व वाली / ऑप्ट के कुछ यादृच्छिक उपनिर्देशिका में सभी फाइलों और निर्देशिकाओं के होने में नुकसान हैं? यदि इंस्टॉलेशन / ऑप्ट इन है, तो इसका मतलब यह हो सकता है कि यह कई उपयोगकर्ताओं के लिए अभिप्रेत है, इसलिए हो सकता है कि सिस्टम के अन्य उपयोगकर्ता स्टूडियो चलाने की उम्मीद करें। यह किसी भी तरह एक समस्या हो सकती है?
यानिक

1
इस ट्रिक का उपयोग xppp सर्वर में लिखने और चलाने के लिए Geany जैसे xampp प्रतिष्ठानों / ऑप्ट / लैम्प / htdocs डायरेक्टरी में php एडिटर को कॉन्फ़िगर करने के लिए किया जाता है। hth ..
Steer360

तुम आदमी हो !
ताहिर यासीन

2
अच्छी बात @Yannick लेकिन दुनिया में कौन अपने Ubuntu सेटअप पर एक से अधिक उपयोगकर्ता है Dav
ब्रॉन डेविस

8

आप /optcomand का उपयोग करके निर्देशिका को अपने घर से स्थानांतरित कर सकते हैं :

sudo cp -r /opt/android-studio ~/

या आपको उपयोग करने की अनुमति देने के लिए chmod:

sudo chmod +w /opt/android-studio/some-file

सभी पुनरावर्ती को अनुमतियाँ जोड़ने के लिए:

sudo chmod +w -R /opt/android-studio/some-file

मेरे जवाब पर एक नजर डालें https://askubuntu.com/a/638799/150504 जो कि चामड़ के बारे में थोड़ा बताएं और कैसे उपयोग करें


क्या मुझे विशिष्ट निष्पादन योग्य फ़ाइल को निर्दिष्ट करने की आवश्यकता है जिसमें फ़ोल्डर के लिए यह अनुमति होगी? मैंने इसे स्टूडियो के साथ आजमाया था।
वेन्यूइज

मेरे लिए काम नहीं किया। निर्देशिका बनाते समय। कोशिश की गईsudo chmod +w -R /opt/android-sdk-linux
david

पहले हमें sudo का उपयोग करके बिन डायरेक्टरी से studio.sh चलाना है, तब केवल लिखने की अनुमति परिलक्षित होती है।
dev_ry

6

मैं के समूह स्थापित किया था / opt / एंड्रॉयड स्टूडियो (और / opt / Android-SDK के लिए) उन और समूह के लिए लिखने की अनुमति गयी।

मेरे मामले में, समूह उपयोगकर्ता पहले से मौजूद थे। लेकिन संकेत के रूप में:

sudo addgroup उपयोगकर्ता

मुझे अपने उपयोगकर्ता को उपयोगकर्ता समूह में जोड़ना था :

sudo adduser $ USER उपयोगकर्ता

फिर निर्देशिका का समूह सेट करें:

sudo chown -R root: उपयोगकर्ता / ऑप्ट / एंड्रॉइड-स्टूडियो

क्योंकि अद्यतनों को फाइल लिखने की आवश्यकता है:

sudo chmod -R g + w / opt / android-studio

मैंने एक बार इस निर्देश का उपयोग किया, मुझे आशा है कि मैं कुछ नहीं भूल गया

संपादित करें: इस तरह, फ़ाइलें बहुत अधिक सुलभ नहीं होंगी, लेकिन फिर भी चयनित उपयोगकर्ताओं द्वारा उपयोग करने योग्य हैं


1

मुझे रुबाइमीन के साथ भी ऐसी ही समस्या थी।

sudo chown -R $USER:$USER /opt/Rubymine

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

sudo updatedb && sudo locate rubymine.sh
sudo /path/to/rubymine.sh 

मैं भी! लेकिन जब मैं आपके समाधान की कोशिश करता हूं, तो यह फिर से लाइसेंस की जानकारी मांगता है, इसलिए मुझे यकीन नहीं है कि उस बिंदु पर क्या करना है ... इसे फिर से डालें? मैं अपने लाइसेंस की शर्तों को गड़बड़ नहीं करना चाहता ...
mltsy

-1

मुझे वही त्रुटि मिल रही थी। टर्मिनल से निम्न कमांड चलाने से समस्या हल हो गई।

sudo chown -R $USER:$USER /opt/idea-IC-173.4548.28/

कमांड को निष्पादित करने के लिए आपको उसी निर्देशिका में रहने की आवश्यकता नहीं है।


-2
sudo chmod -R 777 your_android_studio_location_path/

उदाहरण के लिए (मेरे Ubuntu 16.04 में):

sudo chmod -R 777 /home/igor/Android/

7
फ़ाइल अनुमति मास्क को 777 पर सेट करना लगभग हमेशा खराब सलाह है । -1
डेविड फ़ॉस्टर

इसकी बुरी सलाह, लेकिन अब इसके लिए मैंने काम किया।
david

2
@david 777 का अर्थ है, कोई भी (इंटरनेट के माध्यम से किसी को भी) फ़ाइल को एक्सेस, संशोधित और हटा सकता है। "यह काम किया" आपके सिस्टम के लिए इस तरह की महत्वपूर्ण भेद्यता को खोलने के लिए एक अच्छा बहाना नहीं है।
मुस्तफा अहंगराह

@david बिट्स में अपने पीसी को स्मैश करना, दुकान पर जाना और एक नया खरीदना, फिर उस पर एंड्रॉइड स्टूडियो के नवीनतम संस्करण को स्थापित करना भी "काम" होगा लेकिन खराब सलाह है और इसे अपवित्र नहीं किया जाना चाहिए। मुद्दा यह है कि अक्सर एक समस्या को "हल" करने के कई तरीके होते हैं, जिनमें से कुछ "गलत" तरीके होते हैं और कुछ "सही" तरीके होते हैं। यह उत्तर लगभग निश्चित रूप से गलत तरीका है।
जॉन बेंटले
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.