将tmpfs增加到大于物理内存的安全性如何?
我的服务器有2GB RAM和120GB SSD,以及一些RAID阵列用于存储。操作系统是Debian 8(Linux 3.16)。 我有一个MySQL密集型应用程序,它具有tmpdir= /run/mysqld,tmpfs由Debian通过/etc/default/tmpfs以下命令配置: # Size limits. Please see tmpfs(5) for details on how to configure # tmpfs size limits. TMPFS_SIZE=40%VM 以前是20%VM,大约为384M。我遇到了几个no space left on device,所以我将其增加到40%VM,但是即使有大约763M,它仍然太小。 现在,我现在应该添加更多的RAM,但是出于好奇,我想知道这里的限制。 /dev/sdd1上安装/有大约50GB的可用空间,并且速度相当快(三星850 EVO SSD) /dev/sdd5 是我的交换分区,它是3.7G(fdisk类型ID为82) TMPFS_SIZE设置为40%VM,表示/run为763M 现在我知道tmpfs可以交换了,这对我来说很好。我希望MySQL尽可能写入RAM,但是如果需要更多内存,我可以允许系统在SSD上交换它。 因此,通过我的设置,我可以将/run其设置为: 300M大吗?是。这是默认设置。 1.5GB大?是的,尝试过,MySQL占用了高达1.3GB的存储空间,并且该系统运行正常。但这还不到物理内存+交换分区的一半。 2.5GB大?这不只是物理内存,而是少于物理内存+我的交换分区的一半。 4GB大?这将完全适合一半的物理+交换 更多?像10GB?它可以利用可用空间/交换更多吗? 我猜测安全的经验法则是TMPFS_SIZE不要大于swap +一半的物理内存。我可以在不增加交换分区的情况下超越此范围吗? 另外,可以放进200%VM去/etc/default/tmpfs吗?我读过的书tmpfs(5)不知道我是否可以在这上面投入100%以上的费用。 最后,我应该改/etc/fstab而别碰/etc/default/tmpfs吗? (据了解,我仅使用来完成此操作mount -o remount,但尚未重启服务器) …