Установка на Nexus 7: различия между версиями
м (→Install tarballs: s/дата/latest/g и убрал ошмётки скрипта, потерявшие смысл здесь) |
м (2012/2013) |
||
(не показано 12 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
{{attention|Касается варианта 2012 года, с 2013 google сменил чипсет tegra на qualcomm без линуксовых драйверов (и по слухам -- "рекомендовал" поставщикам подобных SoC таковые драйверы ''не'' поставлять).}} | |||
== SDK == | == SDK == | ||
Установите пакет {{pkg|android-tools}}<ref>...либо скачайте и разверните [http://developer.android.com/sdk/index.html ADT bundle]</ref>. | Установите пакет {{pkg|android-tools}}<ref>...либо скачайте и разверните [http://developer.android.com/sdk/index.html ADT bundle]</ref>. Проверка<ref>если adb "задумывается" и сообщает "no permissions", запустите его один раз с правами root, после запуска фонового процесса с ним можно работать с пользовательскими правами</ref>: | ||
Проверка: | |||
host# adb devices | host# adb devices | ||
* daemon not running. starting it now on port 5037 * | * daemon not running. starting it now on port 5037 * | ||
Строка 12: | Строка 12: | ||
# | # | ||
== | == Разблокировка == | ||
* запустите загрузчик (bootloader) Android. Для этого выключите устройство, затем зажмите кнопку уменьшения громкости и нажмите кнопку питания. '''Держите обе кнопки, пока не увидите интерфейс загрузчика.''' | |||
* подключите устройство к компьютеру с помощью USB-кабеля. | |||
* проверьте<ref>Здесь и далее вывод утилит может приводиться в сокращённом виде</ref> список устройств с помощью утилиты fastboot: | |||
* | |||
$ sudo fastboot devices | $ sudo fastboot devices | ||
1234567891234567 fastboot | 1234567891234567 fastboot | ||
* | |||
* разлочьте устройство — на его экране появится предупреждение о последствиях разблокировки и инструкция по её произведению. '''Внимание: данная операция удалит все персональные данные с устройства!''' | |||
$ sudo fastboot oem unlock | $ sudo fastboot oem unlock | ||
(bootloader) erasing userdata... | |||
* | (bootloader) Bootloader is unlocked now. | ||
* перезагрузите устройство: | |||
$ sudo fastboot reboot-bootloader | $ sudo fastboot reboot-bootloader | ||
или просто нажмите на кнопку питания. | rebooting into bootloader... | ||
...или просто нажмите на кнопку питания. | |||
== Поддержка множественной загрузки == | |||
{{attention|Не исключена потеря работоспособности устройства, будьте бдительны и осторожны!}} | |||
''NB: опытным пользователям обычного Linux предстоит некоторый культурный шок от процедуры скачивания zip с файлообменника по ссылкам с форума и просмотра документации на youtube... YHBW'' | |||
Дальнейшие действия предполагают выполнение в каталоге, где будут сохраняться загруженные файлы, которые могут пригодиться в будущем -- наверное, стоит создать отдельный каталог и перейти в него. | |||
* скачайте по ссылкам из [http://forum.xda-developers.com/showpost.php?p=34577851&postcount=2 этого сообщения]: | |||
** MultiROM (например, {{path|multirom_v10_n7-signed.zip}}) | |||
** Modified recovery TWRP (например, {{path|TWRP_multirom_n7_20130416.img}}) | |||
** Kernel w/ kexec-hardboot patch (например, {{path|kernel_kexec_422.zip}} для Android 4.2.2 или {{path|kernel_kexec_42-2.zip}} для Android 4.2.1) | |||
* сверьте контрольные суммы с указанными в сообщении: | |||
$ md5sum multirom_v*_n7-signed.zip TWRP_multirom_n7_*.img | |||
bc79ae7e5e4f1543375e7870a1d9b909 multirom_v10_n7-signed.zip | |||
fafa2d33f2d967b9c7eebc759c4e0462 TWRP_multirom_n7_20130416.img | |||
* прошейте TWRP_multirom_n7_''дата''.img: | |||
$ sudo fastboot flash recovery TWRP_multirom_n7_''дата''.img | |||
* скопируйте multirom_v''X''_n7-signed.zip и kernel_kexec_4''Y''.zip на устройство: | |||
$ sudo adb push multirom_v''X''_n7-signed.zip /data/media/0/Download/ | |||
$ sudo adb push kernel_kexec_4''Y''.zip /data/media/0/Download/ | |||
* снова запустите на планшете загрузчик (bootloader), как описано выше | |||
* при помощи кнопок громкости и питания выберите Recovery и загрузите его | |||
* [https://www.youtube.com/watch?feature=player_detailpage&v=UhSRr6cKaU0#t=121s прошейте]<ref>эти две операции производятся на самом Nexus</ref> multirom_v''X''_n7-signed.zip с помощью раздела Install меню TWRP — файл будет находиться в /data/media/0/Download/: | |||
** выбираем раздел Install | |||
** переходим из /sdcard в корень файловой системы при помощи пункта "Up a level" | |||
** идём в data ▷ media ▷ 0 ▷ Download | |||
** выбираем multirom_v''X''_n7-signed.zip | |||
** подтверждаем прошивание | |||
* аналогично прошейте новое ядро kernel_kexec_4''Y''.zip из того же каталога | |||
* [https://www.youtube.com/watch?feature=player_detailpage&v=UhSRr6cKaU0#t= | == Подготовка ROM info == | ||
* | Сохраните следующий текст в файл {{path|rom_info.txt}}, он подойдёт для всех образов ALT Linux для Nexus 7 и нужен для того, чтобы мультизагрузчик нашёл образ ОС: | ||
== ROM info == | |||
Сохраните следующий текст в файл rom_info.txt, он подойдёт для всех образов | |||
type="kexec" | type="kexec" | ||
Строка 50: | Строка 78: | ||
dir_cmdline="rootsubdir=%s" | dir_cmdline="rootsubdir=%s" | ||
== | == Установка образов == | ||
* Скачайте | * Скачайте [http://nightly.altlinux.org/sisyphus-arm/current/ отсюда], если хотите обновляться далее из Sisyphus, или [http://ftp.altlinux.ru/pub/distributions/ALTLinux/p7/images/starterkits/ здесь], если предпочитаете стабильный бранч p7, тарбол с подходящей вам средой окружения. Например (и далее), для образа с kde4 Sisyphus: | ||
$ wget -c http://nightly.altlinux.org/sisyphus-arm/current/regular- | $ wget -c http://nightly.altlinux.org/sisyphus-arm/current/regular-nexus7-kde4-latest-armh.tar.gz | ||
* Залейте | * Залейте тарбол на устройство. | ||
$ adb push regular- | $ adb push regular-nexus7-kde4-latest-armh.tar.gz /data/media/0/multirom/roms/ | ||
* Создайте каталог для инсталляции образа. Например, так: | * Создайте каталог для инсталляции образа. Например, так: | ||
$ adb shell mkdir -p /data/media/0/multirom/roms/kde4-latest/root | $ adb shell mkdir -p /data/media/0/multirom/roms/kde4-latest/root | ||
* Распакуйте | * Распакуйте тарбол в только что созданный каталог: | ||
$ adb shell tar -C /data/media/0/multirom/roms/kde4-latest/root -xf /data/media/0/multirom/roms/regular- | $ adb shell tar -C /data/media/0/multirom/roms/kde4-latest/root -xf /data/media/0/multirom/roms/regular-nexus7-kde4-latest-armh.tar.gz | ||
* Залейте файл rom_info.txt: | * Залейте файл rom_info.txt: | ||
$ adb push rom_info.txt /data/media/0/multirom/roms/kde4-latest/ | $ adb push rom_info.txt /data/media/0/multirom/roms/kde4-latest/ | ||
Возможно держать несколько корней параллельно в разных каталогах. | Возможно держать несколько корней параллельно в разных каталогах. | ||
== Загрузка ALT Linux == | |||
После перезагрузки должно появиться меню MultiROM, где возможно выбрать раздел Internal и в нём, например. kde4-latest (имена пунктов совпадают с именами каталогов, в которых расположены развёрнутые чруты). Остаётся нажать Boot :) | |||
== Устранение неисправностей == | |||
=== Ядро загружается, при проверке корневой ФС происходит сбой === | |||
К сожалению, на разных устройствах нужный раздел может оказаться /dev/mmcblk0p9 либо /dev/mmcblk0p10; в регулярных сборках за апрель-май 2013 предполагается первый вариант, если при загрузке образа наблюдается подобное сообщение: | |||
*** An error occurred during the file system check. | |||
*** Dropping you to a shell; the system will reboot | |||
*** when you leave the shell. | |||
— придётся скорректировать /etc/fstab в чруте. Для этого: | |||
* принудительно выключите устройство десятисекундным удержанием кнопки питания | |||
* загрузитесь в Recovery | |||
* подключите USB-шнур к компьютеру | |||
* выполните команду: | |||
$ sudo adb shell sed -i 's/blk0p9/blk0p10/' /data/media/0/multirom/roms/kde4-latest/root/etc/fstab | |||
* ...и можно загружаться. | |||
=== root login === | |||
Пароли для root и пользователя altlinux заданы в [[m-p|mkimage-profiles]]: | |||
root:altlinux | |||
altlinux:root | |||
Рекомендуется сменить их на свои. При изготовлении производных сборок может пригодиться {{pkg|alterator-setup}}, позволяющий организовать шаг обязательной настройки этих параметров, и соответствующая фича <tt>use/oem</tt> в m-p. | |||
=== Включение USB Debugging === | |||
http://www.youtube.com/watch?v=mp07dPusJNA | |||
== Примечания == | == Примечания == | ||
<references /> | <references /> | ||
[[Категория: | {{Category navigation|title=ARM|category=ARM|sortkey=*}} | ||
[[Категория:Hardware]] | |||
[[Категория:HCL]] | |||
[[Категория:Мини-компьютеры]] |
Текущая версия от 16:24, 23 сентября 2022
SDK
Установите пакет android-tools[1]. Проверка[2]:
host# adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached xxxxxxxxxxxxxxxx recovery host$ adb shell #
Разблокировка
- запустите загрузчик (bootloader) Android. Для этого выключите устройство, затем зажмите кнопку уменьшения громкости и нажмите кнопку питания. Держите обе кнопки, пока не увидите интерфейс загрузчика.
- подключите устройство к компьютеру с помощью USB-кабеля.
- проверьте[3] список устройств с помощью утилиты fastboot:
$ sudo fastboot devices 1234567891234567 fastboot
- разлочьте устройство — на его экране появится предупреждение о последствиях разблокировки и инструкция по её произведению. Внимание: данная операция удалит все персональные данные с устройства!
$ sudo fastboot oem unlock (bootloader) erasing userdata... (bootloader) Bootloader is unlocked now.
- перезагрузите устройство:
$ sudo fastboot reboot-bootloader rebooting into bootloader...
...или просто нажмите на кнопку питания.
Поддержка множественной загрузки
NB: опытным пользователям обычного Linux предстоит некоторый культурный шок от процедуры скачивания zip с файлообменника по ссылкам с форума и просмотра документации на youtube... YHBW
Дальнейшие действия предполагают выполнение в каталоге, где будут сохраняться загруженные файлы, которые могут пригодиться в будущем -- наверное, стоит создать отдельный каталог и перейти в него.
- скачайте по ссылкам из этого сообщения:
- MultiROM (например, multirom_v10_n7-signed.zip)
- Modified recovery TWRP (например, TWRP_multirom_n7_20130416.img)
- Kernel w/ kexec-hardboot patch (например, kernel_kexec_422.zip для Android 4.2.2 или kernel_kexec_42-2.zip для Android 4.2.1)
- сверьте контрольные суммы с указанными в сообщении:
$ md5sum multirom_v*_n7-signed.zip TWRP_multirom_n7_*.img bc79ae7e5e4f1543375e7870a1d9b909 multirom_v10_n7-signed.zip fafa2d33f2d967b9c7eebc759c4e0462 TWRP_multirom_n7_20130416.img
- прошейте TWRP_multirom_n7_дата.img:
$ sudo fastboot flash recovery TWRP_multirom_n7_дата.img
- скопируйте multirom_vX_n7-signed.zip и kernel_kexec_4Y.zip на устройство:
$ sudo adb push multirom_vX_n7-signed.zip /data/media/0/Download/ $ sudo adb push kernel_kexec_4Y.zip /data/media/0/Download/
- снова запустите на планшете загрузчик (bootloader), как описано выше
- при помощи кнопок громкости и питания выберите Recovery и загрузите его
- прошейте[4] multirom_vX_n7-signed.zip с помощью раздела Install меню TWRP — файл будет находиться в /data/media/0/Download/:
- выбираем раздел Install
- переходим из /sdcard в корень файловой системы при помощи пункта "Up a level"
- идём в data ▷ media ▷ 0 ▷ Download
- выбираем multirom_vX_n7-signed.zip
- подтверждаем прошивание
- аналогично прошейте новое ядро kernel_kexec_4Y.zip из того же каталога
Подготовка ROM info
Сохраните следующий текст в файл rom_info.txt, он подойдёт для всех образов ALT Linux для Nexus 7 и нужен для того, чтобы мультизагрузчик нашёл образ ОС:
type="kexec" root_dir="%m/root" kernel_path="%r/boot/vmlinuz" initrd_path="%r/boot/initrd.img" base_cmdline="%b root=%d rootflags=data=writeback,discard ro console=tty1 fbcon=map:0 fbcon=vc:1-4 fbcon=rotate:1" dir_cmdline="rootsubdir=%s"
Установка образов
- Скачайте отсюда, если хотите обновляться далее из Sisyphus, или здесь, если предпочитаете стабильный бранч p7, тарбол с подходящей вам средой окружения. Например (и далее), для образа с kde4 Sisyphus:
$ wget -c http://nightly.altlinux.org/sisyphus-arm/current/regular-nexus7-kde4-latest-armh.tar.gz
- Залейте тарбол на устройство.
$ adb push regular-nexus7-kde4-latest-armh.tar.gz /data/media/0/multirom/roms/
- Создайте каталог для инсталляции образа. Например, так:
$ adb shell mkdir -p /data/media/0/multirom/roms/kde4-latest/root
- Распакуйте тарбол в только что созданный каталог:
$ adb shell tar -C /data/media/0/multirom/roms/kde4-latest/root -xf /data/media/0/multirom/roms/regular-nexus7-kde4-latest-armh.tar.gz
- Залейте файл rom_info.txt:
$ adb push rom_info.txt /data/media/0/multirom/roms/kde4-latest/
Возможно держать несколько корней параллельно в разных каталогах.
Загрузка ALT Linux
После перезагрузки должно появиться меню MultiROM, где возможно выбрать раздел Internal и в нём, например. kde4-latest (имена пунктов совпадают с именами каталогов, в которых расположены развёрнутые чруты). Остаётся нажать Boot :)
Устранение неисправностей
Ядро загружается, при проверке корневой ФС происходит сбой
К сожалению, на разных устройствах нужный раздел может оказаться /dev/mmcblk0p9 либо /dev/mmcblk0p10; в регулярных сборках за апрель-май 2013 предполагается первый вариант, если при загрузке образа наблюдается подобное сообщение:
*** An error occurred during the file system check. *** Dropping you to a shell; the system will reboot *** when you leave the shell.
— придётся скорректировать /etc/fstab в чруте. Для этого:
- принудительно выключите устройство десятисекундным удержанием кнопки питания
- загрузитесь в Recovery
- подключите USB-шнур к компьютеру
- выполните команду:
$ sudo adb shell sed -i 's/blk0p9/blk0p10/' /data/media/0/multirom/roms/kde4-latest/root/etc/fstab
- ...и можно загружаться.
root login
Пароли для root и пользователя altlinux заданы в mkimage-profiles:
root:altlinux altlinux:root
Рекомендуется сменить их на свои. При изготовлении производных сборок может пригодиться alterator-setup, позволяющий организовать шаг обязательной настройки этих параметров, и соответствующая фича use/oem в m-p.
Включение USB Debugging
http://www.youtube.com/watch?v=mp07dPusJNA
Примечания
- ↑ ...либо скачайте и разверните ADT bundle
- ↑ если adb "задумывается" и сообщает "no permissions", запустите его один раз с правами root, после запуска фонового процесса с ним можно работать с пользовательскими правами
- ↑ Здесь и далее вывод утилит может приводиться в сокращённом виде
- ↑ эти две операции производятся на самом Nexus