Prawdziwy terminal (root lub no-root)


12

Używam KUBUNTU na moim laptopie, ale dotyczy to każdej dystrybucji Linuksa. Mogę otworzyć okno terminala i wpisać takie rzeczy, jak sudo apt-get update: sudo apt-get install packagename.Czy istnieje terminal, który może wykonywać takie polecenia na Androidzie? Nie musi to być „sudo”, mam na myśli wykonywanie poleceń. Używam Galaxy S3, ale wątpię, czy to naprawdę ma znaczenie dla pytania, które zadaję.


3
Czy sprawdziłeś Sklep Play? Jest sporo emulatorów terminali .
eldarerathis

1
Android nie ma menedżera pakietów apt
p1xel

Tak, ale czy mogę zrobić coś użytecznego z tymi emulatorami bez rootowania? Na Ubuntu nadal możesz.
Mike Wentworth,

Tak, przynajmniej jedna z nich obsługuje tworzenie nowych aplikacji w Javie przy użyciu ssh, rsync, vim itp. Z poziomu wiersza poleceń terminalu, nawet jeśli nie masz roota.
David Cary,

Możesz uzyskać sui inne popularne polecenia GNU poprzez zrootowanie urządzenia i instalację Busybox (busybox jest zwykle instalowany podczas rootowania), ale nie możesz uzyskać apt, ponieważ jest to menedżer pakietów dla dystrybucji opartych na Debianie. Android nie jest dystrybucją Linuksa, jedyną powszechną rzeczą jest jądro Linuksa.
Adonis K. Kakoulidis,

Odpowiedzi:


12

Podsumowując z komentarzy:

Najpierw musisz zrozumieć, że aktualizacja aplikacji działa inaczej na Androidzie niż na „normalnej” dystrybucji Linuksa: Nie ma czegoś takiego jak „apt”. Chociaż Android ma własnego menedżera pakietów (słuchanie pmpolecenia), instalacjami / aktualizacjami zwykle zajmują się usługi / aplikacje, takie jak lub inne . pmwolałbym być porównywalny z dpkg na systemach opartych na Debianie: może wykonywać lokalne instalacje (tj. z .apkplikiem już obecnym na samym urządzeniu: pm installbyłoby to poleceniem) i wiele innych rzeczy.

Poza tym: aplikacja terminalu może być porównywana z terminalem w systemie Linux. Otrzymujesz „okno” tekstowe, w którym możesz wykonywać polecenia. Większość z nich jest nawet podobny do tych dostępnych na Linuksie, jak Android jest oparty na Linuksie: masz takie rzeczy jak cd, ls, grepi więcej. Aby uzyskać szczegółowe informacje na ten temat, możesz rzucić okiem np

Spojrzenie na nasz terminal tag-wiki też nie zaszkodzi :)

Powiedziałbym, że wszystkie aplikacje terminalowe dostępne dla Androida powinny obsługiwać powyższe. Niektóre oferują nawet dodatkowe funkcje, takie jak całe środowisko programistyczne ( Terminal IDE ) lub dostęp do zdalnych serwerów ( JuiceSSH ).


Warto również wspomnieć, że instalacja busybox dodaje wszystkie polecenia „wiesz i kochasz”
saloalv

Racja, @saloalv - z ilością poleceń zależną od wersji Busybox :) Nie zapomnij zainstalować Busybox w całym systemie zwykle wymaga roota.
Izzy

jeśli byłoby możliwe zainstalowanie całego systemu, byłoby to świetne dla użytkowników, którzy nie są rootami. Niestety wygląda na to, że partycja sdcard ma format fat32 i jako taki plik binarny nie może mieć uprawnień do wykonywania
saloalv

1
@saloalv to nawet nie winowajca. Ale jest wyraźnie zamontowany z noexecflagą (ze względów bezpieczeństwa).
Izzy


1

w dzisiejszych czasach w sklepie Google Play jest dostępna aplikacja „termux”. ma pełną powłokę unix / linux i apt. wszystko inne powinno być zatem proste. minus: nie obsługuje elementów takich jak mój tablet z Androidem 4.4.2.


0

Zainstaluj emulator terminala i Busybox na swoim Androidzie. Terminal Emulator daje okno wiersza polecenia i Busybox APK dostarcza użytecznych poleceń, które są wykorzystywane w Linuksie jak wget, chmod, chrooti więcej.


Czy możesz połączyć aplikacje?
Firelord

0

Przy założeniu, że:

  1. Twoje urządzenie z Androidem jest zrootowane;
  2. Plik subinarny znajduje się w /system/xbin/su;
  3. Binarna powłoka znajduje się w /system/bin/sh; i
  4. Twoje urządzenie z Androidem ma zainstalowany emulator terminala .

Jeśli wszystkie 4 powyższe warunki są spełnione, to:

  • Jeśli chcesz wejść do powłoki i zostać rootem (superuser uid 0), aby móc wykonywać polecenia bez ograniczeń uid, uruchom aplikację Emulator terminala i po prostu wykonaj to polecenie:

    su -
    

    Aby rozłączyć się z UID 0 (wyjdź ze statusu administratora), naciśnij Volume -i D, lub wpisz exiti naciśnijEnter

  • Alternatywnie, jeśli chcesz zawsze uruchamiać emulator terminala jako root, a następnie uruchom emulator terminala, przejdź do Preferencji , przewiń w dół do sekcji SHELL , dotknij opcji Wiersz poleceń i zmodyfikuj polecenie, aby stało się to:

    /system/xbin/su -c "/system/bin/sh -"
    

    Po zmianie polecenia zamknij emulator terminala (zamknij aplikację) i uruchom go ponownie. Zauważ, że interfejs powłoki emulatora terminala pokazuje teraz root@somethingdomyślnie.

Jeśli chcesz dodać dodatkowe polecenia do zrootowanego systemu Android, zainstaluj BusyBox .

W przypadku, gdy urządzenie nie jest zakorzeniona Android, nadal można korzystać z emulatora terminala w celu wykonania pewnych podstawowych (użytkownik) Polecenia takie jak blkid, cat, cd, clear, cp, du, grep, id, ln, ls, ping, sleep, uptimeet cetera.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.