it-swarm.com.de

Wie identifiziere und ersetze ich beschädigte Dateien in einer beschädigten Ubuntu-ISO?

Das ist also nicht gerade ein Problem beim Ausführen von Ubuntu, sondern bei der Installation.

Jedes Mal, wenn ich versuche, die Ubuntu-ISO (von einer beliebigen Quelle) herunterzuladen, scheint sie beschädigt zu werden. Das heißt, die MD5-Summen sind niemals korrekt.

Die Ubuntu-ISO-Dateien werden mit einer Datei geliefert, in der alle ISO-Dateien und ihre jeweiligen MD5SUMs aufgelistet sind.

Was ich tun möchte, ist, diese Datei zu durchlaufen und sie mit ihren Dateien in der ISO zu vergleichen und herauszufinden, welche Dateien beschädigt sind, in der Hoffnung, dass ich die beschädigten Dateien aus einer der anderen ISO-Dateien extrahieren kann, um eine zu erstellen funktionierender Installer.

Aber ich weiß nicht, wie ich das machen soll, und natürlich muss ich das unter Windows 7 machen, um es noch schlimmer zu machen.

Weiß jemand, wie man das behebt?

14
Hailwood

Eigentlich weiß ich, welche Datei beschädigt ist

Der Versuch, Dateien aus mehreren beschädigten ISO-Images zu einem einzigen guten ISO-Image zu kombinieren, ist keine gute Lösung für dieses Problem. Hier ist der Grund.

Fast alleDaten im ISO-Image gehören zunur einerDatei, casper/filesystem.squashfs.

Auf einer Ubuntu-Desktop-CD oder -DVD, also einem ISO-Image. Bei einem Server-CD-Image oder einem alternativen CD-Image ist dies eine andere Geschichte.

Nautilus properties for filesystem.squashfs on an Ubuntu 12.10 i386 desktop CD

Daher kann ich Ihnen jetzt sagen, welche Datei auf jeder der von Ihnen heruntergeladenen ISO-Dateien mit ziemlicher Sicherheit beschädigt ist: diese Datei auf allen. Wenn in einer Ubuntu-ISO etwas beschädigt ist, befinden sich die fehlerhaften Bytes fast immer irgendwo dort.

filesystem.squashfs istsich selbstein Disk-Image; Es wird beim Booten des Systems auf der Live-CD eingebunden. Sie könnten es möglicherweise aus dem ISO extrahieren und danndessenInhalt extrahieren, prüfen, was beschädigt ist, und die beschädigten Dateien ersetzen. Während Sie ein Squashfs-Dateisystem unter Windows mounten oder extrahieren können, ist dies wahrscheinlich keine einfache Aufgabe. Da dieses Image komprimiert ist, gibt es keine Garantie dafür, dass geringfügige Beschädigungen in der enthaltenen ISO nicht mehrere Dateien betreffen.

Wenn Sie außerdem versucht haben, das ISO-Imagemehrmals herunterzuladenund es ist immer fehlerhaft, können Sie sich ziemlich sicher sein, dass es nicht nurminor istkorruption. Möglicherweise müssen Sie Hunderte oder Tausende von Dateien ersetzen, wenn Sie dies auf diese Weise versuchen.

Stattdessen sollten Sie das ISO-Image mit einer zuverlässigeren Methode herunterladen.

Bequemerweise ähnelt einer von ihnen (zsync) dem, was Sie denken, mit der Ausnahme, dass nur die erforderlichen Teile der ISO-Dateien und nicht nur die darin enthaltenen erforderlichen Dateien heruntergeladen werden.

Stellen Sie sicher, dass Sie mit dem richtigen MD5-Hash verglichen werden

Das erste, was Sie tun müssen, wenn Ihre MD5-Summe falsch ist -insbesondere, wenn sie falsch ist, nachdem Sie die Datei erneut heruntergeladen haben -, ist sicherzustellen, dass Sie sie mit der vergleichen MD5-Hash für die richtige Datei.

