Pourquoi OS X Mavericks bloque-t-il la commande de purge dans Terminal?


24

Lorsque j'essaie la purgecommande sur mon terminal, OS X Mavericks me donne le message suivant:

Unable to purge disk buffers: Operation not permitted

Ce n'était pas le comportement par défaut jusqu'à présent. Je me demande pourquoi Apple a changé cela. Y a-t-il une raison derrière cette décision? Quels en sont les avantages / inconvénients?

Réponses:


23

Vous devez exécuter cette commande avec les privilèges root. Essayer:

> sudo purge

WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.

To proceed, enter your password, or type Ctrl-C to abort.

Password:

Entrez le mot de passe de votre compte et il devrait exécuter la commande de purge.

Apple a probablement pris la décision pour des raisons de sécurité. Le seul inconvénient est que vous devez saisir votre mot de passe administrateur. L'avantage est que, pour les utilisateurs non administrateurs, ils ne peuvent pas exécuter cette commande et potentiellement endommager leur système d'exploitation.

Habituellement, les commandes qui nécessitent sudopour fonctionner sont potentiellement destructives ou invasives. Deux autres commandes avec cette exigence sont dtraceet xcode-select.


3
J'étais préoccupé par les applications qui "accélèrent sans doute" l'utilisation purge. Cette réponse m'a aidé à comprendre pourquoi ce n'est pas une bonne idée.
Gabriel Izaias

1
Je ne peux pas fermer une question en double sur les sites SE, j'ai donc copié de manière flagrante votre réponse ici . N'hésitez pas à poster votre propre copie afin que je puisse supprimer ma copie de votre réponse.
Hennes

Pouvez-vous élaborer sur "Apple a probablement pris la décision à des fins de sécurité"? Quel genre de problèmes de sécurité pensez-vous que la purge de commande crée?
Tiago

1

L'utilisation de la purgecommande peut avoir de graves effets négatifs sur les performances du système (puisque vous dites essentiellement au noyau d'oublier toutes ses connaissances accumulées sur votre utilisation récente, parcourez la liste inactive et lancez tout - même si certains processus / pilotes était sur le point de s'en servir - puis de tout redresser / tout recréer à partir de zéro). Ainsi, il est logique qu'il faudrait un certain niveau de privilège pour l'exécuter.


1

Je ne suis pas un expert, mais cela peut avoir quelque chose à voir avec la mémoire compressée dans OS X 10.9

Faire plus

Plus votre Mac dispose de mémoire, plus il fonctionne rapidement. Mais lorsque plusieurs applications sont en cours d'exécution, votre Mac utilise plus de mémoire. Avec OS X Mavericks, la mémoire compressée permet à votre Mac de libérer de l'espace mémoire lorsque vous en avez le plus besoin. À mesure que votre Mac approche de la capacité de mémoire maximale, OS X compresse automatiquement les données des applications inactives, ce qui augmente la mémoire disponible

Exrta Fast

Une fois la mémoire compressée, votre Mac n'a pas à perdre de temps à transférer continuellement des données entre la mémoire et le stockage. Il est donc capable de faire plus en moins de temps. Et comme la compression et la décompression se produisent presque instantanément, la seule chose que vous remarquerez est la réactivité de tout. Surtout quand vous faites tout en même temps.

Source: http://www.apple.com/osx/advanced-technologies/(inexistant)

Voir aussi: OS X Mavericks est plus que puissant: c'est Power Smart (PDF)

Ils l' ont peut- être fait pour éviter que l'ancien programme n'interfère avec la nouvelle façon de faire les choses. Mais je n'en ai aucune idée.


-1

'purge' ne libère pas suffisamment de RAM. J'utilise SystemPal: https://itunes.apple.com/app/systempal/id453164367?mt=12 Cela fonctionne très bien!


2
Quelles différences de comportement vous font croire qu'une application tierce du Mac App Store peut purger plus de mémoire qu'un outil inclus dans OS X d'Apple?
Graham Miln

1
Ou que n'importe quelle application / utilisateur occasionnel pourrait prendre de meilleures décisions sur la gestion de la mémoire que le noyau?
jhfrontz

-5

http://computers.tutsplus.com/tutorials/how-to-give-your-mac-a-performance-boost--mac-46271

Création d'un script de terminal pour purger la mémoire

  1. Commencez par ouvrir le terminal.

  2. Entrez la ligne suivante:

    cd Desktop/

    et appuyez sur Entrée. Cela pointe le terminal vers votre bureau plutôt que vers votre dossier utilisateur. Vous pouvez pointer Terminal vers le dossier de votre choix pour ce didacticiel.

  3. Entrer:

    touch Purge

    et appuyez sur Entrée. Cela crée un nouveau fichier appelé "Purge" sur votre bureau, mais vous ne le verrez pas encore.

  4. Entrer:

    pico Purge

    et appuyez sur Entrée. Cela ouvre l'éditeur de terminal pour le fichier de purge.

  5. Saisissez le texte suivant dans l'éditeur:

    #!/bin/sh
    
    purge
  6. Appuyez sur Ctrl + O puis sur Entrée pour enregistrer le fichier sur votre bureau. Appuyez ensuite sur Ctrl + X pour quitter l'éditeur. Assurez-vous d'utiliser la touche Contrôle, pas la touche de commande.

  7. Une fois de retour à l'écran Terminal normal, entrez:

    chmod 755 Purge

    et appuyez sur Entrée. Cela vous permet d'accéder au fichier que nous venons de créer. Par défaut, OS X masque les fichiers que vous créez à l'aide de touch.

  8. Vous aurez maintenant un fichier sur votre bureau appelé "Purge". Vous pouvez ouvrir ce fichier pour nettoyer automatiquement la mémoire de votre ordinateur. Une fois que le terminal affiche un message [Processus terminé], vous pouvez fermer l'application et continuer.


Cela ne résout pas le problème décrit dans la question. Veuillez également corriger la mise en forme de votre message.
nohillside

1
Toujours source du contenu copié (cc @patrix).
grg
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.