6 votes

Y a-t-il de la documentation sur le système APFS (par exemple l'API) quelque part ? Je veux faire un instantané d'un disque externe

Il semble qu'il doive y avoir des appels système pour créer et gérer les instantanés APFS sur les disques externes. Carbon Copy Cloner les utilise dans ses routines de sauvegarde. https://bombich.com/kb/ccc5/leveraging-snapshots-on-apfs-volumes

Mais, il ne semble pas y avoir d'interface de ligne de commande en dehors de tmutil . tmutil peut afficher des instantanés par volume, mais ne peut réaliser des instantanés que sur le volume système.

Il doit y avoir un appel API, ou une procédure, pour créer un snapshot APFS, que CCC utilise ?

J'ai une certaine familiarité avec APFS et le manque d'outils en ligne de commande, car j'utilise beaucoup AFSCTool ( https://github.com/jeabraham/afsctool/ ). Comme Apple ne fournit pas de commande de compression du système de fichiers, quelqu'un devait écrire un programme C pour appeler les API de compression. (Apple supporte la décompression à la volée, mais ne donne pas aux utilisateurs un moyen de compresser les fichiers en premier lieu, donc quelqu'un d'autre a dû écrire un outil de ligne de commande pour nous).

8voto

Jose Chavez Points 645

Oui, il existe effectivement une telle documentation. Il est livré avec MacOS préinstallé.

Je vous suggère d'exécuter la commande suivante dans le Terminal :

man fs_snapshot_create

La page du manuel contient de la documentation non seulement sur la façon de créer un instantané, mais aussi sur la façon de les répertorier, de les supprimer, de les renommer, de les monter et de les rétablir.

Notez que la plupart de ces fonctions, à l'exception de la fonction fs_snapshot_list() exige que votre programme dispose d'un droit spécifique ( com.apple.private.vfs.snapshot ).

Comme il s'agit de créer un outil pour votre machine personnelle, vous pouvez simplement donner ce droit à l'outil lors de la compilation du code. Utiliser Exemption AMFIE pour permettre à votre programme (et aux autres sur votre Mac) d'avoir ce droit sans qu'il soit "approuvé" par Apple.

Si vous voulez créer un outil destiné à une large distribution, vous devez faire une demande auprès d'Apple pour obtenir les droits. Je crois savoir que ces droits sont accordés aux applications de sauvegarde.

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