Изменение размера / системный раздел Galaxy S 2


21

Мне нужно увеличить размер /systemраздела Galaxy S 2 с 503,4 МБ до ... Ну, все возможно.

(Основная) причина, по которой я хочу это сделать, заключается в том, что я хочу установить GApps 20140606, что несовместимо с устройствами с небольшими (менее 500 МБ) /system разделами.

Внутренняя память Galaxy S 2 составляет 16 ГБ, но я в основном использую свою SD-карту, поэтому мне все равно, сколько из этого будет использовано в /systemразделе.

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

Есть также этот вопрос от Android SE , но ответ не был достаточно удовлетворительным для меня, так как автор ограничился только тем, что сказал, что это возможно , но не сказал, как это сделать .

Чтобы добавить еще немного информации, телефон рутирован и с CyanogenMod 11 (20140806-NIGHTLY), то есть Android 4.4.4.

Было бы интересно, если представленная информация работает под Linux. У меня есть доступ к Windows, но я не должен его использовать.

Нет ли простого способа изменить размеры разделов, как GParted (но для Android)?


1
Просто добавлю, что мне удалось успешно изменить его размер. Я напишу ответ, подробно объясняя, как это сделать. Это не сложно.
Бруно Фингер

1
У вас когда-нибудь был шанс написать этот ответ? Я также заинтересован в переразметке моего S2. Спасибо
Mikeage

@Mikeage Извините за это, я думаю, что у меня есть сообщество, и этот ответ теперь, когда я сделал этот комментарий ... Я пишу это прямо сейчас, проверьте это в ближайшее время :)
Bruno Finger

1
@Mikeage проверь ответ и удачи;)
Бруно Фингер

Ответы:


21

Во-первых и самое главное, кредиты:

Я сделал это, следуя этому замечательному учебнику для разработчиков XDA metalgearhathaway: http://forum.xda-developers.com/galaxy-s2/development-derivatives/mod-partition-internal-memory-app-t2538947.

Я использовал PITфайлы (я объясню, что это такое, не волнуйтесь), сделанные также от пользователя ElGamalиз XDA, расположенные здесь (комментарий № 509) .

И немного помощи от пользователя CrackDaddy, а также от XDA.

Во-вторых, что вам нужно:

  • Машина под управлением Windows. Я использовал 64-битную Windows 7 Ultimate;
  • Один 3.07. Тщательный при установке, он полон дополнительных AdWares. Существует также версия для Linux и Mac под названием JOdin3, но я не пробовал ее;
  • Flashable ClockWorkMod 6 для Galaxy S II (это .tarфайл с именем файла zImageвнутри);
  • PIT файл с желаемой конфигурацией таблицы разделов;
  • Драйвера Samsung для Galaxy S2. Обычно вы можете установить Samsung Kies, но есть также установщик только с доступными драйверами;
  • Ваша оригинальная стоковая рутированная прошивка Samsung Jellybean. Вы можете найти его на sammobile.com ;
  • Любое ПЗУ на ваш выбор. Я настоятельно рекомендую последнюю ночную сборку CyanogenMod 11;
  • Опционально: GApps 20140606 или новее.

Я сделал большинство из них доступными в следующем файле пакета: https://drive.google.com/open?id=0BxccpydIocBpd21FOE5MaGJiMkU&authuser=0

Чего не хватает, так это GApps, CyanogenMod и стокового ПЗУ Samsung JellyBean (поскольку это зависит от страны и оператора и может быть не разрешено предоставлять его здесь).

В-третьих, предупреждение по умолчанию:

Я не несу ответственности за все, что может пойти не так с вашим устройством, ни за кого-либо из упомянутых пользователей, ни за кого-либо из сотрудников Stack Overflow или разработчиков XDA. Эта процедура будет рутировать ваш телефон, если это еще не сделано, а также аннулирует вашу гарантию, если это еще не сделано. Если что-то пойдет не так, не паникуйте, скорее всего, это можно исправить, перепрошив стандартное ПЗУ и начав сначала.

Наконец, как:

Это будет работать только с 16 ГБ международной версией (GT-I9100) Samsung Galaxy S II

