如何解释 /proc/mounts?

30

当我进行以下操作时。

"cat /proc/mounts".
tmpfs /export/ftp/import tmpfs rw,relatime,size=102400k 0 0
tmpfs /export/ftp/export tmpfs rw,relatime,size=10240k,mode=755 0 0

嵌入式设备的文档说导入和导出位于DRAM中。

然而在其他设备中

ubi18_0 /nvdata1/temporary-download ubifs rw,sync 0 0
ubi18_0 /export/ftp/import ubifs rw,sync 0 0
ubi18_0 /export/http/import ubifs rw,sync 0 0
tmpfs /export/ftp/export tmpfs rw,size=10240k,mode=755 0 0

嵌入式设备的文档中说导入(import)位于NAND中,导出(export)位于DRAM中。

我真的不知道DRAM、NAND和NOR中都有什么。

我对我们设备的基本了解是:NOR有u-boot,NAND有内核和根文件系统。


1
Linux中的tmpfs(http://en.wikipedia.org/wiki/Tmpfs)技术上不在DRAM中,而是在虚拟内存中(特别是可能使用swap)。 - Basile Starynkevitch
谢谢 Basile。这是否意味着 import 和 export 存在于 tmpfs 中?因此,import 和 export 位于虚拟内存中? - New to Rails
1个回答

43

/proc/mounts 格式

第一列指定已挂载的设备
第二列显示挂载点
第三列说明文件系统类型
第四列告诉你它是以只读 (ro)还是读写 (rw)方式挂载的。
第五和第六列是虚拟值,旨在与/etc/mtab中使用的格式匹配。

有关文件系统挂载点的更多详细信息,请点击此处


tmpfs /export/ftp/import tmpfs rw,relatime,size=102400k 0 0
tmpfs /export/ftp/export tmpfs rw,relatime,size=10240k,mode=755 0 0

含义:在/export/ftp/import/export/ftp/export两个位置都挂载了两个独立的tmpfs。在重新启动内核后,保存在这些目录中的任何数据都会丢失。tmpfs本质上是一种类似于ramdisk的构造,它将数据存储在RAM中。从技术上讲,tmpfs被映射到虚拟内存中,该虚拟内存使用RAM和交换空间(如果存在)。


ubi18_0 /nvdata1/temporary-download ubifs rw,sync 0 0
ubi18_0 /export/ftp/import ubifs rw,sync 0 0
ubi18_0 /export/http/import ubifs rw,sync 0 0
tmpfs /export/ftp/export tmpfs rw,size=10240k,mode=755 0 0

意义:在NAND设备(ubi18_0)上,相同的“分区”被挂载到3个不同的挂载点。ubi是一个中间文件系统层,它简化和优化了与底层闪存媒体设备的I/O操作。此外,还挂载了一个临时文件系统到/export/ftp/export


感谢TheCodeArtist。我的理解如下: 1)设备tempfs使用文件系统tempfs,以读写权限在/export/ftp/import目录下挂载。 换句话说,可以使用目录(/export/ftp/import)访问使用文件系统tempfs的设备tempfs,并且有读写权限。2)设备tempfs使用文件系统tempfs,在/export/ftp/export目录下挂载,具有读写权限。 - New to Rails
在其他设备中, 1)使用ubifs文件系统的NAND设备(ubi18_0)可以通过目录(/export/ftp/import,/export/http/import,/nvdata1/temporary-download)进行读写访问。 2)使用tempfs文件系统的设备tempfs可以通过目录(/export/ftp/export)进行访问,并具有读取和写入权限。但是这样做有什么用呢?为什么要这样做?我认为我需要先了解一下文件系统和挂载的知识,然后再提出更多问题。 而且我认为我的问题是错误的。 应该是这样吗? “如何查找设备是否已经挂载在DRAM、NAND或NOR上?” - New to Rails
是的。请注意,它们是独立的。在一个中写入不会更新另一个。即它们是多个类型为tmpfs的实体。相比之下,ubi18_0是不同的,使用任何挂载点进行写入都会反映在其他挂载点中。 - TheCodeArtist
@msouth 是的,第四列是一个逗号分隔的标志列表,用于挂载该特定挂载点。 - TheCodeArtist
1
这里是否缺少对 https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/4/html/reference_guide/s2-proc-mounts 的引用? - Zach
显示剩余5条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接