Bozuk bir Ubuntu ISO'daki bozuk dosyaları nasıl belirleyebilir ve değiştirebilirim?


14

Yani, bu Ubuntu'yu çalıştırmakla ilgili bir sorun değil, onu yüklemekle ilgilidir.

Ubuntu ISO'yu (herhangi bir kaynaktan) indirmeye çalıştığımda her zaman bozuk görünüyor. Yani, MD5 toplamları hiçbir zaman doğru değildir.

Ubuntu ISO dosyaları, ISO'daki tüm dosyaları ve ilgili MD5SUM'larını listeleyen bir dosya ile birlikte gelir.

Ne yapmak istiyorum bu dosya üzerinde döngü ve ISO dosyaları ile karşılaştırın ve hangi dosyaları bozuk, diğer iso dosyalarından birinden bozuk dosyaları ayıklamak umuduyla, oluşturmak için bir çalışan yükleyici.

Ancak, bunu nasıl yapacağımı bilmiyorum ve tabii ki daha da kötüsü yapmak için bunu Windows 7'den yapmam gerekiyor.

Bunu nasıl düzeltebileceğini bilen var mı?


Jigdo (Debian'ın tercih ettiği yol) bunu yapamaz mı? Şimdi asıl amacı, ISO'lardaki paketleri güncelleyerek ISO'larda nokta sürümleri için delta güncellemeleri yapmaktır. ISO ve Jigdo hakkında bilgi
gertvdijk

çoğunlukla (bkz sadece tek bir dosya içerdiğinden, Ubuntu'nun masaüstü ISO'lar için değil @gertvdijk cevabımı ). Bu nedenle masaüstü ISO'larının .jigdoindirme sunucularında ilişkili dosyaları yoktur. Alternatif CD ve sunucu CD ISO'ların yapmak zorunda .jigdodosyaları. Masaüstü ISO'ları, canlı CD sistemini diske yazıp daha sonra üzerinde değişiklikler yaparak, normal (yüklü) kullanıma hazır hale getirerek çalışan Ubiquity yükleyicisine sahiptir.
Eliah Kagan

@EliahKagan Bu mantıklı. Tamam, bu durumda, tam ISO'ları düzeltmek için PAR eşlik bloğu dosyaları olmamalı mı? Bu çok daha verimli, çok daha kolay ve daha evrensel. "Parşömen orijinal olarak Usenet'e dosya aktarma problemini çözmek için yazılmıştır, [1] ancak artık her türlü veriyi veri bozulmasından, bit çürümesinden ve kazayla veya kötü amaçlı hasarlardan korumak için yaygın olarak kullanılmaktadır."
gertvdijk

1
PAR neden daha iyi zsync? PAR, Ubuntu projesi tarafından resmi olarak desteklenmiş olsa bile (olduğu gibi zsync), dikkate değer avantajlar var mı? Jigdo hakkında: Alternatif ve sunucu CD'leri için geçerlidir. Onlar kullanmak debian-installer, çıplak kemikleri sistemini oluşturmada chrooting ve paketlerin yüklenmesi. Böylece .debpaket havuzunda bulunan tüm dosyalara sahipler (masaüstü CD'lerinde sadece birkaç küçük dosya içerir). Kolayca monte edilebilir .jigdo(veya diğer yöntemlerle). jigdoSunucu için temelli bir yanıt / sadece bozuk dosyaların nasıl indirileceği hakkında alternatif göndermek isteyebilirsiniz .
Eliah Kagan

1
@EliahKagan - PAR çevrimdışı şeyler yapabilir , örneğin "onarmak için 3 parite blok gerekir", onları beslemek, "tamam, şeyler sabitleme ... bitti!". Zsync'in etkili bir şekilde tam bir kopyasına ihtiyacı vardır (bu durumda uzak). Ama evet, prensip aynı. BTW, Zsync'in gziped arşivlerini çok iyi işleyebildiğini görüyorum , ama bence bu istihbarat SquashFS'de işe yaramaz mı? Her neyse, Ubuntu ISO'lar için zsync gerçekten de yol.
gertvdijk

Yanıtlar:


34

Aslında, Hangi Dosyanın Bozulduğunu Biliyorum

Birden çok bozuk ISO görüntüsündeki dosyaları tek bir iyi ISO görüntüsünde birleştirmeye çalışmak bu soruna iyi bir yaklaşım değildir. İşte nedeni.

ISO görüntüsündeki neredeyse tüm veriler sadece bir dosyaya aittir casper/filesystem.squashfs.

