徒然なるままに

個人の備忘録を中心としたブログです

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
一般ユーザとrootでは、セキュリティ上、環境変数PATHが異なっています。
そのため、以下のような状況が考えられます。

ルート権限が必要なプログラムがあり、格納されているディレクトリにPATHを通したとします。
ここでこのプログラムを実行するには、
「root権限が必要」
かといって、
「rootになるとPATHが通っていない」
という状況が出てきます。

この対策案として、
1、rootのホームディレクトリに.bash_profileを作成してPATHを追加する
2、rootのPATHが通っている/usr/bin内に目的のプログラムのシンボリックリンクを作成する
という手があります。

セキュリティ上、rootのPATHをあちこちに通したくないので、2を推奨します。
例えばApacheとtomcatのスタートアップ(シャットダウン)スクリプトの場合
ln -s /usr/local/apache/bin/apachectl /usr/bin/apachectl
ln -s /usr/local/apache/bin/startup.sh /usr/bin/startup.sh
ln -s /usr/local/apache/bin/shutdown.sh /usr/bin/shutdown.sh


lrwxrwxrwx 1 root root 31  2月 20 06:43 /usr/bin/apachectl -> /usr/local/apache/bin/apachectl
lrwxrwxrwx 1 root root 33 2月 20 06:43 /usr/bin/shutdown.sh -> /usr/local/tomcat/bin/shutdown.sh
lrwxrwxrwx 1 root root 32 2月 20 06:43 /usr/bin/startup.sh -> /usr/local/tomcat/bin/startup.sh


という感じになります。
なおシンボリックリンクのパーミションは全く関係ありません。
実行はリンク先のパーミションのみに影響されます。

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

http://kamiyasu2.blog.fc2.com/tb.php/15-f0e412c5

kamiyasu

Author:kamiyasu

QR

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。