tmpfs uso e redimensionamento

1

Estou tentando entender as coisas. Eu tenho uma máquina com armazenamento de 80G. Parece assim:

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   50G  7.1G   43G  15% /
devtmpfs                 3.9G     0  3.9G   0% /dev
tmpfs                    3.9G  1.4M  3.9G   1% /dev/shm
tmpfs                    3.9G  409M  3.5G  11% /run
tmpfs                    3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda1                494M  125M  370M  26% /boot
/dev/mapper/centos-home   26G   23G  3.5G  87% /home
tmpfs                    782M     0  782M   0% /run/user/0

Agora, pelo que eu li o tmpfs não tem armazenamento físico, mas usa a memória virtual da máquina. Está correto? Isso afeta o armazenamento físico de alguma forma?

Existe uma realidade em que os tmpfs serão gravados no armazenamento físico? Em seguida, todos os diretórios montados (/ dev / sda1, / dev / sda1, etc ...) compartilham o tmpfs? Ou cada um deles tem um diferente?

Além disso, tentei redimensionar o tmpfs. Eu fiz:

 mount -o remount,size=1G /dev/shm

No reinício, voltou ao tamanho original. Eu mudei o / etc / fstab assim:

tmpfs      /dev/shm      tmpfs   defaults,size=1G

E então:

mount -o remount /dev/shm

ele fez o truque, mas na reinicialização voltou ao tamanho original. Eu acho que estou perdendo alguma coisa.

    
por matisa 10.05.2018 / 10:15

2 respostas

1

Now, from what I read the tmpfs doesn't take physical storage, but uses the virtual memory of the machine. Is it correct?

Correto, o tmpfs aparece como um sistema de arquivos montado, mas é armazenado em memória volátil em vez de um dispositivo de armazenamento persistente. Então, isso poderia responder suas outras perguntas, na realidade você não pode atribuir armazenamento físico para tmpfs, já que é apenas confiar na memória virtual. Tudo armazenado no tmpfs é temporário no sentido de que nenhum arquivo será criado no disco rígido.
O espaço de troca é usado como armazenamento de backup em caso de situações de pouca memória. Na reinicialização, tudo no tmpfs será perdido. Muitas distribuições Unix ativam e usam tmpfs por padrão para a ramificação / tmp do sistema de arquivos ou para a memória compartilhada.

Dependendo da sua distribuição, você pode usar o tmpfs para o / tmp. Por padrão, uma partição tmpfs tem seu tamanho máximo configurado para metade da RAM disponível, no entanto, é possível anular esse valor. Explicitamente, defina um tamanho máximo, neste exemplo para substituir a montagem padrão / tmp, use a opção de montagem de tamanho :

/etc/fstab
tmpfs   /tmp         tmpfs   nodev,nosuid,size=2G          0  0

fonte: link

    
por 10.05.2018 / 10:33
1

Now, from what I read the tmpfs doesn't take physical storage, but uses the virtual memory of the machine. Is it correct? Does it affect the physical storage in any way? Is there a reality where the tmpfs will be written to the physical storage?

Bem, ele preenche a área de troca, à qual é limitada. Veja O tmpfs não transborda para trocar

Next, do all the mounted (/dev/sda1, /dev/sda1, etc...) dirs share the tmpfs? Or each of them gets a different one?

Isso depende de onde o tmpfs está montado. Mas todos tmpfs s devem compartilhar a mesma memória, se é isso que você quis dizer.

I think I am missing something.

Talvez link :

Recent 2.6 Linux kernel builds have started to offer /dev/shm as shared memory in the form of a ramdisk, more specifically as a world-writable directory that is stored in memory with a defined limit in /etc/default/tmpfs. /dev/shm support is completely optional within the kernel config file. It is included by default in both Fedora and Ubuntu distributions, where it is most extensively used by the Pulseaudio application. [emphasis removed and added]

    
por 07.09.2018 / 15:32