Я читал о рутировании телефона, но у меня есть некоторые концептуальные сомнения: когда вы покупаете телефон Android у оператора, у вас нет доступа с правами root. Когда вы запускаете свой телефон, означает ли это, что используется учетная запись «пользователя» (как у меня в Linux / Mac, «/ home /self»)? Существует ли «/ home /self» или подобное в телефонах Android?
Если я "получу root" от телефона, запусту ли я телефон как root, когда включу его? Будут ли все приложения теперь работать от имени пользователя root? Или когда они попытаются запустить от имени root, мне нужно будет разрешить им это?
Если Android - это, по сути, Linux, для резервного копирования моего устройства, разве я не смогу просто подключиться к нему с правами root, выполнить полное, tar -cvzf /
а затем выполнить scp куда-нибудь? Зачем мне нужен Nandroid и эти полноценные решения?
источник
Ответы:
Нет. Android был разработан для однопользовательской системы, и многие дизайнерские решения были приняты так, что / home / I'm больше не существует. В Android многопользовательские возможности ядра Linux используются для повышения безопасности, поскольку каждое приложение запускается как отдельный пользователь; поэтому изолировать данные каждого приложения друг от друга.
Нет нет да В современных методах рутирования (которые, в основном, являются любыми методами рутирования, за исключением самых ранних), существует приложение «Superuser», которое используется для управления приложениями, которым разрешено получать root-доступ.
Да, оболочка существует (но это не оболочка bash). Вам может понадобиться установить Terminal Emulator для доступа к нему (некоторые пользовательские ПЗУ устанавливают его по умолчанию) или использовать его в качестве удаленной оболочки с использованием ADB. Поскольку он не использует bash, терминал будет немного отличаться от того, что вы привыкли видеть в обычных дистрибутивах Linux (в частности, он не имеет автозаполнения), а большинство команд оболочки, которые вы считаете «стандартными», не существует или только существует в чрезвычайно босой форме.
Если вы часто используете терминал, можно установить busybox и bash для более привычного восприятия терминала; вы также можете установить утилиты GNU userpace, но вам понадобится довольно дорогой телефон с кучей дискового пространства.
Короче говоря, то, что вы хотите, возможно; хотя многие инструменты не установлены по умолчанию в ПЗУ производителя. Чтобы самостоятельно установить все эти инструменты, потребуется немало усилий, самый простой и быстрый способ - установить собственное ПЗУ с такими инструментами, как CyanogenMod.
Android использует ядро Linux, но это не GNU / Linux и не использует типичные программы пространства пользователя GNU. Вместо этого он использует пользовательское пространство панели инструментов, которое является очень минималистским пользовательским пространством (даже меньше, чем busybox, у toolbox даже нет cp, вместо этого вы должны использовать cat для копирования файлов). Некоторые пользовательские ПЗУ для Android устанавливают busybox по умолчанию.
По сути, это то, что делает Nandroid (строго говоря, резервное копирование Nandroid больше похоже на резервное копирование с помощью dd, а не tar), за исключением гораздо более удобного графического интерфейса. Большинству людей, даже опытным пользователям, не нравится вводить сложные команды на маленькой клавиатуре или подключать внешнюю клавиатуру каждый раз, когда они хотят выполнить резервное копирование (а в 99% случаев в мире присутствует терминальная фобия). Гораздо проще просто запустить приложение, нажать кнопку и сделать все это за вас.
источник