Bootez sur Macintosh HD 1, lancez Keychain Access et créez un nouvel élément de mot de passe générique portant le nom boot_key dans votre trousseau d'accès avec les attributs suivants (remplacez "klanomath" par le nom d'utilisateur de votre administrateur et "Passw0rd" par le mot de passe de votre administrateur) :
Le mot de passe est évidemment aussi le mot de passe de connexion de klanomath. security est toujours autorisé à utiliser la clé ! L'exécutable security se trouve dans /usr/bin/.
Ensuite, ouvrez Automator et créez un nouveau service.
-
Définissez "Réceptionne le service" sur "aucune entrée" dans "toute application"
-
Ajoutez l'action "Exécuter un AppleScript" et collez le code suivant (remplacez klanomath par le nom d'utilisateur de votre administrateur ci-dessous) :
on run {input, parameters}
do shell script "security 2>&1 >/dev/null find-generic-password -gl \"boot_key\" | awk '{print $2}'"
set myPass to (text 2 thru -2 of result) as text
do shell script "systemsetup -setstartupdisk \"/Volumes/Macintosh HD 2/System/Library/CoreServices\"" user name "klanomath" password myPass with administrator privileges
tell application "System Events"
set appList to the name of every process whose background only is false
end tell
repeat with theApp in appList
try
tell application theApp to quit
end try
end repeat
do shell script "shutdown -r now" user name "klanomath" password myPass with administrator privileges
return input
end run
Capture d'écran d'Automator :
La partie centrale de l'AppleScript (tell application "System Events"... tente de quitter toutes les applications ouvertes de manière gracieuse.
-
Compilez et enregistrez le service (dans mon exemple le nom est change_bootdisk)
-
Le service sera enregistré dans ~/Bibliothèque/Services
-
Ouvrez Préférences Système > Clavier > Raccourcis > Services, choisissez le nom du service et appliquez un raccourci (dans mon exemple altcmdB).
Sur votre autre volume de démarrage, vous devez effectuer les mêmes étapes mais remplacer le disque de démarrage dans le deuxième script do shell :
do shell script "systemsetup -setstartupdisk \"/Volumes/Macintosh HD 1/System/Library/CoreServices\"" user name "klanomath" password myPass with administrator privileges