Datenträgerverwaltung

Linux dd-Befehl

Linux dd-Befehl
„dd“ ist ein Linux-CLI-Tool. Jetzt ist die aktuelle Version von „dd“ Teil der GNU-Coreutils, die jedes einzelne UNIX/Linux-System bietet. Der Hauptzweck dieses Tools ist das Konvertieren und Kopieren von Dateien. Es ist jedoch ganz anders als andere Tools zum Kopieren von Dateien wie "cp".

dd-Funktionen

„dd“ kann für verschiedene Zwecke verwendet werden:

dd-Nutzung

Hier sind einige der häufigsten und interessantesten Verwendungen von „dd“. Natürlich ist „dd“ weitaus leistungsfähiger als diese Dinge. Wenn Sie interessiert sind, empfehle ich immer, sich andere ausführliche Ressourcen zu "dd" anzusehen.

Ort

welches dd

Wie die Ausgabe anzeigt, wird jedes Mal, wenn „dd“ ausgeführt wird, von „/usr/bin/dd“ gestartet.

Grundlegende Verwendung

Hier ist die Struktur, der „dd“ folgt.

dd if= von=

Lassen Sie uns zum Beispiel eine Datei mit zufälligen Daten erstellen. Es gibt einige eingebaute spezielle Dateien in Linux, die als normale Dateien erscheinen, wie „/dev/zero“, das einen kontinuierlichen NULL-Stream erzeugt, „/dev/random“, das kontinuierliche Zufallsdaten erzeugt.

dd if=/dev/urandom of=~/Desktop/random.txt bs=1M count=5

Die allerersten Optionen sind selbsterklärend. Es bedeutet „/dev/urandom“ als Datenquelle und „~/Desktop/random.txt“ als Ziel. Welche anderen Möglichkeiten gibt es??

„bs“ steht hier für „Blockgröße“. Wenn dd Daten schreibt, schreibt es in Blöcken. Mit dieser Option kann die Blockgröße definiert werden. In diesem Fall sagt der Wert „1M“ aus, dass die Blockgröße 1 Megabyte beträgt.

„count“ bestimmt die Anzahl der zu schreibenden Blöcke. Wenn nicht festgelegt, setzt „dd“ den Schreibvorgang fort, bis der Eingabestrom endet. In diesem Fall wird „/dev/urandom“ unendlich weiter Daten generieren, daher war diese Option in diesem Beispiel von größter Bedeutung.

Datensicherung

Mit dieser Methode kann „dd“ verwendet werden, um die Daten eines gesamten Laufwerks zu sichern! Sie müssen nur das Laufwerk als Quelle angeben.

dd if= von=

Wenn Sie solche Aktionen durchführen, stellen Sie sicher, dass Ihre Quelle kein Verzeichnis ist. „dd“ hat keine Ahnung, wie ein Verzeichnis verarbeitet wird, daher wird es nicht funktionieren.

„dd“ kann nur mit Dateien arbeiten. Wenn Sie also ein Verzeichnis sichern müssen, verwenden Sie zuerst tar, um es zu archivieren, und verwenden Sie dann "dd", um es auf eine Datei zu übertragen.

tar cvJf-Demo.Teer.xz DemoDir/

dd if=demo.Teer.xz von=~/Desktop/Backup.img

Im nächsten Beispiel führen wir einen sehr sensiblen Vorgang durch: Sichern des MBR! Wenn Ihr System nun MBR (Master Boot Record) verwendet, befindet es sich in den ersten 512 Byte der Systemfestplatte: 466 Byte für den Bootloader, andere für die Partitionstabelle.

Führen Sie diesen Befehl aus, um den MBR-Eintrag zu sichern.

dd if=/dev/sda of=~/Desktop/mbr.img bs=512 count=1

Datenwiederherstellung

Für jede Sicherung ist die Art der Wiederherstellung der Daten erforderlich. Im Fall von „dd“ ist der Wiederherstellungsprozess etwas anders als bei allen anderen Tools. Sie müssen die Sicherungsdatei auf einen ähnlichen Ordner/eine ähnliche Partition/ein ähnliches Gerät schreiben.

Ich habe zum Beispiel dieses „Backup“.img“-Datei mit der „demo.Teer.xz“-Datei. Um es zu extrahieren, habe ich den folgenden Befehl verwendet.

dd if=backup.img von=demo.Teer.xz

Stellen Sie erneut sicher, dass Sie die Ausgabe in eine Datei schreiben. „dd“ ist nicht gut mit Verzeichnissen, denk dran?

