1、问题背景
Ubuntu版本:12.10 64bit
其实刚开始并不是从提升速度的角度来考虑采用tmpfs的,而是我需要让/tmp更安全。
有一篇文章提到了Ubuntu文件的安全删除(http://www.linuxdiyf.com/linux/17629.html),但无法解决/tmp的问题。
因为在操作一些安全级别较高的文档时,总会在/tmp中留下痕迹(临时文件删除后)。每次都采用secure-delete中的sfill来填充感觉还是有点麻烦。sfill的方式就是把磁盘或目录尽可能写满随机数据然后自动删除,时间有点长。
2、分析解决
上网查找无意中发现可以用tmpfs来挂载/tmp。这样的方式临时数据就存放在内存中,重启数据就没了,所以符合我的要求。
方式很简单,编辑/etc/fstab加入一行,然后重启。
tmpfs /tmp tmpfs defaults,noatime,mode=1777,nosuid,size=1024M 0 0
这里我划分了1G的内存,不过别担心这个是最大值。内存的消耗值要看真实使用。
执行df -h就可以看到实际的挂载与使用情况:
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 40G 9.9G 28G 27% /
udev 2.9G 4.0K 2.9G 1% /dev
tmpfs 1.0G 72K 1.0G 1% /tmp
...
目前使用了72k,因为/tmp有可能因为处理较大的临时文件所以最好不要设置的太小。