2012-09-01 16 views
6

ऐसा लगता है कि उबंटू ~/.bashrc, ~/.bash_profile, ~/.pam_profile, /etc/environment, और /etc/profile का उपयोग इसी तरह से करता है। मैं अपने एंटी इंस्टॉलेशन की रूट निर्देशिका (/opt/apache/ant/1.8.4/apache-ant-1.8.4/ होने के लिए) के लिए पूर्ण पथ होने के लिए ANT_HOME सेट करने के लिए इनमें से किसी एक (जो कभी भी उपयुक्त है) को कॉन्फ़िगरेशन जोड़ने में सक्षम होना चाहता हूं। इस चर को किसी भी सामान्य env var के रूप में "सम्मानित" होना आवश्यक है, जहां मैं किसी भी समय टर्मिनल और echo खोल सकता हूं। यह भी अच्छा होगा अगर मैं इसे जावा के लिए System.getProperty("") कॉल से रनटाइम पर पढ़ने के लिए इस तरह से सेट कर सकता हूं।उबंटू डेस्कटॉप 12.04 पर ANT_HOME कैसे सेट करें?

  • मैं किस फ़ाइल का उपयोग करता हूं?
  • मैं वास्तव में इसे कैसे सेट करूं ताकि यह ऊपर मेरी आवश्यकताओं को पूरा कर सके?

किसी भी मदद या पॉइंटर्स के लिए अग्रिम धन्यवाद!

उत्तर

12

वैश्विक सेटिंग्स, के लिए पूरे सिस्टम में वातावरण चर

  • उपयोग /etc/environment
  • /etc/profile, या /etc/bash.bashrc

का उपयोग नहीं करते this पृष्ठ से:

/etc/environment [...] विशेष रूप से सिस्टम-व्यापी पर्यावरण परिवर्तनीय सेटिंग्स के लिए है। यह एक स्क्रिप्ट फ़ाइल नहीं है, बल्कि इसमें असाइनमेंट एक्सप्रेशन के हैं, एक प्रति लाइन। विशेष रूप से, यह फ़ाइल सिस्टम-व्यापी लोकेल और पथ सेटिंग्स संग्रहीत करती है।

/etc/profile का उपयोग करना बहुत ही यूनिक्स-वाई तरीका है, लेकिन इसकी कार्यक्षमता उबंटू के तहत बहुत कम हो गई है। यह केवल /etc/bash.bashrc पर इंगित करने और /etc/profile.d से प्रविष्टियों को एकत्रित करने के लिए मौजूद है।

मेरे सिस्टम पर, profile.d में एकमात्र दिलचस्प प्रविष्टि प्रविष्टि /etc/profile.d/bash_completion.sh है।

स्थानीय या प्रति-उपयोगकर्ता सेटिंग्स

उबंटू पेज के पिछले संस्करण की सिफारिश की ~/.pam_environment, लेकिन पृष्ठ वर्तमान में पता चलता है कि यह है कि अगर काम नहीं करता है, तो आप का उपयोग करना चाहिए के लिए

  • ~/.profile - यह शायद पर्यावरण परिवर्तनीय असाइनमेंट रखने के लिए सबसे अच्छी फ़ाइल है, क्योंकि यह स्वचालित रूप से निष्पादित हो जाता है स्टार्टअप प्रक्रिया डेस्कटॉप सत्र के साथ-साथ लॉगिन शेल के दौरान डिस्प्लेमेनर टेक्स्ट कंसोल से लॉग-इन करते समय।

  • ~/.bash_profile या ~./bash_login - इनमें से किसी एक मौजूद है, तो पार्टी "~/.profile" जब पार्टी एक लॉगिन शेल के रूप में शुरू कर दिया है के बजाय यह निष्पादित करता है। बैश ~/.bash_profile से ~/.bash_login पसंद करेंगे। [...] इन फ़ाइलों को डिफ़ॉल्ट रूप से एक ग्राफिकल सत्र को प्रभावित करती है न "

  • ~/.bashrc -"।। ... चर सेट करने के लिए सबसे आसान जगह हो सकती है "

2

सबसे पहले, यह मानक है * nix पर env चर सेट करते समय पीछे की ओर स्लैश को छोड़ने का अभ्यास करें। (आपके पास अपने अंत में एक पिछला स्लैश है)। इसलिए आपको लिखना चाहिए:

