Ejectify, un utilitaire pour automatiser l'éjection du stockage externe

Pierre Dandumont |

Si vous avez un Mac que vous mettez régulièrement en veille, vous avez peut-être déjà eu un problème : lors de la mise en veille, les périphériques de stockage sont déconnectés sans autre forme de procès. Et pour éviter le message énervant de macOS qui indique qu'il a été éjecté, l'utilitaire Ejectify est un bon choix. En effet, il va éjecter proprement et automatiquement les périphériques à la mise en veille, et les reconnecter en sortie de veille.

Une notification énervante.

Le premier point à prendre en compte, c'est que le problème n'est pas généralisé : de nombreux paramètres peuvent amener une déconnexion inopportune et si vous avez un périphérique alimenté en externe, les risques sont plus faibles. Le second point, c'est que le problème ne se limite pas à une notification visuellement gênante : certains systèmes de fichiers, comme exFAT, sont notoirement plus fragiles que les autres. Les risques de corruption de données avec une déconnexion sauvage sont nettement plus élevés avec le système de fichiers de Microsoft qu'avec les autres1.

Les options d'Ejectify

La dernière version d'Ejectify prend d'ailleurs ce risque en compte : elle permet d'éjecter les cartes SD. Ce n'est pas anodin : les MacBook Pro et quelques Mac de bureau intègrent un lecteur de cartes SD et ces dernières sont souvent formatées en exFAT, le standard avec les cartes SDXC. Le programme possède aussi quelques options intéressantes, comme la possibilité d'éjecter plusieurs périphériques simultanément.

Ejectify est un logiciel open source et il est donc possible de le compiler manuellement. Mais si vous voulez soutenir l'auteur et l'aider à payer les frais demandés par Apple, il est proposé à partir de 3 $ sur Gumroad.


  1. Le système de fichiers ne dispose que d'une copie de la table d'allocation, et il n'est pas journalisé, donc une déconnexion pendant une phase d'écriture peut corrompre un volume.  ↩︎

Tags
avatar socotran77 | 

Cela m'amène à poser une question
Je suis passé d'un Mac mini à un Mac Studio et je possède une station d'accueil SATECHI qui permet de rajouter des connecteurs ainsi que d'insérer un SSD
Avec le Mac mini je n'avais aucun soucis
Depuis le studio le SSD passe son temps à se déconnecter et à se reconnecter
De plus, le mac me fait des redémarrages intempestifs
J'ai commencé par acheter un nouveau SSD en pensant que l'ancien allait tomber en panne mais le nouveau fait exactement pareil
J'ai donc retirer complètement le SSD mais le mac continue de s'éteindre
J'ai finalement retirer la station d'accueil et le mac semble ne plus redémarrer
Donc, ma question : est ce que le message de dd déconnecter est en rapport avec le sujet de cet article
Et si quelqu'un a un avis concernant le redémarrage intempestif du mac il sera le bienvenue
Merci

avatar hawker | 

Je pense qu'il faut commencer à accepter la vérité qu'Apple a foiré ton mac et qu'il faut l'amener au SAV.

avatar socotran77 | 

@hawker

Un peu radical non ? De plus ils vont me dire que c'est SATECHI qui deconne !

avatar Pachaland | 

as-tu essayé de contacter SATECHI ou voir si d'autres ont le même soucis sur d'autres forums ?
ça m'intéresse aussi justement d'en mettre un

avatar socotran77 | 

@Pachaland

J'avoue que non car en ce moment je n'ai pas trop le temps
En plus je dis Satechi mais j'ai un doute c'est peut être pas cette marque là car il y a un autre modèle
Mais je vais regarder ça

avatar Lameth | 

Est ce que ça marche pour les disques réseaux en SMB ? Ça serait parfait pour mon NAS

avatar Yves SG | 

J’ai une autre question :
Il fut un temps où on pouvait retirer une clé USB sur un Mac sans avoir besoin de faire quoique ce soit auparavant.
Pourquoi faut-il maintenant « éjecter » la clé avant de la retirer ?

avatar pat3 | 

@Yves SG

"J’ai une autre question :
Il fut un temps où on pouvait retirer une clé USB sur un Mac sans avoir besoin de faire quoique ce soit auparavant."

Aucun souvenir d’une telle époque ?!? Même les disquettes il fallait les éjecter avant de les retirer du lecteur…

