1.Windows 下的挂载: mount, 就是给磁盘分区提供一个盘符(C,D,E,...), 以达到可以访问它的目的. 比如插入 U 盘后系统自动分配给了它 I: 盘符其实就是挂载, 退优盘的时候进行安全弹出, 其实就是卸载: unmount.
2.Linux 下, 首先要明白: Linux 下, 一切皆文件! 包括设备! 所以磁盘分区也会作为一个文件. Linux 不像 Windows 可以有 C,D,E, 多个目录, Linux 只有一个根目录 /. 在装系统时, 我们分配给 Linux 的所有区都在 / 下的某个位置, 比如 / home 等等.
3. 当我们插入了新硬盘, 分了新磁盘区 sdb1(/dev 目录下). 但你还无法使用, 它目前只是一个文件, 你无法将它用作一个存储空间.
4. 我们虽然可以在一些图形桌面系统里找到它的位置, 但在命令行却不知怎么访问它的目录, 比如无法使用 cd 或者 ls. 也无法在编程时指定一个目录对它操作.
5. 这时提问者使用了 mount /dev/sdb1 ~/Share/ , 把新硬盘的区 sdb1 挂载到工作目录的~/Share / 文件夹下, 之后访问这个~/Share / 文件夹就相当于访问这个硬盘 2 的 sdb1 分区了. 对 / Share / 的任何操作, 都相当于对 sdb1 里文件的操作. 这也就是挂载的作用: 使用户可以访问这个分区(磁盘).
6. 所以 Linux 下, mount 挂载的作用, 就是将一个设备 (通常是存储设备) 挂接到一个已存在的目录上. 访问这个目录就是访问该存储设备.
7.Linux 操作系统将所有的设备都看作文件, 它将整个计算机的资源都整合成一个大的文件目录. 我们要访问存储设备中的文件, 必须将文件所在的分区挂载到一个已存在的目录上, 然后通过访问这个目录来访问存储设备. 挂载就是把设备放在一个目录下, 让系统知道怎么管理这个设备里的文件, 了解这个存储设备的可读写特性之类的过程.
8. 我们不是有 / dev/sdb1 吗, 直接对它操作不就行了? 这不是它的目录吗?
9. 这不是它的目录. 虽然 / dev 是个目录, 但 / dev/sdb1 不是目录. 可以发现 ls/dev/sdb1 无法执行./dev/sdb1, 是一个类似指针的东西, 指向这个分区的原始数据块. mount 前, 系统并不知道这个数据块哪部分数据代表文件, 如何对它们操作.
10. 插入 CD, 系统其实自动执行了 mount /dev/cdrom /media/cdrom. 所以可以直接在 / media/cdrom 中对 CD 中的内容进行管理.
来源: http://www.bubuko.com/infodetail-3504709.html