Nie miałem okazji przeczytać wystarczająco dużo na temat Androida , Linuksa lub UNIXa, aby samemu odpowiedzieć na to pytanie. sudo
działa na komputerze z systemem Linux, ale nie działa na Androidzie, chyba że zrootujesz urządzenie mobilne (np. Samsung GT-N8013). Dlaczego urządzenie mobilne wymaga rootowania, a nie typowej instalacji Linuksa?
Kontekst mojego pytania jest związany z /programming/14019698/adb-shell-sudo-on-windows-7/14019726#14019726
(Czy jest też jakiś sposób, aby program poprosił o uruchomienie tak, jak root
na Androidzie, tak samo jak masz eskalację uprawnień do „działania jako administrator” w systemie Windows? Jeśli uważasz, że to pytanie powinno dotyczyć własnego wątku, mogę utworzyć jeden)
sudo
root
android
privileges
T. Webster
źródło
źródło
sudoers
liście do zdobyciasudo
. Ubuntu nie jest na AndroidzieOdpowiedzi:
sudo
to normalna aplikacja z bitem suid. Oznacza to, że abysudo
go użyć , należy go zainstalować w systemie. Nie wszystkie systemy Linuxsudo
zainstalowały się domyślnie, jak na przykład Debian.Większość systemów Android jest skierowana do użytkowników końcowych, którzy nie muszą znać wewnętrznych elementów Androida (tj. Każda aplikacja na Androida działa pod własnym użytkownikiem), więc nie ma potrzeby zapewnienia interaktywnego sposobu uruchamiania polecenia przez użytkownika jako system administrator.
Zasadniczo można użyć
su
zamiastsudo
uruchamiać polecenie jako inny użytkownik, ale musisz znać poświadczenia dla użytkownika docelowegosu
(ponieważsudo
musisz znać poświadczenia użytkownika uruchamiającego polecenie)źródło
sudo
nie jest uniwersalny . To, że istnieje w konkretnej dystrybucji Linuksa, nie oznacza, że jest dostępna we wszystkich systemach operacyjnych, które również używają jądra Linux.źródło
Telefon musi być zrootowany, aby
root
użytkownik mógł zainstalowaćsudo
(lub dowolną inną aplikację). W przeciwnym razie zostałby zainstalowany jako „standardowy” użytkownik i nie miałby dostępu do konta root.Jeśli chodzi o drugie pytanie, po
sudo
zainstalowaniu na zrootowanym telefonie, z mojego doświadczenia wynika, że aplikacje, które tego potrzebują, po prostu o to proszą i pojawia się wyskakujące okno.źródło
Dotykasz punktu krytycznego w swoim pytaniu: typowa instalacja systemu Linux to rootowanie: uruchamiasz się z Live CD i zastępujesz sektor rozruchowy dysku twardego, aby załadować własny kod.
Po prostu rootowanie komputera jest mniej uciążliwe niż na urządzeniu częściowo osadzonym, takim jak telefon, więc ludzie często zapominają, że instalowanie drugiego systemu operacyjnego z podwójnym uruchomieniem jest zasadniczo rootowaniem (jedyną rzeczą, z którą będziesz walczył w tym systemie, jest BIOS z bezpieczny rozruch, ale można go łatwo zresetować).
A system operacyjny na urządzeniu z Androidem po prostu nie ma zainstalowanego
sudo
polecenia (lub podobnego).źródło