Comment afficher meminfo en mégaoctets en haut?

186

Parfois, il n’est pas confortable de voir meminfo en kilo-octets lorsque vous avez plusieurs Go de RAM. Sous Linux, cela ressemble à:

top, avec toutes les statistiques de la mémoire en Kb

Et voici à quoi cela ressemble dans Mac OS X:

en haut, avec des statistiques de mémoire ajustées à Mo et Mo

Est-il possible d'afficher meminfo dans Linux top en téraoctets, gigaoctets et mégaoctets?

Anthony Ananich
la source
6
Apparemment, certains articles disent que dans Redhat Linux, vous pouvez faire quelque chose comme top -Mafficher l’utilisation en MB. Si vous souhaitez uniquement surveiller l'utilisation de la mémoire, vous pouvez utiliser plutôt utiliser htop. Pas sûr de toute autre option.
Barun
Vous avez raison, mais il n'y a rien à ce sujet dans l'aide intégrée. Je viens de temps en temps de trouver cela dans la page de manuel
Anthony Ananich
1
La page de manuel est l’aide intégrée.
Casey
4
Vous pouvez toujours utiliser free -mou mieux à la free -hplace.
terdon
5
Une fois que vous avez sauté dans le top hit Ejusqu'à ce qu'il affiche la mémoire cumulée que vous recherchez, appuyez ensuite Wpour écrire cette configuration sur le disque.
Trevor Norris

Réponses:

208

Lorsque vous êtes en haut de la liste, la majuscule "E" parcourt différentes unités de mémoire (KiB, MiB, GiB, etc., différentes de Ko, Mo et Go) dans les informations de mémoire totale:

L’image montre les sommets de la mémoire générale avec GiB en tant qu’unité.

Alors que "e" en minuscule fait les mêmes lignes de processus:

L'image montre les processus en haut où la mémoire est affichée en MiB

De la page de manuel:

2c. MEMORY Usage
    This  portion  consists of two lines which may express values in kibibytes
    (KiB) through exbibytes (EiB) depending on  the  scaling  factor  enforced
    with the 'E' interactive command.

Informations de version top -version :: procps-ng version 3.3.9
Système: CentOS 7

Josh W
la source
7
Ça ne marche pas pour moi dans RHEL
Anthony Ananich
4
Fonctionne à Ubuntu 14.04 Bravo.
tjjjohnson
travaille dans fedora 20
sivann
5
@AnthonyAnanich: Ça marche pour moi dans RHEL 7.
krlmlr
3
<machine du temps du futur> Je trouve que les unités par défaut de pétaoctets sont terriblement inadéquates et inutiles. Je finis toujours par avoir besoin de frapper E au moins une fois pour atteindre le sommet en unités d'Exabytes. </ Time machine from the future>
Trevor Boyd Smith
70

Il y a une option de ligne de commande qui fait ça:

-M : Detect memory units
            Show memory units (k/M/G) and display floating point values in the
            memory summary.

Il suffit donc de courir en haut comme ça:

top -M

Si -Mcela ne fonctionne pas, vous pouvez appuyer sur Ealors que vous êtes déjà en haut.

Depuis man top(procps-ng version 3.3.9):

E: Extension de la mémoire dans la zone de résumé Cette commande permet de parcourir la mise à l'échelle de la mémoire de la zone de résumé disponible, qui va de KiB (kilo-octets ou 1 024 octets) à EiB (exbibytes ou 1 152 921 504 606 846 976 octets).

Si vous voyez un '+' entre un numéro affiché et l'étiquette suivante, cela signifie que top a été forcé de tronquer une partie de ce nombre. En augmentant le facteur de mise à l'échelle, une telle troncature peut être évitée.

en haut, montrant les unités de mémoire en "M"

Anthony Ananich
la source
24
+1, mais vérifié dans Ubuntu, son dicton ne fonctionne pas. De toute façon dans Ubuntu?
rɑːdʒɑ
Je n'ai aucune idée, @richardparker
Anthony Ananich
1
Bon sang, vous avez accumulé une tonne de karma avec un simple (mais bon) auto-réponses. Bon travail.
user1717828
4
Ce flou n'est pas assez flou, Antonio.
Evgeni Sergeev
2
Fonctionne pour RHEL 6 (en appuyant sur 'E' pas comme commentaire principal)
Melt Ice
49

Vous pouvez également utiliser htop. C'est beaucoup plus cool que top.

Si vous utilisez Debian ou l’un de ses dérivés, vous pouvez l’installer avec sudo apt-get install htop.

capture d'écran htop

Edit: Voici une capture d'écran avec un meilleur jeu de couleurs:

capture d'écran htop avec de meilleures couleurs

rɑːdʒɑ
la source
17
htopsemble mieux avec un fond blanc ou noir. La palette de couleurs de votre capture d'écran est moins qu'optimale.
jlliagre
2
@jlliagre Œil du spectateur.
Jonathan Komar
@ Macmadness86 Autre capture d'écran ajoutée
jlliagre
1
fyi, htop est livré avec d’autres couleurs que vous pouvez accéder en allant dans setup F2.
Miguel Mota
Je cours avec alias top='htop --no-color'afin que je puisse taper 'top' et obtenir un remplacement raisonnable pour le top sans le jeu de couleurs horrible.
Benjamin
35

top -MÀ ma connaissance, ne fonctionne sur aucune des distributions Fedora, Debian ou Ubuntu. Je viens d'essayer et ce n'est pas dans le procps-ngpaquet qui fournit top. Il existe de nombreuses implémentations de topsorte qu'il faut accorder une attention particulière à celle qu'ils utilisent.

