Diretrizes de Segurança do Oracle® Solaris 11

Exit Print View

Updated: Setembro de 2014
 
 

Como limitar o tamanho do sistema de arquivos tmpfs

Por padrão, o tamanho do sistema de arquivos tmpfs não tem limite. Portanto, o tmpfs pode crescer a ponto de ocupar a memória disponível no sistema e o espaço de permuta (swap). Como o diretório /tmp é usado por todos os aplicativos e usuários, um aplicativo pode ocupar toda a memória disponível do sistema. Da mesma forma, um usuário mal-intencionado sem privilégios pode prejudicar o desempenho do sistema criando arquivos grandes no diretório /tmp. Para evitar um impacto negativo no desempenho, limite o tamanho de cada montagem tmpfs.

Você pode tentar vários valores para obter o melhor desempenho do sistema.

Before You Begin

Para editar o arquivo vfstab, você deve se tornar um administrador com a autorização solaris.admin.edit/etc/vfstab. Para reinicializar o sistema, você deve ter o perfil de direitos Manutenção e Reparo. A função root possui todos esses direitos. Para obter mais informações, consulte Using Your Assigned Administrative Rights no Securing Users and Processes in Oracle Solaris 11.2 .

  1. Determine a quantidade de memória do seu sistema.

    Note -  O sistema SPARC T3 usado no exemplo a seguir possui um disco de estado sólido (ssd) para otimizar operações de entrada/saída e até oito discos de 279.40 MB. O sistema possui cerca de 500 GB de memória.
    % prtconf | head
    System Configuration:  Oracle Corporation  sun4v
    Memory size: 523776 Megabytes
    System Peripherals (Software Nodes):
    
    ORCL,SPARC-T3-4
    scsi_vhci, instance #0
    disk, instance #4
    disk, instance #5
    disk, instance #6
    disk, instance #8
  2. Calcule um limite de memória para o tmpfs.

    Dependendo do tamanho da memória do sistema, talvez você queira calcular um limite de memória de cerca de 20 por cento para sistemas de grande porte e 30 por cento para sistemas menores.

    Assim, para um sistema menor, use .30 como o multiplicador.

    10240M x .30 ≈ 340M

    Para um sistema maior, use .20 como o multiplicador.

    523776M x .20 ≈ 10475M
  3. Modifique a entrada de swap no arquivo /etc/vfstab com o limite de tamanho.
    # pfedit /etc/vfstab
    #device     device       mount       FS      fsck    mount mount
    #to mount   to fsck      point       type    pass    at boot options
    #
    ...
    #swap       -            /tmp        tmpfs   -       yes     -
    swap        -            /tmp        tmpfs   -       yes     size=10400m
    /dev/zvol/dsk/rpool/swap   -      -  swap    -       no      - 
  4. Reinicialize o sistema.
    # reboot
  5. Verifique se o limite de tamanho está em vigor.
    % mount -v
    swap on /system/volatile type tmpfs
    read/write/setuid/devices/rstchown/xattr/dev=89c0006 on Tues Feb 4 14:07:27 2014
    swap on /tmp type tmpfs
    read/write/setuid/devices/rstchown/xattr/size=10400m/dev=89c0006 on Tues ...
  6. Monitore o uso da memória e ajuste-o aos requisitos do seu site.

    O comando df é útil. O comando swap fornece as estatísticas mais úteis.

    % df -h /tmp
    Filesystem Size Used Available Capacity Mounted on
    swap          7.  4G     44M    7.4G 1%       /tmp
    
    % swap -s
    total: 190248k bytes allocated + 30348k reserved = 220596k used,
    7743780k available 

    Para obter mais informações, consulte as páginas man tmpfs(7FS), mount_tmpfs(1M), df(1M),e swap(1M).