avatar BeePotato | 

@ pat3 : « Aucun souvenir d’une telle époque ?!? »

Pareil.

« Même les disquettes il fallait les éjecter avant de les retirer du lecteur… »

Ça, vu le fonctionnement des lecteurs de disquettes des Mac, c’était facile de ne pas l’oublier, contrairement à ce qui se passait sur les autres plateformes : l’éjection étant motorisée, il fallait forcément la demander par voie logicielle (à moins d’être vraiment bourrin et d’y aller au trombone, mais c’était censé n’être que pour les cas d’urgence).

avatar ech1965 | 

d'ailleurs "avant" il n'y avait pas de mécanisme manuel pour éjecter les disquettes... il fallait demander gentillement...

avatar Yves SG | 

@pat3

Oui les disquettes, je me souviens bien de leurs lecteurs motorisés 😄 !
Mais pour les clés USB, je me souviens qu’il n’y avait pas besoin de les éjecter, ce qui était à mes yeux un progrès ergonomique par rapport à Windows…

avatar marc_os | 

@ Yves SG

> Mais pour les clés USB, je me souviens qu’il n’y avait pas besoin de les éjecter

Je ne le pense pas.
Si vous débranchez un périphérique de stockage "sauvagement", sans d'abord "éjecter" via le Finder les volumes qu'il contient, vous risquez fortement d'avoir une alerte du système vous prévenant que ce n'est pas bon.
Pourquoi ?
Parce que si le système de fichier n'est pas "journalisé" comme l'a expliqué Pierre, alors vous risquez de perdre des données. Particulièrement si un logiciel quelconque, dont macOS lui même est en train d'écrire sur le volume arraché.
C'est facile à comprendre : Si vous arrachez votre clé USB formatée en MS-DOS ou exFat (et non pas HFS+ ou APFS qui sont des systèmes journalisés), pendant que quelqu'un écrit dessus alors fatalement l'opération d'écriture sera incomplète. Vous aurez donc au final des données incomplètes sur votre clé.
Les systèmes "journalisés" ajoutent justement une sécurité contre ces corruptions de données : Si au prochain branchement de votre clé USB macOS voit qu'il y a des données "incomplètes" sur la clé, alors il va restaurer l'état précédent l'écriture interrompue. Vous aurez certes "perdu" les tous derniers changements (interrompus), mais vous aurez des donnée propres.
Si vous avez la chance qu'aucune activité d'écriture était en cours au moment de l'arrachement, alors pas de soucis. Mais c'est que vous avez eu de la chance.
Donc, encore aujourd'hui et toujours, il est préférable d'éjecter les volumes avant de débrancher leur support.

avatar Lightman | 

@marc_os

Réponse incomplète. Il y a aussi le mécanisme de vidage de cache de données (fflush enC) qui était activé par défaut sur Mac, à chaque écriture, comme ça c'est moins performant mais pas de souci d'arrachement.
Sur PC on peut l'activer aussi, si on veut.

avatar Biking Dutch Man | 

Encore un excellent untilitaire. On se demande pourquoi Apple n'y a pas pensé...

avatar Tibimac | 

Cet utilitaire va être installé sur mon Mac dès ce soir car depuis que j'ai mon Crucial X8, il arrive très souvent qu'en sortie de veille toutes les applications faisant appel au Finder / au système de fichier freeze totalement. Et tout se débloque immédiatement dés que je déconnecte le Crucial X8 (de force car impossible autrement 😕).

J'ai tenté de le connecter directement au Mac ainsi que changer son câble mais rien n'y fait le problème persiste.

Cet utilitaire peut donc être salvateur 🙌🏻 !

avatar mat16963 | 

C’est typiquement le genre de chose qu’Apple devrait gérer nativement… J’utilise un NAS Qnap pour sauvegarde Time Machine, celui-ci est correctement configuré et pourtant plusieurs fois par semaine en sortie de veille j’ai une succession de messages indiquant que le disque réseau n’a pas été éjecté correctement… La simplicité de macOS s’esquinte de plus en plus malheureusement…

avatar marc_os | 

> C’est typiquement le genre de chose qu’Apple devrait gérer nativement

Pour moi normalement macOS gère cela, et les éjections intempestives sont des bogues.
Ceci dit, je n'ai personnellement jamais eu ce problème.

