Como verificar a CPU no Linux: nproc, lscpu e informações de RAM, disco e SO

Ambiente de testeFamília RHELAlmaLinux 9.8conta rootVerificado em 2026-10-29

No Linux, você verifica o número de CPUs com uma linha de nproc e, com lscpu, vê se esse número conta sockets, núcleos ou threads. Ao comparar nproc, lscpu e /proc/cpuinfo em um servidor AlmaLinux 9, os três comandos mostraram o mesmo número de CPUs lógicas com nomes diferentes, como CPU(s) e processor. RAM, disco e versão do SO também foram verificados no mesmo servidor com free, df, lsblk e uname.

O modelo da CPU, o número de núcleos, o tamanho da memória e do disco e a versão do kernel nas saídas abaixo são valores de exemplo. O que cada comando mostra foi reunido primeiro em uma tabela.

ComandoO que mostra
nprocNúmero de CPUs utilizáveis (núcleos lógicos)
lscpuModelo da CPU, soquetes, núcleos, threads
free -hRAM total, usada e livre
df -hUso de disco por sistema de arquivos
lsblkEstrutura de discos e partições
cat /etc/os-releaseNome e versão da distribuição
uname -rVersão do kernel

1️⃣ Verificar a CPU no Linux: nproc e lscpu

CPU(s) no lscpu é o número de CPUs lógicas que o sistema operacional usa; o número de núcleos físicos é lido à parte na linha Core(s) per socket. CPU(s) é calculado como sockets × núcleos por socket × threads por núcleo.

Se você só precisa do número de CPUs lógicas, uma linha de nproc resolve.

nproc
4

Segundo o manual do nproc, esse valor é o número de unidades de processamento disponíveis para o processo atual; por isso, em ambientes que limitam o uso de CPU, ele pode ser menor que o número de processadores online.

No início da saída do lscpu dá para ver de onde vem esse 4.

lscpu | head -n 15
Architecture:                            x86_64
CPU op-mode(s):                          32-bit, 64-bit
Address sizes:                           46 bits physical, 48 bits virtual
Byte Order:                              Little Endian
CPU(s):                                  4
On-line CPU(s) list:                     0-3
Vendor ID:                               GenuineIntel
BIOS Vendor ID:                          Intel(R) Corporation
Model name:                              Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
BIOS Model name:                         Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
CPU family:                              6
Model:                                   85
Thread(s) per core:                      2
Core(s) per socket:                      2
Socket(s):                               1

Multiplicando Socket(s) 1, Core(s) per socket 2 e Thread(s) per core 2, chega-se ao 4 de CPU(s). O 0-3 de On-line CPU(s) list indica os números de CPU lógica atribuídos pelo sistema operacional.

A vCPU da tabela de preços do AWS EC2 também é essa unidade de CPU lógica. Segundo a documentação oficial, o EC2 conta uma thread de um núcleo de CPU como uma vCPU. Uma instância com 2 núcleos e 2 threads por núcleo tem 4 vCPUs, a mesma estrutura da saída do lscpu acima.

A opção -e mostra em uma tabela a qual núcleo pertence cada uma das quatro CPUs lógicas.

lscpu -e
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE
  0    0      0    0 0:0:0:0          yes
  1    0      0    1 1:1:1:0          yes
  2    0      0    0 0:0:0:0          yes
  3    0      0    1 1:1:1:0          yes

As CPUs 0 e 2 compartilham o CORE 0, e as CPUs 1 e 3 compartilham o CORE 1. Essa estrutura, com duas CPUs lógicas em um núcleo, é o hyper-threading (SMT). No diagrama abaixo, você pode clicar nos botões de comando para comparar com que nomes cada um dos três comandos mostra essa estrutura.

