Como verificar a CPU no Linux: nproc, lscpu e informações de RAM, disco e SO
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.
| Comando | O que mostra |
|---|---|
| nproc | Número de CPUs utilizáveis (núcleos lógicos) |
| lscpu | Modelo da CPU, soquetes, núcleos, threads |
| free -h | RAM total, usada e livre |
| df -h | Uso de disco por sistema de arquivos |
| lsblk | Estrutura de discos e partições |
| cat /etc/os-release | Nome e versão da distribuição |
| uname -r | Versã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.
nproc4Segundo 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 15Architecture: 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): 1Multiplicando 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 -eCPU 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 yesAs 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.
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/cpuinfoprocessor : 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.
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/cpuinfo4grep -E 'siblings|cpu cores' /proc/cpuinfo | sort -ucpu cores : 2
siblings : 4Há 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/active1Segundo 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.40GHzO 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.4GiA 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 1407A 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/meminfoMemTotal: 8055808 kB
MemFree: 793600 kB
MemAvailable: 3481600 kB
Buffers: 32 kB
Cached: 2856960 kBDividindo 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 squashfsFilesystem 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 7NAME 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-releaseNAME="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-01A 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-releaseAlmaLinux release 9.8 (Olive Jaguar)Versão do kernel: o uname -r a mostra em uma linha.
uname -r5.14.0-687.10.1.el9_8.x86_64uname -aLinux 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/LinuxCom -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.
🔢 FAQ & conteúdo recomendado
Linux · Informação do sistema
Comando uptime do Linux
Comando que mostra em uma linha o tempo de atividade do servidor e a carga média de 1, 5 e 15 minutos.
Linux · Carga
O que é Load Average no Linux?
Como ler a carga média de 1, 5 e 15 minutos mostrada pelo top e pelo uptime em relação ao número de núcleos.
Linux · Memória
Configurar memória swap
Duas formas de transformar espaço em disco em memória swap para quando faltar RAM.
ℹ️ 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.