Bir Ubuntu masaüstü CD veya DVD ISO görüntüsünde, yani. Bir sunucu CD görüntüsünde veya alternatif CD görüntüsünde farklı bir hikaye.

Ubuntu 12.10 i386 masaüstü CD'sinde filesystem.squashfs için Nautilus özellikleri

Böylece, şu anda indirdiğiniz ISO'ların her birinde hangi dosyanın neredeyse kesinlikle bozuk olduğunu söyleyebilirim: o dosya, hepsinde. Bir Ubuntu ISO'sunda bir şey bozulduğunda, kötü baytlar neredeyse her zaman orada bir yerdedir.

filesystem.squashfsolduğu kendisi bir disk görüntü; sistemi canlı CD'ye önyüklemenin bir parçası olarak monte edilmiştir. Potansiyel olarak ISO'dan çıkarabilir, ardından içeriğini çıkarabilir , neyin bozuk olduğunu görebilir ve bozuk dosyaları değiştirebilirsiniz. Windows'ta bir squashfs dosya sistemi kurabilir veya ayıklayabilirsiniz, ancak bunu önemsiz bir görev olarak göreceksiniz. Ve bu görüntü sıkıştırılmıştır, bu nedenle içeren ISO'daki küçük bozulmaların birden fazla dosyayı etkilemeyeceğine dair bir garanti yoktur.

Ayrıca, ISO görüntüsünü birkaç kez indirmeyi denediyseniz ve her zaman bozuksa, sadece küçük bir bozulma olmadığından emin olabilirsiniz . Bu şekilde yapmaya çalışırsanız yüzlerce veya binlerce dosyayı değiştirmeniz gerekebilir.

Bunun yerine, ISO görüntüsünü daha güvenilir bir yöntem kullanarak indirmelisiniz.

Uygun olarak, bunlardan biri ( zsync) düşündüğünüze benzer, ancak içerdiği gerekli dosyalardan ziyade sadece ISO dosyalarının gerekli parçalarını indirecektir.

Doğru MD5 Karma ile Karşılaştığınızdan emin olun

MD5 toplamınız yanlış olduğunda yapılacak ilk şey - özellikle dosyayı tekrar indirdikten sonra yanlışsa - doğru dosya için MD5 karmasıyla karşılaştırdığınızdan emin olmaktır.

Benim tahminim bu

  • 12.04 LTS resminiz var ve 12.04.1 LTS resim için
    ( aynı dosya olmayan ) bir MD5 karması kullanıyorsunuz veya
  • 12.04.1 LTS resminiz var ve 12.04 LTS resim için MD5 karması kullanıyorsunuz veya
  • 32 bitlik ("i386") bir resminiz var ve 64 bitlik bir resim için MD5 karması kullanıyorsunuz veya
  • 64 bitlik ("amd64") bir resminiz var ve 32 bitlik bir resim için MD5 karması kullanıyorsunuz.

Her dosya için MD5 karmalarının listesi burada.

Genel olarak, MD5 karma dosyanız yanlışsa ancak birden fazla indirme için aynıysa, genellikle

  • yanlış karmayı karşılaştırıyorsunuz veya
  • dosya sunucuda bozuk (yani durum böyle görünüyorsa, farklı bir aynadan indirin ve isterseniz, ubuntu-web sitesi içeriğine karşı bir hata bildirin, böylece sorun çözülür) veya
  • web içeriğini önbelleğe alan bir proxy veya VPN kullanıyorsunuz ve bir şekilde bozuk bir kopyayı önbelleğe aldı (başka bir aynadan indirmek de düzeltmelidir) veya
  • FTP üzerinden indiriyorsunuz ve sunucu veya FTP istemcinizle ilgili bir sorun, dosyanın ikili mod yerine metin modunda aktarılmasına neden oluyor (bu onu bozar ve genellikle her seferinde aynı şekilde bozar) veya
  • bağlantınız kasten yanlış dosyayı besleyen kötü niyetli bir üçüncü taraf tarafından kasıtlı olarak ele geçiriliyor ve değiştiriliyor (yine de bu pek olası değildir).

Bu sayfanın altından manuel olarak (farklı) bir indirme aynası seçebilirsiniz .

ISO görüntünüz gerçekten bozuksa, iyi bir dosya almanın bazı yolları aşağıda verilmiştir.

zsync

zsync(ayrıca buraya bakın ), yalnızca doğru sürümlerine sahip olmadığınız parçaları indirerek kısmen doğru bir dosyayı tamamen doğru bir dosyaya dönüştürebilen bir yardımcı programdır . Birincil uygulaması, bir gece derlemesinden diğerine olanlar gibi biraz güncellenmiş görüntüleri indirmek içindir.

