パーティションがext2、ext3、またはext4であるかどうかを確認するにはどうすればよいですか?


121

ものをフォーマットしました。ext2としてフォーマットした1つのディスク。もう1つはext4としてフォーマットします。それらがどのように機能するかをテストしたい。

さて、パーティション内のファイルシステムの種類を知るにはどうすればいいですか?


2
好奇心から、何をテストしようとしていますか?ジャーナルvsジャーナルなし?記録のために、ext4を非ジャーナルモードで操作しても、他のすべての新機能を活用できます。
zacharyalexstern

回答:


114

ファイル内のデータの種類(データ形式)を確認するにはどうすればよいですか?
fileユーティリティを使用します。

ここでは、デバイスファイル内のデータの形式を知りたいため、-sフラグを渡して、それがデバイスファイルであるfileと言うだけでなく、コンテンツを確認する必要があります。-Lデバイスファイル名がシンボリックリンクの場合、フラグも必要になることがあります。次のような出力が表示されます。

# file -sL /dev/sd*
/dev/sda1: Linux rev 1.0 ext4 filesystem data, UUID=63fa0104-4aab-4dc8-a50d-e2c1bf0fb188 (extents) (large files) (huge files)
/dev/sdb1: Linux rev 1.0 ext2 filesystem data, UUID=b3c82023-78e1-4ad4-b6e0-62355b272166
/dev/sdb2: Linux/i386 swap file (new style), version 1 (4K pages), size 4194303 pages, no label, UUID=3f64308c-19db-4da5-a9a0-db4d7defb80f

この出力例では、最初のディスクには1つのパーティションがあり、2番目のディスクには2つのパーティションがあります。/dev/sda1ext4ファイルシステム、/dev/sdb1ext2ファイルシステム、および/dev/sdb2スワップスペース(約4GB)です。

通常のユーザーはディスクパーティションを直接読み取ることができないため、このコマンドをルートとして実行する必要がありますsudo。必要に応じて前に追加します。


1
入るとき$ sudo file /dev/sda1、私は得る/dev/sda1: block special
-heinrich5991

2
@ heinrich5991「-sフラグを渡す必要があります…」。コマンドを表示しますfile -s /dev/sd*-のsudo前に、それがありsudo file -s /dev/sd*ます。
ジル

