Qual è il modo corretto per ottenere l'accesso come amministratore per l'installazione di Homebrew?

2

Di solito accedo a OS X El Capitan senza i diritti di amministratore. Homebrew sostiene il principio che i pacchetti possono essere installati e utilizzati senza l'accesso di amministratore / root, cioè senza usare il comando sudo. Tuttavia, sembra che l'accesso all'amministratore sia necessario per l'installazione di Homebrew. Esecuzione dello script dal rendimento normale del terminale dell'utente non amministratore

This script requires the user [user] to be an Administrator. If this sucks for you then you can install Homebrew in your home directory or however you please; please refer to our homepage. If you still want to use this script set your user to be an Administrator in System Preferences or 'su' to a non-root user with Administrator privileges.

Prima , sfortunatamente, la home page non dice molto di più su come installare nella mia home directory e che differenza fa in realtà dal solito modo di installare.

Secondo , eseguendo "su" e inserendo la mia password restituisce

su: Sorry

Quindi, l'esecuzione di 'sudo su' produce

[user] is not in the sudoers file. This incident will be reported.

Anche questo non sembrava giusto. (Vedi anche Perché non posso correre? su '? (e come dovrei fare?) )

Terzo , ho semplicemente aperto una shell con il mio account amministratore "login [user-admin]" per installare Homebrew. Ma quando in seguito ho provato a installare un pacchetto come utente normale non amministratore / eseguito 'brew doctor', ho ricevuto un numero di errori sulle directory non scrivibili. Di nuovo, una soluzione è suggerita all'indirizzo link ma io non ero sicuro che ci fosse solo un / usr / local sul mio computer, o se ce n'è uno per ogni utente, in modo che le directory in questione fossero effettivamente quelle del mio utente amministratore (e quindi potrebbe essere strano dare il mio non -adminire l'accesso dell'utente a quelli). Inoltre, c'erano molte directory (più di 10) che mi hanno reso sospetto.

Forth , e infine, ciò che ho fatto è stato fornire i diritti di amministratore utente non amministratore, installato come tale utente, e quindi reso all'utente un utente normale non amministratore.

Ora, tutto sembra essere OK, ma mi chiedo se questo fosse effettivamente / un modo corretto , poiché l'errore di script sopra riportato in realtà non diceva se avrei bisogno di disporre in modo permanente dei privilegi di amministratore , o se è giusto prenderli solo durante il processo di installazione di Homebrew stesso.

    
posta huh 27.03.2016 - 15:39
fonte

1 risposta

3

Il modo normale di fare le cose è come per la terza scelta, ad esempio utilizzare un account amministratore per installare le cose.

Tuttavia, la normale configurazione di Homebrew non si attiene alle normali convenzioni Unix di installazione di excutables come root o di un utente speciale che consentirebbe l'accesso uguale del codice installato a tutti gli utenti, è progettato in modo tale da essere installato come un utente e così via non è necessario usare sudo / su per nulla. Tuttavia per fare questo ha bisogno di rendere / usr / local scrivibile dall'utente normale e hai bisogno dei diritti di amministratore come nel modo in cui hai fatto alla fine. Penso che Homebrew sia davvero progettato per un computer che solo una persona usa e ha i diritti di amministratore.

Se non vuoi (o non puoi) impostare il tuo utente su admin allora ci sono due modi

  1. Come da istruzioni che hai citato "Se questo ti fa schifo, allora puoi installare Homebrew nella tua home directory" Quindi l'accesso a ~ / usr / local è sempre per l'utente
  2. Una versione del tuo 3. Lo script Homebrew lascia / usr / local e tutto sotto di esso è di proprietà dell'utente che esegue l'installazione. Con l'utente amministratore puoi modificare il proprietario con il tuo utente normale di chown -R usr /usr/local

Sì, c'è solo un / usr / local nel file system. Ogni percorso è unico. Il modo per avere la "stessa" directory per utenti diversi è mettere le directory sotto la tua home directory, ad es. ~ / Usr / local

    
risposta data 27.03.2016 - 16:40
fonte

Leggi altre domande sui tag