0

Snow Leopardにローカルに何かをインストールするたびに、/ usr / localにインストールするかどうか、またはsudoを使用してインストールコマンドを実行するかどうかについて問題が発生するようです。私はstackoverflowを含むこれに関する矛盾するアドバイスを読みました

書き込み可能なgemインストールエラーとPATH(sudoを使用) gemインストール許可の問題(コメントでsudoを使用しないでください)

sudoを使用してbrewformulaとgemsをインストールする必要がありますか?sudo権限なしでインストールした場合のエラーや警告を回避するにはどうすればよいですか?

たとえば、gem updateを実行する場合:

WARNING:  Installing to ~/.gem since /Library/Ruby/Gems/1.8 and
      /usr/bin aren't both writable.
WARNING:  You don't have /Users/luke/.gem/ruby/1.8/bin in your PATH,
      gem executables will not run.

私はRuby開発者ではありませんが、sassとcompassを使用したいので、rvmをインストールするのはやり過ぎのようです。パスにルビーを追加するだけで、これらすべての問題が解決しますか?また、/ usr/localをchownする必要があることもどこかで見ました。最終的にこれの底に到達するのは良いことです。

4

2 に答える 2

3

RVMを却下することで、自分自身に大きな不利益をもたらしています。やり過ぎではないと思います。このSOの質問を書くのにかかった時間に、RVMがインストールされ、Ruby(1.8または1.9のどちらかお好みの方)のインストールも完了します。そうすれば、宝石の警告とsudoの問題は問題にならなかったでしょう。最近、ルビーコミュニティのほとんどすべての人がRVMを使用しています(Windowsを使用している場合を除く)。これには、場合によっては本番環境も含まれます。

そうは言っても、Homebrew(あなたが言及した)には、 gemのインストール、rubygemsなどについて説明しているwikiページがあります。彼らのアドバイスに従うよりも悪いことをする可能性があります。sudo/usr/local

于 2011-08-09T04:40:29.097 に答える
1

私はを使用することを好むsudoので、通常の特権で実行されているプログラムがシステム全体のファイルを混乱させることはないと確信しています。私も通常、同じ理由で管理者以外のユーザーとして実行しています。これは、誤ってシステムを損傷することから保護されていることを意味しますが、何かをインストールする場合は/usr/local使用するsudo必要があるため、混乱しないことが確実な場合にのみ実行します。よくわからないことや、単に試したいことなどは、自宅のプレフィックスにインストールします。

他の人々は、よりシングルユーザーの精神を持っており、/usr/local自分自身に敬意を表しています。通常の使用法でコンテンツを台無しにするリスクはあります。たとえば、自宅のプレフィックスに何かをインストールしようとしたが、構成が中断/usr/localされた場合、警告なしで一部をインストールできます。 。OTOH、彼ら/usr/localがインストールするとき、彼らがシステムの他の部分に影響を与えることはなく/usr/local、彼ら自身の家にのみ影響を与えることを確信しています。

ただし/usr/local、同じ所有権と同じ特権を持っているため、これはホームディレクトリの拡張にすぎません。PATHにインストールし~/usr/て追加~/usr/binすることもできます。これは、自分でインストールしたいときに行うことです。

/usr/local最善の方法は、おそらく、ある特別なグループと、sudoそのディレクトリに書き込むことはできるが、他のランダムなsudoを実行できないそのグループ内の特別なユーザーにchgrpすることです。多分いつか私はそれをそのように構成することに取り掛かるでしょう。sudoそれまでの間、にインストールしたいときに使用することを好み/usr/localます。homebrewのようなパッケージマネージャーを使用する利点は、数式がチェックされて正しくインストールされ、簡単にアンインストールできることです。

于 2011-08-08T18:15:11.387 に答える