挂载文件系统是什么意思?

6

当你"挂载一个文件系统"时,到底会发生什么?它发生在哪个层级的堆栈中?为什么这是必要的呢?

2个回答

9

我不确定你说的“堆栈”是指哪个,但我们试试:

我会说当你挂载一个文件系统时有两件主要的事情发生:

首先(也是最明显的)是选择挂载点:如果你将要挂载的文件系统内容视为目录和文件的子树,你可以通过指定挂载点来确定将该子树连接到主树上的位置:

以一个例子来说明,假设你的新文件系统包含:

/dir1/file1
/dir1/file2
/dir3
/file3

你当前的“树”(由其他文件系统组成)看起来像这样:
/usr
/home/usr1
/home/usr1/tmp
/home/usr2
/bin

如果你将新的文件系统挂载在挂载点"/home/usr1/tmp"上,那么实际上你是将新的文件系统“子树”连接到挂载点上,因此在这个例子中创建了以下树形结构:
/usr
/home/usr1
/home/usr1/tmp/dir1/file1
/home/usr1/tmp/dir1/file2
/home/usr1/tmp/dir3
/home/usr1/tmp/file3
/home/usr2
/bin

可以在这里找到关于挂载点的更正式定义。

挂载点在挂载新文件系统时总是需要的,但是“默认挂载点”可以在/etc/fstab中找到(假设是Linux),所以有时候看起来某些挂载命令没有指定任何挂载点。

挂载文件系统的第二个方面通常涉及定义其类型和物理位置。 物理位置可以是磁盘分区或远程服务器... 类型决定了如何解释在该物理位置上找到的数据。

如果您输入:

mount -t iso9660 /dev/cdrom /media

你实际上是在说:
- 看一下物理位置"cdrom" - 将存储在那里的0和1解释为iso9660的"结构",从而能够在这个"物理位置"(设备)包含的一堆0和1中看到文件结构 - 将在挂载点/media找到的目录和文件子树附加到文件系统上
希望对你有所帮助...

2
您可以将Linux系统看作一棵树。要将某些内容添加到树中以使其可访问,可以挂载文件系统;如果不再需要该特定系统,则可以从树中移除并卸载它。有关更多详细信息,请查看mount命令文档:http://www.tutorialspoint.com/unix_commands/mount.htm

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