Ich vermute, dass

  • sie haben ein 12.04 LTS-Image und verwenden einen MD5-Hash für ein 12.04.1 LTS-Image
    (das ist nicht dieselbe Datei ),oder
  • sie haben ein 12.04.1 LTS-Image und verwenden einen MD5-Hash für ein 12.04 LTS-Image,oder
  • sie haben ein 32-Bit-Image ("i386") und verwenden einen MD5-Hash für ein 64-Bit-Image.oder
  • sie haben ein 64-Bit-Image ("AMD64") und verwenden einen MD5-Hash für ein 32-Bit-Image.

Die Liste der MD5-Hashes für jede Datei finden Sie hier.

Im Allgemeinen, wenn Ihr MD5-Hash falsch ist, aber für mehr als einen Download derselbe

  • sie vergleichen mit dem falschen Hash,oder
  • die Datei auf dem Server ist beschädigt. Wenn dies der Fall sein sollte, laden Sie sie von einem anderen Spiegel herunter und melden Sie, falls Sie dies wünschen, einen Fehler in Bezug auf den Ubuntu-Website-Inhalt, damit das Problem behoben wird.oder
  • sie verwenden einen Proxy oder ein VPN, das Webinhalte zwischenspeichert, und es hat eine beschädigte Kopie zwischengespeichert (das Herunterladen von einem anderen Spiegel sollte dies ebenfalls beheben).oder
  • wenn Sie über FTP herunterladen und ein Problem mit dem Server oder Ihrem FTP-Client vorliegt, wird die Datei nicht im Binärmodus, sondern im Textmodus übertragen (dies beschädigt sie und normalerweise jedes Mal auf dieselbe Weise).oder
  • ihre Verbindung wird absichtlich von einem böswilligen Dritten abgefangen und geändert, der Ihnen absichtlich die falsche Datei zuführt (dies ist jedoch in der Regel sehr unwahrscheinlich).

Sie können manuell einen (anderen) Download-Spiegel auswählen am Ende dieser Seite .

Wenn Ihr ISO-Image wirklich beschädigt ist, haben Sie hier einige Möglichkeiten, eine gute Datei zu erhalten.

zsync

zsync (siehe auch hier ) ist ein Dienstprogramm, das aus einerteilweise korrektenDatei einetotal korrektDatei, indem Sie nur die Teile herunterladen, von denen Sie nicht die richtigen Versionen haben. Die Hauptanwendung ist das Herunterladen von leicht aktualisierten Bildern, z. B. von einem nächtlichen Build zum nächsten.

So funktioniert zsync: Jemand, der die Datei anbietet (wie das Ubuntu-Projekt), erstellt eine .zsync-Datei, die viele Prüfsummen enthält - Prüfsummen, die vielen kleinen Teilen der Datei entsprechen, und nicht nur eine Prüfsumme für die gesamte Datei. Sie beginnen mit nichts bis zur gesamten Datei.

Mit nichts wird die gesamte Datei heruntergeladen. Mit einem Teil der Datei (d. H. Einer Datei mit demselben Namen, die eine andere Größe oder dieselbe Größe mit einer beliebigen Anzahl von binären Unterschieden aufweist) wird ermittelt, welche Teile heruntergeladen werden müssen, und diese Teile werden nur heruntergeladen. Mit der gesamten Datei wird nichts heruntergeladen.

Fürsehr unzuverlässige Internetverbindungen ist, zsync nicht viel besser als ein Webbrowser zum Herunterladen einer gesamten Datei von Grund auf neu,es sei denn, Sie sind Wenn Sie bereit sind, es zweimal oder öfter auszuführen, werden die Probleme in früheren Läufen durch spätere Läufe behoben. Für alle Internetverbindungen mit Ausnahme der Internetverbindungen mit der höchsten Fehlerrate sollte es ausreichen, zsync zweimal oder gelegentlich dreimal für eine Datei auszuführen.

Sie müssen sich jedoch nicht so viele Gedanken darüber machen, wie Sie zsync mehrmals ausführen. Da Sie vermutlich bereits den größten Teil der Datei haben, sollte dies kein Problem sein. Und wie immer, wenn zsync etwas beschädigt hat, können Sie zsync jederzeit erneut ausführen, um das Problem zu beheben.

