Como exibir meminfo em megabytes no topo?

151

Às vezes não é confortável ver meminfo em kilobytes quando você tem vários shows de RAM. No Linux, parece que:

EaquiestácomoficanoMacOSX:

Existe uma maneira de exibir meminfo no topo do Linux em terabytes, gigabytes e megabytes?

    
por Anthony Ananich 19.12.2013 / 16:44

7 respostas

165

Quando estiver no topo, digitar maiúscula "E" percorre diferentes unidades de memória (kb, mb, gb, etc.) nas informações de memória total:

Enquantoominúsculo"e" faz as mesmas linhas de processo individuais:

Na página de manual:

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.

Informação da versão: top -version : procps-ng version 3.3.9 Sistema: CentOS 7

    
por 27.04.2014 / 14:55
62

Existe uma opção de linha de comando que faz isso:

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

Portanto, é suficiente executar o topo assim:

top -M

Se -M não funcionar, você pode pressionar E enquanto estiver no topo.

De man top (procps-ng versão 3.3.9):

E :Extend-Memory-Scale in Summary Area With this command you can cycle through the available summary area memory scaling which ranges from KiB (kibibytes or 1,024 bytes) through EiB (exbibytes or 1,152,921,504,606,846,976 bytes).

If you see a '+' between a displayed number and the following label, it means that top was forced to truncate some portion of that number. By raising the scaling factor, such truncation can be avoided.

top,mostrandounidadesdememóriaem"M"

    
por 19.12.2013 / 16:55
42

Você também pode usar htop . É muito mais legal que top .

Se você estiver usando Debian ou um dos seus derivados, então você pode instalá-lo usando sudo apt-get install htop .

Editar:aquiestáumacapturadetelacomumesquemadecoresmelhor:

    
por 19.12.2013 / 16:58
31

top -M não funciona em nenhuma das distribuições Fedora, Debian ou Ubuntu até onde eu saiba. Eu apenas tentei e não está no pacote procps-ng que fornece top . Existem muitas implementações de top , então é preciso prestar atenção especial a elas.

Em geral, é melhor usar free com a troca para obter a quantidade de memória livre no Linux.

procps vs. procps-ng

Você pode ter notado que no CentOS 5 & 6 bem como RHEL 5 & 6 que top -M parece funcionar. Isso ocorre porque essas distribuições são fornecidas com a versão original de procps . O projeto foi bifurcado e agora existe outro projeto procps-ng .

Alguns detalhes sobre o motivo da existência do fork na página do Projeto Fedora .

trecho

Old (legacy) procps tools had no updates for several years and that led to a massive code split caused by a local-only application of distribution specific patches, which were not merged upstream. The project became hardly maintainable since some of the newly written patches were incompatible with sources maintained by other distributors. A similar incompatibility could be noticed in the applications behavior and their command line switches. This inevitable update can be understood as an effort to unify the procps tools across all Linux distributions.

Então, para ficar claro, o projeto bifurcado, procps-ng é o que o Debian, Fedora, Ubuntu e outras distribuições estão usando, o projeto legado, que suporta top -M ainda está em uso de vários dos lançamentos de longo prazo que não acompanham o mais recente e melhor.

OBSERVAÇÃO: eu fiz o download da versão mais recente de procps-ng , "procps-ng versão 3.3.9.1-14ef" e também estava faltando a opção -M .

$ ./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]

grátis

Ao executar free com os comutadores, você poderá ver o motivo mais provável pelo qual o recurso de falta de unidades está faltando na implementação de procps-ng 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

O arredondamento torna-se problemático, por isso acredito que a implementação de procps evita o problema ao não oferecer a capacidade.

htop

Faz um bom trabalho mostrando o uso de memória agregada.

notopo

Naminhaopinião,umaferramentamelhorparaolharparaamemória.

nmon

Outraferramentaútilénmonparaobservarodesempenhodosistema.

    
por 19.12.2013 / 19:29
16

Você pode pressionar as seguintes teclas:

  • e - Altera o fator de escala na exibição de resumo
  • Deslocar + e - Alterar o fator de escala na tarefa
  • Deslocar + w - Salvar as configurações atuais
por 22.12.2015 / 19:52
4

Então, a resposta rápida: dependendo da sua distribuição Linux, tente:

top -M

OU, depois de iniciar o início, digite capital E (então W para gravar a configuração).

Um deles deve funcionar para quase todo mundo (exceto o Solaris, é claro, onde você teria sorte de ter o melhor de todos).

Dica de bônus: toda vez que você inicia uma instância principal em uma nova instalação, digite ExyzW para salvar cores, realces e unidades - que alívio!

    
por 09.02.2016 / 01:39
0

No RHEL7 topo shift + e ou CspsLK ON. Você precisa do alfabeto maiúsculo "E".

Você receberá MiB, Gib, TiB, PiB, EiB. Tudo isso você pode acessar.

E você também pode usar o comando htop, que deve ser baixado e instalado no sistema base do rpm.

Obrigado. Sagar Dalvi

    
por 30.07.2017 / 13:32