Ein Artikel zum Verständnis von Linux-Festplatten und Festplattenpartitionen

Ein Artikel zum Verständnis von Linux-Festplatten und Festplattenpartitionen

Vorwort

Alle Hardwaregeräte im Linux-System werden in Form von Dateien dargestellt und verwendet. Wir nennen diese Dateien Gerätedateien. Die Gerätedateien, die der Festplatte entsprechen, werden im Allgemeinen als Blockgerätedateien bezeichnet.

Dieser Artikel erläutert, wie Festplattengeräte im Linux-System dargestellt werden und wie Festplattenpartitionen erstellt werden.

Warum mehrere Partitionen haben?

Verhindern Sie Datenverlust: Wenn das System nur über eine Partition verfügt und diese Partition beschädigt wird, verliert der Benutzer alle Daten.

Erhöhen Sie die Effizienz der Festplattenspeichernutzung: Sie können Partitionen mit unterschiedlichen Blockgrößen formatieren. Wenn es viele 1K-Dateien gibt und die Blockgröße der Festplattenpartition 4K beträgt, werden für jede gespeicherte Datei 3K Speicherplatz verschwendet. Zu diesem Zeitpunkt müssen wir den Durchschnittswert dieser Dateigrößen nehmen, um die Blockgröße zu teilen.

Bis zum Datenlimit ansteigende Datenmengen führen nicht zum Absturz des Systems: Durch die Trennung von Benutzer- und Systemdaten können Sie vermeiden, dass Benutzerdaten die gesamte Festplatte füllen und zum Absturz des Systems führen.

Datenträgerklassifizierung

Zu den gebräuchlicheren Datenträgertypen zählen SCSI-Festplatten, die in Servern verwendet werden, und SATA-Festplatten im Verbrauchermarkt, und natürlich die verschiedenen Solid-State-Laufwerke, die derzeit beliebt sind.

SCSI-Festplatte

Eine SCSI-Festplatte ist eine Festplatte, die die SCSI-Schnittstelle verwendet. Aufgrund seiner guten Leistung und hohen Stabilität wird es häufig auf Servern verwendet. Gleichzeitig ist es sehr teuer. Aufgrund seines hohen Preises ist es auf gewöhnlichen PCs selten zu finden. SCSI-Festplatten verwenden eine 50-polige Schnittstelle, die einer normalen Festplattenschnittstelle ähnelt (das folgende Bild stammt aus dem Internet):

SATA-Festplatte

Die Festplatte mit SATA-Anschluss (Serial ATA) wird auch als Festplatte mit seriellem Anschluss bezeichnet. Serial ATA verwendet den seriellen Verbindungsmodus. Der Serial-ATA-Bus verwendet eingebettete Taktsignale und verfügt über eine stärkere Fehlerkorrekturfähigkeit. Im Vergleich zur Vergangenheit besteht der größte Unterschied darin, dass er die Übertragungsanweisungen (nicht nur Daten) überprüfen kann. Wenn Fehler gefunden werden, werden sie automatisch korrigiert, was die Zuverlässigkeit der Datenübertragung erheblich verbessert. Die serielle Schnittstelle bietet außerdem die Vorteile einer einfachen Struktur und Hot-Swap-Unterstützung (das folgende Bild stammt aus dem Internet):

Solid-State-Laufwerk

Eine Solid-State-Disk, allgemein als SSD-Festplatte bezeichnet, ist eine Festplatte aus einem elektronischen Festkörper-Speicherchip-Array, das aus einer Steuereinheit und einer Speichereinheit (FLASH-Chip, DRAM-Chip) besteht. Sein Hauptmerkmal besteht darin, dass es nicht über die mechanische Struktur einer herkömmlichen Festplatte verfügt und über eine sehr schnelle Lese- und Schreibgeschwindigkeit verfügt (das folgende Bild stammt aus dem Internet):

Darstellung von Festplattengeräten in Linux

Die Benennungsregeln für Festplattengerätedateien in Linux-Systemen lauten:

Hauptgerätenummer + Nebengerätenummer + Festplattenpartitionsnummer

Bei derzeit gängigen Datenträgern wird es im Allgemeinen wie folgt ausgedrückt:

sd[az]x

Die Hauptgerätenummer stellt den Gerätetyp dar. Dieselbe Hauptgerätenummer weist auf denselben Gerätetyp hin. Die Hauptgerätenummer der aktuellen gemeinsamen Festplatte ist sd.

Die untergeordnete Gerätenummer stellt die Seriennummer unter Geräten desselben Typs dar und wird durch „az“ dargestellt. Beispielsweise stellt /dev/sda die erste Festplatte dar und /dev/sdb die zweite Festplatte.

x steht für die Festplattenpartitionsnummer. Auf jeder Festplatte können mehrere Partitionen vorhanden sein. Linux verwendet für jede Partition /dev/sdbx zur Darstellung, wobei x die x-te Partition der zweiten Festplatte darstellt.

Wie in der folgenden Abbildung dargestellt:

