Решение проблем с пустыми репозиториями Cydia после джейлбрейка
Минувшей ночью у нас на почте собралась приличная коллекция похожих вопросов: счастливые пользователи сделали себе джейлбрейк с помощью Absinthe или seas0npass, но радость продолжалась недолго. При попытке что-либо установить из Cydia ничего не получалось, потому что большинство нужных пакетов и твиков просто не находились через поиск. Более того, многие стандартные репозитории Cydia (например, BigBoss или Modmyi) изначально были пусты.
Напомним несколько простых советов по борьбе с такой напастью.
Если у вас опустели репозитории в Cydia, нет смысла нажимать на кнопку Reload на главной странице, с большой долей вероятности она вам не поможет. Нужно перейти на вкладку Changes и нажать там кнопку Refresh.
В том случае, если и это не поможет, подключите устройство к компьютеру, запустите любой файловый менеджер (например, iExplorer), зайдите на своём гаджете в папку /var/lib/apt/lists/ и удалите всё, кроме папки partial. После этого перезагрузите устройство.
Если похожие проблемы с невозможностью найти или установить что-либо настигли вас на Apple TV, нужно узнать IP-адрес приставки (меню Настройки-Основные-Сеть), затем запустить Терминал и ввести там следующие команды:
[php]ssh root@10.0.1.5
yes
alpine
killall -9 apt-get aptitude
rm -f /var/lib/apt/lists/lock
apt-get -y update[/php]
10.0.1.5 замените на IP-адрес Apple TV. После ввода всех команд потребуется перезагрузка приставки.
Источник
Cydia не работают репозитории
Возможные проблемы Сидии и их решения.
Читаем внимательно, ищем свою ошибку.
ОШИБКА: Сydia в маленьком окне
РЕШЕНИЕ: Часто возникает из-за твиков RetinaPad или Deck HD. Чтобы устранить ошибку переведите устройство в безопасный режим, затем выйдите из него. Cydia должна отображаться на весь экран.
ОШИБКА: «Failed to fetch» и «Some index files failed to download,
they have been igonred oldones used instead.»
РЕШЕНИЕ: Проверьте соединение с интернетом / сервер сидии временно недоступен.
ОШИБКА: «Wow you exceeded the number of package names this APT is capable of. «
РЕШЕНИЕ: Превышено количество допустимых репозиториев. Удалить поочередно лишние репозитории, пока не исправится ошибка. Не трогаем стандартные репо: BigBoss, Cydia/Telesphoreo, Dev Team, ModMyI и ZodTTD.
ОШИБКА: «NetDB: Open nodename nor servname provided, or not known.»
РЕШЕНИЕ: С помощью IFile или iFunBox удаляем все строки из файла cydia.list по пути /private/etc/apt/sources.list.d/cydia.list и удаляем файл metadata.plist по пути /private/var/lib/cydia/ .
После этих манипуляций добавляем все репозитории вручную.
ПРИМЕЧАНИЕ: Еще бывает что ошибка возникает когда нет доступа к интернету.
ОШИБКА: «I wasn’t able to locate file for the app.*** . you need to manually fix this package.»
РЕШЕНИЕ: Это означает, что твик неполностью скачался. Переустанавливаем твик.
Переходим Cydia – Change – Жмем Refresh в верхнем левом углу и Re-install в подменю твика.
ОШИБКА: «Trying to the overwrite» и «Sub-process /usr/bin/dpkg returned an error code (1).»
РЕШЕНИЕ: Устанавливаемый твик конфликтует с существующими файлами (твиками, настройками)
на девайсе. Найти конфликтующий твик и принять меры.
ОШИБКА: «Sub-process usr/bin/dpkg returned an error code (2)»
РЕШЕНИЕ:
1) Запускаем Cydia
2) В установленных файлах находим твик gzip и в подменю жмем reinstall
3) Находим твик bzip2 и в подменю жмем reinstall
4) В Сидии переходим в Changes и нажимаем на Refresh
5) Ждем, когда Cydia обновится.
ОШИБКА: «Some index files failed to download.»
РЕШЕНИЕ: Скачать твик не удается, попробуйте загрузить снова.
(Возможно сервер перегружен или файлы были удалены).
ОШИБКА: «Root directory’s space is not enough.»
РЕШЕНИЕ: Память заполнена, попробуйте освободить место на диске и перезагрузить Cydia.
ОШИБКА: «POSIX: Operation timed out.»
РЕШЕНИЕ: Ошибка сети, попробуйте через некоторое время.
ОШИБКА: «Hash Sum mismatch.»
РЕШЕНИЕ: Повторная загрузка исправит ошибку.
Если не помогло, тогда попробуйте очистить кэш Cydia.
ОШИБКА: «Size mismatch.»
РЕШЕНИЕ: Обновите Cydia (Refresh), если ошибка останется, тогда удалите пиратские источники,
прежде чем повторить загрузку (обновление).
ОШИБКА: «HTTP/1.0 403 error.»
РЕШЕНИЕ: Вы хотите установить платный твик. Если вы его покупали, а ошибка не лечится никак, тогда зайдите в свой аккаунт, в «Управление учетной записью» добавьте текущее устройство, а затем попытайтесь загрузить и установить твик снова.
ОШИБКА: «HTTP/1.1 500 Internal Server Error»
РЕШЕНИЕ: Сервер сидии перегружен, попробуйте позже.
ОШИБКА: Не устанавливаются стандартные репозитории после удаления.
РЕШЕНИЕ: В главном окне сидии нажать на More Package Sources и добавить оттуда репозиторий.
ОШИБКА: В репозиториях и в поиске не отображаются никакие пакеты (твики).
РЕШЕНИЕ: Удалить последний добавленный репозиторий и перезагрузить устройство.
ПРИМЕЧАНИЕ: С данной проблемой я столкнулся случайно и мне помог этот способ. Не стоит брать его за прецедент.
Источник
Cydia — возможные проблемы и их решения.
В данной теме я предлагаю обсуждать возникающие при работе с Cydia проблемы, а также описывать их решения, делясь опытом и помогая софорумчанам.
Прошу не оффтопить и не засорять тему постами, типа: «У меня такая же фигня, уж и не знаю, что делать. «, подобные посты будут удаляться!
[HR=»1″][/HR]
Для начала можно сделать «диагностику» Cydia:
В терминале или через SSH набрать следующее
Прочесть ошибки, при их наличии.
* Иногда простой запуск подобной диагностики решает часть проблем.
** Для работы APT должны быть установлены пакеты APT и Aptitude из Cydia.
Начну с нескольких типичных проблем и манулов по их решению.
1. Cydia вылетает сразу после загрузки или encountered a section with no package header
«скрин ошибки»
Решить данную проблему можно двумя способами:[INDENT]
- Любым файлменеджером иедм в папку //var/lib/apt/lists/ и удаляем все фалы в ней, также удаляем все файлы во вложенной папке //var/lib/apt/lists/partial.
Перегружаем тело, радуемся результату.
По неподтвержденной информации можно также почистить директорию /var/lib/dpkg/updates/. - Скачиваем архив , разархивируем, подключаем тело к PC и запускаем скрипт.
После выполнения скрипта, перегружаем тело, заходим в сидию и обновляемся. Радуемся результату.
[/INDENT]2. Ошибки умерших или недоступных репозиториев (Bzip2).
При добавлении новых репо, могут появляться ошибки умерших или времено неработающих репозиториев, а также при загрузке Cydia может появляться ошибка Bzip2.
Решаем данную проблему:[INDENT]
- Если проблемны с репозиториями, которые вшиты (bigBoss, iSpazio, etc), то любым файлменеджером идем в папку //etc/apt/sourses.list.d и удаляем файл с именем проблеммного репозитория.
Не забываем предварительно сделать бекап на PC/Mac (лучше всей папки sourses.list.d). - Если проблемы с репозиториями которые добавлены вручную, то их можно просто удалить через Cydia (Manage-Sources-edit).
- Если проблемы с репо, которые установлены пакетно, то их тоже удаляем через Cydia (Manage-Packages-выбираем репо—modify-remove).
[/INDENT]После перезагрузки тела ошибка Bzip2 больше не появится.
3. Не добавляется репозиторий.
При добавлении новых репо, могут появляться ошибки, например «not found».
Возможные решения в зависимости от проблемы:[INDENT]
- Репозиторий не доступен (не работает в данный момент). -> Почитать форум, может кто-то об этом сообщал.
- Введен не верный адрес. -> Проверить правильность написания названия (многие забывают ставить «/» в конце названия)
- Нет сети. -> Проверить подключение к сети (например, istat — ping www.ru )
[/INDENT]4. Cydia вылетает сразу после «Reloading Data»:
Решить данную проблему можно так:[INDENT]
В терминале или через SSH набрать следующее:
5. Пропала иконка Cydia:
Иконка Cydia пропала после установки новых пакетов и респринг не возвращает ее.
Решить данную проблему можно так:[INDENT]
1) Скопировать на компьютер из /applications/cydia.app иконку Cydia icon.png
2) Убить ее (icon.png) на теле
3) Респринг, белая иконка должна появиться на спрингбоарде.
4) Скопировать иконку Cydia (icon.png) с компьютера назад в /applications/cydia.app
5) Респринг.
[/INDENT]6. Проблемы с подключением по вафле (WiFi)
Симптомы:
Коннект по вафле-прогруз сурсов-еррор кеша-одно нажатие(переход по вкладкам)-вылет!
Коннект по EDGE — все пашет отлично!
Вафля рабочая на 100%! на теле работает и почта и сафари, а сидия не хочет!
Решаем данную проблему[INDENT]
- Как ни странно, через пару дней все само приходит в норму, если не к спеху, можно подождать.
- Проблема может появляться из за зависимостей в Cydia, в которых участвует библиотека libgcc. Для решения проблемы можно установить патч .
Патчик посоветовал geniusan, где-то нарыл)
[/INDENT]Если никакие вышеописанные действия не помогают, и танцы с бубном тоже не приводят к результату, то множно переустановить Cydia:
Переустановка Cydia (3 способа):[INDENT]
- В терминале или через SSH набрать следующее:
Перезагрузка (иногда 2 раза).
Если установлен iFile !
Cкачать скачать Cydia v.1.1.3 и положить на тело (/var/mobile).
Открыть iFile и зайти в папку /var/mobile.
Нажать на закинутый дэб
Выбрать Установщик
После надписи «Установлено с кодом 0» закрыть iFile и перезагрузить тело
Cydia.deb (архив):
Cydia v.1.1.5 (версия сидии, идущая в комплекте привязанного джейла для iOS 5.1)
Cydia v.1.1.4 (версия сидии с незначительными улучшениями/ изменениями и исправлением ошибок для девайсов с A5 — iPhone 4S и iPad2; идёт вместе с Absinthe)
Cydia v.1.1.3 (актуальная на данный момент версия для девайсов с iOS4/5)
* версии 1.1.4 и 1.1.5 также тестировались на iPhone 4 c iOS 5.0.1 — работают без нареканий
Что делать, если вы удалили стандартные репозитории
Источник
Cydia не работают репозитории
Только для девайсов с jailbreak-ом!
Инструкции по получению джейлбрейка для своей iOS смотрите в этом разделе:
[FAQ] Путеводитель по инструкциям для получения джейлбрейка
Для решения некоторых проблем вам могут понадобится:
ˇЗаходите в Режим Safe Mode (безопасный режим), после чего идете в Cydia и удаляете проблемный твик.
— Идете по пути /Library/MobileSubstrate/DynamicLibraries ˇ
— По очереди переименовываете твики ( НАЗВАНИЕ_ТВИКА.dylib переименовываем, например, в НАЗВАНИЕ_ТВИКА.disabled ) и перезагружаете девайс.
Т.е. переименовали один твик, перезагрузились. Переименовали следующий, перезагрузились.
Таким образом, вы найдете твик, из-за которого произошел сбой работы системы.
Обнаружив проблемную программу, вы сможете удалить ее через Cydia
ˇ
Как видите у меня есть репозиторий с названием «vk.com», а добавился он таким образом из-за того что ссылка была скопирована с социальной сети Вконтакте. И так приступим к удалению данного репозитория:
Для этого на понадобится:
— iFile или Filza File Manager (если редактируем на устройстве);
— iFunBox [PC] или iTools [РС] (если редактируем на ПК)
Через текстовый редактор открываем файл /User/Library/Caches/com.saurik.Cydia/ sources.list
(в старых версиях Cydia /var/lib/cydia/ metadata.plist
( если используете iFunBox [PC] или iTools [РС] , файлы сначала скачиваем на компьютер и открываем через программу plist Editor Pro [PC] . После редактирования закидываем файлы обратно на девайс )
Находим строки связанные с «ненужным репозиторием» и удаляем их.
Т.е. удаляем строчки с » deb. » по » «.
Нажимаем сохранить. Перезапускаем Cydia и все — репозиторий удален.
Внимание! В новых версиях Cydia необходимо редактировать файл com.saurik.Cydia.plist , который находится в директории /User/Library/Preferences .
Если у вас не хватает навыков редактирования plist-файлов, просто удалите этот файл com.saurik.Cydia.plist и перезапустите Cydia (а лучше перезагрузите устройство). Но в данном случае загрузятся только стандартные репозитории, все пользовательские (включая неудаляемый ранее) удалятся.
- Для Uncover iOS 12 после удаления нужной строчки зайдите в приложение Uncover
- Далее в Настройки и поставьте ползунок на «Reset Cydia Cashe”
- После вернитесь на главную вкладку
- Сделайте “Re-Jailbreak”. Иначе репозиторий ссылкой так и останется висеть, даже после редактирования .plist
В некоторые репозитории Cydia встроена реклама. Реклама эта в виде javascript-a и перенаправляет пользователя с Cydia в AppStore.
Говоря простым языком, бегаем мы по репозиториям Cydia, смотрим различные приложения, а потом бац! и нас выкидывает в AppStore, где предлагают установить на девайс какую-нибудь ненужную программулину.
Вернемся к скриншоту.
В окошке у пользователя Cydia спрашивает, что делать с такими редиректами — открывать AppStore или нет. Если мы хотим, чтобы Cydia нас перенаправляла, значит нужно нажать «Allow». Если мы хотим отказаться от перенаправлений — жмем «Отмена».
Рекомендую нажать именно «Отмена», а также ознакомиться с темой [FAQ] Как убрать рекламу — в ней полностью раскрыт вопрос о рекламе на девайсе (в том числе и Cydia)!
1. Заходим в /var/lib/dpkg/
2. Открываем status через текстовый редактор.
Ищем тот твик, из-за которого произошла ошибка.
Удаляем полностью блок, содержащий в себе данные об установленном пакете.
Пример с пакетом OpenSSH: (вы, соответственно, ищете тот, из-за которого произошла ошибка)
| |
3. Перезапускаем Cydia (а лучше перезагрузить устройство)
4. Если после этого Сидия не заработала, делаем тоже самое с файлом available ( /var/lib/dpkg/ )
Допустим, у нас вылезла ошибка:
По первому способу:
Переустанавливаем deb-пакет программы bossios8 (com.macciti.bossios8.deb)
По второму способу:
Редактируем /var/lib/dpkg/ status
| |
По третьему способу:
Вводим в командной строке:
ˇ
Ошибка вызвана тем, что Cydia не может обнаружить deb файл, т.к. он не скачался полностью из репозитория. Поэтому вариантов решения проблемы два:
- Открываем Cydia и идем во вкладку Sections (Источники) и жмем кнопку Refresh (Обновить), после чего пробуем установить программу (ранее из-за которой была вызвана ошибка) заново. Если ошибка и в этот раз не пропадет, нужно немного подождать, скорее всего, репозиторий перегружен из-за большого наплыва пользователей.
- Вариант для более продвинутых. Устанавливаем необходимые файлы вручную.
Скачиваем на 4PDA или любом сайте программу, из-за которой была вызвана ошибка, в формате deb и устанавливаем одним из следующих способов [FAQ] Установка *.deb и *.app
Примечание: Если вы устанавливали, скажем, программу Activator а ошибка вылезла, допустим, об осутствующем файле com.saurik.substrate.safemode, это означает, что вам необходимо помимо самого твика (Activator) скачать и зависимости к нему. В данном случае это com.saurik.substrate.safemode
ˇ
Установщик не может записать информацию на диск. Скорее всего, на девайсе просто недостаточно дискового пространства (в систем разделе или в пользовательском, или и то, и другое).
Что делать?
1. Нужно посмотреть сколько места осталось (в Cydia «жмем на вкладку Cydia — Хранилище — Хранилище» или через сторонние программы, (например, через Disk Pie), и если его действительно нет, удаляем тяжелые файлы из аппарата (темы, ненужные твики и пр. Если пользуемся файловыми менеджерами типа iFile, очищаем корзину)
После чистки пробуем переустановить программу, которую пытались установить ранее.
2. Если проблем с дисковым пространством нет, пробуем переустановить Cydia Installer
+ все данные сохраняются
— требуется заранее установленный пакет терминала (для запуска на команд с устройства) или пакеты OpenSSH и OpenSSL (для запуска команд с ПК), или AppSync (для установки терминала без Cydia)
- На девайсе с помощью Filza File Manager или iFile
- На ПК с помощью iFunBox, iTools или WinSCP
- Идем в /var/lib/dpkg/updates
- Удаляем все содержимое (предварительно сделав backup)
- Перезагружаем устройство
При установленном на устройстве пакете OpenSSH пользователи iFunBox также могут воспользоваться решением «1. С помощью командной строки«
+ никакие данные не теряются
— требуется заранее установленный файловый менеджер (если выполняем на девайсе) или afc2add (или его аналог — Apple File Conduit «2») — если выполняем на ПК.
Воспользуйтесь Semi-Restore for iOS — все пользовательские данные будут удалены, на выходе получите чистое устройство с джейлбрейком.
+ простое восстановление, джейлбрейк сохраняется
— потеря пользовательских данных, требуется заранее установленный пакет OpenSSH, не для всех версий iOS
Самый простой вариант: введите устройство в режим DFU и восстановите прошивку. При этом джейлбрейк и все данные будут потеряны. Убойный способ, рекомендуется пользоваться им в случае, если все остальные шаги не помогли.
+ простое восстановление с гарантией
— потеря данных и джейлбрейка
ˇПакет, который вы собираетесь установить, конфликтует с другим уже установленным ( в сообщении об ошибке как раз указывается с каким именно файлом происходит конфликт и в состав какого пакета этот файл входит ). Поэтому избавиться от данной ошибки можно, удалив эту конфликтующую программу ( в Cydia переходим во вкладку «Установлено», ищем конфликтующий пакет, жмем на него и в правом верхнем углу жмем «Удалить» )
- Скачиваем Terminal.ipa
- Устанавливаем скачанный файл с помощью Cydia Impactor: Установка *.deb и *.ipa
- Скачиваем iFunbox с офф-сайта: http://www.i-funbox.com/
- Затем качаем и разархивируем архив скачать
- Переносим папку ‘lib’ (проверьте, что в ‘lib’ лежат уже другие папки, а не снова ‘lib’) в папку ‘iBooks’ через iFunbox (путь к ней будет: /var/mobile/Media/Books).
Для доступа к ней вам НЕ понадобится root (AFC 2) - Запустите MobileTerminal на устройстве. (без джейлбрейка не запустится)
Решить данную проблему можно несколькими способами:ˇ
С помощью файлового менеджера (iFile или Filza File Manager — на девайсе, iFunBox [PC] — на ПК) переходим в файловую систему iOS:
— Переходим в директорию /var/lib/dpkg/. В этой директории видим файлы: available, availble-old, status, status-old
— Переименовываем файл «available» в «available-bak«
— Переименовываем файл «status» в «status-bak«
— Переименовываем файл «available-old» в «available«
— Переименовываем файл «status-old» в «status«
— Запускаем Cydia и ждем, когда полностью загрузится и пробуем установить любой твик.
Если файлов «available-old» и «status-old» у вас нет, смотрите следующий способ
- Открываем командную строку
- Входим в режим суперпользователя
- Далее вводим
- Открываем любой файловый менеджер
- Идем по адресу /var/lib/dpkg и копируем файлы available и status на компьютер (или в любую другую папку на девайсе). Т.е. делаем backup этих файлов.
- Далее скачиваем архив
available+status.zip ( 10,16 КБ )
Распаковываем его. - Копируем с заменой распакованные файлы из архива в /var/lib/dpkg
Копировать именно с заменой нужно для того, чтобы не слетели права доступа и собственности — файлы «available» и «status» изначально имеют нужные права. Поэтому когда мы копируем файлы с заменой, эти права сохраняются. А когда мы переименовали файлы на девайсе (в, скажем, status.bak и available.bak), а затем залили из архива, то наши новые файлы available и status будут уже иметь права доступа и собственности совершенно другие, что приведет к дееспособности Cydia. В общем, заливаем файлы из архива на девайс поверх старых! - Запускаем Cydia
ˇОшибка вызвана тем, что Cydia может индексировать только 65535 пакетов. Т.е. в сумме во всех репозиториях на вашем девайсе должно хранится пакетов менее этой цифры.
Таким образом, всё, что вам не обходимо сделать, это удалить репозиторий с большим количеством пакетов (например, repo.insanelyi.com)
Примечание: начиная с Cydia 1.1.10 , данные ограничения в Cydia отсутствуют!
Источник