11 votes

Puis-je configurer mon Macbook pour démonter tous les disques externes lorsque je ferme le couvercle ?

J'ai un nouveau Macbook Pro 13" fonctionnant sous Mavericks. Cet ordinateur est connecté à un disque USB externe que j'utilise pour mes sauvegardes Time Machine et pour le stockage externe. Les sauvegardes Time Machine ont lieu plusieurs fois par jour et le disque est largement inactif pendant la majeure partie de la journée.

Lorsque je me précipite à une réunion, dans la salle des serveurs ou que je rentre chez moi à la fin de la journée, j'aimerais faire ce qui suit :

  1. Fermez le couvercle de mon Macbook, rapidement.
  2. Faites en sorte que le Mac démonte automatiquement tous les disques externes, aussi rapidement que possible, et de force si nécessaire. Je suis prêt à attendre quelques secondes pour que toutes les lumières s'éteignent.

Existe-t-il un moyen de faire en sorte que l'ordinateur démonte automatiquement tous les disques externes dès que je ferme le couvercle de mon Mac ?

Actuellement, si j'oublie de démonter les disques externes, mon Mac me réprimande plus tard avec l'erreur "Le disque n'a pas été éjecté correctement". Si possible, éjectez toujours un disque avant de le débrancher ou de l'éteindre."

Je sais que la meilleure pratique consiste à toujours démonter proprement un disque avant de supprimer l'interface du disque, mais je cherche une solution automatisée. Je ne suis pas très inquiet si une image de sauvegarde Time Machine est interrompue ou corrompue, car l'une des sauvegardes suivantes fonctionnera et je n'ai que très rarement besoin de restaurer à partir d'une sauvegarde. Comme le système de fichiers est un système de fichiers de journalisation, le journal prend en charge de manière transparente de nombreuses autres erreurs de corruption du système de fichiers.

8voto

grg Points 181593

Il existe un certain nombre d'applications qui peuvent exécuter des scripts en veille :

  • SleepWatcher - simple mais efficace.
  • Scénario - peut également exécuter les scripts à d'autres moments comme après le réveil.
  • Plan de contrôle - plus personnalisable, vous permet de lancer des scripts après de nombreux événements différents.

Un bash script tel que le suivant démontera tous les disques spécifiés :

VOLUMES="/Volumes/drive1 /Volumes/drive2 /Volumes/drive3"
for volume in $VOLUMES ; do [ -d $volume ] && umount -f $volume done

Pour démonter tous les volumes sauf / :

umount -A

ou plus proprement

osascript -e 'tell application "Finder" to eject (every disk whose ejectable is true)'

6voto

man8 Points 61

Une autre option est Jettison (disponible sur l'App Store) - c'est ce que j'utilise depuis quelques mois maintenant et je n'ai eu aucun problème. Il a récemment acquis l'option de remonter automatiquement les disques encore connectés lorsque vous sortez de votre sommeil.

La nouvelle version v1.3.0 (téléchargement direct uniquement - je suppose qu'elle est en route vers l'App Store) coûte plus cher et ils expliquent pourquoi dans leur FAQ.

Si j'ai bien lu, il est possible d'acheter la version App Store pour deux dollars et de passer ensuite à la version à téléchargement direct gratuitement, mais je n'ai pas confirmé ni essayé cela.

Ces deux prix ne sont pas vraiment chers, mais ils ne sont pas gratuits comme semble l'être l'option SleepWatcher.

4voto

Brian Points 145

Je vais développer la réponse de @grgarside.

J'utilise SleepWatcher

  1. Installer à partir des ports :

    sudo port install sleepwatcher
  2. Lisez le manuel à l'adresse suivante /opt/local/share/doc/sleepwatcher/ReadMe.rtf et par man sleepwatcher . Lisez ce vieux Machint de Macworld : Guérir un Mac insomniaque avec le système SleepWatcher . Selon le Machint, je peux simplement ajouter du code à ~/.sleep y ~/.wakeup ou dans les fichiers globaux /etc/rc.sleep & /etc/rc.wakeup .

  3. Placez le code suivant dans ~/.sleep :

    osascript -e 'tell application "Finder" to eject (every disk whose ejectable is true)'
  4. Activez le sleepwatcher. Modifier <key>Disabled</key><true/> a <key>Disabled</key><false/> .

    sudo vim /Library/LaunchDaemons/org.macports.sleepwatcher.plist
    sudo launchctl load /Library/LaunchDaemons/org.macports.sleepwatcher.plist
    sudo launchctl list | grep sleepwatcher
  5. Vérifier :

    ps aux |grep [s]leepwatcher
    root              421   0.0  0.0  2459568   1012   ??  Ss    2:45PM   0:00.00 /opt/local/bin/daemondo --label=sleepwatcher --start-cmd /opt/local/sbin/sleepwatcher --verbose --sleep /opt/local/etc/rc.sleep --wakeup /opt/local/etc/rc.wakeup ; --pid=exec
    root              422   0.0  0.0  2460656   1888   ??  S     2:45PM   0:00.17 /opt/local/sbin/sleepwatcher --verbose --sleep /opt/local/etc/rc.sleep --wakeup /opt/local/etc/rc.wakeup
  6. C'est fait !

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