Homebrew tidak akan menghubungkan git

11

Ketika saya menginstal git atau memutakhirkan git, brewsaya tidak dapat menautkannya brew link git. Jika saya coba sudo brew link gitsaya dapatkan:

pengecut menolak untuk membuat tautan sudo

Dikatakan bahwa saya harus memeriksa izin pada:

/usr/local/share/gitk/lib
/usr/local/share/git-gui/lib
/usr/local/share/git-core/templates
/usr/local/share/git-core/templates/hooks
/usr/local/share/git-core

Saya chmodmengedit semuanya ke 777 tapi saya tidak yakin apakah itu baik.

Sekarang saya dapat menautkan git. Haruskah saya mengubah izin menjadi sesuatu yang kurang permisif?

Yannick Schall
sumber

Jawaban:

5

777 izin tidak selalu buruk di sini - Anda mungkin tidak akan pernah mengalami masalah izin, dan itu bukan masalah keamanan besar yang akan saya katakan.

Bagaimanapun, izin "normal" pada /usr/local/shareyang disyaratkan Homebrew harus (secara rekursif) 755, dengan demikian rwxr-xr-x.

chmod -R 755 /usr/local/share

Paling tidak brewseharusnya tidak memerlukan izin sudo untuk pernah melakukan apa pun di sana. Hanya /usr/localdimiliki oleh root, tetapi dapat ditulis untuk staffgrup, tempat pengguna Anda seharusnya berada.

Untuk memperbaiki instalasi Homebrew yang ada, lihat intisari ini , yang merupakan skrip yang akan berusaha untuk memperbaiki /usr/localizin Anda .


Sebagai contoh, inilah daftar direktori salah satu dari instalasi Homebrew (waras) saya dengan ghostscriptmenjadi satu-satunya pengecualian yang memerlukan sudo brew link:

aeneas:local werner$ ls -la /usr/local/share/
total 40
drwxr-xr-x  11 werner  staff  374 Mar  5 14:53 .
drwxrwxr-x  14 werner  staff  476 Feb 28 12:51 ..
drwxr-xr-x   6 werner  staff  204 Mar  5 14:54 aclocal
drwxr-xr-x   8 werner  staff  272 Mar  5 14:53 doc
lrwxr-xr-x   1 werner  staff   34 Feb  8 12:26 ffmpeg -> ../Cellar/ffmpeg/0.10/share/ffmpeg
drwxr-xr-x   4 werner  wheel  136 Apr 16  2010 ghostscript
lrwxr-xr-x   1 werner  staff   36 Mar  5 14:53 git-core -> ../Cellar/git/1.7.9.2/share/git-core
lrwxr-xr-x   1 werner  staff   35 Mar  5 14:53 git-gui -> ../Cellar/git/1.7.9.2/share/git-gui
lrwxr-xr-x   1 werner  staff   32 Mar  5 14:53 gitk -> ../Cellar/git/1.7.9.2/share/gitk
lrwxr-xr-x   1 werner  staff   34 Mar  5 14:53 gitweb -> ../Cellar/git/1.7.9.2/share/gitweb
drwxr-xr-x   9 werner  staff  306 Mar  5 14:53 man
slhck
sumber
Untuk langkah-langkah diagnosis lainnya, jalankan brew doctor.
slhck
Sayangnya, dokter pembuat bir tidak memberikan informasi yang berguna dalam kasus ini. Inti yang disebutkan memperbaiki masalah yang sama untuk saya, terima kasih :)
TheDeadSerious
setelah saya menginstal brew, saya tidak perlu menggunakan sudo untuk banyak hal. Mungkin Anda memiliki sesuatu yang seharusnya tidak Anda miliki pada titik tertentu yang membuat izin dan kepemilikannya rusak?
dstarh
@dstarh Biasanya itu masalahnya. Dewasa ini Homebrew tidak boleh melakukan apa pun saat sudodigunakan.
slhck
Mengapa Homebrew tidak mengizinkan kami menggunakan sudo? Kami terus harus mengacaukan izin kami untuk menautkan hal-hal yang seharusnya membiarkan kami sudo brew link [package]suka apt-get. Saya hanya menyalin perpustakaan dari ruang bawah tanah saya sendiri setiap kali saya ingin memperbarui sesuatu daripada mencoba menangani ini.
sudo
0

Saya belum mencoba intinya, tetapi mencoba chmod 775pada folder. Seperti yang dimiliki root:wheelolehnya tidak dapat diubah. Saya mereferensikan situs Jepang.

sudo chown yourusername:admin -R /usr/local/share/ghostscript
brew link ghostscript
brew doctor

maka itu bekerja untuk saya di atas.

Jimmy MG Lim
sumber