1. 挂载内存为虚拟硬盘¶
tmpfs,临时文件系统,是一种基于内存的文件系统。我们可以通过这种方式来将内存用于存储文件。
由于文件实质上还是保存在内存中的,如果断电的话文件就会丢失,非常不建议用来保存重要文件。 那么他就完全没有用武之地了么?内存的读写速度相较于硬盘,他们的差别是超出一个数量级的, 因此我们可以利用它高速的优点来搞点事情。具体搞什么事情,就要大家脑洞大开了。
1.1. 挂载¶
1 2 3 4 5 6 7 8 | #挂载虚拟硬盘 默认大小是总内存的一半
mount -t tmpfs tmpfs /mnt/tmpfs
#指定挂载大小为500M
mount -t tmpfs -o size=500m tmpfs /mnt/tmpfs
#取消挂载
umount /mnt/tmpfs
|

1.2. 搞事情¶
1.2.1. 文件传输测试¶
在折腾samba时,我发现文件传输速度总是很低,我这可是千兆网啊,怎么速度跟百兆差不多。 根据木桶效应,我们分析整理一下短板在哪里。
首先是网络,是真千兆么,不会链路有什么问题吧。用iperf3测试一下,没有问题。

是PC硬盘太垃圾了?复制个文件看看,好像问题也不大,相对来说瓶颈在网络了。

接下来把tmpfs和sda1同时挂载到samba,传输同一个文件进行测试。
首先是sda1的读写测试,这是一个SD卡。


读取速度还行,写入速度就有点稀烂了。
接下来看看tmpfs的读写测试,这是用内存虚拟的存储。


这结果有点摸不着头脑,写入速度把带宽跑满了,写入时存储已经不是瓶颈了,但是这读取速度什么情况? 怎么和SD卡的读取速度差不多???