Aktifkan beberapa pengguna untuk menginstal perangkat lunak menggunakan homebrew

12

Saya memasang homebrew menggunakan akun pengguna saya yang lain (yang saya gunakan saat bekerja), tetapi tidak mungkin untuk menginstal perangkat lunak dari akun pribadi saya yang baru dibuat:

$ brew install unrar
Error: Cannot write to /usr/local/Cellar

A ls -dl /usr/local/Cellar/menunjukkan bahwa direktori tersebut dimiliki oleh akun pengguna saya yang lain.

Bagaimana cara mengonfigurasi homebrew untuk memungkinkan banyak pengguna menginstal perangkat lunak?

Sridhar Ratnakumar
sumber
Anda dapat mengambil kendali dari pengguna lain dengan melakukansudo chown -R $(whoami) /usr/local
Nathan Lloyd

Jawaban:

13

atur umaskuntuk setiap pengguna terlebih dahulu. (.basrc atau .profile atau .bash_profile)

umask 0002 # group write permission

kemudian berikan izin tertulis untuk grup melalui /usr/localsecara rekursif:

sudo chmod -R g+w /usr/local/

lalu ubah pemilik menjadi staff

sudo chgrp -R staff /usr/local

sekarang, setiap pengguna, yang berada dalam staffgrup dapat menggunakan brew installdan operasi terkait minuman lainnya ... Sebagian besar setiap pengguna berada dalam grup itu.

vigo
sumber
1
Saya harus melakukan hal yang sama untuk / Library / Caches / Homebrew untuk membuat ini berfungsi. Dan karena semua pengguna saya memiliki Akses Administrator yang diaktifkan, saya melewatkanchgrp
Duvrai
1

Pada homebrew wiki, disebutkan bahwa Anda dapat menginstalnya di mana saja, cobalah menginstal lokal untuk setiap pengguna.

MatthewFord
sumber
Sebenarnya aku tidak menginginkan itu. Saya ingin perangkat lunak untuk pergi ke tempat umum terlepas dari siapa yang menginstalnya.
Sridhar Ratnakumar
Saya sudah mencoba ini dan berharap saya tidak melakukannya saat Anda mengacaukan izin pengguna
MatthewFord
0

Inilah solusi saya:

su - myother_user_account -c "brew install ..."
Sridhar Ratnakumar
sumber
1
Ini bukan solusi yang disarankan untuk masalah banyak pengguna. Ini mengharuskan pengguna untuk dapat memiliki akses root dan / atau akses langsung untuk menjalankan perintah sebagai pengguna lain yang mengalahkan tujuan memiliki hak tingkat pengguna di tempat pertama. Anda dapat mematahkan model untuk kasus penggunaan Anda sendiri mengingat Anda memiliki kotak dan kedua akun tersebut, tetapi akan sangat tidak disarankan bagi siapa pun untuk menggunakan ini dan penggunaan sistem Anda sendiri akan lebih aman untuk menggunakan pemisahan hak istimewa yang tepat.
Caleb