2012-03-21 28 views
38

izinleri usr/local içine yükleyinHomebrew <p></p> Ben çalıştığımda/Ben standart homebrew sahip mesele

Larson-2:~ larson$ sudo brew install postgresql 
Cowardly refusing to `sudo brew install' 

I neyim yanlış mı yapıyorsun?

+0

yapabilirsiniz 'sudo demlemek install'ın ancak önce değiştirmeniz gerekir demlemek yardımcı programı izinleri köküne aittir. Bu bir güvenlik özelliğidir. – mxcl

+0

Aşağıdaki yöntem brew yardımcı programının izinlerini değiştiriyor gibi görünüyor, değil mi? –

+0

Hayır, değil.Bundan sonra/usr/local – mxcl

cevap

119

Bir şekilde /usr/local/Cellar için sınırlı izinleriniz var. Brew, sudo ile yüklemek istemiyor, bu yüzden reddediyor.

Kontrol izinleri:

ls -ld /usr/local/Cellar

yazma onları aç:

sudo chmod a+w /usr/local/Cellar

+1

Güzel, gördüğüm diğer yaklaşımlar gibi Whoami/usr/local/Cellar sahibini değiştirme veya izin gruplar ı Hata 'aldı: İzin reddedildi -/Kütüphane/Caches/Homebrew/Formula/... 'sudo chmod -R a + w/Library/Caches/Homebrew' ile çözüldü – orlybg

+6

yazmak için – gfpacheco

+0

Teşekkürler @gfpacheco – Lukas

5

Ben grup izinlerini değiştirmek istiyorum:

$ chgrp -R admin /usr/local/Cellar 
$ chmod g+w /usr/local/Cellar 

senin kullanıcıyı varsayarak hesap grup reklamında Min.

9

brew (güvenlik nedeniyle) ile çalışırken sudo kullanmayın.

İzinlerinizi basit bir şekilde ayarlamanız gerekir.

yüzden daha da ileri gidip izinleri değiştirecek:

sudo chgrp -R admin /usr/local /Library/Caches/Homebrew 
sudo chmod -R g+w /usr/local /Library/Caches/Homebrew 

ve sonra brew komutunu kullanmak için izin verilmelidir kullanıcıya özgü grup (ya admin veya staff) uygulanır. Kullanıcınızın gruplarını şu şekilde kontrol edin: id -Gn).

Başka sorunlar varsa, neyin yanlış olduğunu görmek için: brew doctor çalıştırın.

1

Ayrıca, makinenizde birden çok kullanıcınız varsa da olur. Eğer öyleyse, diğer tüm yaklaşımlar daha fazla dosya ve klasörle uğraşacağından, kullanıcıyı değiştirmek sizin için en iyisi olurdu./Usr/local/Cellar

su userWhoInstalledBrew kullanın.

0

sorun mevcut kullanıcıya dizinin sahibini değiştirerek çözülebilir:

sudo chown -R $USER /usr/local 

Bu cevap alınır: https://github.com/Homebrew/homebrew/issues/17884

+0

High Sierra kullanıcıları için güncelleme, '/ usr/local' artık“ chown'ed ”olamaz (bakınız [işte] (https://github.com/Homebrew/brew/issues/3228)). High Sierra kullanıcılarının da Homebrew'ı yeniden yüklemeleri gerekebilir. –