Wenn „dd“ verwendet wurde, um ein Backup einer Partition zu erstellen, würde die Wiederherstellung den folgenden Befehl erfordern:.

dd if= von=

Wie wäre es beispielsweise mit der Wiederherstellung des MBR, den wir zuvor gesichert haben??

dd if=mbr.Bild von=/dev/sda

„dd“-Optionen

Irgendwann in diesem Handbuch waren Sie mit einigen „dd“-Optionen wie „bs“ und „count“ konfrontiert, richtig? Naja, davon gibt es noch mehr. Hier ist eine kurze Liste, was sie sind und wie man sie verwendet.

  • obs: Bestimmt die Größe der gleichzeitig zu schreibenden Daten. Der Standardwert ist 512 Byte.

  • cbs: Bestimmt die Größe der gleichzeitig zu konvertierenden Daten.

  • ibs: Bestimmt die Größe der jeweils zu lesenden Daten.
  • count: Nur N Blöcke kopieren

  • seek: Überspringe N Blöcke am Anfang der Ausgabe

  • skip: N Blöcke am Anfang der Eingabe überspringen

conv=ascii: Konvertiert die Dateieingabe von EBCDIC in ASCII

conv=ebcdic: Konvertiert die Dateieingabe von ASCII nach EBCDIC

conv=ibm: konvertiert die Dateieingabe von ASCII in alternatives EBCDIC

conv=lcase: konvertiert die Dateieingabe von Großbuchstaben in Kleinbuchstaben

conv=ucase: konvertiert die Dateieingabe von Kleinbuchstaben in Großbuchstaben

conv=swab: Tausche jedes Eingabepaar

Zusätzliche Optionen:

  • nocreat: Die Ausgabedatei nicht erstellen
  • notruc: Die Ausgabedatei nicht abschneiden
  • noerror: Den Vorgang fortsetzen, auch wenn ein Fehler aufgetreten ist
  • fdatasync: Daten in den physischen Speicher schreiben, bevor der Prozess abgeschlossen ist
  • fsync: Ähnlich wie fdatasync, schreibt aber auch die Metadaten
  • iflag: Optimieren Sie die Operation basierend auf verschiedenen Flags. Zu den verfügbaren Flags gehören: anhängen an Daten an die Ausgabe anhängen

Zusätzliche Optionen:

  • Verzeichnis: Wenn Sie auf ein Verzeichnis zugreifen, schlägt der Vorgang fehl
  • dsync: Synchronisierte E/A für Daten
  • sync: Ähnlich wie dsync, enthält aber Metadaten
  • nocache: Anfragen zum Löschen des Caches.
  • nofollow: Folge keinem Symlink

Zusätzliche Optionen:

  • count_bytes: Ähnlich wie „count=N“
  • seek_bytes: Ähnlich wie „seek=N“
  • skip_bytes: Ähnlich wie „skip=N“

Wie Sie gesehen haben, ist es möglich, mehrere Flags und Optionen in einem einzigen „dd“-Befehl zu stapeln, um das Betriebsverhalten zu optimieren.

dd if=demo.txt of=demo1.txt bs=10 count=100 conv=ebcdic
iflag=append,nocache,nofollow,sync

Abschließende Gedanken

Der Workflow von „dd“ ist ziemlich einfach. Damit „dd“ jedoch wirklich glänzen kann, liegt es an Ihnen. Es gibt unzählige Möglichkeiten, wie „dd“ auf kreative Weise verwendet werden kann, um clevere Interaktionen durchzuführen.

Ausführliche Informationen zu „dd“ und all seinen Optionen finden Sie auf der man and info page.

Mann dd
Linker Mausklick funktioniert nicht unter Windows 10
Wenn Sie eine dedizierte Maus mit Ihrem Laptop oder Desktop-Computer verwenden, aber die linker Mausklick funktioniert nicht unter Windows 10/8/7 aus ...
Cursor springt oder bewegt sich zufällig während der Eingabe in Windows 10
Wenn Sie feststellen, dass Ihr Mauszeiger während der Eingabe auf einem Windows-Laptop oder -Computer automatisch und zufällig springt oder sich von s...
So kehren Sie die Scrollrichtung von Maus und Touchpads in Windows 10 um
Maus und Touchpads machen das Rechnen nicht nur einfach, sondern auch effizienter und weniger zeitaufwendig. Wir können uns ein Leben ohne diese Gerät...