Woher weiß ich, ob eine Partition ext2, ext3 oder ext4 ist?
121
Ich habe gerade Sachen formatiert. Eine Platte formatiere ich als ext2. Das andere möchte ich als ext4 formatieren. Ich möchte testen, wie sie funktionieren.
Woher kenne ich das Dateisystem in einer Partition?
Was versuchst du aus Neugier zu testen? Journal vs. kein Journal? Für die Aufzeichnung können Sie ext4 im No-Journal-Modus betreiben und trotzdem von allen anderen neuen Funktionen profitieren.
Wie kann ich feststellen, welche Art von Daten (welches Datenformat) in einer Datei enthalten ist?
→ Verwenden Sie das fileDienstprogramm.
Hier möchten Sie das Format der Daten in einer Gerätedatei kennen, also müssen Sie das -sFlag übergeben, um filenicht nur zu sagen, dass es sich um eine Gerätedatei handelt, sondern um den Inhalt zu betrachten. Manchmal benötigen Sie das -LFlag auch, wenn der Name der Gerätedatei eine symbolische Verknüpfung ist. Die Ausgabe sieht dann so aus:
# 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
Bei dieser Beispielausgabe verfügt der erste Datenträger über eine Partition und der zweite Datenträger über zwei Partitionen. /dev/sda1ist ein ext4-Dateisystem, /dev/sdb1ist ein ext2-Dateisystem und /dev/sdb2ist etwas Swap-Speicherplatz (ca. 4 GB).
Sie müssen diesen Befehl als root ausführen, da normale Benutzer Festplattenpartitionen möglicherweise nicht direkt lesen sudo.
+1: Ich habe überprüft, dass dies das richtige Ergebnis beim Mounten eines ext2Dateisystems mit gibt mount -t ext4. blkidwird davon nicht getäuscht.
Warren Young
Dies scheint auch für xfs-Laufwerke zu funktionieren, obwohl es anscheinend blkidnicht so gut ist, wie nicht gemountete Laufwerke lsblkzu erkennen (falls erforderlich)
Jose Diaz-Gonzalez
Vielen Dank! Der Dateibefehl funktionierte nicht, aber das gab mir das, was ich brauchte.
Brain2000
ich musste sudo blkid / dev / sda1 sonst bekomme ich leere ergebnisse
parted ist nicht installiert. Auch die Laufwerke sind noch nicht gemountet.
user4951
1
@ JimThio Ich nehme an, Sie konnten es installieren? Sie sollten in der Lage sein, es zu bekommen, indem Sie einfach sudo apt-get install parted(oder gparted) tun, wenn Sie auf Ubuntu oder einem anderen Debian-Derivat sind.
Karthik T
2
+1: Ich habe überprüft, dass dies das richtige Ergebnis beim Mounten eines ext2Dateisystems mit gibt mount -t ext4. partedwird davon nicht getäuscht.
Warren Young
Dies ist zwar nicht die am besten bewertete Antwort, aber die, die ich tatsächlich verwende. Auch muss ich das Gerät nicht angeben.
user4951
Weil es nicht die beste Antwort ist: Eine Partition könnte als ext2 grub-markiert sein und das Dateisystem ext4 enthalten (und dann als ext4 mit gemountet werden mount -t auto)
Basile Starynkevitch
15
Noch eine andere Art und Weise, da Sie wissen , Sie laufen einige Geschmack ext?, auf das Dateisystem des Feature - Liste zu sehen ist:
# tune2fs -l /dev/sda1 | grep features
Wenn Sie in der Liste Folgendes sehen:
extent - Es ist ext4
nein extent, aber has_journal- es ist ext3
weder extentnoch has_journal- es ist ext2
Das partedund die blkidAntworten sind besser, wenn diese Heuristiken automatisch für Sie ausgeführt werden sollen. (Sie unterscheiden sich auch bei der Funktionsprüfung.) Sie können auch Nicht- ext?Dateisysteme identifizieren .
Diese Methode hat den Vorteil, dass Sie die geringen Unterschiede erkennen können.
Hierbei ist zu beachten, dass diese drei Dateisysteme vorwärtskompatibel und teilweise auch rückwärtskompatibel sind. In späteren Versionen werden nur Funktionen zu den älteren hinzugefügt.
Weitere Informationen hierzu finden Sie im ext4-HOWTO .
Dies hat die gleiche Schwäche wie die auf h3rmiller mountbasierende Antwort.
Warren Young
3
h3rrmiller hat seine Antwort entfernt. Für diejenigen, die nicht über den Repräsentanten verfügen, ist das Problem, dass, wenn Sie mount -t ext4über ein ext2Dateisystem df -Tberichten ext4. Das heißt, es wird nur gelesen, was die Mount-Tabelle sagt, und nicht die Metadaten des Dateisystems, um dies herauszufinden.
Warren Young
@Warren: Das liegt daran, dass es sich in diesem Fall um ein ext4-Dateisystem handelt. Nur eine mit nicht vielen Funktionen.
Mattdm
@mattdm: Also, wenn Sie es aushängen ... ist es immer noch ein ext4-Dateisystem?
Warren Young
@Warren: In gewisser Weise sind alle ext2-Dateisysteme auch ext4-Dateisysteme, ja. (Aber natürlich nicht in dem Sinne, den die meisten Leute meinen.)
Mattdm
10
Überrascht ist das hier noch nicht. Nein sudoerforderlich:
Wenn ich das ohne sudodie FSTYPESpalte laufen lasse ist leer.
Flup
@Flup Ich habe es gerade selbst nochmal probiert und es funktionierte einwandfrei ohne sudo. Die Spalte FSTYPE wurde vollständig ausgefüllt. Möglicherweise gibt es Unterschiede zwischen unseren Systemen?
Freedom_Ben
@Flup - Sie müssen Debian / Ubuntu oder Derivate verwenden ... Sie sind berühmt dafür, etwas zu tun (oder vielleicht etwas nicht zu tun, ich würde es nicht wissen) und das Endergebnis ist, dass Sie Root-Rechte benötigen, um einige lsblkSpalten aufzulisten. .
don_crissti
4
Verwenden Sie die Option -T, um den Dateisystemtyp zu drucken
[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
Auf welchem System? fdiskzeigt auf dem System, das ich gerade benutze, nur den Partitionstyp, nicht den Dateisystemtyp an. Das heißt , es kann nicht nur nicht den Unterschied zwischen sagen ext2, ext3und ext4es kann auch nicht erkennen , ReiserFS oder XFS von diesen.
Warren Young
+1 für Mühe. Ich habe fdisk gemacht, bevor ich diese Frage gestellt habe. Mach weiter so.
user4951
1
Hier ist ein nützlicher Oneliner, um nur den Dateisystemtyp zu ermitteln:
Dies zeigte nicht die BSD-Antwort, die ich suchte. Ich hatte den Eindruck, dass diese Typbytes tatsächlich in der Partitionstabelle auf der Festplatte enthalten waren, nicht sicher. Es gibt nur Typ 85 für alle Linux-extfs-Typen, aber Linux erkennt OpenBSDs A6-Typ auch überhaupt nicht.
> 00 nicht verwendet 20 Willowsoft 66 NetWare 386 A9 NetBSD
> 01 DOS FAT-12 24 NEC DOS 67 MacOS X-Start von Novell AB
> 02 XENIX / 27 Win Recovery 68 Novell AF MacOS X HFS +
> 03 XENIX / usr 38 Theos 69 Novell B7 BSDI-Dateien *
> 04 DOS FAT-16 39 Plan 9 70 DiskSecure B8 BSDI-Swap
> 05 Erweitertes DOS 40 VENIX 286 75 PCIX BF Solaris
> 06 DOS> 32MB 41 Lin / Minux DR 80 Minix (alt) C0 CTOS
> 07 NTFS 42 LinuxSwap DR 81 Minix (neu) C1 DRDOS FAT12
> 08 AIX fs 43 Linux DR 82 Linux-Swap-C4-DRDOS 09 AIX / Coherent 4D QNX 4.2 Pri 83 Linux-Dateien * C6-DRDOS> = 32M
> 0A OS / 2 Bootmgr 4E QNX 4.2 Sec 84 OS / 2 versteckt C7 HPFS Disbled
> 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 Extended LBA 52 CP / M oder SysV 8E Linux LVM E3 SpeedStor
> 10 OPUS 53 DM 93 Amöbe FS E4 SpeedStor
> 11 OS / 2 versteckt 54 Ontrack 94 Amoeba BBT EB BeOS / i386
> 12 Compaq Diag. 55 EZ-Drive 99 Mylex EE EFI GPT
> 14 OS / 2 versteckt 56 Golden Bow 9F BSDI EF EFI Sys
> 16 OS / 2 versteckt 5C Priam A0 NotebookSave F1 SpeedStor
> 17 OS / 2 versteckt 61 SpeedStor A5 FreeBSD F2 DOS 3.3+ Sec
> 18 AST-Swap 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
Die Formatierung kann durcheinander geraten, es ist eine schöne Tabelle mit 70 Spalten Breite. Wenn Sie in OpenBSDs fdisk sind und getroffen haben? Wenn Sie nach dem Partitionstyp gefragt werden, erhalten Sie diesen. Die Typen werden angezeigt, wenn Sie die Partitionstabelle bearbeiten oder auflisten.
Antworten:
Wie kann ich feststellen, welche Art von Daten (welches Datenformat) in einer Datei enthalten ist?
→ Verwenden Sie das
file
Dienstprogramm.Hier möchten Sie das Format der Daten in einer Gerätedatei kennen, also müssen Sie das
-s
Flag übergeben, umfile
nicht nur zu sagen, dass es sich um eine Gerätedatei handelt, sondern um den Inhalt zu betrachten. Manchmal benötigen Sie das-L
Flag auch, wenn der Name der Gerätedatei eine symbolische Verknüpfung ist. Die Ausgabe sieht dann so aus:Bei dieser Beispielausgabe verfügt der erste Datenträger über eine Partition und der zweite Datenträger über zwei Partitionen.
/dev/sda1
ist ein ext4-Dateisystem,/dev/sdb1
ist ein ext2-Dateisystem und/dev/sdb2
ist etwas Swap-Speicherplatz (ca. 4 GB).Sie müssen diesen Befehl als root ausführen, da normale Benutzer Festplattenpartitionen möglicherweise nicht direkt lesen
sudo
.quelle
$ sudo file /dev/sda1
bekomme ich/dev/sda1: block special
file -s /dev/sd*
- mitsudo
vorne, das istsudo file -s /dev/sd*
.file -sL /dev/mapper/foo-bar
mit dem-L
Flag, um den Symlink zu dereferenzieren.Eine andere Option ist die Verwendung von
blkid
:Dies erkennt die meisten Dateisystemtypen und ähnliches wie verschlüsselte Partitionen.
Sie können auch nach Partitionen mit einem bestimmten Typ suchen:
quelle
ext2
Dateisystems mit gibtmount -t ext4
.blkid
wird davon nicht getäuscht.blkid
nicht so gut ist, wie nicht gemountete Laufwerkelsblk
zu erkennen (falls erforderlich)Sie können verwenden
sudo parted -l
Quelle
quelle
sudo apt-get install parted
(odergparted
) tun, wenn Sie auf Ubuntu oder einem anderen Debian-Derivat sind.ext2
Dateisystems mit gibtmount -t ext4
.parted
wird davon nicht getäuscht.mount -t auto
)Noch eine andere Art und Weise, da Sie wissen , Sie laufen einige Geschmack
ext?
, auf das Dateisystem des Feature - Liste zu sehen ist:Wenn Sie in der Liste Folgendes sehen:
extent
- Es ist ext4extent
, aberhas_journal
- es ist ext3extent
nochhas_journal
- es ist ext2Das
parted
und dieblkid
Antworten sind besser, wenn diese Heuristiken automatisch für Sie ausgeführt werden sollen. (Sie unterscheiden sich auch bei der Funktionsprüfung.) Sie können auch Nicht-ext?
Dateisysteme identifizieren .Diese Methode hat den Vorteil, dass Sie die geringen Unterschiede erkennen können.
Hierbei ist zu beachten, dass diese drei Dateisysteme vorwärtskompatibel und teilweise auch rückwärtskompatibel sind. In späteren Versionen werden nur Funktionen zu den älteren hinzugefügt.
Weitere Informationen hierzu finden Sie im ext4-HOWTO .
quelle
Versuchen Sie es mit
df -T
see mandf
für mehr Optionencfdisk
quelle
mount
basierende Antwort.mount -t ext4
über einext2
Dateisystemdf -T
berichtenext4
. Das heißt, es wird nur gelesen, was die Mount-Tabelle sagt, und nicht die Metadaten des Dateisystems, um dies herauszufinden.Überrascht ist das hier noch nicht. Nein
sudo
erforderlich:lsblk -f
quelle
sudo
dieFSTYPE
Spalte laufen lasse ist leer.lsblk
Spalten aufzulisten. .Verwenden Sie die Option -T, um den Dateisystemtyp zu drucken
quelle
fdisk -l
wird auflistenVerwendungszweck:
quelle
fdisk
zeigt auf dem System, das ich gerade benutze, nur den Partitionstyp, nicht den Dateisystemtyp an. Das heißt , es kann nicht nur nicht den Unterschied zwischen sagenext2
,ext3
undext4
es kann auch nicht erkennen , ReiserFS oder XFS von diesen.Hier ist ein nützlicher Oneliner, um nur den Dateisystemtyp zu ermitteln:
Ein Beispiellauf ist:
quelle
Dies zeigte nicht die BSD-Antwort, die ich suchte. Ich hatte den Eindruck, dass diese Typbytes tatsächlich in der Partitionstabelle auf der Festplatte enthalten waren, nicht sicher. Es gibt nur Typ 85 für alle Linux-extfs-Typen, aber Linux erkennt OpenBSDs A6-Typ auch überhaupt nicht.
Die Formatierung kann durcheinander geraten, es ist eine schöne Tabelle mit 70 Spalten Breite. Wenn Sie in OpenBSDs fdisk sind und getroffen haben? Wenn Sie nach dem Partitionstyp gefragt werden, erhalten Sie diesen. Die Typen werden angezeigt, wenn Sie die Partitionstabelle bearbeiten oder auflisten.
Partitionstypen auf Wikipedia: https://en.wikipedia.org/wiki/Partition_type
quelle