zsync für Windows abrufen

zsync wird normalerweise auf einem Unix-ähnlichen System ausgeführt (das Windows nicht wirklich enthält). Vor kurzem wurde jedoch ein nativer Windows-Port von zsync wurde erstellt , sodass Sie diesen wahrscheinlich verwenden können.

zsync ist ein Befehlszeilenprogramm, daher führen Sie es in Windows in der Eingabeaufforderung aus. (Eine Möglichkeit, die Eingabeaufforderung zu öffnen, besteht darin, cmd.exe in das Textfeld im Startmenü einzugeben und zu drücken Enter. Oder in Windows XP und früheren Versionen Start> Ausführen> cmd.exe.)

Ein anderer Weg: zsync für Cygwin holen

Wenn Sie Probleme mit dem Windows-Port von zsync haben, können Sie immer die Cygwin-Version verwenden. Cygwin bietet eine Unix-ähnliche Umgebung für Windows. Kompilierte ausführbare Dateien können nicht ausgeführt werden (Sie könnten beispielsweise nicht zsync aus dem Ubuntu-Paket verwenden), sondern verwenden spezielle Versionen von Programmen, die aus dem Quellcode kompiliert wurden. (Es ist weitaus einfacher, ein Programm zu kompilieren, das für Unix-ähnliche Betriebssysteme in Cygwin geschrieben wurde, als es so zu kompilieren, dass es nativ unter Windows funktioniert.)

  1. Zuerst Cygwins Installer (setup.exe) hier herunterladen (oder diesen direkten Link ).
  2. Führen Sie es aus, klicken Sie im ersten Bildschirm auf Next , wählen Sie dannInstall from Internetund klicken Sie erneut auf Next .
  3. Platzieren Sie auf den nächsten beiden Bildschirmen Cygwin und das lokale Paketverzeichnis, wo immer Sie möchten (die Standardeinstellungen sind normalerweise gut).
  4. Wählen Sie Ihren Internetverbindungstyp (Direkte Verbindungist normalerweise gut), und setup.exe lädt eine Liste von Spiegeln herunter.
  5. Wählen Sie einen Spiegel aus, um eine Liste der verfügbaren Pakete herunterzuladen. Sie werden wahrscheinlich gewarnt, dass sich diese Version von der vorherigen unterscheidet. Dies ist kein Problem, es sei denn, Sie haben eine frühere Version von Cygwin auf demselben Computer verwendet.

    Setup Alert message about how how this is the first time you've installed this particular version of Cygwin. If you haven't used Cygwin before, this can be ignored. As it says, "If this is the first time you've installed Cygwin on this system then you can ignore this message."

  6. Nun können Sie auswählen, welche Pakete installiert werden sollen. Es gibt ein Textfeld zum Suchen von Paketen nach Namen. Geben Sie dort zsync ein (aberdo notpress Enter--wenn Sie dies tun, ist es so, als würden Sie aufNext) klicken. Ein Eintrag fürNetwird angezeigt. Erweitern Sie es durch Klicken auf + Links davon wirdSkipangezeigt. Das heißt, wenn Sie nichts ändern, wird setup.exenotinstall zsync.

    Velma Dinkley installs zsync in Cygwin while updating her blog in "Siren's Song."

  7. Klicken Sie also einmal, woSkipsteht. Jetzt wird die neueste verfügbare stabile Version von zsync für Cygwin installiert.

    enter image description here

  8. Klicken Sie erneut aufNext, um die Installation abzuschließen. Die Cygwin-Umgebung und zsync werden heruntergeladen und installiert. (Wenn Sie aufgefordert werden, Pakete zu installieren, die als Abhängigkeiten erforderlich sind, fahren Sie fort.)

Sobald es installiert ist, öffnen Sie die Cygwin-Shell. Sie können von dort aus zsync ausführen.

Referenzen