あ、すみません、見落としていました。:(
heinrich5991

2
LVMのもののために動作しません:-lは良く働くようで別れ
TiloBunt

1
@TiloBunt シンボリックリンクを逆参照するフラグを使用してfile -sL /dev/mapper/foo-bar、それを作成し-Lます。
ジル14

65

別のオプションは、使用することblkidです:

$ blkid /dev/sda1
/dev/sda1: UUID="625fa1fa-2785-4abc-a15a-bfcc498139d1" TYPE="ext2"

これは、ほとんどのファイルシステムの種類と暗号化されたパーティションのようなものを認識します。

特定のタイプのパーティションを検索することもできます。

# blkid -t TYPE=ext2
/dev/sda1: UUID="625fa1fa-2785-4abc-a15a-bfcc498139d1" TYPE="ext2" 
/dev/sdb1: UUID="b80153f4-92a1-473f-b7f6-80e601ae21ac" TYPE="ext2"

7
+1:でext2ファイルシステムをマウントするときにこれが正しい結果を与えることを確認しましたmount -t ext4blkidそれにだまされていません。
ウォーレンヤング

何その価値については、これはまた、明らかにそれはだものの、xfsのドライブのために働くように見えるblkidほど大きくはないようlsblkである時にアンマウントされたドライブを検出する(必要な場合に)
ホセ・ディアス・ゴンザレス

ありがとう!ファイルコマンドは機能しませんでしたが、これは私に必要なものを与えてくれました。
Brain2000

私はblkid / dev / sda1をsudoしなければなりませんでした。それ以外の場合は空白の結果になります
jokab

41

使用できます sudo parted -l

[shredder12]$ sudo parted -l

Model: ATA WDC WD1600BEVT-7 (scsi)
Disk /dev/sda: 160GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system     Flags
 1      32.3kB  8587MB  8587MB  primary   ext3            boot
 4      8587MB  40.0GB  31.4GB  primary   ext4
 2      40.0GB  55.0GB  15.0GB  primary   ext4
 3      55.0GB  160GB   105GB   extended
 5      55.0GB  158GB   103GB   logical   ext4
 6      158GB   160GB   1999MB  logical   linux-swap(v1)

ソース


1
partedはインストールされていません。また、ドライブはまだマウントされていません。
user4951

1
@JimThioあなたはそれをインストールできたと思いますか?Ubuntuまたは他のdebian派生物を使用している場合は、単にsudo apt-get install parted(またはgparted)実行するだけで取得できます。
カルティクT

2
+1:でext2ファイルシステムをマウントするときにこれが正しい結果を与えることを確認しましたmount -t ext4partedそれにだまされていません。
ウォーレンヤング

これは最も支持された答えではありませんが、これは実際に使用するものです。また、デバイスを指定する必要はありません。
user4951

それが最良の答えではありませんので:パーティションはext2ファイルとしてGRUB標識されるかもしれないがとext4ファイルシステムが含まれている(してからとext4のとしてマウントされますmount -t auto
バジーレStarynkevitch

15

さらに別の方法は、のフレーバーを実行していることを知っているのでext?、ファイルシステムの機能リストを調べることです。

# tune2fs -l /dev/sda1 | grep features

リストに表示される場合:

  • extent — ext4です
  • いいえextent、しかしhas_journal—それはext3です
  • どちらextentでもないhas_journal-ext2

partedそしてblkidあなたはこれらの経験則が自動的に実行したい場合は答えが優れています。(彼らは機能チェックとの違いも教えてくれます。)彼らは非ext?ファイルシステムを識別することもできます。

この方法には、低レベルの違いを示すという利点があります。

ここで認識すべき重要なことは、これら3つのファイルシステムは前方互換性があり、ある程度後方互換性があることです。それ以降のバージョンは、古いものの上に機能を追加するだけです。

詳細については、ext4 HOWTOを参照してください。


10

私が見つけたもう1つの方法は、df -Tsee man dfを使用してより多くのオプションを試してみてくださいcfdisk


2
これには、h3rmillerのmount回答と同じ弱点があります。
ウォーレンヤング

3
h3rrmillerが答えを削除したので、担当者が現在それを見ることができない場合、問題はmount -t ext4ext2ファイルシステムでdf -T報告した場合、reportsであるということext4です。つまり、ファイルシステムのメタデータを調べてこれを把握するのではなく、マウントテーブルの内容を読んでいるだけです。
ウォーレンヤング

@Warren:それ、その場合ext4ファイルシステムだからです。多くの機能を備えていないもの。
mattdm

@mattdm:マウントを解除しても...まだext4ファイルシステムですか?
ウォーレンヤング

@Warren:ある意味で、すべてのext2ファイルシステムはext4ファイルシステムでもあります、はい。(もちろん、ほとんどの人が意味する意味ではありません。)
mattdm

10

驚いたことに、これはもうここにはありません。いいえsudo必要ありません。

lsblk -f


2
私はせずにこれを実行すると、列空白になっています。sudoFSTYPE
フラップ

@Flup私は自分でもう一度試しましたが、sudoがなくても完全に機能しました。FSTYPE列は完全に入力されました。私たちのシステム間にいくらかの格差があるかもしれませんか?
Freedom_Ben

@Flup-Debian / Ubuntuまたは派生物を使用している必要があります...彼らは何かをすることで有名です(または、何かをしていないかもしれませんが、私は知りません)lsblk。 。
don_crissti

4

-Tオプションを使用して、ファイルシステムタイプを出力します。

[root@centos6 ~]# df -T

Filesystem           Type  1K-blocks    Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root
                     ext4    6795192 6367072     76276  99% /
tmpfs                tmpfs    639164       0    639164   0% /dev/shm
/dev/sda1            ext4     487652   28684    433368   7% /boot

2

fdisk -l リストします

使用法:

 fdisk [options] -l <disk> list partition table(s)
 fdisk -s <partition>      give partition size(s) in blocks
 fdisk [options] <disk>    change partition table

2
どのシステムで?fdisk、少なくとも現時点で使用しているシステムでは、パーティションタイプのみが表示され、ファイルシステムタイプは表示されません。すなわち、それは違いを見分けることができないだけでなく、意味ext2ext3ext4、それはまた、これらからのReiserFSやXFSを識別することはできません。
ウォーレンヤング

努力のために+1。この質問をする前にfdiskを実行しました。ポイントを上げてください。
user4951

1

ファイルシステムタイプだけを取得する便利なonelinerは次のとおりです。

blkid -o export <partition-device> | grep '^TYPE' | cut -d"=" -f2

実行例は次のとおりです。

# blkid -o export /dev/sda1 | grep '^TYPE' | cut -d"=" -f2
vfat
# blkid -o export /dev/sda2 | grep '^TYPE' | cut -d"=" -f2
ext4

0

これは、私が探していたBSDの答えを示していませんでした。これらのタイプのバイトは実際にはディスク上のパーティションテーブルに含まれているという印象がありましたが、それについてはわかりません。すべてのLinux extfsタイプにはタイプ85しかありませんが、LinuxはOpenBSDのA6タイプもまったく認識しません。

> 00未使用20 Willowsoft 66 NetWare 386 A9 NetBSD
> 01 DOS FAT-12 24 NEC DOS 67 Novell AB MacOS Xブート
> 02 XENIX / 27 Win Recovery 68 Novell AF MacOS X HFS +
> 03 XENIX / usr 38 Theos 69 Novell B7 BSDI filesy *
> 04 DOS FAT-16 39プラン9 70 DiskSecure B8 BSDIスワップ
> 05拡張DOS 40 VENIX 286 75 PCIX BF Solaris
> 06 DOS> 32MB 41 Lin / Minux DR 80 Minix(旧)C0 CTOS
> 07 NTFS 42 LinuxSwap DR 81 Minix(新規)C1 DRDOSs FAT12
> 08 AIX fs 43 Linux DR 82 LinuxスワップC4 DRDOS 09 AIX / Coherent 4D QNX 4.2 Pri 83 Linuxファイル* C6 DRDOS> = 32M
> 0A OS / 2 Bootmgr 4E QNX 4.2 Sec 84 OS / 2非表示C7 HPFS無効
> 0B Win95 FAT-32 4F QNX 4.2 Ter 85 Linux ext。DB CPM / C.DOS / C *
> 0C Win95 FAT32L 50 DM 86 NT FAT VS DE Dell Maint
> 0E DOS FAT-16 51 DM 87 NTFS VS E1 SpeedStor
> 0F拡張LBA 52 CP / MまたはSysV 8E Linux LVM E3 SpeedStor
> 10 OPUS 53 DM 93 Amoeba FS E4 SpeedStor
> 11 OS / 2 hidden 54 Ontrack 94 Amoeba BBT EB BeOS / i386
> 12 Compaq Diag。55 EZ-Drive 99 Mylex EE EFI GPT
> 14 OS / 2 hidden 56 Golden Bow 9F BSDI EF EFI Sys
> 16 OS / 2 hidden 5C Priam A0 NotebookSave F1 SpeedStor
> 17 OS / 2 hidden 61 SpeedStor A5 FreeBSD F2 DOS 3.3+ Sec
> 18 ASTスワップ63 ISC、HURD、* A6 OpenBSD F4 SpeedStor
> 19 Willowtech 64 NetWare 2.xx A7 NEXTSTEP FF Xenix BBT   
> 1C ThinkPad Rec 65 NetWare 3.xx A8 MacOS X     

書式設定が混乱する可能性があります。それは幅が70列の素敵なテーブルです。OpenBSDのfdiskで、ヒットした場合は?パーティションの種類を尋ねると、これが得られます。タイプは、パーティションテーブルを編集または一覧表示するときに表示されます。

ウィキペディアのパーティションタイプ:https : //en.wikipedia.org/wiki/Partition_type

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.