- 基础概念
- 挂载(Mount):将一个文件系统关联到系统的一个目录上。Linux 中所有的文件系统都通过挂载到一个目录中被访问,而不是独立存在。
- 挂载点(Mount Point):文件系统在主目录树中被挂载的位置,通常是一个空目录。
- 设备(Device):要挂载的存储设备,可以是硬盘分区、U盘、光盘、网络文件系统等。
- 文件系统类型(File System Type):常见的文件系统类型包括 ext4、xfs、vfat、ntfs、iso9660 等,不同的存储设备和场景需要选择合适的文件系统类型。
- 挂载选项(Mount Options):挂载时可以设置一些参数,比如只读、读写权限、文件权限等。
- 常用的挂载过程
- 确认设备:首先通过命令查看你想要挂载的设备名(通常在 /dev/ 下),可以使用 lsblk 或 fdisk -l 命令来查看所有可用的设备及其分区。
- 创建挂载点:挂载点是一个空目录,在挂载之前,你需要创建一个目录作为挂载点。例如,创建 /mnt/mydisk 作为挂载点:
- 挂载设备:使用 mount 命令将设备挂载到你创建的挂载点上。语法如下:mount [选项] <设备> <挂载点>
- 如:mount /dev/sdb1 /mnt/mydisk
- 这会将 /dev/sdb1(通常是硬盘或U盘的分区)挂载到 /mnt/mydisk 目录。
- 检查挂载情况:挂载成功后,你可以通过 df -h 或 mount 查看挂载情况。
- 卸载设备:使用 umount 命令卸载设备。当你不再需要使用某个设备时,记得卸载它:umount <挂载点或设备>
- 常用挂载命令与参数
- 挂载文件系统类型:在挂载时可以指定文件系统类型,通常使用 -t 选项。示例:
- mount -t vfat /dev/sdb1 /mnt/mydisk # 挂载 FAT 文件系统
- mount -t ext4 /dev/sda1 /mnt/data # 挂载 ext4 文件系统
- 只读挂载:有时你只想以只读方式挂载某个设备,可以使用 -o ro 参数。示例:
- mount -o ro /dev/sdb1 /mnt/mydisk
- 指定额外选项:你可以使用 -o 来指定更多的挂载选项,比如 rw(读写)、noexec(禁止执行文件)、nosuid(不允许 setuid/setgid 标志)。示例:
- mount -o rw,noexec /dev/sdb1 /mnt/mydisk
- 自动挂载:可以将设备信息写入 /etc/fstab 文件,这样设备会在每次启动时自动挂载。
- 典型的 /etc/fstab 文件格式如下:
- <设备> <挂载点> <文件系统类型> <选项> <转储> <检查顺序>
- /dev/sdb1 /mnt/mydisk ext4 defaults 0 0
- 挂载 ISO 文件:可以使用 mount 挂载 ISO 文件作为文件系统。示例:
- mount -o loop /path/to/image.iso /mnt/iso
- 进阶知识
- 逻辑卷管理器(LVM):Linux 中可以使用 LVM 来动态调整文件系统的大小,LVM 允许你将多个物理分区整合成一个逻辑卷,便于管理和扩展。
- NFS 和 CIFS 挂载:对于网络文件系统,你需要掌握如何挂载 NFS(Network File System)和 CIFS(Common Internet File System,常用于 Windows 共享)。
- 挂载 NFS 文件系统:mount -t nfs <服务器IP>:/path/to/nfs /mnt/nfs
- 挂载 CIFS 文件系统:mount -t cifs -o username=<user>,password=<password> //<服务器IP>/shared_folder /mnt/cifs
- 常见问题
- 设备正忙:如果设备正忙无法卸载,可以使用 lsof 查看哪些进程占用了该设备:lsof +D /mnt/mydisk