
echo $PATH
以下の結果が得られます:
/home/mayank/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/java-7-oracle/bin:/usr/lib/jvm/java-7-oracle/db/bin:/usr/lib/jvm/java-7-oracle/jre/bin:/usr/lib/oracle/12.1/client/bin
echo $ORACLE_HOME
フェッチ:
/usr/lib/oracle/12.1/クライアント
echo LD_LIBRARY_PATH
与える(設定する/etc/bash.bashrc
たが、現在は以下のように表示されています)
LD_LIBRARY_PATH
vim
ショーのために以下のことを設定.bash_profile
します:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" #
Load RVM into a shell session *as a function*
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
PATH=$PATH:/usr/local/bin
export PATH
上記のファイルで設定しているにもかかわらず、マシンを実行して再起動しても、ld_library_path
正しいパスが取得されません。env
sudo ldconfig
私が求めている支援:
環境変数を正しく設定する
sqlplusを実行する
同じ質問が存在するスーパーユーザーしかし、そこには解決策は示されていません。
答え1
コメントにあるように、ライブラリは /usr/lib/oracle/12.1/client/lib/ にありますが、パスには /usr/lib/oracle/12.1/client/bin のみが含まれています...ライブラリが見つからない理由がわかりますか?
/usr/lib/oracle/12.1/client/lib/ ディレクトリ (.profile または .environment または .bash_profile、または (すべてのユーザー用に必要な場合は) /etc/bash.bashrc ファイル内) を使用して LD_LIBRARY_PATH を拡張できます。sqlplus が LD_LIBRARY_PATH を処理するかどうかはわかりませんが、試してみてください。
LD_LIBRARY_PATH が何に設定されているかを確認するには、次のように入力する必要があります。
echo $LD_LIBRARY_PATH
(値を読みたい場合は $ に注意してください)
お役に立てれば!
答え2
/usr/lib/oracle/12.1/client/lib/
ディレクトリの下には、他のグループが読み取ることができないファイルがいくつかあります。
cd /usr/lib/oracle/12.1/client/lib/
chmod +r *
すると私の環境では動作します。