tmpfs - 臨時文件系統

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 的大小。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章