Как определить и заменить испорченные файлы в испорченном Ubuntu ISO?

Итак, это не совсем проблема запуска Ubuntu, а скорее с его установкой.

Каждый раз, когда я пытаюсь загрузить Ubuntu ISO (из любого источника), он кажется поврежденным. То есть суммы MD5 никогда не бывают правильными.

Файлы Ubuntu ISO поставляются с файлом, в котором перечислены все файлы в ISO и соответствующие MD5SUM.

Что я хочу сделать, так это зациклить этот файл, сравнить их с их файлами в ISO и выяснить, какие файлы повреждены, в надежде, что я смогу извлечь поврежденные файлы из одного из других файлов iso, создать работающий установщик.

Но я не знаю, как это сделать, и, конечно, чтобы сделать его еще хуже, я должен сделать это из Windows 7.

Кто-нибудь знает, как это исправить?

14
задан 11 January 2013 в 12:21

2 ответа

На самом деле я знаю, какой файл повреждается

Попытка объединить файлы от нескольких поврежденных ISO-образов в единственный, хороший ISO-образ не является хорошим подходом к этой проблеме. Вот то, почему.

Почти все данные в ISO-образе принадлежат всего одному файлу, casper/filesystem.squashfs.

На рабочем столе Ubuntu CD или ISO-образ DVD, который является. На образе CD сервера или альтернативном образе CD, это - другая история.

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

Таким образом, я могу сказать Вам прямо сейчас, какой файл почти наверняка поврежден на каждом ISO, Вы загрузили: тот файл, на всех них. Когда что-то повреждается в ISO Ubuntu, плохие байты почти всегда где-нибудь там.

filesystem.squashfs самостоятельно образ диска; это смонтировано как часть начальной загрузки системы на живом CD. Вы могли потенциально извлечь его из ISO, затем извлечь его содержание, видеть то, что повреждается, и замените поврежденные файлы. В то время как можно смонтировать или извлечь squashfs файловую систему в Windows, Вы, вероятно, нашли бы, что выполнение так нетривиальная задача. И это изображение сжато, таким образом, нет никакой гарантии, что незначительное повреждение в содержании ISO не будет влиять на несколько файлов.

Кроме того, если Вы попробовали несколько раз, загружают ISO-образ, и это всегда повреждено, можно быть вполне уверены, это не просто незначительное повреждение. Вам, возможно, придется заменить сотни или тысячи файлов, если Вы попытались сделать это этот путь.

Вместо этого необходимо загрузить ISO-образ с помощью более надежного метода.

Удобно, один из них (zsync) подобно тому, что Вы думаете, за исключением того, что это загрузит просто необходимые части файлов ISO, а не просто необходимых файлов, содержавших в нем.

Удостоверьтесь, что Вы выдерживаете сравнение с правильным хешем MD5

Первое, что нужно сделать, когда Ваша сумма MD5 является неправильной - особенно, если это неправильно после загрузки файла снова - состоит в том, чтобы удостовериться, что Вы выдерживаете сравнение, это против MD5 хеширует для корректного файла.

Мое предположение - это

  • у Вас есть 12.04 изображений LTS, и Вы используете хеш MD5 для 12.04.1 изображений LTS
    (который не является тем же файлом), или
  • у Вас есть 12.04.1 изображения LTS, и Вы используете хеш MD5 для 12.04 изображений LTS, или
  • у Вас есть 32-разрядное ("i386") изображение, и Вы используете хеш MD5 для 64-разрядного изображения, или
  • у Вас есть 64-разрядное ("amd64") изображение, и Вы используете хеш MD5 для 32-разрядного изображения.

Список хешей MD5 для каждого файла здесь.

В целом, если Ваш хеш MD5 является неправильным, но то же при больше чем одной загрузке, обычно

  • Вы выдерживаете сравнение с неправильным хешем, или
  • файл повреждается на сервере (поэтому, если это надеется иметь место, загрузите с другого зеркала, и, при необходимости сообщаете об ошибке против содержания веб-сайта человечности, таким образом, проблема решена), или
  • Вы используете прокси или VPN, которую веб-контент кэшей, и он так или иначе кэшировал, поврежденная копия (загружающий с другого зеркала должен зафиксировать это также), или
  • Вы загружаете через FTP, и проблема с сервером или с Вашим клиентом FTP заставляет файл передавать в текстовом режиме, а не режиме двоичного счета (это повредит его и обычно повреждать его тот же путь каждый раз), или
  • Ваше соединение сознательно прерывается и изменяется злонамеренным третьим лицом, которое сознательно подает Вас неправильный файл (это обычно довольно маловероятно, хотя).

Можно вручную выбрать (другое) зеркало загрузки у основания этой страницы.

Если Ваш ISO-образ действительно повреждается, вот некоторые способы получить хороший файл.

zsync

zsync (см. также здесь), утилита, которая может превратить частично корректный файл в полностью корректный файл путем загрузки просто частей, из которых у Вас нет правильных версий. Его первичное приложение для загрузки немного обновленных изображений, как немного обновленные изображения от одной ночной сборки до другого.

Путь zsync работы - это: Кто-то предлагающий файл (как проект Ubuntu) создает a .zsync файл, который содержит много контрольных сумм - контрольные суммы, соответствующие многим мелким деталям файла, а не всего одной контрольной сумме для целого файла. Вы начинаете с где угодно ни от чего до всего файла.

Ни с чем загружается целый файл. С частью файла (то есть, файл тем же именем это - другой размер или тот же размер с любым количеством двоичных различий), это выясняет, какие части должны быть загружены и просто загружают те части. С целым файлом это ничего не загружает.

Для очень ненадежных Интернет-соединений, zsync не намного лучше, чем веб-браузер для загрузки всего файла с нуля, если Вы не будете готовы выполнить ее два или больше раза, в этом случае, более поздние выполнения исправят проблемы в более ранних выполнениях. Для всех кроме самых высоких Интернет-соединений коэффициента ошибок, работая zsync дважды или, иногда, три раза на файле должно быть достаточным.

Но Вы не должны волноваться почти так же о выполнении zsync многократно. Начиная с Вас уже - по-видимому - имеют большую часть файла, так, чтобы не должна была быть проблема. И как всегда, если zsync дает Вам что-то поврежденное, можно всегда работать zsync снова зафиксировать его.

Получение zsync для Windows

zsync традиционно работает на подобной Unix системе (который действительно не включает Windows). Однако недавно собственный порт Windows zsync был создан, таким образом, можно, вероятно, использовать это.

zsync программа командной строки, таким образом, в Windows Вы выполняете ее в Командной строке. (Один способ открыть командную строку состоит в том, чтобы ввести cmd.exe в текстовое поле в Меню "Пуск" и нажимают Enter. Или, в Windows XP и ранее, Запустите> Выполнение> cmd.exe.)

Иначе: получение zsync для Cygwin

Если у Вас есть какие-либо проблемы с портом Windows zsync, можно всегда использовать версию Cygwin. Cygwin обеспечивает подобную Unix среду для Windows. Это не позволяет скомпилированным исполняемым файлам быть выполненными (например, Вы не могли использовать zsync от пакета Ubuntu), но специальные версии использования программ скомпилированы для него из источника. (Намного легче скомпилировать программу, записанную для подобных Unix операционных систем в Cygwin, чем скомпилировать его так он работает исходно над Windows.)

  1. Во-первых, получите установщик Cygwin (setup.exe) отсюда (или использование эта прямая ссылка).
  2. Выполните его, нажмите Далее на первом экране, затем избранная Установка из Интернета и нажмите Далее снова.
  3. На следующих двух экранах, помещенном Cygwin и локальном каталоге пакета везде, где Вам нравятся они (значения по умолчанию обычно хороши).
  4. Выберите свой тип Интернет-соединения (Прямое подключение обычно хорошо), и setup.exe загрузит список зеркал.
  5. Выберите любое зеркало, и оно загрузит список доступных пакетов. Вас, вероятно, предупредят о том, как эта версия отличается от предыдущей. Это не проблема, если Вы не использовали предыдущую версию Cygwin на той же машине.

    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. Теперь можно выбрать что пакеты установить. Существует текстовое поле для поиска пакетов по имени. Ввести zsync там (но не нажимают Enter - если Вы делаете, это похоже на нажимание Далее). Запись для Сети появится. Разверните его путем нажатия + слева от него, и Вы будете видеть, что Пропуск появляется под ним. Это означает, не изменяете ли Вы ничего, setup.exe не установит zsync.

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

  7. Так нажимают однажды, где это говорит Пропуск. Теперь это установит последнюю доступную стабильную версию zsync для Cygwin.

    enter image description here

  8. Нажмите Далее снова для окончания установки. Среда Cygwin, и zsync, будет загружен и установлен. (Если Вас просят установить пакеты, которые требуются как зависимости, разрешение и делают так.)

