tmpfs

✍ dations ◷ 2025-08-16 05:45:59 #tmpfs

tmpfs(英语:temporary file system) 是类Unix系统上暂存档存储空间的常见名称,通常以挂载文件系统方式实现,并将资料存储在易失性存储器而非永久存储设备中。和RAM disk的概念近似,但后者会呈现出具有完整文件系统的虚拟磁盘。

所有在tmpfs上存储的资料在理论上都是暂时借放的,那也表示说,文件不会创建在硬盘上面。一旦重启,所有在tmpfs里面的资料都会消失不见。理论上,存储器使用量会随着tmpfs的使用而时有增长或消减。目前有许多Unix的发行版都有激活tmpfs,默认是把它以共享存储器的方式用在系统的/tmp目录底下。这个特征在 Unix 上面会表现像是:

Filesystem            Size  Used Avail Use% Mounted ontmpfs                 256M  688K  256M   1%  /tmp

应用实例

SunOS / Solaris

SunOS是Solaris上一世代的操作系统,里头实现了tmpfs的部分功能最初在SunOS 4.1上实现,在1990三月发布。 1994年十一月,Solaris 2.1里头/tmp采用tmpfs的应用,并被纳入默认的文件系统之一。

tmpfs在Linux kernel从2.4之后的版本都有支持。 tmpfs(之前比较为人所知的名称是"shmfs")和Linux的ramdisk设备定位有所不同。Ramdisk是固定划分一块存储器出来使用,且允许比较不常用的页面可以移动到置换空间去。

RAMFS相较之下,不会利用虚拟内存的部分(这个特点有利也有弊)。另外,在MFS还有其它ramfs的旧版本,都不会动态的调整大小,只能一直占用一个固定的大小。

tmpfs的用法,举例来说是像:"mount -t tmpfs -o size=1G,nr_inodes=10k,mode=0700 tmpfs /space" 这样就会使用1 GiB的置换空间,里头有10240 inodes且规定是在/space目录底下访问。这个文件系统的大小是可以随时调整的,像是再追加一个指令如:mount -o remount,size=2G /space"。

要注记一点,如果/tmp有安全上的顾虑的话,最好追加粘滞位(sticky bit)上来。,就是权限应该被设作"mode=1777",而不是"mode=0777或"mode=777"

如果要是开机启用tmpfs那就是在fstab里面加个参数:

tmpfs /media/ramdisk tmpfs size=2G,defaults,noatime,mode=1777 0 0

其中2G是固定大小。

从2005年九月10号之后tmpfs也正式被收录到NetBSD的源代码里头,同时在4.0之后的版本激活了这个功能。FreeBSD也已经收录了NetBSD的这项功能,在7.0之后的版本也跟着激活。

视窗操作系统也有一个类似tmpfs的方式来处理,就是"temporary files"。在系统的低存储器底下,文件会以FILE_ATTRIBUTE_TEMPORARY和FILE_FLAG_DELETE_ON_CLOSE(“暂存文件”与“关闭时删除该档”的旗标)标记在存储器里面。这种方式的处理相当类似tmpfs,除了这些文件会被写入到特定的低存储器位置而不是置换空间去。这个技术也常用在服务器发送文件的时候,把文件发送到客户端之前先丢到一个缓冲的暂存上面。

相关

  • 全新世灭绝事件全新世灭绝事件是于现今的全新世所发生广泛及持续的灭绝或生物集群灭绝事件,被广泛视为第六次的大规模灭绝事件(前五次分别是奥陶纪-志留纪灭绝事件、泥盆纪后期灭绝事件、二
  • 克拉夫丘克列昂尼德·马卡罗维奇·克拉夫丘克(乌克兰语:Леонід Макарович Кравчук,1934年1月10日-),乌克兰第一任总统,任期为1991年12月5日至1994年7月19日。(期间共任
  • .bz.bz为伯利兹国家及地区顶级域(ccTLD)的域名。A .ac .ad .ae .af .ag .ai .al .am .ao .aq .ar .as .at .au .aw .ax .az  B .ba .bb .bd .be .bf .bg .bh .bi .bj .bm .bn
  • 艾氏雕艾氏雕(拉丁文学名:)是一种隼雕,可以在撒哈拉沙漠以南的非洲各地发现它们的踪影。
  • 山口俊NPBMLB山口俊(Yamaguchi Shun,1987年7月11日-)是日本大分县出身的职业棒球选手,司职投手,效力于美国职棒多伦多蓝鸟队。曾所属于日本职棒横滨海湾星、横滨DeNA海湾之星、读卖巨人
  • bayfmbayfm(日语:ベイエフエム  */?;或译为海湾调频)是一家日本广播电台,播出频率为FM 78.0MHz,为独立广播台,同时为特定地面基干广播事业者(日语:特定地上基幹放送事業者);广播对象区域(日
  • 天野梢天野梢(日语:天野 こずえ、1974年5月26日-)是日本的女漫画家。埼玉县出身,血型A型。1993年《EARTH》第六回新人大赏佳作、Big Step受赏。1994年《前夜祭》(《Fresh GunGun》春季临
  • 柚木N'柚木 N'(日语:ゆずき エヌ ダッシュ、1983年8月1日-),日本女性漫画家,出生于爱媛县,主要作品为成人漫画。
  • 阿曼达·拜恩斯亚曼达·劳拉·拜恩斯(英语:Amanda Laura Bynes,1986年4月3日-),美国女演员,出生于加州千橡市(Thousand Oaks, CA)。童星出身的拜恩斯曾在儿童电视频道尼克罗顿(Nickelodeon)担任过节目
  • 尹汝贞尹汝贞(韩语:윤여정,1947年6月19日-),韩国女演员,1966年TBC第3期公开招募艺人出身。因主演金绮泳(朝鲜语:김기영 (영화 감독))导演的新版《下女》——《火女(朝鲜语:화녀)》而荣获青龙电影奖、锡切斯影展、大钟奖以及釜日电影奖。2010年参演林常树(朝鲜语:임상수)导演版的《下女》,再获青龙电影奖、大钟奖以及亚洲电影大奖、釜日电影奖肯定。其他知名作品有电视剧《张禧嫔》、《粪礼记(朝鲜语:분례기 (드라마))》、《爱情是什么》、《澡堂老板家的男人们(朝鲜语:목욕탕집 남자들)》、《情定大酒店