2012-05-03 39 views
21

Tôi không chắc chắn lý do tại sao tôi nhận được lỗi này:brew cài đặt lỗi MongoDB: Từ chối Nhát để sudo brew cài đặt' Mac OSX Lion

$ brew install mongodb 
==> Downloading http://fastdl.mongodb.org/osx/mongodb-osx-x86_64-2.0.4.tgz 
######################################################################## 100.0% 
Error: Permission denied - /usr/local/var/log/mongodb 

Vì vậy, tôi cố gắng chạy nó với sudo:

$ sudo brew install mongodb 
Password: 
Cowardly refusing to `sudo brew install' 

Nếu tôi cố gắng tạo ra các tập tin bản thân mình tôi có được điều này:

Error: File exists - /usr/local/var/log/mongodb 

Nó được thậm chí thú vị hơn khi bạn đọc bài viết này trên github homebrew của về lỗi:

https://github.com/mxcl/homebrew/issues/9953

Họ nêu brew mà không thể ghi các file vì nó không phải là gốc, sau đó họ nói đó là vì họ nghĩ rằng nó không nên chạy với quyền root.

Đây là các hướng dẫn cài đặt chính thức, có chuyện gì?

Nếu bạn có đề xuất tốt hơn để cài đặt, thì tôi sẽ quên về homebrew.

Trả lời

54

Các lười biếng (brew) cách:

ls -al /usr/local/bin/brew #confirm brew ownership 
sudo chown root:wheel /usr/local/bin/brew 
sudo brew install mongodb 
sudo chown <your user>:<your group> /usr/local/bin/brew #revert ownership 

Cách phi brew:

+0

tôi sẽ đi theo cách lười biếng. tôi đánh giá cao nỗ lực, rất thông tin. – botbot

+0

Tôi thực sự thích quản lý gói nhà brew, có lợi thế nào để không sử dụng brew tại nhà và chỉ tải xuống thủ công như được nêu ở trên không? – Nikola

+0

bạn có thể quản lý phiên bản nào bạn đang chạy dễ dàng hơn (và sử dụng các bản phát triển phát triển), và bạn sẽ hiểu được cách mongodb hoạt động tốt hơn một chút. nhưng đối với việc sử dụng nhà phát triển hàng ngày, nó thực sự không quan trọng. –

4

tôi tiếp tục nhấn vấn đề này lặp đi lặp với các gói khác nhau brew (ngày nay nó là ImageMagick), vì vậy tôi giữ lại đến trang này. Tôi chỉ đi để lại phiên bản của tôi về hướng dẫn ở trên cho bản thân mình, và có thể ai đó sẽ tìm thấy nó tiện dụng quá

ls -al `which brew` # note user/group 
sudo chown root:wheel `which brew` 
sudo brew install <package name> 
sudo chown <your user>:<your group> `which brew` # revert ownership 

sử dụng which brew ở phía sau ve thay con đường của bạn để nấu.

(và làm thế nào để thoát khỏi backticks?)

1

tôi vẫn tiếp tục nhận được lỗi này trước khi realizing-- tôi WS sudo SU'd!

Nói cách khác, tôi đã có lời nhắc gốc và đang cố chạy cài đặt pha. Đừng cố gắng cài đặt bằng cách sử dụng brew nếu dấu nhắc lệnh của bạn có một # ở cuối.

Tôi cảm thấy ngớ ngẩn về điều đó, nhưng có lẽ điều này sẽ giúp người khác.

+0

chỉ chạy vào cùng một vấn đề. Cảm ơn gợi ý – mente

Các vấn đề liên quan