После того как это установлено, откройте оболочку Cygwin. Можно работать zsync оттуда.

Ссылки

Обратите внимание на то, что, в то время как можно отправить в списке рассылки Cygwin для проблем с Cygwin (после того, как, читая, что и материалы он говорит Вам читать), они понятно не поддерживают неофициальные инструкции. cygwin имеет довольно хорошую документацию, так как другие проекты с хорошей централизованной документацией (как OpenBSD), они ожидают, что люди, обращающиеся за помощью, прочитают документацию и работают от (или по крайней мере очень знакомые с) она.

(Поэтому, если Вы испытываете затруднения из-за моих инструкций, лучшее место, чтобы спросить о них, вероятно, здесь.)

zsync на Ubuntu

Это не применяется в Вашем конкретном случае, но для людей, которые хотят использовать zsync на Ubuntu просто установите zsyncInstall zsync. Это может быть сделано в Центре программного обеспечения или путем выполнения этого в Окне терминала (Ctrl+Alt+T):

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

Теперь можно выполнить его от Терминала.

Похожие страницы: Как я обновляю ISO с zsync?

Используя zsync зафиксировать Ваши поврежденные ISO-образы

В Командной строке перейдите к каталогу, который содержит Ваш поврежденный файл ISO. (Можно использовать cd изменить каталог, то же как Ubuntu. Использовать dir перечислять содержание каталога.) Удостоверяются файл, который Вы имеете, имеет то же имя файла как тогда, когда Вы получили его.

Теперь выполненный zsync одним из этих способов, в зависимости от которого ISO-образа Ubuntu это:

  • 12.10, 32-разрядный:

    zsync http://releases.ubuntu.com/quantal/ubuntu-12.10-desktop-i386.iso.zsync
    
  • 12.10, 64-разрядный:

    zsync http://releases.ubuntu.com/quantal/ubuntu-12.10-desktop-amd64.iso.zsync
    
  • 12.04.1 LTS, 32-разрядный:

    zsync http://releases.ubuntu.com/12.04.1/ubuntu-12.04.1-desktop-i386.iso.zsync
    
  • 12.04.1 LTS, 64-разрядный:

    zsync http://releases.ubuntu.com/12.04.1/ubuntu-12.04.1-desktop-amd64.iso.zsync
    
  • 12.04 LTS (перед 12.04.1 доработанными версиями), 32-разрядный:

    zsync http://old-releases.ubuntu.com/releases/precise/ubuntu-12.04-desktop-i386.iso.zsync
    
  • 12.04 LTS (перед 12.04.1 доработанными версиями), 64-разрядный:

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

После того как Вы выполняете одну из тех команд, zsync автоматически исправит Ваш ISO до правильной версии, и Вы хороши для движения.

Используя zsync для других файлов

Общий синтаксис - то, что Вы работаете zsync сопровождаемый полным URL для .zsync файл на сервере, который имеет то же имя как файл, из которого Вы имеете версию и хотите загрузить (кроме с .zsync в конце курса).