Во-первых, скопируйте .zipфайл CyanogenMod 11 (или желаемое ПЗУ) и, возможно, .zipфайл GApps на внешнюю SD-карту;

Сделайте резервную копию всего внутри вашего внутреннего хранилища, скопируйте его на свой компьютер или в другое место. Это будет полностью стерто. Не беспокойтесь о вашей внешней SD-карте, она не будет затронута.

Сделайте резервную копию вашего текущего ПЗУ, вы сможете восстановить его после переразметки. Для этого у вас должно быть установлено восстановление ClockWorkMod, затем загрузите телефон в режиме восстановления ( Volume UP + Home + Power), выберите backups and restore, затем backup to /storage/sdcard1;

По завершении резервного копирования перезагрузите телефон в режиме загрузки ( Volume DOWN + Home + Power) и подключите телефон к компьютеру. Позвольте Windows установить драйверы. Если это не удается, попробуйте установить Samsung Kies или только драйверы, представленные в комплекте, который я сделал доступным, и попробуйте снова.

Откройте Odin3 в качестве администратора и подключите телефон. Он должен обнаружить ваш телефон и показать его под ярлыком ID:COM, а также в Message. Если этого не произошло, попробуйте перезагрузить компьютер, телефон, переустановить драйверы, проверить кабель USB и т. Д. И повторить попытку.

Теперь вам нужно выбрать PITфайл. PITзначит, Partition Information Tableи это только для Samsung. В файле связки я сделал доступным ElGamalфункцию PITfile ( I91001GB_6GB.pit), которая также изменяет размер /systemраздела до 1 ГБ, /dataдо 6 ГБ, а остальное идет во внутреннюю память. Если вы хотите разных размеров, проверьте тему в XDA-Developers, поскольку он сделал много разных версий доступными. Я также включил PIT-файл для конфигурации по умолчанию ( I9100_2GB-STOCK.pit), если вы хотите вернуться к тому, что было позже.

Когда вы выбрали PITфайл, перейдите к Одину и отметьте следующие флажки: Re-Partition, Auto Rebootи F. Reset Time. В Re-Partition section, нажмите на PITкнопку и выберите выбранный PITфайл. В Files (Download)разделе нажмите на APкнопку и выберите стандартный JellyBean ROM от Samsung. Дважды проверьте все и нажмите Start. Это может занять некоторое время, пойти взять кофе.

После того, как все закончится, ваш телефон перезагрузится в стандартное ПЗУ Samsung JellyBean. Сейчас могут произойти две вещи, или они будут работать нормально, и если это так, вы можете использовать его и проверить, все ли так, как вы хотите. Или он может попросить вас ввести пароль для доступа к «зашифрованному тому», который является ничем иным, как вашим внутренним хранилищем, которое не отформатировано. В обоих случаях отключите телефон (он все еще подключен) и снова перезагрузите его в режиме загрузки.

Интересно закрыть и снова открыть Odin3 для сброса настроек. Подключите телефон снова и подождите, пока Odin3 не обнаружит его. На этот раз, отпуск проверяется просто Auto Rebootи F. Reset Timeи убедитесь , что Re-Partitionэто НЕ проверяется. Нажмите на APкнопку и выберите файл восстановления ClockWorkMod .tar, затем нажмите Start. Этот быстрее, но если вы чувствуете сонливость, идите на другой кофе;)

Когда он закончится, в вашем телефоне должен быть установлен ClockWorkMod Recovery 6, так что продолжайте и перезагрузитесь в режиме восстановления. Перейдите mounts and storage, выберите format /storage/sdcard0и отформатируйте его следующим образом exfat(если по какой-то причине у вас возникли проблемы с записью во внутреннем хранилище позже, вернитесь сюда и выберите другой формат, пока он не будет работать, но это exfatнужно сделать).

Когда он закончится, все еще в режиме восстановления Wipe data/factory reset, Wipe cacheи Wipe Dalvik cache. Будем уверены, что ничего не осталось от предыдущих ПЗУ.

Теперь, install zip-> choose zip from /storage/sdcard1и выберите .zipфайл CyanogenMod 11 (или нужного вам ПЗУ) и прошейте его. При желании также прошить GApps впоследствии. Перезагрузите телефон и проверьте, все ли правильно.