En général, il est préférable d’utiliser la freecommutation pour obtenir la quantité de mémoire disponible sous Linux.

procps vs procps-ng

Vous remarquerez peut-être que les CentOS 5 et 6, ainsi que RHEL 5 et 6, top -Msemblent fonctionner. En effet, ces distributions sont livrées avec la version originale de procps. Le projet a été créé et il y a maintenant un autre projet procps-ng.

Quelques-uns des détails expliquant pourquoi il y avait un fork, tirés de la page du projet Fedora .

extrait

Les anciens outils (hérités) de Procps n'avaient aucune mise à jour depuis plusieurs années, ce qui a conduit à une scission massive du code, provoquée par une application locale uniquement de correctifs spécifiques à la distribution, qui n'ont pas été fusionnés en amont. Le projet est devenu difficilement maintenable car certaines des corrections nouvellement écrites étaient incompatibles avec des sources gérées par d'autres distributeurs. Une incompatibilité similaire peut être constatée dans le comportement des applications et dans leurs commutateurs de ligne de commande. Cette mise à jour inévitable peut être comprise comme un effort visant à unifier les outils procps dans toutes les distributions Linux.

Donc, pour être clair, le projet procps-ngfork , est ce que Debian, Fedora, Ubuntu et d’autres distributions utilisent, le projet hérité, qui prend en charge top -Mest toujours utilisé par plusieurs versions à plus long terme qui ne suivent pas la dernière version. et le plus grand.

NOTE: J'ai téléchargé la dernière version de procps-ng"procps-ng version 3.3.9.1-14ef" et le -Mcommutateur lui aussi manquait .

$ ./top/top -version
  procps-ng version 3.3.9.1-14ef
Usage:
  lt-top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols]

libre

freeLorsque vous utilisez des commutateurs, vous pouvez voir la raison la plus probable pour laquelle l'absence de la fonctionnalité d'unités est absente de procps-ngl'implémentation de top.

$ free -m
             total       used       free     shared    buffers     cached
Mem:          7782       6506       1276          0        504       1726
-/+ buffers/cache:       4274       3507
Swap:         7823       1429       6394
[saml@greeneggs ~]$ free -k
             total       used       free     shared    buffers     cached
Mem:       7969492    6663180    1306312          0     516948    1764780
-/+ buffers/cache:    4381452    3588040
Swap:      8011772    1463456    6548316

Arrondir devient problématique, je pense donc que procpsla mise en œuvre évite le problème en n'offrant pas la capacité.

htop

Effectue correctement l’affichage de l’utilisation de la mémoire globale.

   ss de htop

un haut

À mon avis, un meilleur outil pour regarder la mémoire.

   au sommet

non

Un autre outil utile consiste nmonà examiner les performances du système.

   ss de nmon

slm
la source
1
top -Mtravaille pour moi dans RHEL6
Anthony Ananich
2
@AnthonyAnanich - J'ai fait des recherches un peu plus. La version la plus récente de CentOS 5.4 "procps version 3.2.8" comporte le -Mcommutateur CentOS 5.8, ainsi que le commutateur "procps version 3.2.7". Cependant, Fedora 19 dispose de "procps-ng version 3.3.8" qui ne prend pas en charge le -Mcommutateur.
slm
@AnthonyAnanich - ajout de détails à ma réponse à propos de procps vs procps-ng.
slm
Excellente réponse, merci, @slm. Je ne sais même pas laquelle des trois réponses est la meilleure. Ne récompensera personne, je veux laisser les autres décider.
Anthony Ananich
@AnthonyAnanich - NP. Vous devriez envisager d'en choisir un si vous estimez qu'il répond à votre Q 100%. Accepter un A est important car cela indique au reste de la communauté qui passe par votre Q que vous, en tant que PO, avez estimé que ce A répondait à vos problèmes ou les résolvait. Si les autres A sont exceptionnels, ils seront également traités par UV. Le fait de ne pas en accepter un est fondamentalement le signe que, en tant que PO, vous estimez toujours que votre Q n'a pas été suffisamment répondu. Le A accepté se positionne également comme le 1er A lorsque ppl voit votre Q dans le futur.
slm
23

Vous pouvez appuyer sur les touches suivantes:

  • e - Modifier le facteur de mise à l'échelle sur l'écran de résumé
  • Shift+ e- Changer le facteur d'échelle de la tâche
  • Shift+ w- Enregistrer les paramètres actuels
Gleb Belyaev
la source
e et shift-e sont tout le
contraire
3
Ne savait pas sur Shift+ w, bon conseil pour enregistrer ma config :)
sofly
6

Donc, la réponse rapide: en fonction de votre distribution Linux, essayez soit:

top -M

OU, après avoir démarré en haut, tapez E majuscule (puis W pour écrire la configuration).

Un de ceux-ci devrait fonctionner pour presque tout le monde (sauf Solaris, bien sûr, où vous auriez de la chance d'avoir le meilleur).

Conseil bonus: chaque fois que vous démarrez une instance principale sur une nouvelle installation, tapez ExyzW pour enregistrer les couleurs, la surbrillance et les unités - quel soulagement!

Andrew Lorien
la source
5
Toutes ces informations ont déjà été postées.
Scott
0

Sur RHEL7 top shift + e ou CspsLK ON. Vous avez besoin de l'alphabet capital "E".

Vous obtiendrez en MiB, Gib, TiB, PiB, EiB. Vous pouvez accéder à tous ceux-ci.

Et aussi vous pouvez utiliser la commande htop qui doit être téléchargée et installée sur le système de base rpm.

Je vous remercie. Sagar Dalvi

Sagar Dalvi
la source