राइट परमिशन के साथ अपाचे conf फाइल खोलना


1

मैं /private/etc/apache2/httpd.confकुछ बदलाव करने के लिए फाइल को खोलने की कोशिश कर रहा हूं । मुझे लगा कि मैं इसे कमांड लाइन से सही अनुमति के साथ खोल सकता हूं, इसलिए मैंने कोशिश की:

cd /private/etc/apache2
sudo open -a TextEdit httpd.conf

इसने TextEdit में फ़ाइल खोली, लेकिन TextEdit ने मुझे यह संदेश दिया:

आप फ़ाइल "httpd.conf" के मालिक नहीं हैं और इसे लिखने की अनुमति नहीं है। आप इस दस्तावेज़ को डुप्लिकेट कर सकते हैं और डुप्लिकेट संपादित कर सकते हैं। केवल डुप्लिकेट में आपके परिवर्तन शामिल होंगे।

ठीक। स्पष्ट रूप से उपयोग के openसाथ भी sudoउपयोगकर्ता के रूप में एप्लिकेशन को खोलता है। इसलिए मैंने यह कोशिश की:

sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit httpd.conf

लेकिन मुझे तुरंत यह पॉपअप मिल गया:

दस्तावेज़ "httpd.conf" खोला नहीं जा सका। आपके पास अनुमति नहीं है। अनुमतियाँ देखने या बदलने के लिए, खोजक में आइटम का चयन करें और फ़ाइल> जानकारी प्राप्त करें चुनें।

इससे TextEdit हैंग हो जाता है, इसलिए मुझे इसे छोड़ने के लिए मजबूर होना पड़ता है।

मैंने अपने कोमोडो टेक्स्ट एडिट का उपयोग करके फ़ाइल को खोलने की कोशिश की, जो कि मेरा सामान्य विकास परिवेश है:

sudo -b /Applications/Komodo\ Edit\ 8.app/Contents/MacOS/komodo httpd.conf

टर्मिनल इस अजीब संदेश को बाहर निकालता है:

2014-09-24 11: 48: 29.583 कोमोडो [30647: 507] * चेतावनी: विधि NSWindow में userSpaceScaleFactor को 10.7 और बाद में पदावनत किया जाता है। इसका उपयोग नए अनुप्रयोगों में नहीं किया जाना चाहिए। ConvertRectToBacking का उपयोग करें: इसके बजाय।

और कोमोडो खुलता है, लेकिन फ़ाइल नहीं खुलती है। मैं अपनी पसंद के कार्यक्रम के साथ इस फ़ाइल को कैसे संपादित करूं?

जवाबों:


2

इन एप्लिकेशन को उन फ़ाइलों के लिए नहीं लिखा जा सकता है जिसका कारण ओएस एक्स के एप्लिकेशन सैंडबॉक्सिंग फीचर के साथ करना है, जिसे आप रुचि रखने पर यहां पढ़ सकते हैं ।

एक GUI एप्लिकेशन जो इन फ़ाइलों को लिख सकता है, वह TextWrangler है जिसे आप यहां मुफ्त में डाउनलोड कर सकते हैं । Mac App Store (MAS) में TextWrangler का एक संस्करण भी है, लेकिन इसमें डिफ़ॉल्ट रूप से सिस्टम फ़ाइलों को लिखने की क्षमता नहीं है (MAS दिशानिर्देश उन क्षमताओं के साथ एप्लिकेशन की अनुमति नहीं देते हैं), लेकिन आप यहां एक अपडेट पा सकते हैं वह TextWrangler के MAS संस्करण को अपडेट करेगा ताकि वह कर सके।

वैकल्पिक रूप से आप इन फ़ाइलों को संपादित करने के लिए कमांड लाइन टूल का उपयोग कर सकते हैं। उदाहरण के लिए sudo nano https.confठीक काम करता है, और नैनो अपेक्षाकृत उपयोगकर्ता के अनुकूल है।


3

'डायलन' बिंदु पर विस्तार करने के लिए, आप फ़ाइलों को संपादित करने और उन्हें सीधे टर्मिनल से खोलने के लिए उदात्त पाठ का उपयोग कर सकते हैं। सीएलआई उपयोगिता जिसे सबलाइम कहा जाता है subl

उदात्त पाठ 3 का उपयोग करने के लिए:

open /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl

उदात्त पाठ 2 के लिए:

open /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl

इसके बाद, sublimeउस लिंक को सीएलआई नाम दें, जो इन बिनियर को अंजाम देने वाले सीएलआई को एक फ़ोल्डर में प्रस्तुत कर सके:

उदात्त पाठ 3:

ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/sublime

उदात्त पाठ 2:

ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime

अब जांचें कि सही जगह पर सिमलिंक बनाया गया था:

open ~/.bash_profile

आपकी प्रोफ़ाइल में, सुनिश्चित करें कि यह फ़ोल्डर आपके $ PATH में कहीं है। यदि नहीं, तो इसे जोड़ें:

export PATH=/usr/local/bin:

यदि कोई $ PATH सेट नहीं है, तो इस लाइन को अपने bash_profile में टाइप करें और फिर इसे रीफ्रेश / सोर्स करें:

export PATH=/usr/local/bin:$PATH
source ~/.bash_profile

इन आदेशों को अब Sublime को स्वचालित रूप से खोलने की अनुमति देनी चाहिए:

sublime .- उदात्त में वर्तमान निर्देशिका
sublime filenameखोलने के लिए - एक फ़ाइल खोलने के लिए ('फ़ाइल' w / वास्तविक नाम की जगह यानी 'httpd.conf')

संदर्भ या अधिक विस्तृत जानकारी के लिए गोटो https://gist.github.com/artero/1236170 पर जाएं


-1

उदात्त पाठ 3 इन फ़ाइलों के लिए काम करता है।

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