Если все правильно, перезагрузите ваш телефон в режим восстановления снова, сделать новое wipe data/factory reset, wipe cacheи wipe Dalvik cache, а затем восстановить резервные копии диска с самого начала. Перезагрузите свой телефон.

Проверьте еще раз, все ли работает правильно. Возможно, потребуется переустановить несколько приложений (например, Spotify и Waze), чтобы они снова работали правильно, но это будет только основной проблемой.

Надеюсь, что все идет хорошо.


Что делать, если мне нужно сделать в другом телефоне? Есть ли какой-нибудь универсальный инструмент или метод?
Скан

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

Как насчет изменения файла образа прошивки перед его записью на телефон?
Скан

10

Престижность @Bruno для подробного решения и необходимых файлов. Ниже приведен гораздо более быстрый способ, который не требует установки каких-либо ПЗУ / Gapps или перезагрузки в ПЗУ между этапами. Вам нужна внешняя SD-карта с достаточным количеством свободного места для хранения всех приложений + данные + фотографии + и т. Д., Которые находятся во внутренней памяти телефона.

Вы можете пропустить шаги 1-5, если у вас уже есть CWM, а также резервная копия NAND на вашей внешней SD-карте (но убедитесь, что у вас есть резервная копия NAND на внешней SD-карте, иначе вы потеряете все данные).

ПРИМЕЧАНИЕ. Вы также должны сделать резервную копию своих данных с внутренней SD-карты на случай, если что-то пойдет не так, например, / storage / sdcard0 (резервная копия NAND этого не делает).

  1. Извлеките файлы, предоставленные @Bruno, где-нибудь на вашем компьютере.
  2. Перезагрузите телефон в режиме загрузки (громкость + домашний + питание), затем подключите его к ПК через USB.
  3. Старт Один 3.09. Снимите флажок с Auto-Reboot, поместите CWM-KitKatCompatible-i9100.tarфайл в раздел AP, затем нажмите Start и подождите, пока Odin не скажет «RES OK !!» в журнале сообщений. Это должно быть довольно быстро, несколько секунд.
  4. Теперь перезагрузите телефон в режиме восстановления (vol up + home + power)
  5. Перейдите в раздел резервное копирование и восстановление> резервное копирование в / storage / sdcard1 - обратите внимание на 1, а не на 0 (ваш CWM может сказать «внешний sd» вместо / storage / sdcard1; просто выбрал параметр резервного копирования, соответствующий внешней SD-карте, это важно , иначе вы потеряете все данные). Подождите, пока резервное копирование закончится, это займет некоторое время.
  6. Перезагрузите телефон в режиме загрузки (громкость + дом + питание)
  7. Запустите Odin 3.09, Un check Auto-Reboot, check Re-Partition , поместите файл I91001GB_6GB.pitв раздел PIT, поместите файл CWM-KitKatCompatible-i9100.tarв раздел AP, затем нажмите Startи подождите, пока Odin скажет "RES OK !!" в журнале сообщений. Это займет некоторое время.
  8. Перезагрузите телефон в режиме восстановления (громкость + дом + питание)
  9. Перейдите в раздел «Монтирование и хранение»> «Формат / система» , затем « Формат / кэш» , затем « Формат / данные».
  10. Вернитесь, чтобы стереть данные / сброс настроек
  11. Вернитесь к резервному копированию и восстановлению> восстановите из / storage / sdcard1 и восстановите резервную копию NAND, сделанную ранее
  12. Выполнено. Перезагрузите телефон нормально.

Процедура проверена с CyanogenMod 11 (KitKat 4.4) ночью и снимок. Должен работать с любым последним ПЗУ. Нет необходимости устанавливать какие-либо пользовательские или стандартные ROM или Gapps или даже загружаться в ROM между шагами.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я не могу нести ответственность, если ваш телефон начинает петь или танцевать Lambada (о, как я ненавижу эту песню!), Обзывает вас, взрывается, теряет любые ваши данные и т. Д.


Это лучший ответ в сети, который я когда-либо читал! Я знал, что должен быть способ избежать переустановки стокового ПЗУ. Спасибо! Все остальные ответы либо плохо написаны, не хватает важных вещей или делать лишние вещи +1!
Себастьян

