tmpfs - 临时文件系统
tmpfs (temporary filesystem) 基于内存的文件系统,自动调整动态文件系统,速度快。
yongqiang@foreverstrong-amax:~$ pwd
/home/yongqiang
yongqiang@foreverstrong-amax:~$
yongqiang@foreverstrong-amax:~$ cat /etc/hostname
foreverstrong-amax
yongqiang@foreverstrong-amax:~$
yongqiang@foreverstrong-amax:~$ df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 48747312 0 48747312 0% /dev
tmpfs 9755500 20128 9735372 1% /run
/dev/sda1 363709816 187827036 157384272 55% /
tmpfs 48777480 84744 48692736 1% /dev/shm
tmpfs 5120 4 5116 1% /run/lock
tmpfs 48777480 0 48777480 0% /sys/fs/cgroup
tmpfs 1048576 126912 921664 13% /etcddisk
tmpfs 9755500 96 9755404 1% /run/user/1000
/dev/sdb1 461360136 126396868 311504404 29% /media/foreverstrong/Backup_Data
/dev/sdc 1922729864 794993808 1030043944 44% /media/foreverstrong/Backup_Deep
tmpfs 9755500 0 9755500 0% /run/user/1008
tmpfs 9755500 0 9755500 0% /run/user/1007
tmpfs 9755500 0 9755500 0% /run/user/1004
tmpfs 9755500 0 9755500 0% /run/user/1003
yongqiang@foreverstrong-amax:~$
yongqiang@foreverstrong-amax:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 47G 0 47G 0% /dev
tmpfs 9.4G 20M 9.3G 1% /run
/dev/sda1 347G 180G 151G 55% /
tmpfs 47G 9.3M 47G 1% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 47G 0 47G 0% /sys/fs/cgroup
tmpfs 1.0G 124M 901M 13% /etcddisk
tmpfs 9.4G 96K 9.4G 1% /run/user/1000
/dev/sdb1 440G 121G 298G 29% /media/foreverstrong/Backup_Data
/dev/sdc 1.8T 759G 983G 44% /media/foreverstrong/Backup_Deep
tmpfs 9.4G 0 9.4G 0% /run/user/1008
tmpfs 9.4G 0 9.4G 0% /run/user/1007
tmpfs 9.4G 0 9.4G 0% /run/user/1004
tmpfs 9.4G 0 9.4G 0% /run/user/1003
yongqiang@foreverstrong-amax:~$
tmpfs is a temporary file storage paradigm implemented in many Unix-like operating systems. It is intended to appear as a mounted file system, but data is stored in volatile memory instead of a persistent storage device. A similar construction is a RAM disk, which appears as a virtual disk drive and hosts a disk file system.
tmpfs 是在许多类 Unix 的操作系统中实现的临时文件存储范例。它旨在显示为已挂载的文件系统,但数据存储在易失性内存中,而不是持久性存储设备中。RAM 磁盘的结构与此类似,它显示为虚拟磁盘驱动器并托管磁盘文件系统。
tmpfs 是类 Unix 系统上暂存档存储空间的常见名称,通常以挂载文件系统方式实现,并将数据存储在易失性存储器而非永久存储设备中。和 RAM disk 的概念近似,但后者会呈现出具有完整文件系统的虚拟磁盘。
paradigm [ˈpærədaɪm]:n. 范例,词形变化表
persistent [pəˈsɪstənt]:adj. 执着的,坚持不懈的,持续的,反复出现的,(动植物某部位,如角、叶等) 存留的,不落的
Everything stored in tmpfs is temporary in the sense that no files will be directly created on non-volatile storage such as a hard drive (although swap space is used as backing store in case of low memory situations). On reboot, everything in tmpfs will be lost.
tmpfs 中存储的所有内容都是临时的,因为在诸如硬盘驱动器之类的非易失性存储中不会直接创建任何文件 (尽管在内存不足的情况下,交换空间将用作后备存储)。重新启动后,tmpfs 中的所有内容都会丢失。
The memory used by tmpfs grows and shrinks to accommodate the files it contains.
tmpfs 使用的内存会增加和缩小以容纳其中包含的文件。
Many Unix distributions enable and use tmpfs by default for the /tmp
branch of the file system or for shared memory.
默认情况下,许多 Unix 发行版为文件系统的 /tmp
分支或共享内存启用并使用 tmpfs。
On some Linux distributions (e.g. Debian, Ubuntu), /tmp
is a normal directory, but /dev/shm
uses tmpfs.
在某些 Linux 发行版中 (e.g. Debian, Ubuntu),/tmp
是普通目录,但是 /dev/shm
使用 tmpfs。
所有在 tmpfs 上存储的数据在理论上都是暂时借放的,那也表示说,文件不会创建在硬盘上面。一旦重启,所有在 tmpfs 里面的数据都会消失不见。理论上,存储器使用量会随着 tmpfs 的使用而时有增长或消减。当前有许多 Unix 的发行版都有激活 tmpfs,默认是把它以共享存储器的方式用在系统的 /tmp
目录底下。
tmpfs is supported by the Linux kernel beginning in version 2.4. Linux tmpfs (previously known as shmfs) is based on the ramfs code used during bootup and also uses the page cache, but unlike ramfs it supports swapping out less-used pages to swap space, as well as filesystem size and inode limits to prevent out of memory situations (defaulting to half of physical RAM and half the number of RAM pages, respectively).
从版本 2.4 开始,Linux 内核支持 tmpfs。Linux tmpfs (previously known as shmfs) 基于引导过程中使用的 ramfs 代码,并且还使用页面缓存,但是与 ramfs 不同,它支持交换出较少使用的页面以交换空间,以及文件系统大小和 inode 限制以防止内存不足情况 (分别默认为物理 RAM 的一半和 RAM 页数的一半)。默认大小是实际内存的一半。调整 tmpfs 大小,别超过 内存 + swap
的大小。