Disabilita il prompt di spegnimento di OS X Server?

4

Ho appena installato OS X Server. Ogni volta che provo a spegnerlo (come un utente interattivo locale), continuo a vedere un prompt che richiede di inserire il nome e la password di un amministratore prima di procedere con lo spegnimento:

Shutting down may cause other users logged into this computer to lose unsaved changes.

Continuo a vedere questa finestra di dialogo anche se non c'è nessun altro collegato alla macchina.

La domanda è, come posso disattivare questa finestra di dialogo ? Voglio dire, lasciare che chiunque abbia effettuato il login in locale per spegnere la macchina senza inserire una password di amministratore (o anche senza inserire la propria password?) Vedo che questo non è un problema di sicurezza poiché con l'accesso fisico, è sufficiente premere il pulsante di accensione.

La mia intenzione originale è quella di utilizzare l'iMac del salotto come un server di build Xcode, principalmente per eseguire test di unità. La macchina si avvia e si collega automaticamente a un account non privilegiato per renderlo conveniente per le persone che lo utilizzano per riprodurre video e così via. Sarebbe bello che anche questa macchina facesse funzionare i test unitari, e non è davvero fondamentale se una build / run viene annullata a metà strada perché la macchina si sta spegnendo.

Versione server: 4.1 (14S1092)
OS X: 10.10.3 (14D136)

    
posta adib 02.05.2015 - 10:44
fonte

6 risposte

1

Un modo possibile potrebbe essere usando un comando terminale:

shutdown -h now

Questo uccide immediatamente tutti i processi e arresta il sistema in un modo abbastanza carino.

Come utente normale potresti iniziare con

sudo shutdown -h now

Tuttavia, il problema con la password rimane, questa volta nel terminale.

Guardando più da vicino al file di configurazione sudo /etc/sudoers ho trovato:

...
# User privilege specification
root    ALL=(ALL) ALL
%admin  ALL=(ALL) ALL

# Uncomment to allow people in group wheel to run all commands
# %wheel        ALL=(ALL) ALL

# Same thing without a password
# %wheel        ALL=(ALL) NOPASSWD: ALL
...

Verifica se il tuo account è già nel gruppo wheel o admin emettendo groups nel terminale. In questo caso, annulla semplicemente la riga con %wheel NOPASSWD o aggiungendo NOPASSWD nella posizione corretta della riga admin sopra (la riga wheel mostra come eseguire questa operazione). Ad esempio:

tatooine-3:~ mallert$ groups
staff com.apple.sharepoint.group.2 everyone localaccounts _appserverusr
admin _appserveradm _lpadmin _appstore _lpoperator _developer
com.apple.access_screensharing com.apple.access_ssh com.apple.sharepoint.group.1

Qui il mio utente si trova già nel gruppo admin , quindi aggiungerei semplicemente NOPASSWD nella riga sudoers in questo modo:

%admin  ALL=(ALL) NOPASSWD ALL

Ora dovresti essere in grado di accendere un

sudo shutdown -h now

senza chiedere una password. Per finalizzare la mia soluzione potresti creare un'app con automator che esegue questo comando sudo shutdown -k now come uno script bash.

Se invece vuoi riavviare il server, usa

sudo shutdown -r now
    
risposta data 22.07.2015 - 16:15
fonte
0

È solo semplice eliminare l'applicazione server dalle applicazioni e installarla di nuovo e non creare nessun altro server locale al suo interno e sarà risolta

    
risposta data 03.07.2015 - 22:33
fonte
0

Una cosa da provare se c'è un solo utente loggato è, loggare quell'utente che poi ritorna alla schermata di login. Dalla schermata di accesso c'è un pulsante "Shutdown". Scegliere "Arresto" da lì sarebbe, si spera, completo poiché non ci sono (teoricamente) più utenti loggati.

Se ciò non funziona, dovrai creare uno script che usi i comandi 'shutdown' o 'halt' per forzare il sistema all'arresto. Potrebbe essere necessario guardare le pagine man per quei comandi ma 'shutdown -h' o 'halt' dovrebbe funzionare. Tuttavia, questi comandi devono essere eseguiti con privilegi di amministratore per funzionare correttamente. Quindi, se vuoi che chiunque sia in grado di eseguire lo script (non solo gli amministratori), dovrai metterlo da qualche parte accessibile a tutti gli account utente e fornire i privilegi di amministratore del file.

Se devi seguire la procedura di script, cercherò di far funzionare il comando 'shutdown', poiché è il modo più sicuro di spegnere il sistema. Il comando 'halt' è un po 'brutale nel modo in cui elimina le app e spegne il sistema.

    
risposta data 21.07.2015 - 05:42
fonte
0

Tenendo premuto il tasto opzione mentre si seleziona Shut Down (o Restart ) dal menu Apple si evita la finestra di dialogo e si verifica immediatamente l'azione.

    
risposta data 22.07.2015 - 18:14
fonte
0

Ho sperimentato esattamente lo stesso problema e l'ho risolto con successo di recente.

Sì, questo è causato da server.app. Per essere precisi, è dovuto al fatto che hai collegato Xcode nel tuo server.app

Inquestomodo,iltuoserveresegueXcodeinbackgroundequindiilpromptquandotentidichiudereiltuocomputer.L'usodell'interfacciadellarigadicomandoperchiuderenoncambierebbelasituazione.

Èinteressantenotareche,unavolta"Scegli Xcode per iniziare", non è possibile disconnettere Xcode qui. Spegnere l'angolo in alto a destra non sarebbe d'aiuto, nemmeno disinstallare accuratamente server.app non sarebbe stato d'aiuto.

Fortunatamente, la soluzione è facile come due comandi:

sudo xcrun xcscontrol --shutdown
sudo xcrun xcscontrol --reset

Ecco come ho trovato questo: ho guardato attraverso il Monitor attività per processi con nomi utente sospetti e ho notato un utente chiamato "_xcscouch". Con la ricerca "xcscouch mac", ho trovato la seguente risposta e ho risolto il mio problema. I Installed Server.app su Yosemite per abilitare il caching, ma vedere molti processi del server in Task Manager (_xcsbuild e _devicemgr e _calendar processes)

    
risposta data 07.09.2015 - 06:22
fonte
-1

Ci devono essere più di un utente che ha effettuato l'accesso al tuo computer, è meglio disconnettere gli utenti dopo un certo limite di tempo.

    
risposta data 07.09.2015 - 09:09
fonte

Leggi altre domande sui tag