Действительно ли невозможно работать как 'корень', если машина не базирована?

Вам просто нужно ls (или find).

При создании каталога его число каналов запускается в 2:

  • Один для самого каталога
  • Один для . свяжитесь в себе

Другой вещью, которая увеличивает число каналов каталога, являются свои подкаталоги: у них всех есть a .. соединение записи назад с их родителем, добавляя одного к его числу каналов.

Вы не можете hardlink каталоги в Linux, таким образом, это единственные вещи, которые рассчитывают к числу каналов - два плюс количество подкаталогов.

4
28.12.2012, 08:39
3 ответа

Определенные программы и сервисы, выполненные от / системы на Android, выполненном как корень - некоторые базирующиеся методы, включают введение команды для перемонтирования / системы в эти 'программы'. Без / системы, смонтированной rw, нет никакого пути к добавленной программе для выполнения как корень. До / данные, каждому приложению дают его собственный идентификатор пользователя, и/data/data папкам, где данные для приложения хранятся, дают полномочия, таким образом, что только, что пользователю разрешают любой доступ (в основном chmod 700). Конечно, это берет корневой процесс уровня для создания этого, которое является снова, выполнено от / системы.

4
27.01.2020, 20:51

Ваше первое предположение не обязательно верно как "objects" или быть более точными файлами или исполняемыми файлами может иметь эти полномочия именно так, они не могут быть выполнены или считаны обычным пользователем / процесс, но с тем сказанным существует несколько процессов на телефоне на базе Android, работающем с root полномочия.

Я думаю, что очень важно понять, что Android является только системой Linux внизу, т.е. всем, что Вы видите по Телефону, не имеет многого вместе с Системой Linux как Ubuntu или Fedora, т.е. Вы не можете только выполнить команду как root с большей частью запаса изображения Android установлены на реальных аппаратных средствах. Нет также никакой потребности вообще для ввода a root пароль (насколько я знаю андроид, не установили пароль root) как Android не был многопользовательской системой.

Поскольку у Вас уже есть обычный пользователь по Вашему телефону, может быть возможно использовать/напасть саму систему для получения полномочий пользователя root, это было, например, сделано успешно для более старых систем Android как 2,1.

Я думаю, что необходимо взглянуть на, Как я базируюсь свой вопрос об устройстве на базе Android, он может помочь упростить и объяснить некоторые вещи.

2
27.01.2020, 20:51

Для укоренения устройство означает мочь запустить произвольные программы как корень. Так по определению, если машина не базирована, Вы не можете запустить программы как корень. Существуют программы, работающие как корень на устройстве на базе Android. Но Вы не можете управлять тем, что они делают.

Android не является операционной системой Unix. Ядро совпадает с Linux, но остальное отличается. Что касается ядра, существует только три способа запустить программу как корень:

  • Это может быть вызвано ядром непосредственно. Когда ядро закончило загружаться, оно вызывает init программа как корень. Подключение устройства может также заставить ядро запускать программу как корень в некоторых конфигурациях.
  • Это может быть вызвано программой, которая самостоятельно работает как корень.
  • Это может быть setuid исполняемый файл, принадлежащий корню.

В системе Unix, программах как su и sudo корень setuid. Они могут быть вызваны любым пользователем, и они решают (на основе того, кто называет их, какой пароль они вводят и так далее), выполнить ли оболочку или другую программу как корень или возвратить ошибочное состояние. Именно эти программы, не ядро, выполняет авторизацию. Ядро только управляет числовыми идентификаторами пользователей, оно не обрабатывает учетные записи пользователей и пароли.

Стандартная система Android не имеет никаких учетных записей пользователей (идентификаторы пользователей используются, чтобы изолировать приложения, не изолировать пользователей). Это не использует основанную на пароле авторизацию в смысле Unix (это может использовать PIN или другой метод аутентификации аутентифицировать единственного пользователя системы). Для укоренения устройство на базе Android означает принимать меры, чтобы некоторая оболочка работала как корень, обычно добиралась adb shell дать Вам оболочку, работающую как корень. Нет все еще никакого пароля root, так как существует отдельный пользователь устройства.

1
27.01.2020, 20:51

Теги

Похожие вопросы