/ etc / प्रोफ़ाइल बनाम ~ /। लाभकारी


13

मैं ubuntu 12.04.1 LTS चलाता हूं। और मैं प्रोफाइल फाइल लोड करने के लिए ऑर्डर / प्राथमिकता क्या है यह नहीं पा सकता। जब मैं सिस्टम शुरू करता हूं और GUI का उपयोग करके लॉगिन करता हूं कि कौन सी फाइल लोड की गई है? और क्यों? यदि लॉगिन-शेल चलाएं तो क्या होगा? क्या यह वही रहेगा? वास्तव में अभी मुझे नहीं मिल रहा है कि ~/.profileजब सिस्टम शुरू होता है तो मेरा लोड क्यों नहीं होता है क्योंकि यहां मुझे यह देखना चाहिए:

https://help.ubuntu.com/community/EnvironmentVariables


आप कैसे परीक्षण कर रहे हैं कि क्या ~ / .profile लोड है?
एंड्रिया कोरबेलिनी

पर्यावरण चर है ~ / .profile
sunprophit

जवाबों:


3

आप हर फ़ाइल में एक चर को परिभाषित कर सकते हैं:

ORDER=${ORDER}+"/etc/profile"

क्रमश:

ORDER=${ORDER}+"~/.profile"

और प्रदर्शन करते हैं

echo ${ORDER}

देखना है, क्या शामिल था और किस क्रम में था। निश्चित रूप से यह आपको नहीं बताएगा, अगर आप अलग-अलग स्क्रिप्ट से चूक गए थे।

इसलिए यदि आप एक स्रोत का उल्लेख देखते हैं, तो उस स्क्रिप्ट को देखने के लिए पढ़ें, क्या एक स्क्रिप्ट एक दूसरे को स्रोत बनाती है, और इनमें शामिल हैं।

/etc/bash.bashrc और ~ / .bashrc और ~ / .bash_login दिमाग में आते हैं, साथ ही साथ / etc / डिफ़ॉल्ट से चीजें।


हम्म, $ ORDER खाली है, जिसका अर्थ है कि उनमें से कोई भी लोड नहीं है?
सूरजमुखी

निश्चित नहीं है कि $ ORDER खाली क्यों था, शायद कुछ सिंटैक्स त्रुटि के कारण। मैं डैश और बैश के अंतर के बारे में बहुत कुछ नहीं जानता। यद्यपि मैं आपको सही उत्तर के रूप में चिह्नित करने जा रहा हूं क्योंकि इससे समस्या कहां है, यह जानने में मदद मिली।
सनप्रोफिट

7

यह सब इस बात पर निर्भर करता है कि आप किस उपयोगकर्ता के साथ लॉग इन करने का प्रयास कर रहे हैं। वैश्विक /etc/profileफ़ाइल हर उपयोगकर्ता के लिए भरी हुई है , जबकि ~/.profileकेवल उपयोगकर्ता के लिए भरी हुई है।

~वर्तमान उपयोगकर्ता की होम निर्देशिका को इंगित करता है। इसलिए, यदि आप इसे अंदर /home/user-a/.profileडालेंगे और लॉगिन करेंगे user-a, तो वैश्विक और इसकी उपयोगकर्ता-विशिष्ट फ़ाइल लोड की जाती हैं (उस क्रम में), जबकि यदि आप फ़ाइल के user-bबिना लॉगिन करेंगे .profile, तो यह केवल वैश्विक लोड करता है।


वर्तमान उपयोगकर्ता की प्रोफ़ाइल (~ / .profile) में वह हिस्सा है जिसे पर्यावरण चर को अद्यतन करना चाहिए। मेरा मतलब है कि यह किसी और प्रोफाइल में नहीं है। यह इस उपयोगकर्ता की प्रोफ़ाइल है। लेकिन मैंने प्रोफाइल लोड करने के परीक्षण के लिए @user_unknown समाधान की कोशिश की और ऐसा लगता है कि उनमें से कोई भी लोड नहीं किया गया है।
सूरजमुखी

0

दोनों को लोड किया जाना चाहिए, और ~ / .profile पिछले लोड किया जाना चाहिए (जिसका अर्थ है कि यह प्राथमिकता है)।


तब मुझे यकीन नहीं है कि क्या चल रहा है। यदि मैं इसे टर्मिनल में स्पष्ट रूप से चलाता हूं तो यह लोड होता है। लॉगिन के दौरान समस्या हो सकती है और परिणाम में ~ / .profile लोड नहीं होता है, लेकिन तब टर्मिनल में ये समस्याएं नहीं होती हैं। अगर सिस्टम इसे लोड करने की कोशिश करता है तो क्या मैं जांच कर सकता हूं?
सूरजमुखी

0

यह मेरी गलती है। मेरे ~ / .profile में [[some_test]] था और यह बैश में अच्छा चलता है, लेकिन मुझे लगता है कि डैश सत्र शुरू होने पर कुछ pre_session_creation / post_session_creation कमांड चलाता है और डैश को पता नहीं चलता [[कीवर्ड]। तो सब कुछ लोड हो गया था लेकिन त्रुटि पर रोक दिया गया।

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