Linux 存储设备的挂载及识别
存储挂载的概念
将驻留在物理磁盘或虚拟镜像上的文件系统添加到现有目录树的过程称为挂载
。其中挂载到系统的目录称为挂载点
。
存储设备由一个特殊文件类型表示,称为块设备
。块设备存储在/dev
目录下。在RHEL系操作系统中,检测到的第一个SCSI、SATA或USB存储设备叫sda
,块设备在/dev/sda
,第二个是sdb
以此类推。该名称代表整个存储设备。若要挂载某一分区,那么在/dev/sda
上的第一个分区叫sda1
、第二个分区叫sda2
以此类推。
虚拟机中的磁盘驱动器是例外情况,通常显示为
/dev/vd(x)
或/dev/xvd(x)
查找存储设备
fdisk -l
显示磁盘分区信息df -h
显示已经挂载的文件系统的信息。lsblk
树状图显示磁盘分区以及挂载信息
存储的挂载
常用mount <operation> <mountpoint>
命令挂载存储设备,这种手动的挂载都是临时的,重启便失效。
参数1(operation):指定要挂载的文件系统
参数2(mountpoint):指定将要挂载的文件系统挂载到本机的目标目录(挂载点)
从发现存储设备到挂载存储设备的过程例子如下:
1 | lsblk # 使用命令`lsblk`发现存储设备以及分区 |
如果提示权限不足,请使用root权限操作。
现在已经将/dev/sdb1
磁盘分区挂载到了系统的/mnt/mydisk
挂载点上。
检查是否已经成功地挂载,可以使用df -h
或lsblk
。
解除挂载
使用umount <mountpoint>
来解除对文件系统的挂载。
参数1(mountpoint):要解除挂载的挂载点
比如我们刚刚将/dev/sdb1
挂载到了系统的/mnt/mydisk
挂载点上,使用umount /mnt/mydisk
即可解除挂载。
实现存储设备开机自动挂载
使用mount
的挂载只是临时的,重启后就失效了,如果需要继续使用存储设备就要重新挂载,相当的麻烦。
实现开机自动挂载需要修改系统的/etc/fstab
配置文件,在这个配置文件中添加一些要挂载存储设备的信息。
对
/etc/fstab
修改比较危险,如果没有一定把握请不要使用这种方式挂载存储设备,如果配置有误,系统重启后将进入恢复模式无法正常的开机。
fstab
支持两种配置方式:
- 使用UUID配置(推荐。只要不格式化,UUID不会改变)
- 使用存储设备的块设备文件
/dev/sdb1
(如果设备的顺序有变化或者向系统中添加了其他的设备,设备块设备文件路径会有变化导致系统无法正常启动)
使用lsblk -f
列出系统中发现的现有分区以及文件系统的UUID和该分区文件系统的格式等信息。
1 | lsblk -f |
可以看到/dev/sdb1
文件系统的格式为vfat
,UUID为F0ED-593A
。
切换到root用户,编辑/etc/fstab
文件,并按照fstab
文件原有的格式添加到文件末尾行。
UUID=F0ED-593A /mnt/mydisk vfat defaults 0 0
使用mount -a
对fstab
配置文件中的全部磁盘分区以此进行挂载,如果没有报错,则配置文件编写正确。
使用df -h
检查挂载点是否正确。