我在试着理解这些东西。我有一台有80G存储器的机器。看起来是这样:
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
现在,从我所读到的内容来看,tmpfs不需要物理存储,而是使用机器的虚拟内存。这是正确的吗?它对物理存储有任何影响吗?
是否有将tmpfs写入物理存储的实际情况?接下来,执行所有已挂载的操作(/dev/sda1 1、/dev/sda1 1等)迪尔分享tmpfs?还是每个人都有不同的?
另外,我试图调整tmpfs的大小。我做了:
mount -o remount,size=1G /dev/shm
重新启动后,它恢复到原来的大小。我做了这样的改动:
tmpfs /dev/shm tmpfs defaults,size=1G
然后:
mount -o remount /dev/shm
它成功了,但是在重新启动时,它又回到了原来的大小。我想我漏掉了什么。
发布于 2018-05-10 08:33:28
现在,从我所读到的内容来看,
tmpfs
不需要物理存储,而是使用机器的虚拟内存。这是正确的吗?
对,是这样。tmpfs
以挂载文件系统的形式出现,但它存储在易失性内存中,而不是持久存储设备中。这样就可以回答你的其他问题了。
实际上,您不能将物理存储分配给tmpfs
,因为它只依赖虚拟内存。存储在tmpfs
中的所有东西都是临时的,因为在硬盘上不会创建任何文件。在内存不足的情况下,交换空间用作后备存储。在重新启动时,tmpfs
中的所有内容都将丢失。
许多Unix发行版默认为文件系统的tmpfs
分支或共享内存启用和使用/tmp
。
根据您的发行版,您可以将tmpfs
用于/tmp
。默认情况下,tmpfs
分区的最大大小设置为可用内存的一半,但是可以取消此值并显式设置最大大小。在本例中,若要重写默认的/tmp
挂载,请使用size
挂载选项:
/etc/fstab
tmpfs /tmp tmpfs nodev,nosuid,size=2G 0 0
发布于 2018-09-07 13:32:21
现在,从我所读到的内容来看,tmpfs不需要物理存储,而是使用机器的虚拟内存。这是正确的吗?它对物理存储有任何影响吗?是否有将tmpfs写入物理存储的实际情况?
好的,它填充了交换区域,它被限制在这个区域内。请参阅tmpfs不会溢出到交换区.
接下来,执行所有已挂载的操作(/dev/sda1 1、/dev/sda1 1等)迪尔分享tmpfs?还是每个人都有不同的?
这取决于安装tmpfs
的位置。但如果你是这个意思的话,所有的tmpfs
s都应该分享同样的记忆。
我想我漏掉了什么。
也许https://superuser.com/questions/45342/when-should-i-use-dev-shm-and-when-should-i-use-tmp:
最近2.6Linux内核构建已经开始以ramdisk的形式提供/dev/shm作为共享内存,更具体地说,它是一个存储在内存中并在
/etc/default/tmpfs
中定义了限制的世界可写目录。/dev/shm支持在内核配置文件中是完全可选的。默认情况下,它包括在Fedora和Ubuntu发行版中,在这两个发行版中,Pulse音频应用程序使用最广泛。删除并增加强调
https://unix.stackexchange.com/questions/442944
复制相似问题