Es gibt vier Festplatten im System: /dev/sda, /dev/sdb, /dev/sdc und /dev/sdd. Auf /dev/sda werden drei Partitionen erstellt, nämlich /dev/sda1, /dev/sda2 und /dev/sda5; /dev/sdb hat nur eine Partition /dev/sdb1. /dev/sdc und /dev/sdd sind noch nicht partitioniert (oder es gibt nur eine Partition und der Partitionsname ist der gleiche wie der Festplattenname).

Festplattenpartitionierung

Es gibt wahrscheinlich mehrere Gründe für die Erstellung von Festplattenpartitionen:

  • Verbessern Sie die Datensicherheit (Datenschäden in einer Partition wirken sich nicht auf Daten in anderen Partitionen aus)
  • Unterstützt die Installation mehrerer Betriebssysteme
  • Mehrere kleine Partitionen verbessern die Leistung im Vergleich zu einer großen Partition
  • Bessere Organisation der Daten

Die Festplattenpartitionen bestehen aus primären Partitionen, erweiterten Partitionen und logischen Partitionen. Auf einer Festplatte beträgt die maximale Anzahl primärer Partitionen 4. Die erweiterte Partition ist auch eine primäre Partition und es kann höchstens eine erweiterte Partition geben, aber auf der erweiterten Partition können mehrere logische Partitionen erstellt werden. Daher reicht der Bereich der primären Partitionen (einschließlich erweiterter Partitionen) von 1 bis 4, und logische Partitionen beginnen bei 5. Für logische Partitionen schreibt Linux vor, dass sie auf erweiterten Partitionen und nicht auf primären Partitionen erstellt werden müssen.

Die primäre Partition wird zum Starten des Betriebssystems verwendet. Sie speichert hauptsächlich das Start- oder Bootprogramm des Betriebssystems. Daher wird empfohlen, das Bootprogramm des Betriebssystems in der primären Partition zu platzieren. Beispielsweise wird die /boot-Partition von Linux am besten auf der primären Partition platziert:

Eine erweiterte Partition ist nichts anderes als ein „Container“ für logische Partitionen. Tatsächlich werden zur Datenspeicherung nur primäre Partitionen und logische Partitionen verwendet, sodass die Daten in den logischen Partitionen der Festplatte gespeichert werden können.

Mit dem Befehl fdisk können wir die Informationen zur Festplattenpartition anzeigen:

$ sudo fdisk -l /dev/sda 

Die ersten Zeilen der Ausgabe enthalten grundlegende Informationen zur Festplatte, beispielsweise die Gesamtgröße von 80 GB, die Gesamtzahl der Sektoren, die Größe jedes Sektors usw. Das rote Feld enthält die Partitionsinformationen, die für uns wichtiger sind:

  • In der ersten Spalte „Gerät“ wird der Gerätedateiname angezeigt, der der Festplattenpartition entspricht.
  • In der zweiten Spalte Boot wird angezeigt, ob es sich um eine Bootpartition handelt. In der Abbildung oben ist /dev/sda1 die Bootpartition.
  • Die dritte Spalte „Start“ gibt die Startposition der Festplattenpartition an.
  • Die vierte Spalte „Ende“ gibt die Endposition der Festplattenpartition an.
  • Die fünfte Spalte „Sektoren“ gibt die Anzahl der von der Partition belegten Sektoren an.
  • Die sechste Spalte „Größe“ zeigt die Größe der Partition.
  • Die siebte und achte Spalte zeigen den gleichen Inhalt an, nämlich die numerische ID bzw. ihre Textbeschreibung. In der Spalte „ID“ wird die der Festplattenpartition entsprechende ID angezeigt. Die der Partition entsprechende ID-Nummer variiert je nach Partition. Unter Linux steht 83 für primäre Partitionen und logische Partitionen, 5 für erweiterte Partitionen, 8e für LVM-Partitionen, 82 für Swap-Partitionen und 7 für NTFS-Partitionen.

Die Informationen in der obigen Abbildung zeigen, dass: /dev/sda1 eine primäre Partition ist und als Boot-Partition verwendet wird; /dev/sda2 eine erweiterte Partition mit nur einer logischen Partition ist, /dev/sda5, was durch die Tatsache bewiesen werden kann, dass die beiden Partitionen gleich groß sind.

Verwenden Sie fdisk, um die Festplatte zu partitionieren

fdisk ist ein leistungsstarkes Tool zur Verwaltung von Festplattenpartitionen im Linux-System. Es kann die Festplattennutzung überwachen und auch zum Verwalten von Festplattenpartitionen verwendet werden. Dieser Artikel beschreibt nur, wie man mit fdisk neue Festplattenpartitionen erstellt.

Angenommen, unserem Linux-System wird eine neue Festplatte hinzugefügt und der entsprechende Gerätename des Systems lautet /dev/sdd. Jetzt partitionieren wir die Festplatte mit dem Befehl fdisk.

$ sudo fdisk /dev/sdd 

Geben Sie den Befehl n ein, um eine neue Partition zu erstellen:

Gemäß den obigen Eingabeaufforderungen wählen wir p aus, um eine primäre Partition zu erstellen, und werden dann aufgefordert, die Partitionsnummer einzugeben:

