web-dev-qa-db-ja.com

brewを実行すると警告が生成されます

OS X10.6.5に最新のHomebrewをインストールしました
任意のコマンドを実行すると、次の警告が生成されます。

/usr/local/Library/Homebrew/global.rb:34:警告:PATH、モード040777の安全でないワールド書き込み可能ディレクトリ/ usr/local/bin

なぜこの警告が表示されるのですか?とどのように治療するのですか?

24
Chiron

まず、問題をデバッグするときに役立つ2つのbrewコマンドがあります。彼らです:

$ brew doctor
$ brew missing

第二に、Homebrewはあなたに/usr/local/binは、誰がそのディレクトリに書き込むことができるかについて寛容すぎるように設定されています。これは潜在的なセキュリティ問題です。これを改善するために、Homebrewが意図したものにパーミッションをリセットすることができます。

$ chmod 755 /usr/local/bin

これを実行しようとしたときにエラーが発生した場合は、/ usr/localディレクトリ(およびサブディレクトリ)が間違ったユーザーによって所有されている可能性があります。その場合は、/ usr/localディレクトリを削除して Homebrewを正しく 再インストールすることを検討します。または、最後のコマンドの前にSudoを付けて、管理者パスワードを入力することで、エラーを上書きできます。

$ Sudo chmod 755 /usr/local/bin
25
Ryan McGeary

私は同じ問題を抱えていて、Homebrewインストールスクリプトから大まかに取ったこれらの3つのコマンドでそれを修正しました:

Sudo chgrp -R admin /usr/local
Sudo chmod -R g+rwx /usr/local
Sudo chmod -R o-w /usr/local
88

これはRubyのセキュリティ機能です。ディレクトリ/ usr/local/binの権限を変更して、以下を実行することでこれを取り除くことができます。

Sudo chmod go-w /usr/local/bin

プロンプトでパスワードを入力します。

not所有権を変更する必要があり、どちらでもない Ryanが提案したように/ usr/localを削除する必要があります(これまでに達成したすべてを再構築する必要があります)、ディレクトリルートが所有しており、これが通常の方法です。

7
Asmus