Voglio spegnere più Mac ogni giorno alle 23:30 (23:30)?

10

Ho questo problema nel mio ufficio che molti Mac funzionano sempre 24 ore su 24 e il mio capo ha detto che ho bisogno di fermarlo. Ora non ho molta esperienza con i Mac, sono più il tipo di Windows.

Ho un Mac che funge da server e vorrebbe eseguire uno script o qualcosa del genere per orchestrare lo stato di alimentazione di diversi computer se questo aiuta.

Come posso spegnere tutti i 7-8 Mac in remoto alle 23:30?

    
posta SMaxTH 14.11.2016 - 15:23
fonte

3 risposte

17

Come Patrix ha indicato in un commento, puoi configurare qualsiasi Mac per avviarlo o svegliarlo, e dormire o spegnerlo in momenti specifici, tramite le Preferenze di Sistema - > Risparmio energetico - > Pianifica ... impostazioni.

Potresti anche provare a utilizzare AppleScript, ad es. questo codice (modificalo con Script Editor, quindi salva come applicazione):

tell application id "com.apple.systemevents" -- System Events.app
    shut down
end tell

Quindi utilizzare i servizi di avvio di OSX per eseguire questo script in un dato momento. Per configurarlo, puoi utilizzare uno strumento gratuito come "Lingon X".

Inoltre, perché chiuderli in questo modo? Se tutto quello che ti interessa è preservare l'energia elettrica, perché non impostare invece i Mac per andare a dormire dopo essere inattivo per, diciamo, 30 minuti? In questo modo, andranno a dormire molto prima di solito, risparmiando più energia. Se non vanno a dormire come previsto, puoi controllare con il comando Terminale pmset -g cosa potrebbe impedire loro di dormire. Spesso è un'attività di stampa in sospeso (che potresti voler eliminare, quindi) o volumi di server montati.

    
risposta data 14.11.2016 - 15:47
fonte
13

Puoi utilizzare pmset per fare ciò e sarà una soluzione "una volta fatta".
Una volta emesso il comando pmset , si spegnerà / si avvierà / si riattiverà nella pianificazione impostata; non dovrai creare uno script che funzioni ogni volta ad un orario prestabilito.

pmset utilizza questo formato:

pmset schedule day/date time

Ecco alcuni esempi:

  • pmset repeat sleep MTWRF 23:30:00 mette il Mac in pausa nei giorni feriali alle 23:30

  • pmset repeat poweroff MTWRF 23:30:00 chiude i giorni feriali del Mac alle 23:30

  • pmset schedule shutdown "12/31/2016 23:59:00" spegne il computer alle 23:59 di Capodanno.

  • pmset repeat wakeorpoweron MTWRF 06:30:00 riattiva il Mac ogni giorno della settimana alle 7:00 del mattino, in modo che sia pronto per andare quando il dipendente si presenta.

Non è necessario utilizzare uno script per farlo, tutto ciò che devi fare è accedere in remoto a ciascuno dei Mac (tutti i 7 o 8) e inviare il comando come amministratore.

Tuttavia, se avevi bisogno di eseguire uno script, puoi aggiungere questo comando a un semplice script bash simile al seguente:

#!/bin/bash

# Array of Mac hostnames separated by spaces
my_macs=(mac1 mac2 mac3 mac4)

#Steps through each hostname and issues SSH command to that host

for n in my_macs
do
   ssh admin@$n "pmset repeat sleep MTWRF 23:30:00"
done

exit 0

Ora, tieni presente che lo script è a scopo illustrativo e tecnicamente al di fuori dello scopo di questa risposta. Volevo solo illustrare come ciò potrebbe essere fatto.

    
risposta data 14.11.2016 - 15:35
fonte
4

Se hai bisogno di gestire un sacco di Mac, ti consiglio di utilizzare Apple Remote Desktop. Dovrebbe consentirti di trasferire qualsiasi numero di impostazioni standard sui Mac che devi gestire per il tuo lavoro e di evitare di dover scrivere e mantenere uno script.

Su ogni macchina devi abilitare Remote Management in Preferenze di Sistema.app > Condivisione. Dopodiché, puoi modificare in qualsiasi momento.

    
risposta data 18.11.2016 - 11:40
fonte

Leggi altre domande sui tag