本帖最后由 非凡云 于 2025-6-16 19:51 编辑
在Linux系统中,挂载(mount)和卸载(umount)是管理文件系统和存储设备的核心操作。通过这两个操作,我们可以将设备(如硬盘、光盘、U盘等)或网络文件系统的内容集成到系统的目录树中,或者在不再需要访问时断开它们的连接。
对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录、一个独立且唯一的文件结构。Linux中每个分区都是用来组成整个文件系统的一部分,它在用一种叫做“挂载”的处理方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来,要载入的那个分区将使它的存储空间在这个目录下获得。
挂载基本命令:
- 设备或文件系统:可以是物理设备(如硬盘、U盘等),也可以是网络共享(如 NFS 或 CIFS)或其他挂载的文件系统。
- 挂载点:是文件系统在 Linux 系统中访问的路径。通常是一个空的目录,挂载后,该目录就代表了设备中的文件系统。
常用挂载选项:
-t:指定文件系统类型,如 ext4、ntfs、nfs 等。
- mount -t ext4 /dev/sda1 /mnt #若系统能自动识别文件系统类型,可省略
复制代码 -o:指定挂载的选项,如读写权限、只读、自动挂载等。常见选项包括:
- ro:只读挂载。
- rw:读写挂载。
- noexec:禁止执行挂载目录下的程序。
- user:允许普通用户挂载。
- auto:系统启动时自动挂载。
- defaults:使用默认选项。
例如,使用 rw 选项将硬盘挂载为可读写:
- mount -o rw /dev/sda1 /mnt
复制代码
挂载磁盘步骤:
1. 查找磁盘: 使用fdisk -l或lsblk命令来列出系统中所有可用的磁盘和分区。
2. 创建挂载点: 在文件系统中创建一个新的目录作为挂载点。例如,如果您想挂载一个USB驱动器,可以在/mnt目录下创建一个子目录:
3. 挂载磁盘: 使用mount命令将磁盘或分区挂载到指定的挂载点。例如,挂载名为/dev/sdb1的分区到/mnt/usbdrive:
- sudo mount /dev/sdb1 /mnt/usbdrive
复制代码
常见挂载方式:
挂载本地硬盘:
将光盘或虚拟光驱(如 ISO 文件)挂载到 /mnt/cdrom 目录。
挂载 NFS 文件系统(网络文件系统):
- mount -t nfs 192.168.1.100:/exported/dir /mnt/nfs
复制代码
将远程 NFS 服务器 192.168.1.100 上的 /exported/dir 目录挂载到本地的 /mnt/nfs 目录。
卸载磁盘:
确保没有进程正在使用磁盘: 在卸载磁盘之前,确保没有用户或应用程序正在使用它。您可以使用fuser命令来检查是否有进程在使用磁盘:
卸载磁盘: 使用umount命令来卸载磁盘:
- sudo umount /mnt/usbdrive
复制代码 如果设备正在被使用且无法正常卸载,可以使用 -l(延迟卸载)或 -f(强制卸载)
查看卸载情况:
可以通过 mount 或 df 命令确认文件系统是否已成功卸载:
mount:没有挂载的文件系统不会列出。
df -h:卸载后该文件系统不会出现在输出中。
挂载和卸载的注意事项:
1. 挂载点必须为空:挂载点(目录)必须是空的,否则挂载操作会失败。
2. 卸载前确保没有进程占用:卸载之前必须确保没有任何进程在使用该设备。如果有,可以通过 lsof 或 fuser 查看并终止相关进程。
3. 卸载顺序:对于挂载在其他挂载点下的文件系统(例如嵌套的文件系统),需要按相反的顺序卸载。
先卸载子文件系统,后卸载父文件系统。
|