İşleyiş şekli zsyncşudur: Dosyayı sunan biri (Ubuntu projesi gibi) .zsync, tüm sağlama için tek bir sağlama toplamı yerine, dosyanın birçok küçük bölümüne karşılık gelen sağlama toplamları içeren bir dosya oluşturur . Hiçbir şeyden tüm dosyaya kadar her yerden başlarsınız.

Hiçbir şey olmadan, tüm dosya indirilir. Dosyanın bir kısmı ile (yani, aynı adda farklı bir boyutta veya herhangi bir sayıdaki ikili farklılıklarla aynı boyutta bir dosya), hangi parçaların indirilmesi gerektiğini bulur ve sadece bu parçaları indirir. Tüm dosya ile hiçbir şey indirmez.

İçin çok güvenilmez internet bağlantılarında , zsyncçok daha iyi sıfırdan bir dosyanın tamamını, indirmek için bir web tarayıcısı daha değil bunu iki veya daha fazla kez çalıştırmak için istekli olmadıkça bu durumda, daha sonra çalıştırır önceki ishal sorunları düzeltir, . En yüksek hata oranı dışındaki tüm Internet bağlantıları için, zsync'i iki kez veya bazen bir dosyada üç kez çalıştırmak yeterli olacaktır.

Ama neredeyse zsyncbirden fazla kez koşma konusunda endişelenmenize gerek yok . Zaten - muhtemelen - dosyanın çoğuna sahip olduğunuzdan, bu bir sorun olmamalıdır. Ve her zaman olduğu gibi zsyncsize bozuk bir şey verirse, zsyncdüzeltmek için her zaman tekrar çalıştırabilirsiniz .

Alma zsyncWindows için

zsyncgeleneksel olarak Unix benzeri bir sistemde çalışır (gerçekten Windows içermez). Ancak, son zamanlarda yerel bir Windows bağlantı noktası zsyncoluşturuldu , bu yüzden muhtemelen kullanabilirsiniz.

zsyncbir komut satırı programıdır, bu nedenle Windows'ta bunu Komut İstemi'nde çalıştırırsınız. (Komut istemini açmanın bir yolu cmd.exe, Başlat menüsündeki metin kutusuna yazmak ve tuşuna basmaktır Enter. Veya Windows XP ve önceki sürümlerde Başlat> Çalıştır> seçeneğine basın cmd.exe.)

Başka Bir Yol: zsyncCygwin'i Almak

Windows bağlantı zsyncnoktasıyla ilgili herhangi bir sorun yaşarsanız, her zaman Cygwin sürümünü kullanabilirsiniz. Cygwin, Windows için Unix benzeri bir ortam sağlar. Derlenmiş yürütülebilir dosyaların çalıştırılmasına izin vermez (örneğin, zsyncUbuntu paketinden kullanamazsınız ), ancak kaynak için derlenmiş programların özel sürümlerini kullanır. (Cygwin'de Unix benzeri işletim sistemleri için yazılmış bir programı derlemek, Windows'da yerel olarak çalışması için derlemekten çok daha kolaydır.)

  1. İlk olarak, Cygwin'in yükleyicisini ( setup.exe) buradan alın (veya bu doğrudan bağlantıyı kullanın ).
  2. Koştur, tıklayın İleri seçtikten sonra, ilk ekranda internetten yükleme ve tıklayın İleri tekrar.
  3. Sonraki iki ekranda Cygwin'i ve yerel paket dizinini istediğiniz yere koyun (varsayılanlar genellikle iyidir).
  4. İnternet bağlantı türünüzü seçin ( Doğrudan Bağlantı genellikle iyidir) ve setup.exebir ayna listesi indirecektir.
  5. Herhangi bir aynayı seçin, mevcut paketlerin bir listesini indirir. Muhtemelen bu sürümün öncekinden nasıl farklı olduğu konusunda uyarılırsınız. Aynı makinede Cygwin'in önceki bir sürümünü kullanmadıysanız, bu bir sorun değildir.

    Cygwin'in bu belirli sürümünü ilk kez yüklediğinizde Kurulum Uyarısı iletisi.  Daha önce Cygwin kullanmadıysanız, bu göz ardı edilebilir.  Dediği gibi, "Cygwin'i bu sisteme ilk kez yüklediyseniz, bu mesajı göz ardı edebilirsiniz."

  6. Şimdi hangi paketlerin yükleneceğini seçebilirsiniz. Paketleri ada göre aramak için bir metin kutusu vardır. Tip zsyncorada (ama yok basın Enteryapmanız --if butonu tıklanarak gibi İleri ). Net için bir giriş görünecektir. +Sol tarafındaki simgesini tıklayarak genişletin, altında Atla ifadesinin göründüğünü göreceksiniz . Bir şey değişmez araçlarının Yani, eğer setup.exeolacak değil yükleyin zsync.

    Velma Dinkley, "Siren'in Şarkısı" ndaki blogunu güncellerken Cygwin'e zsync yükler.

  7. Bu yüzden bir kez tıklayın, burada Atla yazıyor . Şimdi zsyncCygwin için mevcut en son kararlı sürümünü yükleyecek .

    resim açıklamasını buraya girin

  8. Yüklemeyi tamamlamak için tekrar İleri'ye tıklayın . Cygwin ortamı zsyncindirilir ve yüklenir. (Bağımlılık olması gereken paketleri yüklemeniz istenirse devam edin.)

