fdisk - brauche ich es oder kann ich ein Dateisystem direkt erstellen?

8

Ich habe gelesen, dass fdisk eine Partition erstellen kann, die eine physische Festplatte in mehrere logische Partitionen aufteilt.

Wenn ich beabsichtige, die gesamte Festplatte als Ganzes zu nutzen, ist es für mich immer noch notwendig

1) fdisk und erstellen Sie eine primäre Partition, die die Größe der gesamten Festplatte oder

2) Ich kann einfach weitermachen und mkfs.ext4 ohne fdisk?

3) Und warum - & gt;

Bearbeitet - & gt; Nachdem ich alle Kommentare (von einigen ja und nein) gelesen habe, denke ich, dass es gut sein wird, wenn jemand auf mich zeigen könnte, was fdisk tatsächlich tut? damit ich mehr darüber verstehe, warum wir es tatsächlich brauchen, im Vergleich zu dem, was wir nicht brauchen.

Ich habe versucht herumzugoogeln, aber die meisten Sites lehren Sie, wie man fdisk, aber nicht warum (oder die meisten, warum Dual-Boot-System erstellt wird), aber ich möchte wissen, warum es auch für eine einzelne Partition benötigt wird.

Ich habe mkfs auch direkt auf einer Festplatte ausprobiert und gemountet, um Daten und Dateien zu speichern (scheint kein Problem zu haben) - dies macht mich also noch neugieriger darauf, was fdisk tatsächlich mit der Speicherfestplatte macht.

Noob
quelle

Antworten:

5

Nein, tust du nicht brauchen es. Ihre Festplatte und Ihr Dateisystem funktionieren ohne Partitionstabelle einwandfrei. Einige ältere BSDs haben dies sogar standardmäßig getan, wenn Sie ausgewählt haben gefährlich engagiert .

Es wird jedoch aus Kompatibilitätsgründen dringend empfohlen.


Etwas ausführlicher:

Sie können mkfs.ext4 direkt unter / dev / sdb ausführen. Das wird funktionieren. Das können Sie dann problemlos montieren. ( mkfs.ext4 -F -F /dev/sdb ).

Sie können auf diese Weise eine bootfähige Festplatte einrichten. Zum Booten ist noch Code erforderlich. Das heißt, Sie müssen entweder das erste Bit der Festplatten überspringen. (z. B. der vom MBR klassisch genutzte Raum und die wenigen traditionellen Sektoren darüber hinaus). Das ist technisch immer noch nicht mit MBR, obwohl Sie gleich viel Platz verlieren.

Für ein modernes Setup machen diese wenigen Sektoren jedoch nur einen winzigen Bruchteil der Laufwerkskapazität aus. Ich empfehle daher die Verwendung von GPT (oder auf alten Systemen MBR). Aber du können verzichten.

Hennes
quelle
Es scheint, dass mkfs.ext4 einen -F-Parameter zu nimmt Macht Dateisystemerstellung, auch wenn das Ziel keine Partition ist oder das Zielgerät gemountet zu sein scheint! Ich denke, dies zeigt die damit verbundenen Risiken auf ...
David W
Einverstanden. Und "diese Option muss zweimal angegeben werden" ist eine sekundäre Vorsichtsmaßnahme.
Hennes
@ Hennes Ich habe meinen ursprünglichen Beitrag aktualisiert, hoffe, Sie werfen einen Blick
Noob
1
Vergleichen Sie fdisk mit dem Schreiben eines Index für ein Buch. Die Leute erwarten einen Index und werden verwirrt, wenn es keinen gibt. Ein Buch ohne Index und mit einer Geschichte / einem Kapitel wird noch funktionieren.
Hennes
1

Sie müssen eine Partitionstabelle erstellen, auch wenn Sie die gesamte physische Festplatte verwenden möchten. Stellen Sie sich die Partitionstabelle als "Inhaltsverzeichnis" für die Dateisysteme vor und identifizieren Sie die Start- und Stopppositionen jeder Partition sowie das dafür verwendete Dateisystem.

David W
quelle
auch wenn ich den speicher als raw device nutzen wollte? Ich brauche noch fdisk es? Ich habe über Fdisk lesen Partition erstellen, aber ich verstehe nicht, warum es benötigt wird
Noob
1
Wenn ich Ihnen eine Festplatte mit nur unformatierten Bytes und keinen weiteren Informationen übergebe, wie würden Sie sie interpretieren, um Daten daraus zu erhalten? Du konntest nicht. Es ist eine Vereinfachung, aber genau das macht eine Partitionstabelle. Es heißt: "Hier werden die Daten auf der Festplatte gespeichert (Start- / Stopp-Position / Zylinder / Spur), und hier wird beschrieben, wie sie organisiert sind (Dateisystem)."
David W
Eigentlich könntest du. Nehmen Sie eine Diskette mit. Wir gehen von einer Partition / einem Volume aus. Wir geben das verwendete Dateisystem an (da wir keinen MBR haben, der uns sagt, was verwendet wird, müssen wir dies manuell angeben oder in / etc / fstab eingeben) und lesen die Informationen für das Dateisystem. Klassisches Beispiel: Floppies und FAT12.
Hennes
1
In der Standardpartitionstabelle sind keine Informationen enthalten, die nicht im Volume-Startdatensatz des Dateisystems enthalten sind oder leicht zu finden sind. Jegliche Abhängigkeit der Software von einer MBR- / Partitionstabelle, um ein Dateisystem richtig zu erkennen und / oder von diesem zu starten, ist völlig künstlich.
kreemoweet
1
Nein, Sie brauchen keine Partitionstabelle und nein, die Dateisystemtyp wie in der Partitionstabelle angegeben, wird ignoriert. Stattdessen werden gut definierte Folgen von Bytes ("magic") verwendet, um den Dateisystemtyp zu bestimmen. Wenn Sie von der Festplatte booten möchten, ist das natürlich etwas anderes.
Daniel B
0

