开始新对话

未解决

此帖子已超过 5 年

3706

2013年11月17日 17:00

mount命令怎么用?Linux版mount命令完全使用手册

​ ​
​ ​

​mount​​命令完全使用手册​

​ ​
​ ​

​ ​

​转载请在文首保留原文出处:​​EMC​​中文支持论坛​​https://community.emc.com/go/chinese​

​ ​


​ ​
​ ​

​介绍​

​ ​
​ ​

​ ​

​工欲善其事,必先利其器。​​mount​​是​​UNIX/Linux​​系统管理员不可不会的命令。在​​Linux​​,​​UNIX​​和类似操作系统上,不同分区和可移动设备上的文件系统(例如​​CD, DVD, ​​或​​USB​​闪存驱动)可通过目录树的挂载点连接,之后再卸载。​​mount​​和​​umount​​命令相应用来挂载和卸载文件系统。本文以​​Red Hat​​版本为例,先从基本用法和注意事项讲起,随后介绍命令的一些高级用法。熟练使用​​mount​​命令,让你轻松一点,胜人一筹。​

​ ​


​ ​
​ ​

​更多信息​

​ ​
​ ​

​ ​


​ ​

​列出当前已挂载文件系统​​:​

​ ​

​ ​

​要列出当前已挂载的文件系统,运行不加参数的​​mount​​命令:​

​ ​

​mount​

​ ​

​该命令列出已知挂载点。每一行按照以下格式输出关于设备名,文件系统类型,挂载目录,以及相关的挂载选项等重要信息:​

​ ​

​device​​ on ​​directory​​ type ​​type​​ (​​options​​)​

​ ​

​从​​Red Hat Enterprise Linux 6.1​​版本开始,使用​​findmnt​​工具用户可以用树状形式列出已挂载文件系统。如需列出所有当前已挂载文件系统,运行不加参数的​​findmnt​​命令:​

​ ​

​findmnt​

​ ​

​ ​

​指定文件系统类型:​

​ ​

​ ​

​默认情况下,​​mount​​命令输出各种虚拟文件系统,如​​sysfs​​和​​tmpfs​​。要显示具有特定文件系统类型的设备,命令中加入​​-t​​选项:​

​ ​

​mount –t ​​type​

​ ​

​类似地,使用​​findmnt​​命令加​​type​​只显示某种特定类型文件系统的设备:​

​ ​

​findmnt –t ​​type​

​ ​

​ ​

​举例​​1​​:​​列出当前已挂载的​​ext4​​文件系统​

​ ​

​ ​

​通常情况下,​​/​​分区和​​/boot​​分区都格式化成​​ext4​​。只显示使用此文件系统的挂载点,在​​shell​​提示输入以下命令:​

​ ​

​~]$ ​​mount -t ext4​

​ ​

​/dev/sda2 on / type ext4 (rw)​

​ ​

​/dev/sda1 on /boot type ext4 (rw)​

​ ​

​ ​

​使用​​findmnt​​命令列出挂载点:​

​ ​

​~]$ ​​findmnt -t ext4​

​ ​

​TARGET SOURCE FSTYPE OPTIONS​

​ ​

​/ /dev/sda2 ext4 rw,realtime,seclabel,barrier=1,data=ordered​

​ ​

​/boot /dev/sda1 ext4 rw,realtime,seclabel,barrier=1,data=ordered​

​ ​

​ ​


​ ​

​挂载文件系统​​:​

​ ​

​ ​

​挂载指定文件系统,使用以下形式的​​mount​​命令:​

​ ​

​mount[​​option…​​]​​ device directory​

​ ​

​device​​可以由块设备的路径来指定,(例如,“​​/dev/sda3”​​),通用唯一标示符(​​UUID​​;例如,“​​UUID=34795a28-ca6d-4fd8-a347-73671d0c19cb​​”),或卷标识(例如,​​“LABEL=home”​​)。注意,当文件系统被挂载,​​directory​​原来的内容将无法访问。​

​ ​

​ ​

​重要提示:确保该目录不在使用中​

​ ​

​ ​

​Linux​​并不阻止用户将文件系统挂载到已附有文件系统的目录下。要确定某一目录是否用作挂载点,运行带有​​directory​​参数的​​findmnt​​命令,并验证输出码:​

​ ​

​findmnt ​​directory​​ ; echo $?​

​ ​

​如果该目录没有挂载文件系统,上述命令返回​​1​​。​

​ ​

​ ​

​当运行​​mount​​命令而不带有全部所需信息(即,没有设备名,目标目录,或文件系统类型),则命令读取​​ /etc/fstab​​配置文件,以确认给定的文件系统是否已登记。此文件包含设备名和给定文件系统应当挂载的目录,以及文件系统类型和挂载选项。因此,当挂载此文件中指定的文件系统,可以使用以下命令之一:​

​ ​

​mount [​​option​​…] ​​directory​

​ ​

​mount [​​option​​…] ​​device​

​ ​

​使用此命令挂载文件系统需​​root​​权限。​

​ ​

​ ​

​注:确定一个特定设备的​​UUID​​和标签​

​ ​

​ ​

​要确定某一设备的​​UUID​​和标签(如果使用的话),按照以下形式使用​​blkid​​命令:​

​ ​

​blkid ​​device​

​ ​

​ ​

​举例​​2​​:​​显示​​/dev/sda3​​的信息,输入:​

​ ​

​ ​

​~]# ​​blkid /dev/sda3​

​ ​

​/dev/sda3: LABEL="home" UUID="34795a28-ca6d-4fd8-a347-73671d0c19cb" TYPE="ext3"​

​ ​

​ ​

​指定文件系统类型:​

​ ​

​ ​

​在大多数情况下,​​mount​​自动检测文件系统。不过,也有些文件系统,如​​NFS​​或​​CIFS​​无法识别,需手动指定。指定文件系统类型,按照以下形式使用​​mount​​命令:​

​ ​

​mount -t​​ type device directory​

​ ​

​ ​

​以下表格列出了​​mount​​命令能够使用的常见文件系统。​

​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​

​Type​

​Description​

​ext2​

​ext2​​文件系统。​

​ext3​

​ext3​​文件系统。​

​ext4​

​ext4​​文件系统。​

​iso9660​

​ISO 9660​​文件系统,常用于光盘,​​CD​​为代表。​

​jfs​

​IBM​​创建的​​JFS​​文件系统。​

​nfs​

​NFS​​文件系统,常用于访问网络文件。​

​nfs4​

​NFSv4​​文件系统,常用于访问网络文件。​

​ntfs​

​NTFS​​文件系统,常用于运行​​Windows​​操作系统的设备​​。​

​udf​

​UDF​​文件系统,常用于光盘,​​DVD​​为代表。​

​vfat​

​FAT​​文件系统,常用于运行​​Windows​​操作系统的设备,某些数字媒体如​​USB​​闪存驱动器或软盘。​

​ ​

​ ​

​举例​​3​​:​​挂载​​USB​​闪存设备:​

​ ​

​ ​

​旧的​​USB​​闪存驱动器通常使用​​FAT​​文件系统。假设有设备​​/dev/sdc1​​和目录​​ /media/flashdisk/​​,在​​root​​权限下输入以下命令将其挂载在此目录下:​

​ ​

​~]# ​​mount -t vfat /dev/sdc1 /media/flashdisk​

​ ​

​ ​


​ ​

​指定挂载选项:​

​ ​


​ ​

​使用以下命令形式指定附加挂载选项:​

​ ​

​mount -o ​​options device directory​

​ ​

​当提供多重选项时,不要在逗号后插入空格。​

​ ​

​常用​​mount​​选项​

​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​ ​

​Option​

​Description​

​async​

​允许在文件系统中的异步输入​​/​​输出操作​

​auto​

​允许使用​​mount –a​​命令自动挂载文件系统​

​defaults​

​等同于​​async, auto, dev, exec, nouser, rw, suid​

​exec​

​允许在特定文件系统执行二进制文件​

​loop​

​将一个镜像挂载为​​loop​​设备​

​noauto​

​默认禁止使用​​mount –a​​命令自动挂载文件系统​

​noexec​

​禁止在指定文件系统执行二进制文件​

​nouser​

​禁止普通用户(非​​root​​)挂载和卸载文件系统​

​remount​

​如果文件系统已挂载则重新挂载​

​ro​

​将文件系统挂载为已读​

​rw​

​将文件系统挂载为读写​

​user​

​允许普通用户(非​​root​​)挂载和卸载文件系统​

​ ​

​ ​

​举例​​4​​:​​挂载​​ISO​​镜像:​

​ ​

​ ​

​ISO​​镜像(或通常的磁盘镜像)可使用​​loop​​设备挂载。假设当前工作目录下有​​ Fedora 14 ​​安装磁盘镜像,目录为​​/media/cdrom/ ​​,在​​root​​权限下使用以下命令挂载此镜像:​

​ ​

​~]# ​​mount -o ro,loop Fedora-14-x86_64-Live-Desktop.iso /media/cdrom​

​ ​

​ ​


​ ​

​共享挂载​​:​

​ ​

​ ​

​有时候,某些系统管理任务需要从目录树中的多个地方(例如,当准备​​chroot​​环境)访问同一个文件系统。这是可以实现的,​​Linux​​系统允许用户在需要时将同一个文件系统挂载到多个目录下。此外,​​mount​​命令附加​​--bind​​选项可复制指定的挂载。​

​ ​

​使用方法如下:​

​ ​

​mount --bind​​ old_directory new_directory​

​ ​

​ ​

​虽然此命令允许用户从多个地方访问文件系统,它并不适用于挂载在原来目录之内的文件系统。要包括这些挂载,输入:​

​ ​

​mount --rbind ​​old_directory new_directory​

​ ​