Kurulduktan sonra Cygwin kabuğunu açın. Kaçabilirsiniz zsyncoradan.

Referanslar

Not üzerinde yayınlamak kullanımın oldukça Lütfen Cygwin posta listesi (bu Okumak söyler materyalleri o okuma ve sonrası) Cygwin ile ilgili sorunlar için, bunlar anlaşılır do not gayri resmi talimatlarını desteklemektedir. cygwinoldukça iyi belgelere sahiptir, bu nedenle iyi merkezi belgelere sahip diğer projeler gibi (OpenBSD gibi), yardım isteyen kişilerin belgeleri okumasını ve ondan çalışmasını (veya en azından aşina olmasını) beklerler.

(Bu nedenle, yönergelerimle ilgili sorun yaşıyorsanız, bunları sormak için en iyi yer muhtemelen burada .)

zsync Ubuntu'da

Bu sizin durumunuz için geçerli değildir, ancak zsyncUbuntu'da kullanmak isteyen kişiler için zsync'iZsync'i yükle kurmanız yeterlidir . Bu, Yazılım Merkezi'nde veya bir Terminal penceresinde ( Ctrl+ Alt+ T) çalıştırılarak yapılabilir:

sudo apt-get update && sudo apt-get install zsync

Şimdi Terminal'den çalıştırabilirsiniz.

İlgili: ISO'yu zsync ile nasıl güncelleyebilirim?

zsyncBozuk ISO Görüntülerinizi Düzeltmek için Kullanma

Komut İstemi'nde, bozuk ISO dosyanızı içeren dizine gidin. ( cdUbuntu ile aynı olan dizini değiştirmek için kullanabilirsiniz . dirBir dizinin içeriğini listelemek için kullanın .) Sahip olduğunuz dosyanın, sahip olduğunuz dosya adıyla aynı olduğundan emin olun.

Şimdi zsynchangi Ubuntu ISO görüntüsüne bağlı olarak şu yollardan birini kullanarak çalıştırın :

  • 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 (12.04.1 nokta sürümünden önce), 32 bit:

    zsync http://old-releases.ubuntu.com/releases/precise/ubuntu-12.04-desktop-i386.iso.zsync
    
  • 12.04 LTS (12.04.1 nokta sürümünden önce), 64 bit:

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

Bu komutlardan birini çalıştırdığınızda, zsyncISO'nuzu otomatik olarak doğru sürüme yayar ve gitmeye hazırsınız.

zsyncDiğer Dosyalarda Kullanma

Genel sözdizimi, bir sürümüne sahip olduğunuz ve indirmek istediğiniz dosyayla aynı ada sahip sunucudaki dosya zsynciçin tam bir URL .zsyncizlemenizdir .zsync(elbette sonunda hariç ).

