找回密码
 立即注册
Qt开源社区 门户 查看内容

【linux从放弃到入门】mount、umount命令

2019-8-19 09:21| 发布者: admin| 查看: 714| 评论: 0

摘要: 1 mount简介对mount命令进行介绍之前,先简单解释下什么是“挂载”。“一切皆为文件”是linux系统的基本哲学之一,linux将所有设备都看作是文件,并为它们提供了一套统一的操作接口。当插入一块新硬盘时,起初我们是 ...

1 mount简介



对mount命令进行介绍之前,先简单解释下什么是“挂载”。“一切皆为文件”是linux系统的基本哲学之一,linux将所有设备都看作是文件,并为它们提供了一套统一的操作接口。当插入一块新硬盘时,起初我们是无法使用linux命令访问该硬盘内容,这是因为linux系统还识别不到它的存在。而后我们将新硬盘的分区挂载到linux根目录/的某个子目录下(最好为空),我们就可以通过访问该子目录间接访问新硬盘分区内容了。顾名思义,“挂载”就是将某个设备挂接到一个已存在的目录上,访问该目录就等同于访问被挂载的设备

mount命令用于将分区挂接到linux根目录下的某个子目录下,从而将分区和该目录衔接起来,只要访问该子目录,就等同于访问了该分区。

1.1 命令格式





mount -t <vsftype> [option] [-o spec_option] devicedir

1.2 常见vsftype






文件系统类型

说明
ext2linux目前常用的文件系统 
msdosMS-DOS的fat
nfs网络文件系统
iso9660CD-ROM光盘标准文件系统
ntfswindows NT/2000/XP的文件系统

说明:-t <vsftype>,指定被挂载设备的文件系统类型(可通过查看/proc/filesystems内容,了解当前系统支持哪些文件系统类型;如果不指定,会自动选择正确的类型)。



1.3常用option




option

说明
-a自动检查/etc/fstab文件中是否有疏漏未被挂载的设备,如果有,则自动执行挂载操作
-o指定挂载的特殊选型,比如读写权限等(如果不指定,则使用默认值)
-n系统默认会把挂载情况写入/etc/mtab中,但有些场景会刻意不写入,此时就需要使用该选项
-r设置被挂载文件为只读权限
-w设置被挂载文件为可写权限(默认为可写)


1.4特殊option



spec_option

说明
defaults使用所有选项的默认值autonouserrwsuid
auto/noaunto允许/不允许以-a选项进行安装
user /nouser允许/不允许一般用户挂载
ro以只读方式进行挂载
rw以读写方式进行挂载
remount重新安装已经安装了的文件系统


1.5 mount示例



1)查看已挂载的文件系统信息

root@LTY:/opt # mountsysfs on /systype sysfs (rw,nosuid,nodev,noexec,relatime)proc on /proctype proc (rw,nosuid,nodev,noexec,relatime)devtmpfs on /devtype devtmpfs (rw,nosuid,size=14605236k,nr_inodes=3651309,mode=755)securityfs on/sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)...


说明:输出信息格式为fs_spec on fs_file type fs_vfstype(fs_mntopts)

格式

说明
fs_spec被挂载的块设备或远程文件系统
fs_file文件系统挂载点
fs_vfstype文件系统类型
fs_mntopts与文件系统相关的选项,不同文件系统,其选项也不太一样


2)输出文件系统为类型为tmpfs的文件系统信息(也可以使用findmnt命令查看挂载情况,命令格式为findmnt MOUNT_POINT | device
root@LTY:/opt # mount-t tmpfstmpfs on/dev/shm type tmpfs (rw,nosuid,nodev)tmpfs on /runtype tmpfs (rw,nosuid,nodev,mode=755)tmpfs on /tmptype tmpfs (rw,nosuid,nodev)tmpfs on/run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=2929992k,mode=700)

3)将tmpfs挂载在/mnt/lty目录下mount + 挂载源 + 挂载点),然后用df命令查看是否已经挂载成功
root@LTY:/opt # mounttmpfs /mnt/ltyroot@LTY:/opt # df| grep tmpfsFilesystem     1K-blocks    Used Available Use% Mounted ontmpfs           14649972       0 14649972   0% /dev/shmtmpfs           14649972  224168 14425804   2% /runtmpfs           14649972       0 14649972   0% /mnt/lty

2 umount简介




umount命令用于卸载目前挂载在linux目录的文件系统。使用umount进行卸载时,最好使用挂载点进行卸载,避免卸载时发生混乱(可能一个设备挂载了多个挂载点)。

2.1 命令格式




umount [option] [设备名or 挂载点]

2.2 umount常用option




option

说明

-a

卸除/etc/mtab中记录的所有文件系统

-n

卸除时不要将信息存入/etc/mtab文件中

-r

若无法成功卸除,则尝试以只读的方式重新挂入文件系统

-t<文件系统类型>

仅卸除选项中所指定的文件系统

-v

执行时显示详细的信息


说明:进程正在使用的设备是无法卸载的,可使用lsof MOUNT_POINT查看挂载点上运行的进程,然后使用kill命令杀死进程;或使用fuser -vmk MOUNT_POINT,查看并杀死在挂载点上运行的进程。最后再执行umount命令。

2.3 umount示例




1)根据设备名进行卸载(/dev/sha1)
root@LTY:/opt # umount-v /dev/sda1/dev/sda1umounted

2)根据挂载点进行卸载(/mnt/mymount),此时无进程正在使用设备
root@LTY:/opt # umount-v /mnt/mymount//tmp/diskboot.imgumounted

3)根据挂载点进行卸载(/mnt/mymount),此时有进程正在使用设备(使用fuser命令杀死挂载点上的进程)
root@LTY:/opt # umount-v /mnt/mymount/umount:/mnt/mymount: device is busyroot@LTY:/opt # fuser-vmk /mnt/mymount/root@LTY:/opt # umount-v /mnt/mymount//tmp/diskboot.imgumounted

推荐阅读:

【linux从放弃到入门】cat、more、less命令

【linux从放弃到入门】col、tr、join命令

【linux从放弃到入门】Linux sort命令

【linux从放弃到入门】linux find命令

看完本文有收获?请分享给更多的人

在技术成长的路上,让我们一起进步吧




----------------------------------------------------------------------------------------------------------------------
我们尊重原创,也注重分享,文章来源于微信公众号:码农之屋,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
----------------------------------------------------------------------------------------------------------------------

鲜花

握手

雷人

路过

鸡蛋

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了