පාරිසරික විචල්‍යයන් ස්ථිර ලෙස සකසන්නේ කෙසේද


243

මගේ විචල්යයන්

LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
ORACLE_HOME=/usr/lib/oracle/11.2/client64

මෙම විචල්යයන් ස්ථිරවම සුරැකෙන්නේ කෙසේද?


2
මෙම පිටුවේ ඇති අනෙක් පිළිතුරු විශිෂ්ටයි. එක් කුඩා නිර්දේශයක් වනුයේ මාර්ගය /usr/lib/oracle/11.2/client64/libයටතේ නව ගොනුවක් එක් කිරීමයි /etc/ld.so.conf.d/. එවිට ඔබ මාලාවක් LD_LIBRARY_PATH කිරීමට අවශ්ය නැත, ද බලන්න මෙතන .
එලියට් ෆ්‍රිෂ්

1
පරිස්සමින්, මෙම කතාවට මුලින් පෙනෙනවාට වඩා බොහෝ දේ ඇත. මගේ පිළිතුර පරීක්ෂා කිරීමට මම ඔබට ආරාධනා කරමි.
jasonleonhard

Answers:


265

ඔබ ගොනුව වෙත එක් කළ හැකි .profileහෝ ඔබේ පිවිසුම් ෂෙල් පැතිකඩ ගොනුව (ඔබගේ නිවසේ බහලුම තුල).

පාරිසරික විචල්‍යය "ස්ථිරවම" වෙනස් කිරීම සඳහා ඔබ අවම වශයෙන් මෙම තත්වයන් සලකා බැලිය යුතුය:

  1. පිවිසුම් / පිවිසුම් නොවන කවචය
  2. අන්තර්ක්‍රියාකාරී / අන්තර්ක්‍රියාකාරී කවචය

bash

  1. පිවිසුම් shell එක ලෙස බෑෂ් පූරණය වනු ඇත /etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profileපිළිවෙළ
  2. පුරනය නොවන අන්තර්ක්‍රියාකාරී කවචය ලෙස බාෂ් පටවනු ලැබේ ~/.bashrc
  3. පිවිසුම් නොවන අන්තර්ක්‍රියාකාරී කවචයක් ලෙස බෑෂ් පරිසර විචල්‍යයේ දක්වා ඇති වින්‍යාසය පටවනු ඇත $BASH_ENV
$EDITOR ~/.profile
#add lines at the bottom of the file:  
     export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
     export ORACLE_HOME=/usr/lib/oracle/11.2/client64

zsh

$EDITOR ~/.zprofile
#add lines at the bottom of the file:  
     export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
     export ORACLE_HOME=/usr/lib/oracle/11.2/client64

ksh

$EDITOR ~/.profile
#add lines at the bottom of the file:  
     export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
     export ORACLE_HOME=/usr/lib/oracle/11.2/client64

බෝර්න්

$EDITOR ~/.profile
#add lines at the bottom of the file:  
     LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib     
     ORACLE_HOME=/usr/lib/oracle/11.2/client64
     export LD_LIBRARY_PATH ORACLE_HOME

csh හෝ tcsh

$EDITOR ~/.login
#add lines at the bottom of the file:  
     setenv LD_LIBRARY_PATH /usr/lib/oracle/11.2/client64/lib
     setenv ORACLE_HOME /usr/lib/oracle/11.2/client64

ඔබට එය සියලු පරිශීලකයින් සඳහා ස්ථිර කිරීමට අවශ්‍ය නම්, ඔබට පහත දැක්වෙන අනුරූප ලිපිගොනු සංස්කරණය කළ හැකිය /etc/, එනම් /etc/profileබෝර්න් වැනි ෂෙල් වෙඩි /etc/csh.loginසඳහා (t) csh සඳහා /etc/zsh/zprofileසහ /etc/zsh/zshrczsh සඳහා.

තවත් විකල්පයක් නම් /etc/environment, ලිනක්ස් පද්ධතිවල PAM මොඩියුලය කියවන අතර එය pam_envසහාය දක්වන්නේ සරල පැවරුම් සඳහා මිස ෂෙල් විලාසිතාවේ පුළුල් කිරීම් සඳහා නොවේ. (මේ පිළිබඳ ඩෙබියන්ගේ මාර්ගෝපදේශය බලන්න .)

මෙම ලිපිගොනු වල දැනටමත් සමහර පැවරුම් අඩංගු විය හැකි බැවින් ඔබගේ ගොනුවේ දැනටමත් ඇති සින්ටැක්ස් අනුගමනය කරන්න.

