Marc Reichelt: Intelligentes Backup mit dd?

Hallo an alle,

die Software "dd" unter Linux macht ja nichts anderes, als Byte für Byte auszulesen und zu schreiben.
Angenommen, ich habe nun eine Festplatte mit 120 GB, die beispielsweise folgendermaßen partitioniert ist:

/dev/hda1     SWAP     1GB
/dev/hda2     ext3     119GB

Nun ist die Partition /dev/hda2 aber beispielsweise nur zu 2 GB benutzt - das weiß dd jedoch nicht.
Wenn ich nun den Befehl
  dd if=/dev/hda of=festplatte
aufrufe werden - logischerweise - alle Bytes ausgelesen und in der Datei "festplatte" gespeichert. Natürlich kann man die Daten noch durch gzip schicken und komprimieren, aber dieser Aufruf dauert schon _sehr_ lange.

Gibt es ein weiteres Tool, das die verwendeten Daten einer Partition herausfindet?

Oder generell gefragt: Welche Open Source-Lösung ist am Besten geeignet, um flink ein Byte-für-Byte-Backup zu machen - ohne dabei nicht benötigte Bytes zu kopieren?
Die kommerziellen Lösungen machen ja etwas in dieser Richtung.

Grüße

Marc Reichelt || http://www.marcreichelt.de/

--
Linux is like a wigwam - no windows, no gates and an Apache inside!
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
  1. Moin!

    Gibt es ein weiteres Tool, das die verwendeten Daten einer Partition herausfindet?

    Ja. Die INODE-Liste.

    Also, wenn Du den Inhalt der Platte kopieren willst nimm cp.
    Willst Du ein Abbild nimm dd. Das beachtet das Datei-System aber gar nicht, soll es ausdrücklich auch nicht.

    Willst Du ein Backup, dann nimm:
    -sync
    -tar
    -cpio

    oder eines der entwickelteren Tools.

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix®

    --
    Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development
    1. Ich empfehle Mondoarchiv.

      Gruß
      Reiner

  2. Moin!

    Oder generell gefragt: Welche Open Source-Lösung ist am Besten geeignet, um flink ein Byte-für-Byte-Backup zu machen - ohne dabei nicht benötigte Bytes zu kopieren?

    Ein Byte-für-Byte-Backup MUSS alle Bytes kopieren (ob nun komprimiert oder nicht, ist egal). Ansonsten wäre es kein Byte-für-Byte-Backup.

    Das, was du suchst, ist KEIN Byte-für-Byte-Backup. Offensichtlich willst du ein Backup, welches die Existenz eines Dateisystems voraussetzt, sowie darin existierende Dateien, die u.U. Platz einnehmen - und nur den durch diese Dateien belegten Speicherplatz willst du sichern.

    Im Prinzip willst du also alle im Dateisystem vorhandenen Dateien kopieren.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. Hallo Sven,

      Im Prinzip willst du also alle im Dateisystem vorhandenen Dateien kopieren.

      Nun ja, nicht ganz.
      Ich traue einem Backup, welches ich mit tar oder cp erstelle, nicht ganz über den Weg. Oder sollte ich das können? Und werden Hard Links ausgewertet?

      Was ich haben möchte, ist ein "Festplatten-Image", welches ich einfach mit dd zurückspielen kann, und nur die benötigten Bereiche enthält.
      Allerdings kopiert mir dd ja auch die nicht benötigten Bereiche.

      Angenommen (stark vereinfacht), eine Partition sieht so aus:

      JJJJJNNNNNNNNNN

      Wobei J für einen benutzen und N für einen nicht benötigten Sektor steht - dann könnte man für "N" auch immer nur Nullen einfügen, obwohl dort andere (alte, aber nicht mehr benutzte und nicht mehr erreichbare) Daten stehen - und diese Nullen lassen sich ja sehr gut komprimieren.
      Dass dd dies vermutlich nicht leisten kann, ist klar - aber eventuell gibt es ein anderes Tool, das so vorgeht?
      Das Problem an dieser Sache ist: Dieses Tool müsste sich mit dem jeweils verwendeten Dateisystem auskennen.

      Grüße

      Marc Reichelt || http://www.marcreichelt.de/

      --
      Linux is like a wigwam - no windows, no gates and an Apache inside!
      Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
      1. Hallo Marc,

        Ich traue einem Backup, welches ich mit tar oder cp erstelle, nicht ganz über den Weg. Oder sollte ich das können? Und werden Hard Links ausgewertet?

        Soweit ich weiß, kommt tar mit Hard Links klar. Aber warum verwendest du eigentlich keine symbolischen Links?

        Schöne Grüße,

        Johannes

        1. Hallo Johannes,

          Ich traue einem Backup, welches ich mit tar oder cp erstelle, nicht ganz über den Weg. Oder sollte ich das können? Und werden Hard Links ausgewertet?

          Soweit ich weiß, kommt tar mit Hard Links klar. Aber warum verwendest du eigentlich keine symbolischen Links?

          Ich selbst verwende absichtlich keine Hardlinks - aber wenn das Dateisystem irgendwo welche hat, dann sollte tar die auch ordentlich berücksichtigen. :-)
          Mir geht es dabei um eine allgemein benutzbare Lösung.

          Grüße

          Marc Reichelt || http://www.marcreichelt.de/

          --
          Linux is like a wigwam - no windows, no gates and an Apache inside!
          Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
  3. Ich glaube was du suchst ist partimage

    MfG,
    Pot

    1. Hallo Pot,

      Ich glaube was du suchst ist partimage

      Ja, das scheint das Tool zu sein, das ich benötige.
      Auf der Startseite steht bereits:
      "Partition Image will only copy data from the used portions of the partition. For speed and efficiency, free blocks are not written to the image file. This is unlike the 'dd' command, which also copies empty blocks."

      Genau das habe ich gesucht - herzlichen Dank! :-)

      Grüße

      Marc Reichelt || http://www.marcreichelt.de/

      --
      Linux is like a wigwam - no windows, no gates and an Apache inside!
      Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
      1. Hallo Marc,

        Ja, das scheint das Tool zu sein, das ich benötige.
        Auf der Startseite steht bereits:

        nur noch ein Tipp:
        SystemRescueCd und ein dazu passender - wenn auch bereits zwei Jahre alter - Artikel im Linux NetMag.

        Freundliche Grüße

        Vinzenz

        1. Hi,

          Ja, das scheint das Tool zu sein, das ich benötige.
          Auf der Startseite steht bereits:

          nur noch ein Tipp:
          SystemRescueCd und ein dazu passender - wenn auch bereits zwei Jahre alter - Artikel im Linux NetMag.

          es gab vor kurzem (ich glaube, nur in der englischsprachigen Ausgabe) in dem Linux-Magazin einen Artikel von Michael Schilli (http://www.perlmeister.com) dazu einen schönen Artikel.
          Ich habe es auf der Website nicht gefunden, darf er vielleicht (noch) nicht veröffentlichen.
          Ansonsten siehe mein Tip unten: mittels Mindi+Mondo bzw. Mondoarchive+Monorescue läßt sich das auch schön (allerdings sehr lahm!) aus einem Livesystem bewerkstelligen!

          Gruß
          Reiner