Vedle kvanta klasických unixových utilitek přibaluje Apple
k OS X řadu system-specific nástrojů pro použití ve skriptech. Dnes se podíváme na systemsetup
, který většinou řeší nastavení ekvivalentní k přepínátkům v několika panelech System Preferences (Energy Saver, Sharing, Date & Time, Startup Disk). Abych čistě jen nevykrádal man stránku , u přepínačů jsem vždy vytvořil screenshot s poznačenými ekvivalencemi. Nadpoloviční většinu z nich pravděpodobně nikdy nepoužijete, ale nachází se tu pár důležitých nastavení (např. snadné zapnutí sshd démona pro vzdálené přihlášení).
Utilitka systemsetup
jde na věc velmi přímočaře.
Dokáže zjistit aktuální hodnotu nastavení: systemsetup -getNĚCO
,
změnit hodnotu nastavení: systemsetup -setNĚCO hodnota
,
v některých případech vylistovat seznam hodnot: systemsetup -listNĚCO
.
Seznam všech přepínačů -> systemsetup -printCommands
O něco ukecanější man stránka -> man systemsetup
Jako bonus lehce tupý help -> systemsetup -help
Příklad
Zjistím aktuální časové pásmo, vylistuji všechny možné pásma, změním časové pásmo.
>> systemsetup -gettimezone Time Zone: Europe/Prague >> systemsetup -listtimezones Africa/Abidjan Africa/Accra ... Pacific/Wallis >> systemsetup -settimezone America/Jamaica Set TimeZone: America/Jamaica
Energy Saver
-setcomputersleep <minutes> # "Never" nebo "Off" nikdy neuspávat -setdisplaysleep <minutes> # "Never" nebo "Off" ... -setharddisksleep <minutes> # "Never" nebo "Off" ... -setwakeonnetworkaccess <on off> -setallowpowerbuttontosleepcomputer <on off> -setrestartpowerfailure <on off>
Všechny sleep hodnoty lze nastavit najednou pomocí systemsetup -setsleep
. Praktické využití mi však uniká. Pravděpodobně nebudete potřebovat ani buzení Macu modemem -setwakeonmodem on/off
Pokud OS X zatuhne, v některých případech je schopný aspoň sám sebe restartovat. Přepínátko z pref panelu Apple odstranil (asi nevypadalo dobře :-)) a tato funkce je defaultně povolena. Přepnutí -> -setrestartfreeze on/off
Sharing
-setcomputername <computername> -setlocalsubnetname <name> -setremotelogin <on off> -setremoteappleevents <on off>
Pro nastavení jmen počítače je asi vhodnější použít nástroj scutil
, kde se dá nastavit vedle computer a bonjour jmen i klasický hostname. Spuštění sshd
démona pro vzdálené přihlášení (remote login) je ovšem velmi praktická záležitost.
Date & Time
-setusingnetworktime <on off> -setnetworktimeserver <timeserver> # URL -setdate <mm:dd:yy> -settime <hh:mm:ss>
Dobré vědět, kolik je zrovna hodin. Nutné vědět, pokud se na čas ptá kerberos.
Timezone
-settimezone <timezone> -listtimezones
Startup Disk
-setstartupdisk <disk> -liststartupdisks
Nastavení start-up disku se spíše řeší nástrojem bless
, který nabízí mnohem více možností.