Мне это нравится больше, чем снова устанавливать стоковую версию. Я попробую.
Милан Махарджан

Спасибо за урок, но в конце шага 11 я получил сообщение «Ошибка монтирования ..», и телефон умер :-( (кстати, шаг 7 был очень быстрым)
ItayB

Ошибка монтирования /storage/sdcard0.,android_secure! Пропуск формата ... Не удается смонтировать /storage/sdcard0/.android_secure!
ИтайБ

Я попытался отформатировать / storage / sdcard0 и выполнить с шага 11 снова .. Это конец без ошибки монтирования (получил Восстановление завершено!), Но все еще черный экран при перезагрузке ..
ItayB

4

В моем случае мне понадобилось кроссплатформенное решение, так как я использую Linux. Вот что сработало для меня:

  1. Поддержи все. Это сотрет все на телефоне, включая внутреннюю SD-карту.

  2. Скачать:

    • Файл PIT, который вы хотите прошить. Я использовал этот , который изменяет / system от 512 МБ до 1 ГБ и / data от 2 ГБ до 6 ГБ
    • Любое совместимое рекавери. Я использовал этот
    • (Необязательно) ПЗУ, которое вы хотите установить. Я установил CyanogenMod 13 ночью
  3. Загрузите и установите Heimdall

  4. Загрузка в режим загрузки

    1. Отключите USB-кабель
    2. Выключить
    3. Нажмите и удерживайте кнопки уменьшения громкости, домой и питания (вы можете отпустить, когда увидите экран предупреждения)
    4. Нажмите кнопку увеличения громкости, чтобы продолжить мимо экрана предупреждения
  5. Подключите USB-кабель к вашему телефону и ПК

  6. (Необязательно) Резервное копирование существующего ямы

    sudo heimdall download-pit --output i9100-stock.pit --no-reboot
    
  7. Прошить новый PIT и восстановление

    sudo heimdall flash --repartition --pit I91001GB_6GB.pit --KERNEL cwmr6047.img --no-reboot
    
  8. Загрузка для восстановления

    1. Отключите USB-кабель
    2. Выключить
    3. Нажмите и удерживайте кнопки увеличения громкости, домой и питания (вы можете отпустить, когда увидите экран I9100)
  9. Отформатируйте все разделы, включая / system, / data, / cache и внутреннюю SD-карту (sdcard0)

    • При форматировании внутренней SD-карты, если она спросит вас, какую файловую систему использовать, выберите fat, vfat или exfat. Если вы выберете ext4, у вас будут проблемы. (Источники: [1] [2] )
    • Для всех остальных разделов выберите ext4, если будет предложено
  10. Установите ПЗУ или восстановите резервную копию


Для этого было предложено редактирование, которое, на мой взгляд, должно быть комментарием: «Для cm13 вы должны выбрать ext4 или любую другую файловую систему Linux. В противном случае ваше внутреннее хранилище не будет работать».
Мэтью Читал

Я отформатировал / system, / data, / cache и т. Д. Как ext4. Но когда я отформатировал внутреннее хранилище как ext4, оно постоянно становилось поврежденным. Это произошло для меня на CM 12.1, а также на CM 13. Я переформатировал в vfat и снова в exfat, и мои проблемы исчезли. Я нашел пару других источников, которые говорили то же самое: (1) (2)
bmaupin

@ Патрик Я уточнил свой ответ и добавил источники. Спасибо что подметил это!
bmaupin

1

Вот, что, вероятно, еще лучший способ: https://github.com/Lanchon/REPIT

Это так же просто, как прошить почтовый индекс и сохраняет данные. Требуется восстановление TWRP и терпение. Впервые у меня работал на S2 (i9100), который уже имел CM13.


Кажется, не работает по какой-то причине. Мелькнул один из этих почтовых индексов, используя TWRP. Recovery пожаловался, что я должен запустить его снова из tmp. Я запускаю его снова, восстановление возобновляется через несколько секунд. Все еще не могу прошить OpenGApps.
Хьюго Цинк

Не уверен, что там происходит @HugoZink - вам, вероятно, следует сохранить несколько скриншотов / журналов и сообщить о проблеме на сайте gitub REPIT.
августа
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.