🧭 Como se forma CPU(s) 4
Diagrama explicativo
🔍 Comando
$ nproclscpucat /proc/cpuinfo
Socket 0Socket(s): 1physical id : 0
Núcleo 0Core(s) per socket: 2core id : 0
CPU 0processor : 0
CPU 2processor : 2
Thread(s) per core: 2cpu cores : 2
Núcleo 1Core(s) per socket: 2core id : 1
CPU 1processor : 1
CPU 3processor : 3
Thread(s) per core: 2cpu cores : 2
nproc → 4CPU(s): 4 = 1 × 2 × 2processor 0~3 · siblings : 4
O nproc conta as CPUs lógicas disponíveis para o processo atual e mostra 4. Ele não divide em sockets e núcleos.
O lscpu mostra a mesma estrutura dividida em Socket(s) 1, Core(s) per socket 2 e Thread(s) per core 2, e o produto dos três, 4, é CPU(s).
O /proc/cpuinfo mostra quatro blocos, numerando cada CPU lógica com processor, e registra o socket como physical id e o núcleo como core id. siblings 4 é o número de CPUs lógicas no mesmo socket, e cpu cores 2 é o número de núcleos físicos.

2️⃣ Ver informações da CPU no Linux: /proc/cpuinfo

A origem dos números que o lscpu resume é o arquivo /proc/cpuinfo. O kernel escreve um bloco por CPU lógica, então, em um servidor com CPU(s) 4, o mesmo bloco se repete quatro vezes seguidas.

O comando cat mostra o arquivo inteiro com os quatro blocos, e cortando com head como abaixo aparece só o primeiro bloco.

head -n 27 /proc/cpuinfo
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 85
model name	: Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
stepping	: 4
microcode	: 0x2007006
cpu MHz		: 2394.374
cache size	: 28160 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault pti fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves ida arat pku ospke
bugs		: cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit mmio_stale_data retbleed gds bhi spectre_v2_user its
bogomips	: 4788.74
clflush size	: 64
cache_alignment	: 64
address sizes	: 46 bits physical, 48 bits virtual
power management:

Estes são os dez campos que você mais vai consultar.

  • 🔢 processor
  • ↳ Número da CPU lógica (começa em 0)
  • 🏷️ model name
  • ↳ Nome do modelo da CPU
  • 🧩 physical id
  • ↳ Número do socket ao qual esta CPU pertence
  • 👥 siblings
  • ↳ Número de CPUs lógicas no mesmo socket (o dobro de cpu cores com hyper-threading)
  • 🧱 cpu cores
  • ↳ Número de núcleos físicos no mesmo socket
  • 🆔 core id
  • ↳ Número do núcleo ao qual esta CPU lógica pertence
  • ⏱️ cpu MHz
  • ↳ Clock atual (MHz)
  • 🗄️ cache size
  • ↳ Tamanho do cache (mesmo valor de L3 cache no lscpu)
  • 🚩 flags
  • ↳ Recursos e conjuntos de instruções suportados pela CPU (ht, avx2, aes etc.)
  • 📐 address sizes
  • ↳ Número de bits dos endereços físicos e virtuais

Contando as linhas processor, você tem o número de CPUs; comparando siblings com cpu cores, vê se o hyper-threading está ativado.

grep -c processor /proc/cpuinfo
4
grep -E 'siblings|cpu cores' /proc/cpuinfo | sort -u
cpu cores	: 2
siblings	: 4

Há 4 linhas processor, siblings é 4 e cpu cores é 2, então cada núcleo executa duas threads. O mesmo fato também foi confirmado com o valor que o kernel escreve em /sys.

cat /sys/devices/system/cpu/smt/active
1

Segundo a documentação do kernel, 1 significa que o SMT está ativado e as CPUs irmãs estão online. Se estiver desativado, aparece 0.

Se você só precisa do nome do modelo da CPU, reúna as linhas model name.

grep 'model name' /proc/cpuinfo | uniq -c
      4 model name	: Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz

