0 votes

Comment faire pour que l'USB éteigne le Mac Mini

J'ai un vieux Mac mini et je veux l'utiliser comme serveur domestique. Je ne veux pas y connecter d'écran, de clavier ou de souris. Je l'utiliserai comme routeur wifi et comme serveur local. Mais je l'éteindrai parfois lorsque je sortirai pour le garder en sécurité. Appuyer sur le bouton physique à chaque fois peut endommager le système, car il s'agit d'un arrêt forcé. Je veux l'éteindre comme d'habitude, mais sans la souris, l'écran ou le clavier. Je pense que l'USB est la meilleure solution pour cela.

Je pense que je dois créer quelque chose comme un démon ou un automate qui détectera la connexion USB et, si le nom de l'USB est "ShutDown", appellera "shut down". S'il vous plaît, aidez-moi à bien faire les choses. Je suis un développeur mais je n'ai pas d'expérience avec AppleScript.

1voto

ErniePC12 Points 1027

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.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X