Как исправить файл hosts, если ваш гаджет не хочет прошиваться в iTunes?

В последние дни и недели мы получили более десятка однотипных вопросов: пользователи жалуются на то, что не могут прошить свои гаджеты на официальную прошивку 5.0, потому что iTunes заявляет «This device isn’t eligible for the requested build». Именно поэтому мы решили опубликовать развёрнутое описание и решение проблемы. Сразу скажем — причина в том, что файл hosts вашей операционной системы содержит строки, блокирующие доступ iTunes к активационным серверам Apple.

Итак, в чём суть проблемы? iTunes перед прошивкой обращается на серверы Apple, посылая туда сведения о вашем гаджете и о прошивке, которую вы туда пытаетесь поставить. Если прошивка относится к числу поддерживаемых, серверы Apple подписывают её хешем SHSH и высылают iTunes этот хеш. Программа TinyUmbrella, которая используется для бэкапа хешей SHSH, имеет одно неприятное свойство — она норовит прописать в файл hosts строку, перенаправляющую iTunes от серверов Apple на серверы Cydia. Эти махинации нужны для того, чтобы прошить ваш гаджет на уже неподписываемую Apple прошивку, для которой у вас сохранены хеши.

Что происходит, если вы пытаетесь прошиться на самую свежую прошивку с блокирующей строчкой в файле hosts? На серверах Cydia хешей для новой прошивки ещё нет, потому что они туда попадают с большим опозданием. Соответственно, iTunes не получает нужные хеши и блокирует прошивание, выдавая показанную на скриншоте выше ошибку.

Как решить проблему?

Mac OS X

Запустите Терминал и введите команду

sudo -s

Затем введите пароль от своей учётной записи вслепую и нажмите Enter. Потом введите:

nano /etc/hosts

Прямо в Терминале откроется текстовый редактор:

Ваша цель — найти и удалить строку 74.208.10.249 gs.apple.com. Можно обойтись без радикальных мер и просто её закомментировать, поставив в начале строки решётку (#74.208.10.249 gs.apple.com). Учтите, что перемещаться внутри терминального редактора придётся без мыши, одной лишь клавиатурой. Курсором является серый прямоугольничек.

После того, как вы внесли правки в файл hosts, нажмите на клавиатуре Ctrl+X. Затем нажмите Y, затем — Enter. Остаётся перезагрузиться либо вбить в Терминал команду:

dscacheutil -flushcache

На этом всё. Чтобы файл hosts не обновлялся после каждого запуска TinyUmbrella, нужно в настройках этой утилиты снять галочку Set Hosts to Cydia on Exit:

Windows

Найдите в меню «Пуск» Блокнот и в его контекстном меню выберите пункт «Запуск от имени администратора». В Блокноте нажмите «Открыть» и укажите путь к файлу hosts;  в Windows этот путь таков: C:\Windows\System32\drivers\etc\hosts. Исправьте файл и сохраните его.