निर्यात ANT_HOME =/opt/apache/ant/1.8.4/apache-ant-1.8.4

... और नहीं:

निर्यात ANT_HOME =/opt/अपाचे/चींटी/1.8.4/अपाचे-चींटी-1.8.4/

~/.bashrc, ~/.bash_profile अच्छे हैं, तो आप केवल अपने उपयोगकर्ता के बारे में परवाह खाता और आप बैश खोल का उपयोग करते हैं। एक पर्यावरण चर सेट करने के लिए, यह वास्तव में आप इनमें से अधिक अंतर नहीं बनाते हैं। जब भी आप एक नया खोल खोलते हैं तो bashrc इसे रीसेट कर देगा, जबकि .bash_profile लॉग-इन होने पर इसे रीसेट करेगा।

/etc में फ़ाइलें आपके सिस्टम पर सभी उपयोगकर्ताओं के लिए सेट की जाएंगी (लेकिन इसे स्थानीय रूप से ओवरराइड किया जा सकता है)। यदि आपके पास अलग-अलग उपयोगकर्ता निर्माण करने जा रहे हैं और आप चाहते हैं कि वे सभी एक ही वातावरण वैरिएबल हैं, तो/etc/प्रोफ़ाइल इसे रखने के लिए एक अच्छी जगह होगी।

+0

चेतावनी: कम से कम चींटी 1.7.1 के साथ, इस तरह के पीछे की स्लैश को छोड़कर चींटी पुस्तकालयों को लोड करने में विफल हो जाएंगी। मैं मजाक भी नहीं कर रहा हूँ; https://bugzilla.redhat.com/show_bug.cgi?id=490542 भी देखें –

1

जावा से परिवर्तनीय पढ़ने के लिए, System.getenv().get("ANT_HOME") का उपयोग करें। इसके बारे में here और पढ़ें।

इसे कहां सेट करना है, मैं ~/.bashrc का उपयोग करना पसंद करता हूं, जब तक कि आप अन्य उपयोगकर्ताओं से अपना प्रोग्राम नहीं चला रहे हों, या sudo के साथ। फिर आपको /etc/environment

1

का उपयोग करना चाहिए, मैं विभिन्न पर्यावरण चरों को source पर $HOME/.xsessionrc से अलग करना चाहता हूं। .xsessionrc बस एक शेल स्क्रिप्ट है जिसे नए एक्स सत्र के बाद जीडीएम, केडीएम या अन्य जैसे लॉगिन मैनेजर द्वारा निष्पादित किया जाता है।

5

सबसे पहले, निम्नलिखित कोड के साथ खुली बश फ़ाइल खोलें।

xxx @ xxx-डेस्कटॉप: ~ $ sudo एडिट /etc/bash.bashrc

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

export ANT_HOME=/usr/share/ant 
export JAVA_HOME=/usr/lib/jvm/java-6-sun 
set path=$path $ANT_HOME/bin 

आखिरकार, फ़ाइल को सहेजें और बंद करें। यदि आपने सही तरीके से कॉन्फ़िगर किया है, तो टर्मिनल को "एंटी -वर्जन" कमांड के साथ निम्नलिखित नोट दिखाना चाहिए।

 [email protected]:~$ ant -version 

अपाचे चींटी संस्करण 1.7.1 10 नवंबर 2008 पर संकलित इसका मतलब विन्यास ठीक है।वातावरण चर सेट करने के लिए

0

सबसे अच्छा तरीका globaly

चरण 1:
इस

JAVA_HOME=/usr/lib/jvm/java-6-sun 
ANT_HOME=/usr/....<path to ant home> 
set path="/usr/bin:<path2>:$JAVA_HOME/bin:$ANT_HOME/bin" 

चरण 2 की तरह /etc/environment में सभी चर सेट:
अंत में इस पंक्ति जोड़ें प्रत्येक उपयोगकर्ता के ~/.bashrc

source /etc/environment 

चरण 3:
परिवर्तन करने के लिए निम्न आदेश निष्पादित करें।

source ~/.bashrc 



आशा है कि यह मदद करता है .. !!

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