Linux sem FronteirasLinux sem FronteirasLinux sem FronteirasLinux sem Fronteiras
  • Certificações Linux
    • LPIC-1 – Administrador Linux
    • Comptia Linux+
    • Simulado LPI 1 (101-500 e 102-500)
  • Cursos
    • Curso Preparatório para Certificação Linux LPIC-1
    • Curso Preparatório para Certificação LPIC-2
    • Programação Shell Script
  • Contato

Entendendo o Comando Free no Linux

    Home Comandos Entendendo o Comando Free no Linux
    NextPrevious

    Entendendo o Comando Free no Linux

    By Ricardo Prudenciato | Comandos | 2 comments | 5 outubro, 2017 | 3

    O comando free do Linux é muito útil para se observar e monitorar o uso da memória do sistema, mas ao mesmo tempo ele gera muitas dúvidas pois usa conceitos que são desconhecidos pela maioria dos usuários e administradores de sistemas.

    Nesse artigo vamos esclarecer um pouco melhor o que é considerado pelo comando e como ele deve ser interpretado.

    Fonte das Informações

    Primeiramente é importante saber que o comando usa como base principal as informações contidas no arquivo /proc/meminfo, gerado dinamicamente pelo kernel. Com base nesses dados são feitos alguns cálculos e é gerada a saída ao usuário.

    As Principais Opções do Comando

    Ao utilizar o comando sem nenhuma opção, as informações serão exibidas em kilobytes, o que dificulta um pouco a leitura dos valores. Devido a isso é comum o uso das seguintes opções:

    • free -m: Os valores são exibidos em Megabytes
    • free -g: Os valores são exibidos em Gigabytes
    • free -h: Modo “humano”, ou seja, mostra em Mega ou em Giga
    • Existem outras opções para bytes, Terabytes, Petabytes e etc, mas as mais comuns são mesmo -m e -g

    Outra opção útil é o -w que basicamente vai separa o buffers do cache, que normalmente são exibidos junto.

    O Significado de Cada Campo

    Para tirar suas conclusões sobre o uso da memória, normalmente os usuários olham apenas para os campos Total, Used (Usado) e Free (Livre), e aí mora um problema, principalmente com relação ao entendimento do que é considerado como “Usado” e do que é considerado como “Livre” pelo sistema.

    Veja abaixo uma saída do comando “free -m”. Essa é a saída mais comum nas versões atuais do kernel Linux:

    Comando Free Linux

    Focando apenas no uso da memória, não no Swap que ficará para outro artigo, vamos então entender melhor o significado de cada um desses campos:

    • Total: Nesse não há segredos, é o total de memória RAM disponível no sistema, usado ou não.
    • Shared: É a memória que está sendo utilizada de maneira compartilhada por diferentes aplicações no sistema, ou seja, diferentes aplicações acessando o mesmo espaço de memória. No Linux é normalmente relacionada às aplicações que usam os filesystems tmpfs, é também bastante utilizado em ambientes de virtualização. Entenda mais sobre memória compartilhada nesse link.
    • Buffers: Espaço de memória usado para buffers do kernel, visando melhorar a performance de processamento e alterações de metadados.
    • Cache: Tem basicamente o mesmo conceito dos Buffers. Como o acesso à RAM é mais rápido que o acesso ao disco, o kernel faz a implementação de um sistema de cache para que a leitura frequente de dados do disco ocorra com melhor performance, através do uso de um espaço de cache de memória, também chamado de “Page Cache“.
    • Free: Espaço de memória que está completamente sem uso, nem por aplicações, nem pelo kernel, shared, buffers ou cache.
    • Used: É simplesmente o resultado da conta: Used = Total – Free – Buffers – Cache
    • Available: É uma estimativa (uma conta interna) de quanta memória está disponível, sem o uso do espaço de swap, para ser utilizada por novas aplicações que se iniciem ou por aplicações em execução que necessitem de mais memória. Note que o Available considera que em caso de necessidade, o sistema pode realocar espaços de memória que estão atualmente sendo utilizados pelas implementações de Buffers e Caches, levando em conta que o uso da memória pelas aplicações tem prioridade ao uso da memória para melhoria de performance. Dessa forma, o espaço em  Available será sempre maior que o Free.

    Espaço de Memória Disponível no Linux

    Entendendo as definições acima, fica mais claro de entender que para se observar quanto de memória RAM está disponível no sistema, para uso das aplicações, deve-se olhar para o campo Available, e não para o Free.

    Espero que o artigo ajude a esclarecer essa dúvida bem comum aos usuários, analistas e administradores de sistemas Unix/Linux.


    Cadastre-se em nossa lista e mantenha-se atualizado sobre as principais novidades em Linux e Open Source.


    comando free, comandos linux, comandos unix
    Ricardo Prudenciato

    Ricardo Prudenciato

    More posts by Ricardo Prudenciato

    Related Post

    • certificação linux vale a pena

      Certificação Linux Vale a Pena?

      By Ricardo Prudenciato | 0 comment

      Essa é uma pergunta que eu sempre escutei desde o começo da minha carreira, e que com certeza sempre vai existir. Por um lado há quem diga que as certificações ajudam muito a carreira deRead more

    • Usando a instrução for do bash no dia a dia

      By Ricardo Prudenciato | 0 comment

      Neste breve post vamos falar de uma instrução do shell que é muito útil, mas que é muito pouco utilizada pela maioria dos profissionais Linux no dia dia, a instrução for. A maioria dos profissionaisRead more

    • melhor servidor linux

      Distribuições Linux mais Usadas em Servidores

      By Ricardo Prudenciato | 1 comment

      Vemos pela Internet muitas discussões sobre a “melhor” e mais usada distribuição Linux, mas isso é quase sempre relacionado ao uso do Linux como usuário, em máquinas Desktop. Quando falamos de servidores Linux, em empresas,Read more

    • FreeRadius v3 com integração MySQL e Mikrotik no Debian 9 Stretch

      By Pedro Henrique | 18 comments

      Neste artigo vamos aprender como configurar o FreeRadius 3.x em em um servidor Debian. Neste servidor teremos integração de usuários de uma base de dados MySQL que serão autenticados por um hotspot, que por suaRead more

    • Open Source Jobs Report 2017

      By Ricardo Prudenciato | 0 comment

      Todo ano a Linux Foundation, em conjunto com a Dice, lançam um relatório sobre o mercado de trabalho para profissionais que atuam com tecnologias de Open Source (Código Aberto), o “Open Source Jobs Report“. ORead more

    • Resoluções de Ano Novo para o Profissional Linux em 2018

      By Ricardo Prudenciato | 0 comment

      Navegando pela Internet me deparei com o artigo “Linux Resolutions for 2018“, publicado na Network World, com algumas atitudes que um administrador de sistemas, ou profissional Linux em geral, pode realizar para ter um anoRead more

    • Instalação Zabbix Server v 3.4.1 – Debian 8 Jessie

      By Pedro Henrique | 0 comment

      Tutorial de instalação do Zabbix no Debian 8, versão atual da solução é a 3.4.1   1- Adicionando repositórios # echo “deb http://ftp.de.debian.org/debian jessie main non-free” >> /etc/apt/sources.list # echo “deb-src http://ftp.de.debian.org/debian jessie main non-free”Read more

    • MiniDebConf Curitiba 2018 – Vídeos das Palestras

      By Ricardo Prudenciato | 0 comment

      Olá Pessoal, De 11 a 14 de Abril de 2018, aconteceu mais uma vez em Curitiba a MiniDebConf Brasil 2018. MiniDebConfs são encontros locais organizados por membros do Projeto Debian para atingir objetivos semelhantes aosRead more

    2 comments

    • Avatar
      Felipe Responder 05/10/2017 at 22:29

      Ricardo, boa noite!

      Em algumas distribuições o campo available não aparece né? No CentOS 7 (distro que uso na empresa) ele aparece. Aqui em casa no Debian ele não aparece.

      • Ricardo Prudenciato
        Ricardo Prudenciato Responder 06/10/2017 at 10:10

        Olá Felipe,
        No seu caso então você deve observar a linha “-/+ buffers/cache”. Nessa linha ele retira(-) do valor Used os buffers e caches e inclui(+) na coluna Free os valores de buffers e cache, que também podem vir a ser usados pelas aplicações. Não é exatamente a mesma coisa que o Available atual, mas é bem próximo.

    Leave a Comment

    Cancelar resposta

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

    NextPrevious

    Newsletter

    Cadastre-se em nossa lista e mantenha-se atualizado sobre as principais novidades em Linux e Open Source.


    Posts recentes

    • Gerenciamento de Processos no Linux
    • Lançada a Versão 5.0 dos Exames da LPIC-1
    • O Fim da Parceria entre a CompTIA e a LPI
    • MiniDebConf Curitiba 2018 – Vídeos das Palestras
    • Instalação Zabbix Server v 3.4.1 – Debian 8 Jessie

    Arquivos

    • dezembro 2019
    • novembro 2018
    • agosto 2018
    • maio 2018
    • fevereiro 2018
    • janeiro 2018
    • outubro 2017
    • setembro 2017
    • agosto 2017

    Categorias

    • Carreira
    • Certificações
    • Comandos
    • Distribuições
    • Eventos
    • Uncategorized
    • A Certificação LPIC-2
    • As Principais Certificações Linux do Mercado
      • Certificação LPI 1 – Administrador Linux
      • Comptia Linux+
      • Simulado LPI 1 (101-500 e 102-500)
      • Simulados LPIC-1
    • Contato
    • Cursos
      • Curso Preparatório para Certificação Linux LPIC-1
        • Simulado Complementar – Questões Abertas
      • Curso Preparatório para Certificação LPIC-2
      • Curso Programação Shell Script – Automatizando Rotinas no Linux
      • Introdução ao Mundo Linux – Aplicações Linux – Quiz
      • Introdução ao Mundo Linux – As Distribuições e Ambientes Gráficos no Linux – Quiz
      • Introdução ao Mundo Linux – Introdução ao GNU/Linux – Quiz
    • Obrigado
    • Preparatório para Certificação LPIC-2
    Linux sem Fronteiras