Homebrewはsudo権限なしでパッケージをうまくインストールできますが、Homebrew自体をインストールするには管理者権限が必要なようです。
Homebrewをsudoまたはadmin権限のないMac環境にインストールしたい。これは可能ですか?
Homebrewはsudo権限なしでパッケージをうまくインストールできますが、Homebrew自体をインストールするには管理者権限が必要なようです。
Homebrewをsudoまたはadmin権限のないMac環境にインストールしたい。これは可能ですか?
回答:
いいえ。重要な手術をしない限り。
その理由は、Homebrewがにパッケージをインストールすることを強く要求しているから/usr/local
です。実際、他の場所に強制的にインストールした場合でも、brew install
パッケージのインストールに使用すると依存関係が壊れる可能性があります。これらのパッケージのすべてではないにしても、ほとんどは事前にコンパイルされており、に存在することを期待してリンクされてい/usr/local
ます。
この主張の理由は、/usr/local
まさにこのようなものをインストールすることをPOSIXが推奨する場所だからです。作成するためには/usr/local
自作のディレクトリと割り当て所有権を作成するために、一時的な管理者の資格情報を必要とします。
これにより、資格情報を昇格させることなく他のものをインストールできるようになります。
brew
ホームディレクトリに5年以上プレフィックスを設定して実行していますが、その間に1つまたは2つの壊れたパッケージに遭遇しました。
はい。
インストールスクリプトを変更して、使用しないsudo
ディレクトリと選択したディレクトリを使用するようにしました。https://gist.github.com/skyl/36563a5be809e54dc139
それをダウンロードし、YOUR_HOME
スクリプトで絶対パスに設定します。chmod +x
スクリプト。YOUR_HOME/usr/local
ディレクトリを作成します。次に、スクリプトを実行します。
./install.rb
で.bash_profile
、私は設定しました(これは重要ではありませんが、かなり確実です):
export HOMEBREW_PREFIX=/The/path/to/YOUR_HOME/usr/local
今、私は次のことができます:
brew install wget
bin
ディレクトリYOUR_HOME
+ /usr/local/bin
がにあることを確認してください$PATH
。
which wget
#{YOUR_HOME}
、HOMEBREW_CACHE
変数にもプレフィックスを追加する必要がありました。それに、システム管理者にはすでにhomebrewがインストールされていたので、追加するexport PATH=/path/to/home/usr/local/bin:$PATH
必要.bash_profile
がありました。しかし、それでもすべてうまくいくようです。
usr
、スクリプトを実行する前にホームディレクトリにディレクトリを作成する必要があることを伝えたいだけです。また、変数に追加#{YOUR_HOME}
するときHOMEBREW_CACHE
、一重引用符を二重引用符に変更して機能させる必要があるようです。いくつかのステップがありますが、Homebrewの力を得るのは間違いなく価値があります。
chgrp admin /usr/local
管理者以外のアカウントは管理者グループのメンバーではないため、動作しませんでした。 tそのグループに何かを変更します。これが通常の非管理者アカウント(何らかの奇妙な理由でsudoからロックアウトされた管理者アカウントだけでなく)で動作するようにできれば素晴らしいでしょう。
はい。
醸造システムはブートストラップ可能です
#!/bin/bash
set -ex
export HOMEBREW_PREFIX=~/homebrew
# export HOMEBREW_NO_ANALYTICS=1
mkdir -p "${HOMEBREW_PREFIX}"
curl -fsSLk https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C "${HOMEBREW_PREFIX}"
ls -laR "${HOMEBREW_PREFIX}"
export PATH="${HOMEBREW_PREFIX}/bin:${PATH}"
type -a brew
type -a openssl || :
openssl version -a || :
type -a curl || :
curl -V || :
# Fails to lock a .git/config file.
##brew analytics off
# No "brew update" until installing the proper openssl and a curl that uses it.
# brew update
# brew remove openssl || :
brew install openssl
brew link --force openssl
# brew remove curl || :
brew install --with-openssl curl
brew link --force curl || :
curl -V
ls -la "${HOMEBREW_PREFIX}/opt"
ls -la "${HOMEBREW_PREFIX}/bin"
ls -laLR "${HOMEBREW_PREFIX}/opt/curl/"
sudoなしでhomebrewをインストールするには。
git clone https://github.com/mxcl/homebrew.git
echo 'export PATH="/path/to/cloned_folder/homebrew/bin:$PATH"' >> ~/.bash_profile
ターミナルを再起動して実行
brew --version
Brewはgitリポジトリを移動したため、上記は機能しなくなりました。
git clone git@github.com:Homebrew/brew.git
echo 'export PATH="/path/to/cloned_folder/homebrew/bin:$PATH"' >> ~/.bash_profile