The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Восстановление "битого" iso образа при помощи rsync

В данном примере показано восстановление образа снятого с "криво" записанного диска FreeBSD 6.0.

1. Находим при помощи гугла rsync-зеркала с интересующими нас образами. Для задачи из примера их список можно увидеть здесь.

Выбираем ближайшие зеркала с отметкой rsync напротив адреса: ftp2.ru.freebsd.org и ftp5.ru.freebsd.org.

2. Узнаем какие "модули" доступны у выбранных rsync-серверов при помощи команды:


     rsync -n -vv ftp2.ru.freebsd.org::

Ответ - два слова FreeBSD, откуда заключаем, что имя интересующего нас модуля - FreeBSD. Для сервера ftp5.ru.freebsd.org узнать имя модуля таким способом не удастся - этот сервер возвращает в ответ только информацию "рекламного" характера. Пояснения к команде: ключ -n не позволяет утилите rsync загружать ничего; ключ -vv позволяет увидеть на экране больше информации о происходящем; два двоеточия после имени сервера обязательны (можно использовать вместо них rsync:// перед именем сервера, но это длиннее).

3. Изучаем расположение каталогов и файлов на сервере:


     rsync -n -vv ftp2.ru.freebsd.org::FreeBSD/

К предыдущей команде добавлено имя модуля и следующий за ним слэш (/). Слэш нужен для указания того, что необходимо отобразить листинг директории, а не ее саму. В результате выполнения команды можно увидеть, что файловая структура (в данном случае) повторяет расположение файлов на FTP-сервере. После чего определяем где лежат искомые образы (листаем интересующие нас каталоги) и продолжаем. К сожалению, у меня не получилось заставить работать ключик --list-only из man rsync и пришлось находить вышеописанный способ методом научного тыка.

4. Предположим, что образ диска уже снят, например так:


     readcd dev=ATA:1,0,0 speed=8 -noerror f=/path/to/6.0-RELEASE-i386-disc1.iso

(Подробности в man readcd) И контрольная сумма образа не совпадает с суммой образа с официального веб-сайта.

5. Восстанавливаем образ командой:


     rsync --stats --progress -z -vv \
      ftp5.ru.freebsd.org::FreeBSD/ISO-IMAGES-i386/6.0/6.0-RELEASE-i386-disc1.iso \
      /path/to/freebsd/6.0-RELEASE-i386-disc1.iso \

Пояснения к команде: -z желателен для сжатия передаваемой информации (действенность не проверял); --stats выводит после окончания подробную информацию о сделанном; --progress отображает процент выполнения текущей задачи.

6. Убеждаемся, что сумма восстановленного образа совпадает с суммой образа с официального сайта.

Данным методом я восстановил образы дисков с FreeBSD 6.0, записанных при помощи программы Nero добрым человеком с толстым каналом. readcd ругался на эти диски в самом конце каждого из них. Входящий трафик, в моем случае, для обоих дисков составил меньше 1 Mb.

 
06.03.2006 , Автор: greyork
Ключи: iso, rsync, recover, cdrom / Лицензия: CC-BY
Раздел:    Корень / Пользователю / CD, CD-R, DVD, AudioCD

Обсуждение [ RSS ]
  • 1.1, zyxman (?), 21:12, 03/04/2006 [ответить]  
  • +/
    огромное спасибо автору!

    кстати, аналогично "полечил" образ 5.4r:
    вначале с помощью md5 -q fbsd5.4-release.iso ; cat
    обнаружил что хеши не совпадают с теми что на www.freebsd.org, затем сделал:

    rsync -n -vv ftp2.ru.freebsd.org::FreeBSD/ISO-IMAGES-i386/5.4/

    - посмотрел что на серваке в папке FreeBSD/ISO-IMAGES-i386/5.4/

    и в итоге "починил" образ - траффик составил менее 200к:

    rsync --stats --progress -z -vv \
         ftp2.ru.freebsd.org::FreeBSD/ISO-IMAGES-i386/5.4/5.4-RELEASE-i386-disc1.iso \
          ./fbsd5.4-release.iso

     
  • 1.2, silver (??), 01:25, 18/05/2006 [ответить]  
  • +/
    Воспользовался инструкцией для востановления
    Все СУПЕР!
    Спасибо
     
  • 1.3, loki (??), 20:34, 10/11/2006 [ответить]  
  • +/
    Спасибо! Отличная хаутушка.
     
  • 1.4, Аноним (-), 05:08, 27/12/2009 [ответить]  
  • +/
    А если смещения поехали (не хватает допустим одного байта где-нибудь в начале файла)? rsync не подавится?
     
     
  • 2.5, Aquarius (ok), 13:51, 22/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >А если смещения поехали (не хватает допустим одного байта где-нибудь в начале
    >файла)? rsync не подавится?

    не подавится, разработчики учли, что rsync'у на блюдечке с голубой каемочкой тепличные условия не принесут

     

  • 1.6, rsync (?), 16:09, 27/04/2010 [ответить]  
  • +/
    помогло но надо опцию -c

    rsync --stats --progress -z -c -vv mirror.yandex.ru::calculate/CDS/10.4/x86_64/cds-10.4-x86_64.iso cds-10.4-x86_64.iso

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру