Homebrew artık / usr / local sahipliğine nasıl ihtiyaç duymuyor?


28

Bugün koştum brew updateve depoyu taşıdıktan sonra, artık sahip olma ihtiyacı olmadığını bildirdi /usr/local:

$ brew update
Updated Homebrew from 5371359 to 13f08a2.
...
==> Migrating HOMEBREW_REPOSITORY (please wait)...
==> Migrated HOMEBREW_REPOSITORY to /usr/local/Homebrew!
Homebrew no longer needs to have ownership of /usr/local. If you wish you can
return /usr/local to its default ownership with:
  sudo chown root:wheel /usr/local

Bu değişiklik biraz şüpheli görünüyor. Brew, görünüşte güvenlik kontrollerini atlayarak bu yeni davranışı nasıl gerçekleştiriyor?


Hangi güvenlik kontrollerini atlıyor? /usr/localSIP dahil değildir. Bkz Mac Sistem Bütünlüğü Koruma Hakkında altında "Yollar ve üçüncü parti uygulamalar ve montajcılar dahil etmek yazabilirsiniz uygulamalar:" /usr/locallistelenir.
— user3439894 19:16

3
Bununla birlikte, Homebrew kullanıcısı olmamak, doğrudan kaynak kodundan derlemek istediğim için n OS X'e dahil olmayan istediğim araçları kullanıyorum, yine de Homebrew’in diğer uygulamalar gibi normal şekilde davranmak için gerektiği gibi / gerekli şekilde yeniden yazıldığını görüyorum. Geçmişte yapıldı. IMO Homebrew başlangıçtan itibaren kök sahipliğini elimizde bulundurmak zorunda kalmadan baştan yazılmalıydı!
— user3439894 19:16

Yani, eğer /usr/localçocukları ve sahiplerinin grubuna aitse root:adminya da root:wheelyazamazlarsa, o zaman bu dizinlere yazma hakkım yok (ve ne de olsa homebrew olmazdı), ama eğer öyleyse, Homebrew yüklemeyi nasıl yönetebilir? ve uygulamaları bu konumlardan kaldırma?
— Jason R. Coombs

3
Ben sadece mesajın sadece referans verdiğini /usr/localve onluklarına göndermediğini fark ediyorum . Ve yepyeni bir homebrew kurulumunun ne yaptığını inceleyerek, tüm alt dizinlerin $ USER'a ve gruba ait olmalarını sağladı.
— Jason R. Coombs

Yanıtlar:


19

Bu yakut senaryoya göre: update-report.rb , sadece hala size ait olan / usr / local / Homebrew öğelerine taşındı.


2
/ Usr / local'ın gerçekleşmesi için / usr / local / Homebrew oluşturulması için $ USER tarafından yazılabilir olması gerekmez mi? / Usr / local / Cellar veya / usr / local / opt gibi diğer dizinler ne durumda? Homebrew'in hala bu dizinlere yazmak için (sudo olmayan) erişime ihtiyacı yok mu? Eğer direkler root'a aitse ve grup tarafından yazılmıyorsa, bunu nasıl yapabilir?
— Jason R. Coombs

1
İlk kurulumda, homebrew deposu oluşturmak için hala sudo kullanıyorlar, bakınız yükleme . Güncelleme cevabımdaki senaryo, bu noktada, hala eski sürümünde boğulan / usr / local aittir.
— albb

6

Artık /usr/localihtiyaç duyduğunuz tüm kök dizinleri oluşturuyoruz ve /usr/localkendi üzerinde istekte bulunmak yerine sahipliklerini kontrol ediyoruz .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.