O 4 no início indica que a mesma linha apareceu quatro vezes, então uma linha mostra o nome do modelo e também o número de CPUs lógicas.

3️⃣ Verificar a RAM no Linux: free e /proc/meminfo

O tamanho da RAM é verificado com o comando free. Com a opção -h, os valores aparecem em unidades Gi e Mi.

free -h
               total        used        free      shared  buff/cache   available
Mem:           7.7Gi       4.1Gi       775Mi       112Mi       2.8Gi       3.3Gi
Swap:          2.0Gi       640Mi       1.4Gi

A memória livre é lida na coluna available. Mesmo que a coluna free seja pequena, o Linux preenche a memória sobrando com cache de arquivos (buff/cache) e a libera assim que um programa precisa.

Como na saída acima, a coluna free pode mostrar 775Mi enquanto available mostra 3.3Gi. Segundo o manual do free, available é uma estimativa da memória disponível para iniciar novos programas sem usar swap.

Para cálculos em scripts, a opção -m é a adequada. Ela mostra números inteiros em MiB.

free -m
               total        used        free      shared  buff/cache   available
Mem:            7867        4219         775         112        2873        3400
Swap:           2047         640        1407

A origem que o free lê é /proc/meminfo. As cinco primeiras linhas correspondem a total, free, available e buff/cache do free, e a unidade é kB.

head -n 5 /proc/meminfo
MemTotal:        8055808 kB
MemFree:          793600 kB
MemAvailable:    3481600 kB
Buffers:              32 kB
Cached:          2856960 kB

Dividindo MemTotal 8055808 kB por 1024, você obtém o mesmo valor de 7867 no free -m.

4️⃣ Verificar o espaço em disco no Linux: df e lsblk

Comando df mostra o tamanho e o uso dos sistemas de arquivos montados, então não serve para discos não montados nem para ver a estrutura de partições. Nesse caso, use lsblk.

df -h -x squashfs
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           1.6G  154M  1.5G  10% /run
efivarfs        128K  3.8K  120K   4% /sys/firmware/efi/efivars
/dev/nvme0n1p4   79G   10G   69G  13% /
/dev/nvme0n1p3  960M  269M  692M  28% /boot
/dev/nvme0n1p2  200M  7.7M  193M   4% /boot/efi
tmpfs           787M  8.0K  787M   1% /run/user/0

-x squashfs é a opção que tira da lista os sistemas de arquivos loop que os pacotes snap montam como somente leitura. O sistema de arquivos raiz (/) usa 10G de 79G, ou 13%, e devtmpfs e tmpfs são sistemas de arquivos criados na memória, por isso ficam fora do cálculo do espaço em disco.

Para ver também o tipo de sistema de arquivos, adicione -T; se você indicar um caminho, aparece só a linha do sistema de arquivos ao qual esse caminho pertence.

df -hT /
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/nvme0n1p4 xfs    79G   10G   69G  13% /

A raiz era xfs. Para ver como o disco e as partições estão divididos, use lsblk. Com -e 7, os dispositivos loop como os do snap saem e ficam só os discos reais.

lsblk -e 7
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
nvme0n1     259:0    0    80G  0 disk
├─nvme0n1p1 259:1    0     1M  0 part
├─nvme0n1p2 259:2    0   200M  0 part /boot/efi
├─nvme0n1p3 259:3    0     1G  0 part /boot
└─nvme0n1p4 259:4    0  78.8G  0 part /

Um disco, nvme0n1, está dividido em quatro partições, e dessas a nvme0n1p4 está montada na raiz e corresponde à linha de 79G do df.

5️⃣ Verificar a versão do SO e o kernel no Linux: os-release e uname

Depois de ler os números de CPU, memória e disco, verifique também em qual distribuição e kernel o servidor roda. O nome da distribuição, a versão e a data de fim do suporte estão em um só arquivo, /etc/os-release.