වෙනස්කම් යෙදීම සඳහා කවචය නැවත ආරම්භ කර පරිශීලකයා නැවත සම්බන්ධ කිරීමට වග බලා ගන්න.

ඔබට පද්ධති පුළුල් පරිසර විචල්‍යයක් එක් කිරීමට අවශ්‍ය නම්, /etc/profile.dවිචල්‍යය ආරම්භ කිරීම සඳහා sh ස්ක්‍රිප්ට් අඩංගු ෆෝල්ඩරයක් දැන් තිබේ.
ඔබ අපනයනය කළ සියලුම විචල්‍යයන් සමඟ ඔබේ sh ස්ක්‍රිප්ට් එක මෙහි තැබිය හැකිය.
ඩෙබියන් හි env වෙත විචල්‍යය එකතු කිරීමේ සම්මත ක්‍රමයක් ලෙස මෙය භාවිතා නොකළ යුතු වුවද ප්‍රවේශම් වන්න.


මෙම .profileතුළ /etc/නමුත් මම මේ විචල්යයන් සැකසීමට නොහැකි කොහොමද කියලා කිරීමට .profileකරුණාකර මට කියන්න
user3021349

6
.profileඔබගේ නිවසේ නාමාවලියෙහි නොමැත/etc/
කිවි

1
[Admin@localhost etc]$ cat ~/.profile cat: /home/Admin/.profile: No such file or directory [Admin@localhost etc]$
user3021349

4
30 user3021349 මම රළු ලෙස අදහස් නොකළ නමුත් ඔබ තත්පරයක් සිතන්නේ නම් ඔබට ප්‍රගුණ කළ වෙනත් සංස්කාරකයක් ද භාවිතා කළ හැකිය. :wqගොනුව ලිවීමට සහ vi වලින් පිටවීමට ඇති විධානය escකලින් ටයිප් කිරීමට අමතක නොකරන්න
කිවි

3
crontabස්ක්‍රිප්ට් වල පරිසර විචල්‍යයන් ඔබ සලකා බැලිය යුතුය . crontabස්ක්‍රිප්ට් එකක් ක්‍රියාත්මක වන විට මෙම ස්ථාන කිසිවක් සොයා බලන්නේ නැත .
යෙගල්

73

සියලුම පරිශීලකයින් / ෂෙල් වෙඩි සඳහා නම්, ඔබට භාවිතා කළ හැකි ඩිස්ට්‍රෝ මත පදනම්ව /etc/environmentහෝ /etc/profile. /etc/profile.dඇසුරුම් පද්ධතිය විසින් කරන ලද යාවත්කාලීනයන් සමඟ ගැටීමට ඇති ඉඩකඩ අඩු බැවින් නව ගොනුවක් සෑදීම වඩාත් සුදුසුය.

තුළ /etc/environment, විචල්‍යයන් සාමාන්‍යයෙන් සකසා ඇත්තේ name=value, උදා:

ORACLE_HOME=/usr/lib/oracle/11.2/client64

තුළ /etc/profile, exportමෙය ස්ක්‍රිප්ට් එකක් බැවින් ඔබ භාවිතා කළ යුතුය , උදා:

export ORACLE_HOME=/usr/lib/oracle/11.2/client64

එම යටතේ ගොනු සඳහා යයි /etc/profile.dඑහි ද කටයුතු සඳහා ගොනුව සඳහා සපුරාලිය යුතු සීමා නම් ලැබිය හැකිය. ඩේබියන් හි, ගොනුවට දිගුව තිබිය යුතුය .sh(එය මූලාශ්‍රය බැවින් වළලු රේඛාවක් හෝ ක්‍රියාත්මක කළ හැකි අවසරයන් අවශ්‍ය නොවේ). /etc/profileමෙම ලිපිගොනු පටවා ඇති ආකාරය බැලීමට ඔබේ ඩිස්ට්‍රෝ ප්‍රලේඛනය පරීක්ෂා කරන්න හෝ ස්ක්‍රිප්ට් එක බලන්න.

ආරක්ෂිත අවදානමක් ඇතුළුව LD_LIBRARY_PATHස්ථිරවම එම සැකසුම ගැටළු සහගත විය හැකි බව සලකන්න . විකල්පයක් ලෙස, LD_LIBRARY_PATHක්‍රියාත්මක වීමට පෙර අවශ්‍ය සෑම වැඩසටහනක් සඳහාම විධාන රේඛාවේ ආරම්භයට පෙර සූදානම් වීමට යම් ක්‍රමයක් සොයා ගැනීමට මම යෝජනා කරමි . උදා:

LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib myprog

මෙය කළ හැකි එක් ක්‍රමයක් නම් වැඩසටහන ක්‍රියාත්මක කිරීම සඳහා එතීමේ පිටපතක් භාවිතා කිරීමයි. ඔබට මෙය ඔබගේ වැඩසටහනට සමාන නමක් ලබා දී ඔබේ වැඩසටහනේ ස්ථානයට පෙර/usr/local/bin දිස්වන ඕනෑම තැනක තැබිය හැකිය . මෙන්න උදාහරණ පිටපතක් (පිටපතට අමතක නොකරන්න ):PATHchmod +x

#!/bin/sh
LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib /real/location/of/myprog "$@"

ඉතින්, මම මගේ environmentගොනුවට අගය යුගල එකතු කර ඇත්නම් , ඒවා පැටවීමට හේතුව කුමක්ද? උදාහරණයක් ලෙස, vi සංස්කාරකයෙන් ඉවත් වූ පසු (වෙනස්කම් සාර්ථකව ලියා ඇත), මම echo $MY_NEW_VARIABLEඑය ලිවීමට හා මුද්‍රණය කිරීමට බලාපොරොත්තු වෙමි - සංස්කරණය කරන්න: මම නව විධාන කවචයක් දියත් කළහොත් ඔවුන් එහි සිටින බව මට පෙනේ
bkwdesign

මෙය පුද්ගලික ප්‍රශ්නයක්ද නැතිනම් කුමක් දැයි සැක නැත, නමුත් මම මෙය ආරම්භ කිරීමෙන් පසු මගේ මෙහෙයුම් පද්ධතිය /etc/environmentනැවත ආරම්භ කිරීමට සිදුවිය source /etc/environment. එබැවින් ඔබට පරිසර විචල්‍යය නොපවතින ගැටළු තිබේ නම්, නැවත ආරම්භ කිරීමට උත්සාහ කරන්න.
බ්ලෙයාර්ග් 23

kbkwdesign @ Blairg23, /etc/environmentපිටපතක් නොවේ, එබැවින් එය උපුටා ගත නොහැක. එය පිවිසුම් වේලාවේදී (සහ වෙනත් පද්ධති සිදුවීම් අතලොස්සක්) PAM මඟින් පටවා ඇත, එම නිසා ඔබට $ su <your username here>හුදකලා සැසියේ නව අගයන් ලබා ගැනීම සඳහා ඔබට ලොග්අවුට් / ලොග් වීම හෝ ටර්මිනලයක නව පිවිසුම් සැසියක් ක්‍රියාත්මක කළ හැකිය . ඔබ පිට වූ පසු අගයන් අතුරුදහන් වනු ඇත, එබැවින් එය සම්පුර්ණයෙන්ම ඉවත් වීම / පිවිසීම අඩු දෝෂ සහිත වේ.
ආරොන් ඩැනියෙල්සන්

2

ඔබ ඔරකල් ස්ථාපනය කරන විට, ඔරකල් ඔබ හරි ක්ලික් කිරීමට පෙර ස්ක්‍රිප්ට් කිහිපයක් ධාවනය කරන ලෙස ඉල්ලා සිටියේය. එම ස්ක්‍රිප්ට් එක .bash_profileඔරකල් පරිශීලක නිවාස නාමාවලියෙහි ව්‍යාජ සැකසුමක් තබා ඇත . ගොනුව බැලීමට, ls -alසැඟවුණු සියලුම ගොනු පෙන්වනු ඇත.

nano bash_profileගොනුව විවෘත කිරීමට ටයිප් කරන්න. ඔබගේ සත්කාරක නාමය සහ සුදුසු සිඩ් නම පිළිබිඹු කිරීම සඳහා ගොනුවේ වෙනස්කම් කරන්න. වෙනස් කිරීමට අවශ්‍ය වෙනත් සැකසුම් පරීක්ෂා කරන්න. සුරැකීමට පාලක x ඔබන්න සහ ඔබට සුරැකීමට අවශ්‍ය දැයි විමසූ විට y ටයිප් කරන්න. සුරැකීමට ආපසු යතුර ඔබන්න. පරිගණකය නැවත ආරම්භ කරන්න. ඔරකල් පරිශීලකයෙකු ලෙස ලොග් වීම. ටයිප් කිරීමෙන් දත්ත සමුදාය ආරම්භ කරන්න

sqlplus / as sysdba

startup  

පිළිගත් පිළිතුරට වඩා මෙය වෙනස් වන්නේ කෙසේද?
රෝයිමා
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.