Sie könnte erstelle ein Dateisystem auf einem leeren Laufwerk, aber es wird selten funktionieren. Einige Pendrives sind so organisiert. Aber für die Festplatte will man nicht.

Wenn es sich um Ihr primäres / einziges Laufwerk handelt, ist es überhaupt nicht bootfähig, wenn Sie es als solches erstellen. Das BIOS liest den ersten Sektor des Laufwerks und führt ihn aus (springe zu seinem ersten Byte). Wollen Sie wirklich keine Dateisystem-Metadaten ausführen? Glücklicherweise ist dies nicht der Fall, da das BIOS Failsafe enthält. Die letzten beiden Bytes dieses Sektors müssen 0x55 0xaa sein, damit das BIOS das Laufwerk als bootfähig betrachtet. Und wenn Sie ein UEFI-System haben, ist es noch schlimmer, da für UEFI eine separate FAT-Partition erforderlich ist.

Wenn es sich um Ihre sekundäre Festplatte handelt, funktioniert dies möglicherweise, es wird jedoch davon abgeraten. Es wird keine automatische Erkennung durchgeführt. Die meisten Tools teilen Ihnen mit, dass die Festplatte nicht formatiert ist und eine Partitionierung erfordert (die Ihre Daten zerstört).

Dann nochmal ist manchmal ist dies möglich, aber auf sehr hackige Weise, was ein komplexes Wissen über die Organisation mehrerer Dateisysteme auf der Festplatte erfordert. Ich habe einmal eine Beschreibung eines Images gesehen, das auf eine bootfähige CD, ein bootfähiges USB-Laufwerk oder sogar von älteren Macs gebrannt werden kann, aber dies lag auf der Ebene von 'Wenn ich die Dateisystemlänge auf xxx setze, wenn es Wird von einer anderen Architektur ausgeführt, wird sie als harmloser Registervergleich ausgeführt.

Torinthiel
quelle
Erweiterte Informationen zum Pendrive-Beispiel: Es wird auch für Disketten und Pendrives ohne MBR verwendet, die oft als "Superfloppy-Format" bezeichnet werden.
Hennes
@Torinthiel, ich habe meinen ursprünglichen Beitrag aktualisiert, hoffe, Sie werfen einen Blick darauf
Noob
-1

Auch wenn Sie beabsichtigen, die gesamte Festplatte zu verwenden, muss diese partitioniert werden. In diesem Fall mit einer Partition, die so groß ist wie die Festplatte selbst (zumindest fast. Die Partitionstabelle nimmt etwas Platz ein. Weitere Informationen hierzu finden Sie weiter unten.)

Wenn ich Leuten, die normalerweise nur daran denken, das Konzept von Partitionen und Dateisystemen vorstelle "Festplatten, leer gegen voll" ist dies: Die Festplatte ist das Gebäude, während die Partition der eigentliche Raum ist. Sie formatieren eine Partition mit einem bestimmten Dateisystem und machen sie dann verwendbar. In der Gebäude-Analogie entspricht dies der Deklaration eines Raumtyps wie Küche oder Schlafzimmer (mit anderen Worten, wie man ihn verwendet).

Um zu Ihrer ursprünglichen Frage zurückzukehren, können Sie ein Dateisystem nicht auf einem nicht partitionierten Laufwerk ablegen, da die Partitionstabelle (die ersten 512 Byte des Laufwerks) Informationen darüber enthält, wo sich die Partitionen auf dem physischen Laufwerk befinden. Damit Sie ein Dateisystem haben, muss es an einer Stelle beginnen, auf die die Partitionstabelle verweisen kann, und es kann nicht auf ein Dateisystem verweisen, das keinen definierten Speicherplatz hat, d. H. Die Partition.

Und wenn wir die Partitionstabelle in der Gebäude-Analogie platzieren, würde das wohl einer Blaupause des Gebäudes entsprechen.

Aktualisieren entsprechend Ihrer Frage bearbeiten: Mit fdisk können Sie bestimmte Aspekte einer Partition auswählen, z. B. Größe, Typ und physischen Speicherort, wie Sie sicher bereits wissen. Fdisk übersetzt diese dann in einen Partitionstabelleneintrag. Grundsätzlich wird dafür gesorgt, dass die Partitionstabelle mit einer "Liste" aller Partitionen auf der Festplatte auf dem neuesten Stand ist, wobei jedes Element in der Liste angibt, welche Partition sich wo befindet und welcher Typ es ist. Auf diese Weise weiß ein Betriebssystem, wo auf Partitionen zugegriffen werden kann.

Jarmund
quelle
1
Nee. Es muss nicht sein. Ich habe ohne verwendet. Es ist zwar immer noch sehr zu empfehlen, aber Sie können darauf verzichten.
Hennes
@Jarmund Ich habe meinen ursprünglichen Beitrag aktualisiert, hoffe, Sie werfen einen Blick darauf
Noob