Vous ne le savez peut-être pas, mais si vous avez au moins un Mac chez vous, vous pouvez l’utiliser pour accélérer les mises à jour de tous vos autres appareils Apple en les distribuant sur le réseau local au lieu de les télécharger depuis le serveurs d’Apple. Et cela ne concerne pas seulement les mises à jour d’iOS ou de macOS, mais aussi l’accès aux contenus stockés sur votre compte iCloud, les sauvegardes des appareils iOS sur iCloud et encore le chargement de ressources proposées sur les boutiques d’Apple.
Avec macOS High Sierra, il suffit de cocher une case dans les Préférences système1 pour activer la mise en cache du contenu, une fonction réservée pendant longtemps aux professionnels qui disposaient de macOS Server. Nous avions consacré un article de présentation à cette fonction à l’automne dernier, lors de la sortie du nouveau système. Nous avions expliqué comment l’activer et le configurer, et nous avions listé tous les contenus pris en charge.
Il restait une question : comment obtenir des informations sur ce qui est mis en cache et ce qui est distribué sur le réseau local au lieu d’être téléchargé depuis des serveurs distants ? Fidèle à son habitude, Apple ne donne pas énormément d’informations, tout est censé fonctionner à l’arrière-plan automatiquement, sans que vous n’ayez à intervenir. Si vous voulez en savoir plus et vérifier que tout fonctionne normalement, il y a malgré tout deux informations que vous pouvez facilement obtenir.
Quelle taille occupe le contenu mis en cache ?
Pour commencer, la taille du cache, c'est-à-dire le poids total des fichiers mis en cache par macOS et qui seront disponibles sur le réseau local pour tous les appareils qui s’y connectent. Pour connaître cette information, le plus simple est d’ouvrir les Préférences Système, puis le panneau de partage pour accéder aux réglages de la mise en cache de contenu. Cliquez sur le bouton « Options… » en bas à droite de la fenêtre et vous obtiendrez immédiatement la taille occupée par le cache.
C’est un point intéressant à surveiller au début, pour savoir combien est-ce que le cache de macOS va utiliser. Par défaut, il n’y a aucune limite, si ce n’est celle du volume de stockage du Mac, mais cela veut dire que si le cache se remplit trop rapidement, vous aurez un SSD ou un disque dur saturé tout aussi vite.
La taille du cache dépendra d’un grand nombre de facteurs, le plus évident étant le nombre d’appareils compatibles qui se connecteront au réseau local. Si vous l’utilisez uniquement pour un iPhone et un iPad, votre cache grossira plus lentement que si vous avez trois ou quatre Mac, une dizaine d’appareils iOS et quelques Apple TV, par exemple. À la rédaction, le cache de macOS est activé depuis la sortie de High Sierra et il occupe actuellement près de 880 Go. Dans mon cas, deux jours après avoir activé le cache, il occupait près de 6 Go de stockage, sachant qu’il y a eu une vague de bêtas d’iOS dans ces deux jours.
Une bonne idée peut être d’activer la mise en cache, d’attendre quelques jours (une semaine, par exemple) et de regarder la taille occupée. En fonction de ce paramètre et surtout de l’espace restant sur le volume de stockage de votre Mac, vous pouvez choisir de restreindre davantage le cache ou au contraire de lui laisser plus de place. Naturellement, quand la limite est atteinte, macOS se chargera de supprimer des éléments du cache pour en ajouter d’autres, vous n’avez pas besoin d’intervenir. Même si vous pouvez, si vous le souhaitez, vider totalement le cache existant et repartir de zéro grâce au bouton de réinitialisation affiché dans ces réglages.
Notez aussi que macOS permet de déplacer le cache, même quand il existe déjà. C’est une option pratique si vous voulez commencer avec un petit SSD, par exemple celui d’un Mac portable, et que vous souhaitez ensuite augmenter la taille du cache en utilisant un disque dur externe. Vous pouvez utiliser un volume de stockage présent dans le Mac, relié directement à l’ordinateur, mais aussi un volume distant présent sur le réseau local. Cette dernière option est particulièrement utile pour exploiter un NAS.
Comme souvent, vous pouvez obtenir encore plus de détails en passant par le terminal de macOS plutôt que par l’interface. Saisissez cette ligne de commande pour avoir un statut détaillé sur l’état du cache de macOS High Sierra :
AssetCacheManagerUtil status
Qu’est-ce qui est distribué par le cache de macOS ?
Apple liste sur cette page de support tous les contenus susceptibles d’être mis en cache par macOS High Sierra. Pour résumer, il y a trois sources principales :
- Serveurs Apple : les mises à jour des systèmes d’exploitation (iOS, macOS, tvOS et watchOS), les autres logiciels distribués directement et tous les contenus qui sont téléchargés sans passer par les boutiques2 ;
- Boutiques : les apps et mises à jour d’apps de l’App Store et du Mac App Store, tous les contenus de l’iBooks Store et les ressources à la demande pour les apps iOS et tvOS ;
- iCloud : photos iCloud, tout le contenu d’iCloud Drive et sauvegardes iCloud pour les appareils iOS.
Par défaut, tous ces contenus seront mis en cache par macOS, mais un réglage dans les Préférences Système permet de restreindre le système. Choisissez l’option « Contenu iCloud uniquement » pour ne pas stocker de mises à jour ou d’apps de l’App Store ; l’option « Contenu partagé uniquement » fait l’inverse, le contenu iCloud n'est pas mis en cache, seul ce qui provient des boutiques et des serveurs de mises à jour est stocké.
Dans tous les cas, vous voulez peut-être savoir ce qui est contenu dans votre cache. Là aussi, Apple a choisi d’afficher le minimum d’informations dans l’interface de macOS, même s’il existe une interface qui affiche la quantité de données stockées et diffusées par le cache du Mac. Vous la trouverez dans le Moniteur d’activité, un utilitaire qui sert à la base à lister tous les processus et leur utilisation du processeur, de la mémoire vive ou encore de la connexion internet et du volume de stockage. Avec macOS High Sierra, un onglet a été ajouté pour le cache sur les Mac où il est activé.
Cet onglet affiche la quantité de données diffusées sur le réseau local sur la dernière heure, les dernières 24 heures, les sept et trente derniers jours. En bas de la fenêtre, un graphique représente l’information de manière visuelle, et vous aurez aussi les valeurs précises pour chaque période dans la partie haute. Si vous utilisez un système de cache simple, avec un seul Mac sur le réseau qui se charge de tout, vous aurez une partie des informations qui sera grisée et beaucoup de doublons. C’est normal et vous pouvez vous concentrer sur la première ligne, celle dédiée aux « Données fournies ».
Le principal intérêt de cette interface est de vérifier que le cache fonctionne bien au quotidien, c'est-à-dire qu’il fournit bien des données aux clients sur le réseau local. Vous n’en saurez pas beaucoup plus, ni sur le type de contenu qui a été distribué, ni sur sa nature exacte. Si vous voulez vérifier que tout fonctionne correctement, vous pouvez, par exemple, accéder à un contenu stocké sur iCloud sur un appareil iOS. Visionnez quelques photos qui ne sont pas chargées en local, ou bien ouvrez des documents iCloud qui ne sont pas stockés dans la mémoire de l’appareil et vous devriez voir les compteurs augmenter.
Le Moniteur d’activité montre aussi la quantité de « données perdues », des fichiers qui ont été supprimés du cache. Il peut y avoir deux raisons pour expliquer cela : soit la limite définie lors de la création du cache est atteinte et il faut faire de la place pour de nouveaux fichiers ; soit parce que les fichiers mis en cache ont expiré. En effet, les données sont régulièrement purgées, par défaut si elles n’ont pas été utilisées pendant un mois.
Vous n’aurez rien de plus par l’interface, mais si le terminal ne vous fait pas peur, vous pouvez consulter les logs du cache de contenus pour en savoir un petit peu plus. Ne comptez pas sur une liste de fichiers en clair, toutes les ressources sont associées à ces noms de code impossibles à déchiffrer, mais c’est la preuve la plus directe du bon fonctionnement du cache. Voici la commande à saisir dans le terminal :
log stream --predicate 'subsystem == "com.apple.AssetCache"'
À noter que vous aurez quasiment le même résultat en ouvrant la Console de macOS et en faisant une recherche sur « AssetCache » pour filtrer les messages qui s’y affichent. Et dans un cas, comme dans l’autre, cela est surtout utile pour vérifier qu’il se passe bien quelque chose, pas vraiment pour connaître le contenu précis du cache.
Que faire si le cache ne semble pas fonctionner ?
Pour finir, que faire si vous avez l’impression que le cache de contenus de macOS High Sierra ne fonctionne pas ? Si vous ne voyez aucune valeur changer dans le Moniteur d’activité et si les logs n’affichent rien, voici quelques pistes pour essayer de débloquer la situation.
Première étape, vérifier que le cache de contenus est toujours actif. Dans les Préférences système, ouvrez à nouveau le panneau de partage et vérifiez que la pastille est verte, indiquant que tout fonctionne normalement. Si elle est gris clair, c’est que le cache est désactivé ; en gris foncé, la fonction est temporairement inactive pendant un déplacement des données ; enfin, une pastille jaune indique que le processus est inactif, ou bien qu’il démarre. Si vous avez du jaune, c’est probablement qu’il y a un souci quelque part.
En cas de problème, essayez d’arrêter et de relancer la mise en cache, de redémarrer macOS et de vérifier si vous êtes bien à jour. Au-delà, vous devrez sans doute analyser de plus près les logs pour trouver une explication. Si vous avez déplacé le cache récemment, il est possible que le transfert ait échoué et vous trouverez quelques explications et aides dans cet article.
Si la pastille est bien verte et que le cache ne fonctionne toujours pas, voici quelques points qui pourront vous aider :
- Avez-vous pensé à redémarrer les appareils après avoir activé le cache ? Même si cela doit finir par fonctionner sans, c’est le meilleur moyen de forcer les appareils à se connecter au cache de votre Mac.
- Votre réseau local est-il compatible ? Il y a peu de risques que ce ne soit pas le cas, mais le système repose sur un réseau local qui exploite des adresses IP conformes à la norme RFC 1918. Sauf si vous avez bricolé votre propre solution maison, cela devrait être le cas. Au passage, la mise en cache de macOS est très simple par défaut, mais elle peut être aussi sophistiquée, avec plusieurs serveurs qui collaborent. Pour aller plus loin, cliquez sur le bouton « Options… » avec la touche
⌥
pour dévoiler les options avancées. - Le Mac qui fait office de serveur reste-t-il toujours accessible ? S’il est éteint ou même en veille3, le serveur de cache ne fonctionnera plus et vous ne bénéficierez plus de ses avantages. C’est pourquoi il est recommandé d’utiliser un ordinateur fixe4 et de l’empêcher de suspendre son activité. Pour cela, ouvrez les Préférences système, puis le panneau Économiseur d’énergie et cochez la première case.
-
Dans les Préférences système, ouvrez le panneau dédié au Partage et cochez l’option « Mise en cache de contenu » dans la barre latérale de gauche. Cela suffit à activer le cache, même s’il peut être nécessaire de regarder les options pour limiter sa taille ou changer son emplacement. ↩︎
-
Les dictionnaires de langue, le contenu GarageBand sur macOS, les voix haute-qualité de Siri, etc. ↩︎
-
La fonction Power Nap ne permet pas (encore ?) de laisser la mise en cache de contenus en fonction. ↩︎
-
Un Mac mini peut largement suffire. À défaut, un portable peut très bien être recyclé en serveur. Mieux vaut le relier en Ethernet qu’en Wi-Fi, si c’est possible. ↩︎