Bertahun-tahun yang lalu, Anda bisa lolos dari menjalankan brew
sebagai root hanya dengan chowning brew
ke root, tetapi mereka menghapus fitur itu. Jadi dalam Homebrew 1.1.6, saya biasa mengedit /usr/local/Homebrew/Library/Homebrew/brew.sh
untuk menghapus cek root (yang mengatakan itu "sangat berbahaya") sehingga saya bisa dijalankan brew
sebagai root.
Homebrew versi yang lebih baru masih berfungsi dengan itu tetapi tetap mengembalikan brew.sh
file kembali setiap kali setelah saya jalankan brew
, bahkan jika saya chmod 500
memilikinya. Saya dapat menulis skrip untuk mengubahnya kemudian dijalankan brew
secara otomatis, tetapi saya tidak yakin apakah ini akan selalu berhasil dan tidak ingin mengambil risiko. Adakah yang menemukan metode berbeda untuk menjalankan Homebrew sebagai root?
sudo
menjalankannya sebagai root, dan itu memberi saya kesalahan "sangat berbahaya" yang sama. Saya ingin menjalankan sebagai root karena jika tidak memiliki masalah menginstal paket-paket tertentu, terutama jika ada yang diinstal tidak melalui Homebrew (misalnya melalui pip
). Saya sudah menempuh rute itu berkali-kali. Plus itu tidak berfungsi dengan baik untuk banyak pengguna tanpa solusi aneh kecuali saya menginstal semuanya sebagai root.
root
ini berisiko. Bahkan membangun paket tanpa manajer paket, Anda akan membangun paket sebagai pengguna non-privilege (sendiri) kemudian instal paket root
dengan sudo
. Manajer paket seperti Fink dan MacPorts keduanya membangun dengan pengguna non-hak istimewa mereka sendiri kemudian menginstal sebagai root
. Homebrew tidak memiliki mekanisme seperti itu.
brew.sh
file tersebut dikembalikan setelah memodifikasinya dan kemudian menjalankan brew
perintah. Jadi saya bisa berlari sudo brew whatever
dan brew whatever
bersama-sama saja. brew --version
Keluaran saya adalah sebagai berikut: Homebrew 1.2.1-98-g803f9cbf7b-dirty Homebrew/homebrew-core (git revision d3d6; last commit 2017-05-28)
FYI, saya memodifikasi brew.sh
file saya untuk mengomentari semua baris dalam check-run-command-as-root
fungsi dan menempatkan satu return
pernyataan di bagian atas fungsi sebagai gantinya.
brew
sebagai root? Juga, apakahsudo
tidak cukup untuk keperluan Anda?