cat /etc/os-release
NAME="AlmaLinux"
VERSION="9.8 (Olive Jaguar)"
ID="almalinux"
ID_LIKE="rhel centos fedora"
VERSION_ID="9.8"
PLATFORM_ID="platform:el9"
PRETTY_NAME="AlmaLinux 9.8 (Olive Jaguar)"
ANSI_COLOR="0;34"
LOGO="fedora-logo-icon"
CPE_NAME="cpe:/o:almalinux:almalinux:9::baseos"
HOME_URL="https://almalinux.org/"
DOCUMENTATION_URL="https://wiki.almalinux.org/"
BUG_REPORT_URL="https://bugs.almalinux.org/"

ALMALINUX_MANTISBT_PROJECT="AlmaLinux-9"
ALMALINUX_MANTISBT_PROJECT_VERSION="9.8"
REDHAT_SUPPORT_PRODUCT="AlmaLinux"
REDHAT_SUPPORT_PRODUCT_VERSION="9.8"
SUPPORT_END=2032-06-01

A linha PRETTY_NAME é o nome legível para pessoas, e VERSION_ID é o número de versão que os scripts comparam. Com a linha SUPPORT_END, também foi verificada a data de fim do suporte.

Em sistemas baseados em RHEL, /etc/redhat-release também mostra a mesma versão em uma linha.

cat /etc/redhat-release
AlmaLinux release 9.8 (Olive Jaguar)

Versão do kernel: o uname -r a mostra em uma linha.

uname -r
5.14.0-687.10.1.el9_8.x86_64
uname -a
Linux server 5.14.0-687.10.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Jun 2 10:15:42 EDT 2026 x86_64 x86_64 x86_64 GNU/Linux

Com -a, o nome do kernel, o nome do host, a versão do kernel, a data de compilação e a arquitetura aparecem em uma linha. Desses, x86_64 é a arquitetura da CPU, o mesmo valor da linha Architecture do lscpu.

🔲 Simulador para verificar a CPU no Linux

No simulador abaixo, você pode digitar nproc, lscpu, free, df, lsblk e uname e ver a saída. Os valores são os mesmos valores de exemplo do texto.

Simulador para verificar a CPU no LinuxAlmaLinux 9.8
[root@server work]#
Use as teclas ↑↓ para chamar de volta os comandos digitados antes.

🔢 FAQ & conteúdo recomendado

Podem. Segundo o manual do nproc, o nproc mostra o número de unidades de processamento disponíveis para o processo atual; por isso, em ambientes que limitam as CPUs que um processo pode usar, ele é menor que o número de processadores online. O total de processadores instalados é verificado com nproc [--all]. No servidor testado, os dois valores foram iguais.

A coluna free é a memória vazia, não alocada a nada. Segundo o manual do free, available é uma estimativa da memória disponível para iniciar novos programas sem usar swap. Ela é calculada somando o cache de páginas que pode ser liberado e a memória slab que pode ser recuperada, por isso olhe available para avaliar a memória livre.

Se Thread(s) per core no lscpu for 2, cada núcleo executa duas CPUs lógicas. No /proc/cpuinfo, siblings é o dobro de cpu cores, e o valor do arquivo /sys/devices/system/cpu/smt/active é 1. No mesmo servidor, os três indicaram que estava ativado.

ℹ️ Aviso de afiliados
O conteúdo deste site contém links de afiliados. Quando um visitante compra um produto ou serviço por meio de um desses links, o site recebe uma comissão do vendedor. O valor que o comprador paga (em promoções, ele diminui ↓) não aumenta por causa disso. Preços, descontos e informações de estoque valem para o momento em que o texto foi escrito e podem ter mudado, por isso confirme com o vendedor antes de comprar. Os produtos são escolhidos e avaliados por critérios próprios, e o recebimento de comissão não influencia a ordem de apresentação nem o conteúdo das avaliações.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Demonstre sua humanidade: 9   +   5   =