From: rubikitch@... Date: 2008-08-31T13:36:52+09:00 Subject: [ruby-list:45452] Re: sudo: gem: command not found From: Akira Hayakawa Subject: [ruby-list:45450] Re: sudo: gem: command not found Date: Sun, 31 Aug 2008 12:50:51 +0900 おそらく「sudo ruby -S gem」で解決していると思いますが… 「sudo jruby -S gem install 」は 「sudo /usr/local/jruby/bin/jruby -S gem install 」と する必要があると思います。うっかりしていました。 面倒ならばシェルエイリアスで。 > やはりjruby/bin経由だと、sudoが許してくれないという仕様なんですか。 おおかたrootの$PATHに /usr/local/jruby/bin が含まれていないからでしょう。 $ sudo sh -c 'echo $PATH' /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin > 何ででしょう。利益ないと思いますが。 セキュリティの観点からrootの$PATHは最小限にしておくべきです。 $PATHが通ってない実行ファイルをsudoで実行するには、 フルパスで指定しなさいということだと思います。 > /usr/local/binにシンボリックリンク貼って逃げるのは簡単ですが、 > 以降すべて、jruby/binを回避する為にシンボリックリンクを貼るハメになりませんか? コンピュータの世界では「yak shaving」が日常茶飯事です。○○を解決するに は××を解決しないといけない、××を解決するには△△を解決しないといけ ない〜という感じで、すべての問題にまじめに取り組むと(人間が)スタック オーバーフローしてしまいます。だから、とりあえず逃げの一手を打ってオー バーフローを防ぐことはよくやります。 シンボリックリンクという逃げの一手を打って、先に問題『EmacsでのRuby環境 を整える』を解決したほうが精神衛生上良いと思います。解決したら改めてシ ンボリックリンクを削除し、sudoの問題解決をしてみては。 -- rubikitch Blog: http://d.hatena.ne.jp/rubikitch/ Site: http://www.rubyist.net/~rubikitch/