Par contre, j'ai entendu parler de disques externes déconnectés quand ils sont branchés via certains "hub" ou adaptateurs. J'ai comme l'impression que c'est de ce côté là qu'il faut chercher, probablement une légère incompatibilité entres ces "adaptateurs", macOS, le Mac utilisé et le périphérique en question. (Ça fait quatre paramètres...)

avatar LyvianVT | 

NB : avec mon NAS Synology, j'ai souvent des difficultés à démonter les volumes depuis le Finder, avec affichage de fenêtres d'alerte et de longues secondes d'attente.
Avec ce simple Shell Script, j'ai remarqué que le démontage se faisait “un peu plus” efficacement :

diskutil unmount '/Volumes/le-nom-de-votre-volume'

avatar marc_os | 

Ejectify va éjecter proprement et automatiquement les périphériques à la mise en veille

Pas sûr que ça soit une bonne idée.
Ça va peut-être permettre que des volumes éjectés brutalement soient désormais éjectés correctement à la mise en veille, mais normalement, aucun des périphériques externes ne devrait être éjecté lors de la "mise en veille" !
D'autant moins que la "mise en veille" d'aujourd'hui n'est pas tout à fait aussi "profonde" qu'elle l'était sous MacOS 9 par exemple. Car quand vous mettez votre Mac en veille, selon les activités en cours, il sera "plus ou moins" en veille... Ce qui explique pourquoi votre Mac peut-être légèrement chaud quand vous le sortez de veille.

avatar Targorn | 

Je ne comprends pas cette news (et cet utilitaire).

Je mets mon Mac (iMac 27" Ventura), équipé en externe d'un 3.5", d'un 2.5" et d'un SSD, en vielle très régulièrement et ce depuis toujours et je n'ai jamais eu ce message.

Les seuls fois où j'y ai été confronté c'est lorsque l'on touche aux câbles de manière un peu trop brutale.

🧐

avatar Yves SG | 

@Targorn

Idem en fait, j’ai un iMac 27 pouces avec un SSD externe sous Ventura et maintenant sous Sonoma et je n’ai jamais eu le moindre souci malgré des mise en veilles plusieurs fois par jour.

avatar Targorn | 

@Yves SG

Personnellement je ne vais pas me plaindre de ne pas avoir le soucis. Ceci étant j'aime bien comprendre...

avatar pat3 | 

@Targorn

Vous avez tous les deux des iMac, suffisamment équipés pour que vos supports de stockage externes soient directement branchés aux ports de la machine.
C’est loin d’être le cas sur MacBook, où s’équiper d’un hub ou d’une station d’accueil a été une nécessité durant toute l’ère des MacBook Intel (et continue de l’être avec les MacBook Mx dotés de deux ports USB-C). Et ces matériels ont chacun leur gestion de la puissance et de la bande passante : j’en ai essayé beaucoup, cramé un certain nombre et constaté que si tous les ports sont occupés, notamment par des disques durs, les hubs et stations manquent de puissance (quelle que soit la puissance annoncée) et génèrent des bugs de déconnexion ; de plus, il faut absolument les bons câbles pour que le hub donne toute sa puissance, mais parfois il faut un câble pas trop puissant pour que le hub arrive à gérer tous les périphériques (j’ai le cas avec certains disques durs qui ne supportent pas les câbles USB-C mais fonctionnent bien avec des câbles USB-A).

Dès que vous avec plus de deux disques durs branchés sur un hub ou une station, vous commencez à connaître des soucis de déconnexion. A moins qu’il ne s’agisse que de SSD, mais je n’ai pas encore eu l’occasion de tester.

avatar Targorn | 

@ pat3

Intéressant. Merci pour cette piste.

Pour ma part j'ai trois disques en externe dont un seul en direct sur le Mac (un SSD).

Les deux autres, un deuxième SSD (et non un 2.5" plateaux comme indiqué dans mon premier message) et un 3.5". Ceci étant, ces deux disques sont branchés chacun sur un HUB différent qui sont alimentés. Ca explique peut-être pourquoi je n'ai jamais été confronté au problème.

avatar Tykkho | 

Ça peut effectivement servir .
Merci 🙏

avatar wip | 

Sur mon Mac Studio, j'ai le problème avec certains disques, et pas d'autres... Tous sont connectés au MacStudio directement. Je viens d'acheter cet utilitaire, on verra bien si c'est efficasse.

CONNEXION UTILISATEUR