C'est vraiment rapide et sale, je n'ai pas eu le temps de le tester. Fondamentalement, nous exécutons un script lorsque quelque chose est monté. Il s'exécute à tout moment, mais nous utilisons le script pour vérifier le 1 lecteur que nous recherchons. Vous devez exécuter ceci sous un job launchd Root pour avoir les permissions d'arrêter sans entrer le mot de passe.
Voici le fichier de configuration que vous devez installer dans /Library/LaunchDaemons.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin</string>
</dict>
<key>Label</key>
<string>server.shutdown</string>
<key>ProgramArguments</key>
<array>
<string>/bin/sh</string>
<string>/usr/local/bin/server_shutdown.sh</string>
</array>
<key>RunAtLoad</key>
<false/>
<key>StartOnMount</key>
<true/>
</dict>
</plist>
Vous devez aller dans le Terminal et exécuter en tant que Root ce qui suit afin de charger le fichier
launchctl load /Library/LaunchDaemons/server.shutdown
A partir de là, vous créez un nouveau script appelé server_shutdown.sh
en /usr/local/bin
et le rendre exécutable avec chmod +x /usr/local/bin/server_shutdown.sh
:
#!/bin/zsh
DIR="/Volumes/SHUTDOWN/"
if [ -d "$DIR" ]; then
# Take action if $DIR exists. #
say "The computer will shut down now."
#shutdown -h now
fi
Tu pourrais y mettre un chèque pour un redémarrage si tu veux. J'ai mis dans le say
commande pour vous donner un message audible. Il suffit d'effacer le # devant la commande shutdown une fois que vous voyez que le script fonctionne.
J'espère que cela vous aidera.