* * / ইত্যাদি / পরিবেশে এনভায়রনমেন্ট ভেরিয়েবলগুলি উল্লেখ করা হয়?


19

আমি সম্প্রতি আবিষ্কার করেছি /etc/environment, যা স্ক্রিপ্টগুলির চেয়ে সহজ পরিবেশের ভেরিয়েবল সেটআপ করার আরও মানক উপায় বলে মনে হচ্ছে, তবে আমি ভাবছিলাম যে / ইত্যাদি / এনভায়রনমেন্ট ফাইলে পরিবেশগত পরিবর্তনগুলির ব্যাক-রেফারেন্সের কোনও উপায় আছে কিনা।

এটি হ'ল,

JAVA_HOME="/tools/java"
GRAILS_HOME="/tools/grails"
GROOVY_HOME="/tools/groovy"
GRADLE_HOME="/tools/gradle"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"

আমি যদি $JAVA_HOME/binPATH সংজ্ঞায় যুক্ত করার চেষ্টা করি তবে আমি $ জাভাআহোম / বাইন পেয়েছি, এবং ইন্টারপোল্টেড ভেরিয়েবলটি পাই না। এর প্রতিকারের জন্য, আমি প্রোফাইল.d এ এনভায়রনমেন্ট.শ তৈরি করছি /binযাতে পথে প্রবেশের প্রবেশদ্বারগুলি যুক্ত করা যায় তবে এটিকে নিখুঁত এবং বিশৃঙ্খলাযুক্ত বলে মনে হয়।

/ Etc / এনভায়রনমেন্টে এনভায়রনমেন্ট ভেরিয়েবলের ব্যাকরেফার করার কোনও উপায় আছে কি?

উত্তর:


13

/etc/environmentফাইল দ্বারা পড়া হয় pam_envপিএএম মডিউল । এটি কেবল সাধারণ কী-মান জোড়কে সমর্থন করে, ডানদিকে কোনও বিকল্প নেই।

আপনি যদি বিকল্পগুলি বা অন্যান্য শেল বিস্তারের সাহায্যে মানটি বানাতে চান তবে আপনাকে শেলের মধ্য দিয়ে যেতে হবে। /etc/profile(বা একটি ফাইল /etc/profile.d) এর জন্য সঠিক জায়গা। এটি theতিহ্যবাহী জায়গা ( /etc/environmentইউনিক্স সিস্টেমের ইতিহাসে তুলনামূলকভাবে সাম্প্রতিক উদ্ভাবন), এবং এটি ব্যবহার করার ক্ষেত্রে অবশ্যই পিছলে কিছুই নেই। এর প্রধান উপকারিতা /etc/environmentহ'ল এটি পরিবেশের ভেরিয়েবলগুলি এমনকি লগইন পদ্ধতিগুলির সাথে সেট করার অনুমতি দেয় যা শেলকে জড়িত করে না বা ব্যবহারকারীরা যারা নন-বোর্ন শেল ব্যবহার করে, তবে এটি ব্যবহারে সাধারণ নয়।


প্রতিস্থাপন ব্যতীত, আপনি প্রচুর রিন্ডানডেন্সির সাথে শেষ করেন /etc/environment, আমি /etc/profileপরামর্শ দিয়েছিলাম , আপনার পরামর্শের জন্য ধন্যবাদ।
SAFX

2

উবুন্টু ডকুমেন্টেশন এটিকে অসম্ভব বলে মনে করে। কিন্তু, একটি উত্তর আছে।

উত্তর : অবিচ্ছিন্ন, সিস্টেম ওয়াইড এনভায়রনমেন্ট ভেরিয়েবলগুলি এতে তৈরি করুন/etc/.bashrc

JAVA_HOME="/tools/java"
...
PATH="$JAVA_HOME:$PATH"  

বিবরণ: এনভায়রনমেন্ট ভেরিয়েবলের ডকুমেন্টেশন
থেকে এখানে আরও কিছু বিবরণ দেওয়া আছে । সরকারী সুপারিশটি হ'ল ব্যবহার করার জন্য , যেমন আপনি চেষ্টা করেছেন। সমস্যাটি হ'ল এই ফাইলটি কোনও স্ক্রিপ্ট ফাইল নয়। অন্য কথায়, আপনি ভেরিয়েবল ঘোষণায় ভেরিয়েবল ব্যবহার করতে পারবেন না।
/etc/environment

ডকুমেন্টেশন 2 অন্যান্য "না প্রস্তাবিত" ফাইলগুলির সাথে চলতে
/etc/profileএবং /etc/bash.bashrc

/etc/profile"/etc/bash.bashrc ফাইলের চেয়ে আর কিছু না করে"। পরিবর্তে চয়ন করুন

/etc/bash.bashrc কারণ "যখনই কোনও ব্যবহারকারী শেল বা ডেস্কটপ পরিবেশে প্রবেশ করে তবে এই ফাইলটি চালাতে উবুন্টু ডিফল্টরূপে কনফিগার করা হয়েছে।"


কিছু উবুন্টু বিকাশকারীদের সাথে পরামর্শ করে আমি পরিবেশগত পরিবর্তনগুলি আপডেট করেছি , সুতরাং সেই "প্রস্তাবিত" বিবৃতিগুলি আর নেই।
গুনার হেজালমারসন

"যখনই কোনও ব্যবহারকারী শেল প্রবেশ করে"। শেল প্রবেশের জন্য কোনও ব্যবহারকারী না থাকলে আমার কী করা উচিত? আমার অটোমেটেড ব্যবহারকারীদের জন্য আমার পরিবেশের পরিবর্তনগুলি দরকার যা সূচনাতে সফ্টওয়্যার চালায়। উদাহরণস্বরূপ, আমার একা 6 টি লাইন প্রক্সি কনফিগারেশন রয়েছে। আমি এটা দিয়ে কি করা উচিত?
eis
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.