Herhangi birinin diğer Ubuntu sürümleri (veya Mac'lerde düzgün önyükleme yapmak için optimize edilmiş sürüm veya ARM tabanlı mobil cihazların sürümü gibi) gibi diğer ISO dosyaları için bunu yapmak istemesi durumunda, .zsyncdosyaların bulunduğu kural :

  • LTS sürümlerinin en son nokta sürümü için ISO'lar ve şu anda desteklenen LTS sürümleri için tüm ISO'lar da dahil olmak üzere, şu anda desteklenen yükleyicileri içeren ISO görüntüleri:

    http://releases.ubuntu.com/

  • Kullanım ömrü dolmuş (zaten kullanmamanız gereken) sürümler veya desteklenen LTS sürümlerinin önceki nokta sürümleri için ISO görüntüleri:

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

Sürümünüzün bağlantısını tıklayın ve tam dosya listesini görmek için aşağı kaydırın (veya sayfada arayın .zsync). Ardından URL'yi kopyalayın ve zsynckomuta yapıştırın .

"Yükseltme" de kullanın

Ayrıca zsyncbir ISO'yu diğerine "yükseltmek" için de kullanabilirsiniz . Bir Ubuntu sürümünden diğerine yükseltme yapıyorsanız, muhtemelen dosyanın çoğunu yeniden indirmesi gerekecektir. Ancak, nokta sürümlerini (12.04 LTS'den 12.04.1 LTS'ye) yükseltiyorsanız, o kadar çok indirmesi gerekmez. Bu, hızlı ve verimli bir şekilde yeni bir nokta sürümü almak için mükemmel bir yoldur.

Eski dosyayı yeni dosyayla aynı ada sahip olacak şekilde yeniden adlandırın, sonra zsyncyukarıdaki gibi çalıştırın .

BitTorrent

İnternet bağlantınız yüksek bir hata oranına sahip olduğunda, BitTorrent genellikle dosyaları güvenilir bir şekilde indirmenin en iyi yollarından biridir. Dosyalar birçok küçük parçaya bölünür ve her parça indirilip gerçek bir şey olup olmadığını kontrol eder. (Ayrı parçalar farklı bilgisayarlardan indirilebilir, bu da BitTorrent'in merkezi bir sunucuya yük koymaktan kaçınmasına ve web tabanlı indirmelerle mümkün olanlardan daha hızlı hızlara ulaşmasına izin verir.)

Ubuntu 12.10 ve Ubuntu 12.04.1 selleri buradan elde edilebilir.

İndirmek için bir BitTorrent "istemcisine" ihtiyacınız olacak. Zaten tercih ettiğiniz bir tane yoksa, Windows için BitTornado'yu öneririm .

İndirdikten sonra, topluluğa geri vermek için mümkünse bazılarını tohumlamanızı öneririm. (BitTorrent ile sizin gibi insanlardan.) Bunu hemen yapmak zorunda değilsiniz - BitTorrent programınıza geri dönüp daha sonra tohumlayabilirsiniz. İndirme tamamlanmamışken bile çıkabilirsiniz ve istediğiniz zaman devam ettirebilirsiniz.

Sahip Olduğunuz Dosyayı Düzeltmek için BitTorrent Kullanma

Uyarı: Bu alt bölüm yanıtın geri kalanı kadar iyi araştırılmamıştır. Son zamanlarda, Windows veya BitTornado ile bozuk dosyaları düzeltmek için BitTorrent kullanımını test etmedim. Bunun sizin için çalışacağını umuyorum, ama emin olamıyorum.

BitTorrent bu amaç için yaygın olarak kullanılmasa da zsync, BitTorrent protokolünün kendisi de bu kadar yeteneklidir.

Bazı BitTorrent programları bunu yapar - diğerleri, başlattığınız dosya tam olarak aynı boyutta değilse, tüm dosyayı sıfırdan reddeder veya indirir. (Uygun şekilde, bozuk bir indirme genellikle doğru dosyayla aynı boyuttadır.)

Eski ISO görüntüsünü .torrentdosyayla aynı klasöre yerleştirin . BitTorrent programınızın torrent'i oraya indirdiğinden emin olun. Mevcut dosyanızın iyi olup olmadığını kontrol edecektir. Bazı parçaların yanlış olduğunu gördüğünde, bunları yeniden indirebilir.

Bazı BitTorrent programlarında, bunu yapmak için dosyayı devam eden bir torrent olarak içe aktarmanız veya tohumlama için açmanız gerekir.


15
Bu oldukça destansı bir cevap.
Nanne

@Nanne Teşekkürler! Btw, önceden varolan dosyaları onarmak için BitTorrent'i kullanma hakkında sağladığımdan daha fazla ayrıntı biliyorsanız, lütfen bu konuda daha iyi bilgi sağlamak için bunu düzenleyin (isterseniz).
Eliah Kagan

Vay be ... Şimdi beklediğim cevap yaklaşık 10 kat! Teşekkürler! Bunu bir deneyecek ve soruyu kabul edeceksiniz veya daha fazla ayrıntıyla güncelleyeceksiniz!
Hailwood

-1

ISO'ya dosya eklemek ve ISO'ya dosya kaldırmak istiyorsanız ISO Master'ı kullanabilirsiniz . Hem Windows hem de Linux için kullanılabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.