В случае, если любой хочет сделать, это для любых других релизов Ubuntu (или другие файлы ISO для того же выпуска, как версия, оптимизированная для начальной загрузки правильно на Mac или версии для основанных на ARM мобильных устройств) вот правило для где .zsync файлы расположены:

  • ISO-образы, содержащие в настоящее время поддерживаемые установщики, включая ISO для последней доработанной версии выпусков LTS и весь ISO для в настоящее время поддерживаемых выпусков LTS, расположены в:

    http://releases.ubuntu.com/

  • ISO-образы для выпусков конца жизненного цикла (который Вы не должны использовать так или иначе) или предыдущие доработанные версии поддерживаемых выпусков LTS расположены в:

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

Просто нажмите на ссылку для своей версии и прокрутите вниз для наблюдения полного списка файлов (или искать страницу .zsync). Затем скопируйте URL и вставьте его в zsync команда.

Используйте в "Обновлении"

Можно также использовать zsync "обновить" один ISO до другого. Это должно будет, вероятно, повторно загрузить большую часть файла, если Вы обновляете от одного релиза Ubuntu до другого. Но если Вы обновляете доработанные версии (как 12.04 LTS к 12.04.1 LTS), это не должно загружать вполне столько же. Это - отличный способ получить новую доработанную версию быстро и эффективно.

Просто переименуйте старый файл, таким образом, он имеет то же имя как новый файл, затем выполненный zsync как выше.

БитТоррент

Когда Ваше Интернет-соединение имеет высокий показатель ошибки, БитТоррент часто является одним из лучших способов загрузить файлы надежно. Файлы разделены на многие маленькие части, и каждая часть загружается и проверяется, чтобы видеть, является ли это реальная вещь. (Отдельные части могут быть загружены с различных компьютеров, который является тем, что позволяет БитТорренту постараться не создавать нагрузку для центрального сервера и достигать скоростей часто быстрее, чем возможные с веб-загрузками.)

Потоки для Ubuntu 12.10 и Ubuntu 12.04.1 могут быть получены здесь.

Вам будет нужен БитТоррент "клиент" для загрузки его. Если у Вас уже нет того, который Вы предпочитаете, поскольку Windows I рекомендует BitTornado.

После загрузки я рекомендую отбору некоторых, если Вы можете, для возвращения сообществу. (С БитТоррентом это от людей как Вы.) Вы не должны делать этого сразу же, хотя - можно возвратиться в программу БитТоррента и отобрать позже. Можно даже выйти из него, в то время как загрузка не закончена, и возобновите его в любое время.

Использование БитТоррента для фиксации файла Вы имеете

Предупреждение: Этот подраздел не также исследуется как остальная часть ответа. Я не протестировал использование БитТоррента для фиксации поврежденных файлов недавно, или в Windows, или с BitTornado. Я ожидаю, что это работало бы на Вас, но я не могу быть уверен.

В то время как БитТоррент не является столь же наиболее часто используемым с этой целью как zsync, сам протокол БитТоррента так же способен к нему.

Некоторые программы БитТоррента сделают это - другие откажутся или загрузят целый файл с нуля - если файл, с которого Вы запускаете, не будет точно тем же размером. (Удобно, поврежденная загрузка часто является тем же размером как корректный файл.)

Поместите старый ISO-образ в ту же папку как .torrent файл. Удостоверьтесь, что Ваша программа БитТоррента загружает поток там. Это проверит, чтобы видеть, хорош ли Ваш текущий файл. Когда это видит, что некоторые части являются неправильными, это может повторно загрузить их.

Для некоторых программ БитТоррента необходимо импортировать файл как происходящий поток, или открыть его для отбора, чтобы сделать это.

34
ответ дан 11 January 2013 в 12:21

Вы можете использовать ISO Master , если вы хотите добавлять и удалять файлы в ISO. Он доступен как для Windows, так и для Linux.

0
ответ дан 11 January 2013 в 12:21

Другие вопросы по тегам:

Похожие вопросы: