Ejector éjecte automatiquement le disque dur après une sauvegarde

Nicolas Furno |

Ejector [1.0.0 – US – Gratuit – OS X 10.10 – Chris Lundie] est un tout petit utilitaire qui n’a qu’une seule fonction, mais qui pourra vous simplifier la vie si vous êtes dans le cas de figure prévu. Quel est ce cas de figure ? Si vous utilisez un Mac portable et un disque dur externe branché directement à l’ordinateur, ce logiciel déconnectera automatiquement le volume concerné après la sauvegarde.

L’objectif étant de simplifier les sauvegardes : normalement, vous n’aurez plus jamais à vous soucier du disque dur. Il suffira de le connecter de temps en temps et vous pourrez le déconnecter après la sauvegarde sans intervention de votre part. Sans Ejector, il faudrait en théorie éjecter manuellement le disque dur en glissant son icône sur la corbeille d’OS X, sous peine de risquer des pertes de données.

L’application étant totalement gratuite, vous ne perdrez rien à l’installer pour un essai. OS X 10.10 est nécessaire et Ejector n’est proposée qu’en anglais.

avatar Madalvée | 

Encore faudrait-il qu'OSX perde son habitude de ne pas vouloir éjecter le volume système sans qu'on force l'éjection. C'est particulièrement contrariant depuis Léopard.

avatar BeePotato | 

@ Madalvée : « Encore faudrait-il qu'OSX perde son habitude de ne pas vouloir éjecter le volume système sans qu'on force l’éjection. »

Pour le volume système, c’est plutôt rassurant. :-)

Tu voulais sûrement parler du volume de sauvegarde. ;-)
Là, en effet, c’est vite lourd quand ça arrive. Mais, dans mon cas du moins, ça n’arrive qu’une fois de temps en temps.

avatar pim | 

Ça réponds vraiment à un problème : être obligé d'attendre le « réveil » du disque externe afin de pouvoir l'éjecter, alors que la sauvegarde est terminée depuis longtemps ! Et à mon avis c'est plutôt une lacune de Time Machine.

Après le problème de l'éjection forcée c'est autre chose. Réserver le disque juste pour la sauvegarde est une bonne pratique. Qu'un autre programme soit en cours sur le disque (Spotlight et ses préférences d'exclusion qui disparaissent toutes seules ?) est une mauvaise chose, normalement le disque devrait s'éjecter sans coup frémir !

avatar BeePotato | 

Ce que fait ce logiciel devrait être intégré (mais activable en option) dans Time Machine, avec bien sûr un montage automatique du disque pour la sauvegarde suivante s’il est encore connecté à ce moment-là.

Mais en fait, intégrer ça serait juste le minimum. Pour bien faire, il faudrait que ce soit fait plus proprement que ça, avec un disque de sauvegarde qui reste monté, mais géré de telle façon qu’il puisse être déconnecté sans se poser de question dès que la sauvegarde (ou toute opération de lecture/écriture initiée par l’utilisateur) est terminée.

avatar switch (non vérifié) | 

Sinon vous pouvez compiler vous même une petite appli automator avec 3 lignes de code Applescript.

do shell script "diskutil mount 10CF38EF-25F2-3468-BF54-2EB65212AA2C"
do shell script "tmutil startbackup -b"
do shell script "diskutil unmount 10CF38EF-25F2-3468-BF54-2EB65212AA2C"

Pour récupérer l'UUID de votre disque TimeMachine, faire cmd i sur son icone dans l'application "Utilitaire de disques"

Vous pourrez ensuite lancer votre sauvegarde quand bon vous semble ou à intervalles réguliers (par exemple via une planification d'évènement récurrent dans le calendrier).

avatar BeePotato | 

@ Switch : Oui, mais la question n’est pas tellement là. Moi, je parlais d’essayer d’améliorer l’interface utilisateur de Time Machine pour tout le monde (y compris pour les utilisateurs qui ne savent même pas ce qu’est Automator, et encore moins un shell ou un crontab).

Et cet utilitaire, lui aussi, essaye de s’adresser à une cible plus large que ceux qui seront intéressés par une approche similaire à celle que tu proposes.

avatar standelap | 

Ok d'accord

avatar Yoskiz (non vérifié) | 

Mouais, enfin franchement si les utilisateurs ont la flemme de penser à éjecter leurs disques eux même ça devient grave.

avatar EricBM1 | 

J'ai un disque dur branché en permanence sur mon iMac. Je ne me soucis plus de rien. Mon ordi gère les sauvegarde tout seul comme un grand. Si le disque était éjecté Time Machine ne pourrait plus faire de sauvegarde, ce qui est absurde. Du coup, quel est l'intérêt de ce logiciel qui va empêcher les sauvegardes ???

avatar BeePotato | 

@ EricBM1 : Comme indiqué dans l’article, l’intérêt est surtout pour les portables, sur lesquels on a tendance à ne brancher le disque de Time Machine que le temps d’une sauvegarde.
Pour les machines de bureau avec un disque connecté en permanence, il n’y a effectivement aucun intérêt.

avatar switch (non vérifié) | 

Pas d'accord. Il y a bien un intérêt à avoir son disque de sauvegarde (interne ou externe) "démonté" entre deux sauvegardes: la sécurité: en cas d'attaque par un malware (genre ramsomware), les disques non montés seront saufs.

avatar BeePotato | 

@ Switch : « en cas d'attaque par un malware (genre ramsomware), les disques non montés seront saufs. »

Certes. C’est d’ailleurs une autre approche à laquelle je songeais pour une éventuelle évolution de l’interface de Time Machine : avoir la possibilité d’indiquer qu’un disque ne sera utilisé que pour la sauvegarde, auquel cas il n’apparaîtrait jamais comme monté (TM en faisant juste un montage caché le temps de chaque sauvegarde).
Ça aurait le mérite de protéger le contenu du disque de l’utilisateur lui-même, qui est souvent bien plus dangereux qu’un malware.

Parce que bon, un ransomware bien écrit fera l’effort de monter les disques connectés mais non montés, histoire de s’attaquer à leur contenu aussi. La sécurité offerte par le démontage est extrêmement légère.

avatar switch (non vérifié) | 

Il n'est pas possible de monter un disque via crontab au travers d'une commande shell.
C'est une sécurité, on peut dire merci à Apple d'y avoir pensé.
Bien sur, si on donne son mot de passe admin à un malware (déguisé en ce que vous voulez), tout peut advenir, mais le fait qu'un disque soit non monté n'est pas négligeable en matière de sécurité.
---------
Pour masquer un volume monté sur le bureau via applescript ( à placer après le montage du disque bien sur !)

tell application "System Events" to set visible of disk "TM" to false
---------
Cela peut peut-être se faire aussi via une commande chflags
Plus radical, on peut masquer directement un disque en modifiant son flag de visibilité ( avec PropEdit par exemple)
----------------
Bien sur, on part du principe que le disque de sauvegarde Time Machine n'est utilisé que pour cet usage, sinon il ne sert à rien de le masquer durant la sauvegarde et/ou de l'éjecter après.

avatar BeePotato | 

@ Switch : « Il n'est pas possible de monter un disque via crontab au travers d'une commande shell. »

C’est sûr, ça ? Ça me surprend un peu, mais j’avoue que je n’ai jamais essayé (faute d’une quelconque utilité). Et j’avoue que je ne vois pas trop le gros gain que ça représente en terme de sécurité (il y a quelque chose qui a dû m’échapper).
En revanche, ça n’a pas grand chose à voir avec ce dont je parlais, à savoir un montage par un ransomware.

« mais le fait qu'un disque soit non monté n'est pas négligeable en matière de sécurité. »

Ce n’est pas négligeable, en effet, face aux logiciels pas très bien écrits. Mais comme je le disais, ça n’est pas non plus une sécurité énorme, dès lors qu’on se trouve face à quelque chose d’un peu plus vicieux.

« Pour masquer un volume monté sur le bureau via applescript [etc.] »

Merci. :-)
Mais je sais déjà parfaitement tout ça, je n’ai pas demandé un cours (surtout sur ce sujet).

Ce que j’ai expliqué, c’est qu’Apple pourrait songer à intégrer ça au fonctionnement de Time Machine, histoire de faciliter encore un peu la vie de l’utilisateur, qui n’aurait pas à se rendre compte qu’un disque est monté, ni à se poser la question de le démonter.
Cependant, on peut produire l’argument inverse que sans affichage explicite du montage, le risque de déconnexion brutale en cours d’utilisation est encore plus élevé.