​ ​

​共享的挂载允许创建给定挂载点的精确副本。当一个挂载点标记为共享,源挂载点的所有挂载都将被复制。将挂载点类型改为共享挂载,输入以下命令:​

​ ​

​mount --make-shared ​​mount_point​

​ ​

​ ​

​另外,要改变选定挂载点及其下所有挂载点的类型,输入以下命令:​

​ ​

​mount --make-rshared ​​mount_point​

​ ​

​ ​

​举例​​5​​:​​创建共享挂载点:​

​ ​

​ ​

​其他的文件系统通常挂载在两个地方:可移动媒体在​​/media​​目录,暂时挂载的文件系统在​​/mnt​​目录。使用共享挂载用户可使这两个目录共享同样的内容。要做到这一点,在​​root​​权限下将​​/media​​目录标记成“​​shared​​”。​

​ ​

​~]# ​​mount --bind /media /media​

​ ​

​~]# ​​mount --make-shared /media​

​ ​

​ ​

​使用以下命令在​​/mnt​​创建它的副本:​

​ ​

​~]# ​​mount --bind /media /mnt​

​ ​

​ ​

​现在可验证​​/media​​目录下的挂在内容同样出现在​​/mnt​​目录。运行以下命令:​

​ ​

​~]# ​​mount /dev/cdrom /media/cdrom​

​ ​

​~]# ​​ls /media/cdrom​

​ ​

​EFI GPL isolinux LiveOS​

​ ​

​~]# ​​ls /mnt/cdrom​

​ ​

​EFI GPL isolinux LiveOS​

​ ​

​ ​

​类似的,可验证​​/mnt​​目录下挂载的所有文件系统都复制到​​/media​​目录。例如,如果插入一个非空的​​USB​​闪存驱动器,使用​​/dev/sdc1​​设备,​​/mnt/flashdisk/​​目录,输入​​:​

​ ​

​~]# ​​mount /dev/sdc1 /mnt/flashdisk​

​ ​

​~]# ​​ls /media/flashdisk​

​ ​

​en-US publican.cfg​

​ ​

​~]# ​​ls /mnt/flashdisk​

​ ​

​en-US publican.cfg​

​ ​

​ ​


​ ​

​移动挂载点​​:​

​ ​

​ ​

​使用以下命令更改文件系统的挂载目录:​

​ ​

​mount --move ​​old_directory new_directory​

​ ​

​ ​

​举例​​6​​:​​移动当前​​NFS​​挂载点:​

​ ​

​一个​​NFS​​存储包含用户目录并已挂载在​​ /mnt/userdirs/​​。在​​root​​权限下,输入以下命令将此挂载点移动至​​/home​​:​

​ ​

​~]#​​mount --move /mnt/userdirs /home​

​ ​

​ ​

​要验证此挂载点已被移动,列出两个目录的内容:​

​ ​

​~]#​​ls /mnt/userdirs​

​ ​

​~]#​​ls /home​

​ ​

​jill joe​

​ ​

​ ​


​ ​

​卸载文件系统:​

​ ​

​ ​

​卸载之前挂载的文件系统,使用以下命令:​

​ ​

​umount directory​

​ ​

​umount device​

​ ​

​注意,只有作为​​root​​用户登录时才能执行此操作。​

​ ​

​ ​

​重要提示:确保该目录不在使用中:​

​ ​

​ ​

​当一个文件系统正在被使用,执行​​umount​​命令将会返回错误。确认哪一个进程正在访问文件系统,使用​​fuser​​命令:​

​ ​

​fuser –m ​​directory​

​ ​

​例如,列出访问​​/media/cdrom/​​目录下文件系统的进程,输入:​

​ ​

​~]$ ​​fuser -m /media/cdrom​

​ ​

​/media/cdrom: 1793 2013 2022 2435 10532c 10672c ​

​ ​

​ ​

​举例​​7​​:​​卸载​​CD​​:​

​ ​

​ ​

​卸载之前挂载在​​/media/cdrom/​​目录下的​​CD​​,输入以下命令:​

​ ​

​~]$ ​​umount /media/cdrom​

​ ​

​ ​

​ ​
​ ​

​参考​

​ ​
​ ​

​ ​

​Red Hat Linux Administration Guide​

​ ​
​ ​

​应用于​

​ ​
​ ​

​ ​

​Red Hat Enterprise Linux 6​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

​ ​

3.2K 消息

2013年11月17日 22:00

需不需要vgexport和vgimport这样的操作?

450 消息

2013年11月17日 23:00

你不应该被这种问题难住啊。

mount这命令只牵扯到文件系统方面的,跟vg没关系吧。

1.2K 消息

2013年11月17日 23:00

欢迎讨论~

450 消息

2013年11月17日 23:00

跟UNIX上的mount还有一点点小区别。

1.2K 消息

2013年11月18日 00:00

hi liulei,文件系统的挂载共享,无需进行这样的操作。

找不到事件!

Top