Bitte beachten Sie, dass Sie zwar auf der Cygwin-Mailingliste nach Problemen mit Cygwin suchen können (nachdem Sie das und die darin enthaltenen Materialien gelesen haben), diese aber verständlicherweisenicht tununterstütze inoffizielle Anweisungen. cygwin hat eine ziemlich gute Dokumentation, so dass sie wie andere Projekte mit einer guten zentralen Dokumentation (wie OpenBSD) erwarten, dass die Leute, die um Hilfe bitten, die Dokumentation gelesen haben und damit arbeiten (oder zumindest sehr vertraut sind).

(Wenn Sie Probleme mit meinen Anweisungen haben, istder beste Ort, um danach zu fragen, wahrscheinlich hier.)

zsync unter Ubuntu

Dies gilt nicht in Ihrem speziellen Fall, aber für Leute, die zsync unter Ubuntu verwenden möchten, installieren Sie einfach zsync Install zsync . Dies kann im Software Center oder durch Ausführen in einem Terminalfenster erfolgen (Ctrl+Alt+T):

Sudo apt-get update && Sudo apt-get install zsync

Jetzt können Sie es vom Terminal ausführen.

Verwandte Themen: Wie aktualisiere ich eine ISO mit zsync?

Verwenden Sie zsync, um Ihre beschädigten ISO-Images zu reparieren

Wechseln Sie in der Eingabeaufforderung zu dem Verzeichnis, das Ihre beschädigte ISO-Datei enthält. (Sie können cd verwenden, um das Verzeichnis zu ändern, genau wie bei Ubuntu. Verwenden Sie dir, um den Inhalt eines Verzeichnisses aufzulisten.) Stellen Sie sicher, dass die Datei denselben Dateinamen hat wie zum Zeitpunkt des Abrufs.

Führen Sie nun zsync auf eine der folgenden Arten aus, je nachdem, um welches Ubuntu-ISO-Image es sich handelt:

  • 12.10, 32-Bit:

    zsync http://releases.ubuntu.com/quantal/ubuntu-12.10-desktop-i386.iso.zsync
    
  • 12.10, 64-Bit:

    zsync http://releases.ubuntu.com/quantal/ubuntu-12.10-desktop-AMD64.iso.zsync
    
  • 12.04.1 LTS, 32-Bit:

    zsync http://releases.ubuntu.com/12.04.1/ubuntu-12.04.1-desktop-i386.iso.zsync
    
  • 12.04.1 LTS, 64-Bit:

    zsync http://releases.ubuntu.com/12.04.1/ubuntu-12.04.1-desktop-AMD64.iso.zsync
    
  • 12.04 LTS (vor dem Release von 12.04.1), 32-Bit:

    zsync http://old-releases.ubuntu.com/releases/precise/ubuntu-12.04-desktop-i386.iso.zsync
    
  • 12.04 LTS (vor dem Release von 12.04.1), 64-Bit:

    zsync http://old-releases.ubuntu.com/releases/precise/ubuntu-12.04-desktop-AMD64.iso.zsync
    

Sobald Sie einen dieser Befehle ausführen, aktualisiert zsync Ihre ISO automatisch auf die richtige Version, und Sie können loslegen.

Verwenden von zsync für andere Dateien

Die allgemeine Syntax lautet, dass Sie zsync ausführen, gefolgt von einer vollständigen URL für die .zsync-Datei auf dem Server, die denselben Namen hat wie die Datei, von der Sie eine Version haben und die Sie herunterladen möchten (außer mit .zsync am Ende des Kurses).

Falls dies für andere Ubuntu-Releases (oder andere ISO-Dateien für dasselbe Release, z. B. die für das ordnungsgemäße Booten auf Macs optimierte Version oder die Version für ARM-basierte Mobilgeräte) gewünscht wird, gilt die Regel, wo sich die .zsync-Dateien befinden gelegen:

  • ISO-Images mit derzeit unterstützten Installationsprogrammen, einschließlich ISOs für die neueste Punktversion von LTS-Versionen und aller ISOs für derzeit unterstützte LTS-Versionen, befinden sich in:

    http://releases.ubuntu.com/

  • ISO-Images für abgelaufene Releases (die Sie sowieso nicht verwenden sollten) oder frühere Point-Releases von unterstützten LTS-Releases befinden sich in:

    http://old-releases.ubuntu.com/releases/

