查看文件系统类型

时间:2021-10-12 16:05:57
虽然说,在Linux下mount一个文件系统时,可以不指定文件系统。这时候,操作系统会尝试用所有它已知的文件系统格式去挂载。大多数情况下,都会正确的挂载。但不要忘了,它同时也提醒你,如果你的数据非常重要,请不要让系统去自动识别文件系统格式。如果她识别格式错误将会给你带来致命的错误。那么当你不知道一个文件系统是什么格式时,怎么去挂载这个系统,就是你要面对的问题。本文提供了两种查看文件系统的方式,其中一种在通用性不好,只要知道有这种方式就好了,不建议使用。

先介绍的是blkid命令。使用blkid命令加上设备名就可以获取该设备的所有信息:

[root@localhost vd]# blkid /dev/mapper/vg_test-lv_test
/dev/mapper/vg_test-lv_test: SEC_TYPE="msdos" UUID="4A2D-1C9A" TYPE="vfat"
[root@localhost vd]#


当然,我们只关心文件系统的格式,可以使用-s 选项来只选择系统格式:

[root@localhost vd]# blkid -s TYPE /dev/mapper/vg_test-lv_test
/dev/mapper/vg_test-lv_test: TYPE="vfat"
[root@localhost vd]#


该命令还有更多的用处,例如说使用-o device选项查看本机上所有的挂载卷:

[root@localhost vd]# blkid -o device
/dev/mapper/VolGroup00-LogVol01
/dev/mapper/VolGroup00-LogVol00
/dev/sda9
/dev/sda8
/dev/sda7
/dev/sda6
/dev/sda5
/dev/sda1
/dev/hdc
/dev/VolGroup00/LogVol00
/dev/VolGroup00/LogVol01
/dev/mapper/vg_test-lv_test

[root@localhost vd]#


更详细的使用说明请man blkid学习。该命令是相对稳定的。

另外要注意的是,如果要查看逻辑卷的文件系统时,一定要保证逻辑卷是激活的,否则会返回错误。
下面是将/dev/vg_test/lv_test去激活,然后再查看该文件系统格式,报错:

[root@localhost vd]# lvchange -an /dev/vg_test/lv_test
File descriptor 11 (socket:[18742]) leaked on lvchange invocation. Parent PID 5514: /bin/bash
File descriptor 12 (socket:[18744]) leaked on lvchange invocation. Parent PID 5514: /bin/bash
File descriptor 13 (socket:[18746]) leaked on lvchange invocation. Parent PID 5514: /bin/bash
[root@localhost vd]# lvscan
File descriptor 11 (socket:[18742]) leaked on lvscan invocation. Parent PID 5514: /bin/bash
File descriptor 12 (socket:[18744]) leaked on lvscan invocation. Parent PID 5514: /bin/bash
File descriptor 13 (socket:[18746]) leaked on lvscan invocation. Parent PID 5514: /bin/bash
ACTIVE '/dev/VolGroup00/LogVol00' [32.69 GB] inherit
ACTIVE '/dev/VolGroup00/LogVol01' [3.91 GB] inherit
inactive '/dev/vg_test/lv_test' [500.00 MB] inherit

[root@localhost vd]# blkid /dev/
Display all 203 possibilities? (y or n)
[root@localhost vd]# blkid /dev/vg_test/lv_test
[root@localhost vd]# echo $?
2
[root@localhost vd]#


另外一个命令是parted,这个命令也可以查看文件系统,但是相对的不稳定,有时候会报莫名其妙的错误。不建议大家使用,只是在这里提一下:如果我要查看逻辑卷/dev/vg_test/lv_test的信息,使用parted /dev/vg_test/lv_test p,其中p是parted的一个命令:

root@localhost vd]# parted /dev/vg_test/lv_test p

Model: Linux device-mapper (dm)
Disk /dev/mapper/vg_test-lv_test: 524MB
Sector size (logical/physical): 512B/512B
Partition Table: loop

Number Start End Size File system 标志
1 0.00kB 524MB 524MB fat16

信息: 如果必要,不要忘记更新 /etc/fstab。


[root@localhost vd]#


在其中的某一行打印出了文件系统的格式。但是由于此命令不稳定,不推荐使用。