Проблема - то, что сценарий не то, что работает, но интерпретатор (bash
, perl
, python
, и т.д.). И интерпретатор должен прочитать сценарий. Это отличается от "обычной" программы, как ls
, в этом программа загружается непосредственно в ядро, как интерпретатор был бы. Так как само ядро читает программный файл, оно не должно волноваться о доступе для чтения. Интерпретатор должен считать файл сценария, как нормальный файл должен был бы быть считан.
sudo
нормальное приложение с suid укусило. Это означает для использования sudo
это должно быть установлено в системе. Не все системы Linux имеют sudo
установленный на значение по умолчанию как, например, Debian.
Большинство систем Android предназначено для конечных пользователей, кто не должен знать внутренности Android (т.е. каждого Android выполнения приложений при своем собственном пользователе), таким образом, нет никакой потребности обеспечить интерактивный способ для конечного пользователя выполнить команду как системного администратора.
В целом можно использовать su
вместо sudo
для выполнения команды как другой пользователь, но необходимо знать учетные данные для целевого пользователя для su
(для sudo
необходимо знать учетные данные пользователя, выполняющего команду),
sudo
не универсально. Просто, потому что это существует на конкретном дистрибутиве Linux, который Вы используете, не означает, что это доступно на всех Ose, которые также используют ядро Linux.
Телефон должен быть базирован, чтобы иметь root
пользовательская установка sudo
(или любое другое приложение). Иначе это было бы установлено как "типичный" пользователь и не имело бы корневой доступ.
Что касается второго вопроса, однажды sudo
установлен по внедренному телефону, по моему опыту, приложения, для которых нужен он просто, запрашивают это, и Вы получаете раскрывающуюся подсказку.
Вы затрагиваете критическую точку в своем вопросе: базируется типичная установка Linux: Вы загружаетесь с Живого CD и перезаписываете загрузочный сектор жесткого диска для загрузки собственного кода.
Это просто, что, базируясь ПК является менее трудным, чем на полу встроенном устройстве как телефон так, чтобы люди были склонны забывать, что установка второй ОС с двойной загрузкой по существу базируется (единственная вещь, которая будет бороться, Вы на этом - BIOS с безопасной начальной загрузкой, но это может быть легко сброшено).
И ОС на устройстве на базе Android просто не идет sudo
команда (или подобный) установленный.