lvm
または、他のユーティリティを使用して論理ボリュームのファイルシステムタイプを確認するには?
たとえば、私の論理ボリュームが/dev/vg1/lv1
次の場合、そのファイルシステムの種類をどのように確認できますか?
ext4
を使用して論理ボリュームにファイルシステムを作成しましたmkfs -t ext4 /dev/vg1/lv1
。しかし、確認する方法がわかりません。薄いオプションはありませんかlvm
?
答え1
他のブロックデバイスと同じです。例えば
file -s /dev/vg1/lv1
シンボリックリンクの場合、これを逆参照するには 's (aka ) オプション/dev/vg1/lv1
も必要です (つまり、指す実際のデバイスノードに従います)。file
-L
--dereference
file -L -s /dev/vg1/lv1
BTWは-L
通常のファイルで動作します。
ext4の場合は、次のようになります。
/dev/vg1/lv1: Linux rev 1.0 ext4 filesystem data, UUID=xxxx, volume name "yyyy" (needs journal recovery) (extents) (large files) (huge files)
または、次blkid /dev/vg1/lv1
のように報告できます。
/dev/vg1/lv1: LABEL="yyyy" UUID="xxxx" TYPE="ext4"
からman file
:
-s、--特殊ファイル
通常、 file は、stat(2) が一般ファイルとして報告するパラメーター・ファイルのタイプを読み取り、決定しようとします。これにより、特別なファイルを読み取ると特別な結果が発生する可能性がある問題が回避されます。 -sオプションを指定すると、ファイルはパラメータファイルをブロックまたは文字特殊ファイルとして読み込みます。
これは、ブロック特殊ファイルであるRAWディスクパーティション内のデータのファイルシステムタイプを決定するのに役立ちます。また、このオプションを使用すると、fileはstat(2)によって報告されたファイルサイズを無視します。一部のシステムでは、RAWディスクパーティションのサイズを0として報告するためです。
答え2
使用lsblk -f
。
$ lsblk -f
NAME FSTYPE LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
sda
├─sda1 ext4 d2123fec-6c94-426f-b505-8cf3441122cf 742,6M 17% /boot
└─sda2 LVM2_member BLt1F3-S5E3-hBRX-Eqya-AUOx-wyxc-a5Yaf4
├─fedora-root xfs 59935050-8e89-4f7f-bf0f-2f448c4c680b 12,8G 15% /
└─fedora-swap swap 5fbca8c7-fd22-4acf-a411-d96a100c8ab2 [SWAP]
sr0 iso9660 VBox_GAs_6.0.8 2019-05-13-13-58-35-65
答え3
論理ボリュームに複数のパーティションがある場合は、パーティションオフセットを知ることが役立ちます。
fdisk
ボリュームのパーティション情報を読み取るには:
linux1:~ # fdisk -l /dev/vg01/lv001
Disk /dev/vg01/lv001: 80 GiB, 85899345920 bytes, 167772160 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000825ab
Device Boot Start End Sectors Size Id Type
/dev/vg01/lv0011 63 3132674 3132612 1.5G 82 Linux swap / Solaris
/dev/vg01/lv0012 * 3132675 167734664 164601990 78.5G 83 Linux
blkid
その後、ファイルシステムの種類を決定するために使用されます。このオプションはローカルキャッシュファイルをバイパスして-p
詳細な調査を行い、キャピタルは確認するバイトオフセットを決定します。オフセットは、開始セクタにセクタサイズを掛けることによって決定される。blkid
-O
`expr 3132675 \* 512`
バックティックはインライン式に使用され、バックスラッシュは\*
bashがアスタリスクを食べることを防ぎます。
blkid
ターゲットファイルシステムを決定するコマンドは次のとおりです。
linux1:~ # blkid -pO `expr 3132675 \* 512` /dev/vg01/lv001
/dev/vg01/lv001: UUID="..." VERSION="1.0" TYPE="ext3" USAGE="filesystem" PTTYPE="dos"
この例では、次のようになります。外部3。
ファイルシステムにアクセスするには、オフセットをマウントします。
mount -o offset=`expr 3132675 \* 512` /dev/vg01/lv001 /mnt/lv001
上記の操作はSLES 12.4で行われます。
linux1:~ # uname -a
Linux linux1 4.12.14-95.6-default #1 SMP Thu Jan 17 06:04:39 UTC 2019 (6af4ef8) x86_64 x86_64 x86_64 GNU/Linux
答え4
ワイプ(オプションなし)も同じことをします。
[root@localhost backup]# wipefs /dev/mapper/d2-vmStorage
DEVICE OFFSET TYPE UUID LABEL
d2-vmStorage 0x0 xfs 141c43c0-ebdb-414a-aa8a-1a23871b9052
file -sの同じ出力:
[root@localhost backup]# file -L -s /dev/mapper/d2-vmStorage
/dev/mapper/d2-vmStorage: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
実際にfsを消去するには:
[root@localhost backup]# wipefs -a /dev/mapper/d2-vmStorage
/dev/mapper/d2-vmStorage: 4 bytes were erased at offset 0x00000000 (xfs): 58 46 53 42