J’en reviens donc à ma première idée : un disque apparaissant comme monté, mais déconnectable sans risque une fois la sauvegarde terminée.
Cependant (encore), on peut bien sûr produire l’argument comme quoi ça donnerait de mauvaises habitudes à l’utilisateur, qui risque d’appliquer ce traitement à d’autres disques externes et… bon, ben ok, finalement, il est possible que les choix faits par Apple pour ce processus soient en fait tout à fait justifiés. Pfff ! :-)

avatar patrick86 | 

"J’en reviens donc à ma première idée : un disque apparaissant comme monté, mais déconnectable sans risque une fois la sauvegarde terminée."

Très bonne idée !

Ça m'est déjà arrivé d'oublier que mon disque de sauvegarde était connecté et de le débrancher sans l'avoir éjecté.
Mais cet utilitaire ne me convient pas vraiment s'il ne permet qu'une sauvegarde.

Je crois que je vais solutionner mon problème autrement : connecter mon disque de sauvegarde à mon serveur et utiliser le serveur Time Machine.

avatar switch (non vérifié) | 

L'avantage de TimeMachine c'est justement de pouvoir éjecter le disque même en pleine sauvegarde, c'est pourquoi Apple n'a pas implémenté de case à cocher "Ejection automatique du disque après la sauvegarde".
Sans compter qu'on peut vouloir utiliser le disque pour y stocker d'autres données...
Mais ton soft n'est pas inutile; c'est juste qu'il est préférable d'avoir une partition ou disque dédié aux sauvegardes TM, ce qui est AMHA une excellent approche.
J'ai juste réalisé peu ou prou la même chose avec seulement 4 lignes d'AppleScript + Automator, c'est tout. Et loin de moi l'idée de donner des leçons qui que ce soit, je partage du code AppleScript, c'est tout, libre à qui le veut de l'utiliser à sa guise.

avatar BeePotato | 

@ Switch : « L'avantage de TimeMachine c'est justement de pouvoir éjecter le disque même en pleine sauvegarde, c'est pourquoi Apple n'a pas implémenté de case à cocher "Ejection automatique du disque après la sauvegarde". »

Euh… ces deux choses n’ont strictement aucun rapport.

« Sans compter qu'on peut vouloir utiliser le disque pour y stocker d'autres données... »

Tout à fait — c’est pour ça que je parlais de lier ce comportement à une option disant que le disque entier était dédié à la sauvegarde (parce que sinon, c’est effectivement peu pratique).
Tu noteras aussi que j’ai terminé en concluant qu’en fait, le fonctionnement actuel de Time Machine sur ce sujet était sûrement le meilleur compromis qui pouvait être trouvé. ;-)

« Mais ton soft n'est pas inutile »

Mais pourquoi parles-tu de « mon » soft ?
Tu sais que je n’ai strictement rien à voir avec le logiciel présenté par l’article, n’est-ce pas ?

Moi, je n’ai fait qu’évoquer des idées que j’aurais bien voir Apple implémenter pour Time Machine.

« J'ai juste réalisé peu ou prou la même chose avec seulement 4 lignes d'AppleScript + Automator, c'est tout. »

On est bien plus proche du peu que du prou, tout de même. :-)
Le script que tu as montré ne fait ni la même chose que le logiciel présenté dans l’article (puisqu’il manque l’automatisation, ce qui est précisément le but de ce logiciel), ni la même chose que les idées de modifications de Time Machine que j’ai décrites.

« Et loin de moi l'idée de donner des leçons qui que ce soit, je partage du code AppleScript, c'est tout »

C’est gentil, et c’est pour ça que j’ai dit merci. ;-)
Mais j’essayais de te faire économiser du temps en signalant qu’il était inutile de m’indiquer les diverses méthodes pour cacher un montage, d’une part parce que je les connaissais déjà, mais surtout parce que ça n’avait pas grand chose à voir avec ce dont je parlais.
Merci encore, tout de même, pour l’intention. :-)

avatar iDanny | 

Je l'aurais appelé Ejaculator.
Aucun humour ce dev.

avatar AirForceTwo | 

Il a peut-être simplement passé l'age de l'adolescence :-)

avatar pim | 

Le fameux « Ejector » m'a fait un Kernel Panic dès la première sauvegarde Time Machine terminée. Ça doit être mon tout premier Kernel Panic de l'année !

Ejector => Poubelle !

CONNEXION UTILISATEUR