Primäre Partitionen sind von 1 bis 4 nummeriert und wir haben hier 1 eingegeben. Als nächstes legen Sie die Partitionsgröße fest:

Die Größe einer Partition wird durch Festlegen der Sektoren festgelegt, wo die Partition beginnt und endet. Wenn Sie hier zweimal die Eingabetaste drücken, wird die gesamte Festplatte in eine Partition aufgeteilt, d. h. der Container der gesamten Festplatte wird in eine Partition aufgeteilt. Diese einfache Partition ist fast fertig. Beachten Sie, dass die Partitionsinformationen noch nicht auf die Festplatte geschrieben wurden. Sie können Ihre Meinung hier noch ändern. Wenn Sie die Ausführung der obigen Partition bestätigen, führen Sie einfach den Befehl w aus:

An diesem Punkt ist der Partitionierungsvorgang abgeschlossen und wir können die Partitionierungsergebnisse mit dem folgenden Befehl anzeigen:

$ sudo fdisk -l /dev/sdd 

Wenn Sie den obigen Ausführungsprozess als problematisch empfinden, können Sie mit der folgenden Befehlszeile denselben Effekt erzielen:

$ (echo n; echo p; echo 1; echo ; echo ; echo w) | sudo fdisk /dev/sdd

Ändern des Partitionstyps

Der oben erstellte Standardpartitionstyp ist 83 (Linux). Was ist, wenn Sie eine Partition vom Typ 8e (Linux LVM) wünschen? Wir können weiterhin den Befehl fdisk verwenden, um den Partitionstyp zu ändern. Geben Sie dieses Mal den Befehl t ein, um den Partitionstyp zu ändern:

Als nächstes können Sie die zu ändernde Partitionsnummer auswählen. Wir haben nur eine Partition, daher ist die Standardeinstellung 1.

Als nächstes können wir den Befehl L verwenden, um die vom Befehl fdisk unterstützten Partitionstypen anzuzeigen:

Wir müssen LVM erstellen, also verwenden wir den LVM-Typcode 8e:

Geben Sie abschließend den Befehl w ein, um die Änderungen zu bestätigen. Überprüfen Sie die Partitionsinformationen von /dev/sdd erneut. Der Partitionstyp hat sich zu Linux LVM geändert:

Zusammenfassen

Die Partitionierung ist die Grundlage für die Verwendung einer Festplatte. Nachdem die Partitionierung abgeschlossen ist, muss die Partition formatiert und das formatierte Dateisystem in das Linux-System eingebunden werden, bevor Dateien gespeichert werden können.

Das könnte Sie auch interessieren:
  • Analyse des Prinzips und der Methode zur Implementierung einer Linux-Festplattenpartition
  • So implementieren Sie Festplattenmounting-, Partitionierungs- und Kapazitätserweiterungsvorgänge unter Linux
  • Formatieren der Linux-Systemfestplatte und manuelles Hinzufügen einer Swap-Partition
  • Detaillierte Erläuterung des Speicherplatzes für die Root-Partitionsfestplattenerweiterung der virtuellen Linux-Maschine
  • Praktische Beispiele zur Festplattenpartitionierung unter Linux (unbedingt lesen)
  • Detaillierter Prozess der Partitionierung, Formatierung, Einbindung und Deinstallation von LINUX-Festplatten
  • So verwenden Sie die GPT-Partitionierung auf Linux-Festplatten größer als 2T
  • Analyse der Implementierungsschritte für geteilte Festplattenpartitionen unter Linux

<<:  Detailliertes Installationstutorial für die MySQL 5.6.36-Version für Windows x64

>>:  Probleme und Lösungen bei der Verwendung der TweenMax-Animationsbibliothek in Angular

Artikel empfehlen

js zum Implementieren von Operationen zum Hinzufügen und Löschen von Tabellen

In diesem Artikelbeispiel wird der spezifische JS...

MySQL-Integritätsbeschränkungen – Definition und Beispiel-Tutorial

Inhaltsverzeichnis Integritätsbeschränkungen Defi...

12 nützliche Array-Tricks in JavaScript

Inhaltsverzeichnis Array-Deduplizierung 1. from()...

Installieren Sie .NET 6.0 im CentOS-System mithilfe eines Cloud-Servers

.NET SDK-Download-Link https://dotnet.microsoft.c...

Schritte zur Bereitstellungsmethode für Docker Stack für Webcluster

Docker wird immer ausgereifter und seine Funktion...

Zusammenfassung der Zeilenumbruchprobleme bei Textbereichen in HTML

Kürzlich stieß ich auf das Problem, ob die Daten b...

Beste Möglichkeit, den Schlüssel im JSON-Objekt zu ersetzen

JSON (JavaScript Object Notation, JS Object Notat...

Einführung in die CSS-Stilklassifizierung (Grundkenntnisse)

Klassifizierung von CSS-Stilen 1. Interner Stil -...

Vue implementiert ein verschiebbares Baumstrukturdiagramm

Inhaltsverzeichnis Rekursive Vue-Komponente Drag-...

MySQL Serie 8 MySQL Server-Variablen

Tutorial-Reihe MySQL-Reihe: Grundlegende Konzepte...