Moteur de copie
FilmCan copie avec un moteur spécialisé : le FilmCan Engine, un copieur en fan-out conçu pour les rushes de cinéma : lire la source une fois, écrire à chaque destination à la fois, vérifier avec des listes de hachage de qualité cinéma, et récupérer un disque défaillant en un clic.
Comment ça marche
- Lire la source une fois. Une seule lecture tire chaque fichier directement de la carte, en contournant le cache mémoire du Mac, donc un grand déchargement ne remplit pas votre RAM avec des données en cache.
- Diffuser à chaque destination à la fois. Un canal limité alimente un tâche d'écriture par disque. Le disque le plus lent définit le rythme; les disques plus rapides sont brièvement oisifs. Les écritures destination contournent également le cache mémoire, donc un copie multi-centaines de Go reste délimitée en mémoire.
- Écritures honnêtes. Sur exFAT, les disques externes et USB, FilmCan force le cache propre du disque pour être vidé sur le support physique avant de marquer un fichier terminé, donc « copie terminée » signifie que les octets sont réellement sur le disque, pas juste en queue d'attente dans un tampon. Les disques internes utilisent la méthode d'enregistrement normale et plus rapide du Mac, car ils n'ont pas ce problème.
- Finalisation atomique. Chaque fichier est d'abord écrit dans un fichier temporaire caché, puis échangé en son nom final seulement une fois qu'il est complètement écrit, vous ne voyez donc jamais un fichier à moitié écrit à la destination.
- Vérification (voir les modes ci-dessous), se chevauchant avec la copie du fichier suivant.
- MHL par racine source. Un
.mhlau format ASC scellé par racine source, agrégant chaque fichier dans cet arborescence, à<dest>/.filmcan/hashlists/<root>.mhl.
Pipeline de vérification
La vérification s'exécute sur sa propre voie tandis que le fichier suivant est toujours en cours de copie, donc un re-lecture paranoïaque ne double plus à peu près le temps réel. Elle se cache principalement derrière la copie. Seule la queue de vérification du dernier fichier s'exécute seule (affichée comme « Vérification en cours… »).
Modes de vérification
Choisissez dans Backup Editor → Options → Verification.
| Mode | Détecte | Coût |
|---|---|---|
| Off | rien | plus rapide, aucun hachage ou vérification |
| Fast (par défaut pour les nouveaux projets) | Bit-flips RAM, corruption PCI/USB, écritures partielles, via le hachage calculé pendant la copie | aucun au-delà de la copie; pas de relecture |
| Paranoid | tout de Fast + corruption silencieuse du microprogramme de disque, mensonges du cache OS, décomposition au repos, relit chaque destination (et la source) à partir du disque et rehache | I/O disque supplémentaire, principalement chevauchée avec la copie |
Reprise : réexécution ignore ce qui existe déjà
Réexécuter une sauvegarde (y compris après Stop) ne recopie pas les fichiers qui sont déjà terminés. Un fichier est ignoré lorsqu'il est enregistré dans la liste de hachage de chaque destination et est toujours présent sur le disque. Seuls les fichiers restants sont copiés; la ligne de progression indique « Reprise : N déjà sauvegardés, copie du reste. »
- Si la sauvegarde complète est déjà présente, aucune carte d'historique n'est ajoutée. Un popup Déjà sauvegardé apparaît à la place, avec un bouton Verify data (le même vérification de liste de hachage que Check data de l'historique).
- Un fichier supprimé d'une destination est recopié (la présence est vérifiée, pas seulement la liste de hachage).
- Force re-copy (Options) désactive la reprise du saut et recopie tout.
- Attention : avec un modèle de dossier
{date}, la reprise sur un jour différent recopie dans le dossier de ce jour (les fichiers antérieurs ne sont pas mis en correspondance).
Sources de répertoire
Déposez une carte montée (par ex. /Volumes/A001_C002) ou n'importe quel dossier. FilmCan parcourt l'arborescence,
reflète la disposition sous chaque destination et agrège un MHL par
racine source. Les fichiers cachés macOS (.Spotlight-V100, .fseventsd, .DS_Store,
.Trashes) sont ignorés automatiquement.
Disques défaillants, réparation en un clic
Quand un disque tombe en panne à mi-copie ou échoue la vérification, un bouton Retry apparaît sur sa ligne, ouvrant la feuille de réparation :
- From source, réexécute le moteur pour ce seul disque, en tirant de la source(s) d'origine si toujours montée(s).
- From sibling, lit les fichiers du MHL d'un disque voisin vérifié, les copie vers le disque défaillant et vérifie chaque fichier. La carte source n'a plus besoin d'être montée. Flux de travail d'ensemble de cinéma : continuer, réparer le disque à midi.
From sibling s'active uniquement lorsqu'au moins un autre destination du même travail a réussi.
Performance et mémoire
- Délimitée en mémoire. Les lectures source et les écritures destination contournent le cache mémoire du Mac, et la relecture paranoïaque libère la mémoire au fur et à mesure, morceau par morceau. La mémoire en vol est juste un petit tampon par destination, plafonné entre 32 Mo et 96 Mo selon la quantité de RAM du Mac.
- La concurrence multi-source est plafonnée au nombre de disques sources physiques distincts, trois clips d'une carte copient séquentiellement (sans secousse de tête); la carte A et la carte B copient en parallèle.
- La taille du bloc est choisie à partir du bus de la destination la plus lente, 4 Mo sur les buses lentes, jusqu'à 16 Mo sur Thunderbolt/interne.
- La vitesse et l'ETA en direct utilisent une moyenne mobile du débit combiné récent (copie + vérification), l'estimation est donc stable et honnête dès les premières secondes.