Bonjour, chers camarades!
Je veux laisser un très court message ici, afin que les gens qui ont un problème similaire au mien ne passent pas trop de temps à le résoudre.
Une fois, j'ai dû penser à une petite tâche. Il y a un ordinateur iMac, il y a un OS X Sierra installé avec succès sur un disque SSD externe connecté via USB, et il y a une absence étrange, surprenante et en même temps complète d'un fichier d'échange.
Je n'entrerai pas dans les détails de la surveillance, de la détermination et de la confirmation de ce fait, afin de ne pas perdre un temps précieux aux lecteurs. Dans notre «désert» russe, cela n'a aucun sens de chercher quelque chose à ce sujet. Car à l'heure actuelle - il n'y a tout simplement rien d'intelligible. Dans le même temps, le secteur anglophone d'Internet n'était satisfait de rien de significatif.
Le temps a passé. Le problème était comme un «reproche silencieux». Et soudain, de façon inattendue, vers le début du mois d'octobre, une mise à jour OS X appelée «Mojave» a été publiée. L'espoir, comme on dit, meurt en dernier. Je n'ai pas pleuré sur Internet, comme le support technique stupide et inerte de Mac OS X. Et, ma triste expérience d'appeler «juste là», j'ai décidé de ne jamais répéter afin de gagner du temps. Comme on pouvait s'y attendre, Mojave n'a pas seulement résolu le problème de tomber constamment du clavier et de la souris après s'être réveillé du sommeil, mais n'a également rien résolu avec le fichier d'échange ou du moins en ajoutant la possibilité de contrôler cette fonction très importante, à mon avis,.
Il s'est avéré que je devais faire une copie de données volumineuses, mais en même temps moches, d'un serveur distant vers mon stockage local en utilisant le protocole SSH. J'ai utilisé à cet effet un produit assez connu appelé Cyberduck. Tout est beau et beau en lui. De plus, lorsque vous travaillez avec un grand nombre de petits fichiers, il est susceptible de contrôler ses erreurs de transmission et de maintenir son propre journal temporaire, qui se développe très probablement dans les fichiers temporaires (ou le cache système) et atteint des tailles comparables aux tailles données téléchargeables. Ce qui, bien sûr, se reflète immédiatement dans les performances du système. Et ce journal "vit", en même temps, pas ailleurs - mais directement dans la RAM. Dans mon système, la RAM est de 8 Go. Mais en travaillant avec le système, je vois environ 6-7 Go constamment occupés. Certaines personnes dans notre rapport "désert" sur cet événement étrange comme celui-ci: (lire quelque part sur les forums) "" La politique d'Apple est: "Vous avez acheté beaucoup de RAM et payé beaucoup d'argent pour cela. Alors pourquoi cette RAM ne devrait pas être utilisé complètement "???" C'est-à-dire que lorsque j'ai quitté le processus de copie de ces plus petites données pendant la nuit et que je suis venu le lendemain matin pour voir «comment est-il là?», J'ai immédiatement réalisé que quelque chose n'allait pas. .
Je suis sûr que beaucoup de gens sont surpris en principe de la façon dont il est même possible - un arrêt complet d'OS X. Mais quand il n'y a pas assez de RAM - très bien. Dans le même temps, le système (!!!) n'indique toujours pas à l'utilisateur qu'il a des problèmes avec la RAM libre, et tout cela peut simplement conduire à un effondrement complet.
Maintenant, je pense, chers camarades, vous êtes tous absolument clairs, transparents et clairs, le degré de ma motivation pour résoudre ce problème.
fin du préambule
Après beaucoup de tourments, il s'est avéré finalement écrire sur une seule ligne la commande pour monter le lecteur sur lequel OS X est marqué comme non monté et alloué par le système pour utiliser la mémoire virtuelle (VM).
Surtout grâce à une
réponse sur le grille-pain . Et une centaine de pages de forums et de blogs lus sur Internet.
sudo diskutil mount -mountPoint /private/var/vm `diskutil ap list | grep VM | awk -F ' ' '/d/ {print $5}'`
Veuillez attirer votre attention sur les virgules inversées qui restreignent le filtre lui-même après avoir concaténé plusieurs commandes qui déterminent simplement l'argument de la commande de montage avec leur sortie - le nom (numéro) du disque, qui dans l'ensemble avec d'autres, est marqué comme VM. Pour le moment, ce que je vois est disk4s4. Mais, lorsqu'un deuxième ou troisième lecteur externe est connecté au tout-en-un, le nom du lecteur marqué comme VM peut facilement être comme ceci: disk5s4, et comme ça: disk6s4. Un autre point. Entre les simples guillemets verticaux du fragment "awk -F ''" - (immédiatement après la lettre F, il y a deux guillemets) - il y a un espace. C'est, encore une fois, entre guillemets simples après F - ESPACE (!). Mais juste au cas où. Les castors expérimentés trouveront immédiatement un moyen de sortir de leur hutte. :-)
Pour les personnes qui n'ont pas de disques externes connectés, ou leur ensemble est toujours constant - tout est beaucoup plus simple. Pour l'automatisation, vous ne pouvez utiliser qu'une seule commande de montage pour un disque très spécifique, ayant précédemment obtenu son nom en utilisant
diskutil ap list
Désolé, les mains n'ont pas encore atteint une automatisation absolue, mais j'espère la compléter dans un avenir proche.
Si quelqu'un avec un problème similaire "ne décolle pas" - eh bien - essayons d'en discuter ...
==
UPD: la ligne pour AppleScript ressemblera à ceci:
==
(afficher le script shell "diskutil mount -mountPoint / private / var / vm` diskutil ap list | grep VM | awk -F '' '/ d / {print $ 5}' '' avec les privilèges d'administrateur) afficher la boîte de dialogue
==