文件系统 挂载mount 与 卸载umount
Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”,这个目录就是“挂载点”,解除次关联关系的过程称之为“卸载”。只有被挂载了之后,才可以访问里面的内容。
注意 “挂载点”的目录需要以下几个要求:
(1)目录事先存在,可以用mkdir命令新建目录;
(2)挂载点目录不可被其他进程使用到;
(3)挂载点下原有文件将被隐藏。
挂载操作必须要在最高权限下使用,一般是root用户。
1、U盘 挂载与卸载
-
通过
fdisk -l
命令,查看磁盘分区情况,也可以查看到u盘被分区的位置,以及u盘文件格式这里可以查看到USB的信息,一个exFAT格式的USB被分区到/dev/sdb1位置
-
通过
mkdir /mnt/usb
在根目录下创建一个文件夹mnt,在mnt文件夹中创建一个usb文件夹,用于将u盘的内容挂载到usb文件夹中,当然也可以根据自己的喜好创建一个文件夹用于挂载u盘 -
通过
mount /dev/sdb1 /mnt/usb
将u盘分区的位置挂载到usb目录下,此时就可以在usb目录下访问到u盘内容
mount挂载命令使用方法
mount –t 类型 –o 挂接方式 磁盘分区目录 挂载位置目录
-t 详细选项
光盘或光盘镜像: iso9660DOS fat16文件系统: msdos
Windows 9x fat32文件系统: vfat
Windows NT ntfs文件系统: ntfs
Mount Windows文件网络共享: smbfs(需内核支持)推荐cifs
UNIX(LINUX)文件网络共享: nfs
自动: auto
-o 详细选项
loop:用来把一个文件当成硬盘分区挂接上系统
ro:采用只读方式挂接设备
rw:采用读写方式挂接设备(ubuntu系统)
默认不支持exfat格式的U盘,只需要运行如下的命令:sudo apt-get install exfat-utils
出现包不能安装: Package <packagename> has no installation candidate
解决方法如下:
在root用户下执行
# apt-get update
# apt-get upgrade -
通过
mount -l
、df -h
可查看所有被挂载的信息其中就可查看到,刚刚被挂载的u盘的信息
通过df -h
-h
是 --human-readable 打印出来的信息是人能看得懂的!!! -
通过
umount /mnt/usb
可以下载挂载语法:
umount [选项] [挂载点]/[设备名]
功能:将使用mount命令挂载的文件系统卸载。
注意:卸载时,当前目录不能在挂载点中、不能使用挂载点中的数据。
2、镜像文件 挂载与卸载
-
将镜像文件拷贝到linux系统上。
cp -i windows_10_ultimate_x64_2019.iso /
将windows_10_ultimate_x64_2019.iso文件拷贝到根目录下通过
du -h <文件名>
可查看文件的大小 -
执行命令:
mount -o loop <源文件名称> <挂载目录>
mount -o loop windows_10_ultimate_x64_2019.iso /mnt/cd
挂载镜像文件,并进入/mnt/cd
可查看镜像文件内容通过
df -h
查看挂载情况 -
卸载:
umount /mnt/cd
3、系统自动挂载
如果我们想实现开机自动挂载某设备,只要修改**/etc/fstab**文件即可。
/etc/fstab 是文本文件,他储存了系统内的静态挂载点,即每次启动时挂载的文件系统。对/etc/fstab文件进行编辑即可,vim /etc/fstab
,如图:
编写内容:
1-要挂载的设备或伪文件系统 2-挂载点 3-文件系统类型 4-挂载选项 5-转储频率 6-自检次序
编写格式:
UUID=xxx xxx xxx defaults 0 0
-
要挂载的设备或伪文件系统:设备文件、LABEL(LABEL="")、UUID(UUID="")、伪文件系统名称(proc, sysfs)
-
挂载点:指定的文件夹(需要挂载到哪个文件夹中)
-
文件系统类型 :需要被挂载的文件系统类型
-
挂载选项:defaults
-
转储频率:
0 :不做备份
1:每天转储
2:每隔一天转储
-
自检次序:
0:不自检
1:首先自检;一般只有rootfs才用1
UUID
命令:
blkid [<文件的分区路径>]
不写分区路径,则会查看所有分区的UUID
ls -l /dev/disk/by-uuid
可查看UUID
-
通过
vim /etc/fstab
,编辑fstab,添加u盘的信息,可实现自动挂载![在这里插入图片描述](https://img-blog.csdnimg.cn/20200614192114411.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTI1ODA4OQ==,size_16,color_FFFFFF,t_70)
-
输入命令
shutdown -r now
重启,输入df -h
查看u盘是否自动挂载由此,可见已被自动挂载
/etc/fstab和/etc/mtab的区别
-
/etc/fstab文件的作用:
记录了计算机上硬盘分区的相关信息,启动 Linux 的时候,检查分区的 fsck 命令,和挂载分区的 mount 命令,都需要 fstab 中的信息,来正确的检查和挂载硬盘。
-
/etc/mtab文件的作用:
记载的是现在系统已经装载的文件系统,包括操作系统建立的虚拟文件等;而/etc/fstab是系统准备装载的。 每当 mount 挂载分区、umount 卸载分区,都会动态更新 mtab,mtab 总是保持着当前系统中已挂载的分区信息,fdisk、df 这类程序,必须要读取 mtab 文件,才能获得当前系统中的分区挂载情况。当然我们自己还可以通过读取/proc/mount也可以来获取当前挂载信息