Klicken Sie einfach auf den Link für Ihre Version und scrollen Sie nach unten, um die vollständige Dateiliste anzuzeigen (oder durchsuchen Sie die Seite nach .zsync). Kopieren Sie dann die URL und fügen Sie sie in den Befehl zsync ein.

Verwenden Sie in "Upgrade"

Sie können auch zsync verwenden, um ein ISO-Upgrade auf ein anderes durchzuführen. Wahrscheinlich muss ein Großteil der Datei erneut heruntergeladen werden, wenn Sie ein Upgrade von einer Ubuntu-Version auf eine andere durchführen. Wenn Sie jedoch Punktversionen (wie 12.04 LTS auf 12.04.1 LTS) aktualisieren, muss nicht so viel heruntergeladen werden. Dies ist eine hervorragende Möglichkeit, schnell und effizient eine neue Punktveröffentlichung zu erhalten.

Benennen Sie einfach die alte Datei um, sodass sie denselben Namen wie die neue Datei hat, und führen Sie dann zsync wie oben aus.

BitTorrent

Wenn Ihre Internetverbindung eine hohe Fehlerrate aufweist, ist BitTorrent oft eine der besten Möglichkeiten, um Dateien zuverlässig herunterzuladen. Dateien werden in viele kleine Teile aufgeteilt, und jedes Teil wird heruntergeladen und überprüft, um festzustellen, ob es sich um das Original handelt. (Die einzelnen Stücke können von verschiedenen Computern heruntergeladen werden, wodurch BitTorrent die Last auf einem zentralen Server vermeidet und häufig schnellere Geschwindigkeiten erreicht als bei webbasierten Downloads.)

Torrents für Ubuntu 12.10 und Ubuntu 12.04.1 sind hier erhältlich.

Zum Herunterladen benötigen Sie einen BitTorrent-Client. Wenn Sie noch keine haben, die Sie bevorzugen, empfehle ich für Windows BitTornado .

Nach dem Herunterladen empfehle ich, einige zu säen, wenn Sie können, um sie der Community zurückzugeben. (Mit BitTorrent von Leuten wie Ihnen.) Sie müssen es jedoch nicht sofort tun - Sie können zu Ihrem BitTorrent-Programm zurückkehren und es später neu erstellen. Sie können es sogar beenden, während der Download noch nicht abgeschlossen ist, und es jederzeit fortsetzen.

Verwenden von BitTorrent, um die vorhandene Datei zu reparieren

Warnung: Dieser Unterabschnitt ist nicht so gut recherchiert wie der Rest der Antwort. Ich habe die Verwendung von BitTorrent zur Behebung beschädigter Dateien in letzter Zeit, unter Windows oder mit BitTornado nicht getestet. Ich gehe davon aus, dass dies für Sie funktionieren würde, aber ich kann nicht sicher sein.

Während BitTorrent für diesen Zweck nicht so häufig verwendet wird wie zsync, ist das BitTorrent-Protokoll selbst genauso dazu in der Lage.

Einige BitTorrent-Programme tun dies - andere lehnen es ab oder laden die gesamte Datei von Grund auf herunter - es sei denn, die Datei, mit der Sie beginnen, hat exakt dieselbe Größe. (Bequemerweise hat ein beschädigter Downloadhäufigdieselbe Größe wie die richtige Datei.)

Legen Sie das alte ISO-Image in denselben Ordner wie die Datei .torrent. Stellen Sie sicher, dass Ihr BitTorrent-Programm den Torrent dort herunterlädt. Es wird geprüft, ob Ihre aktuelle Datei in Ordnung ist. Wenn festgestellt wird, dass einige Teile falsch sind, können sie erneut heruntergeladen werden.

Bei einigen BitTorrent-Programmen müssen Sie die Datei als laufenden Torrent importieren oder zum Seeding öffnen, um dies zu tun.

34
Eliah Kagan