Справжній термінал (корінь або без кореня)


12

Я використовую KUBUNTU на своєму ноутбуці, але це стосується будь-якого дистрибутива Linux. Я можу відкрити вікно терміналу і набрати такі речі, як sudo apt-get update: sudo apt-get install packagename.Чи є термінал, який може виконувати такі команди на Android? Це не повинно бути "судо", я просто маю на увазі виконання команд. Я використовую Galaxy S3, але я сумніваюся, що це дійсно важливо для питання, яке я задаю.


3
Ви перевірили Play Store? Існує досить багато емуляторів терміналів .
eldarerathis

1
Android не має
підходящого

Так, але чи можу я зробити щось корисне з цими емуляторами без кореня? На Ubuntu ви все ще можете.
Майк Вентворт

Так, принаймні один з них підтримує створення нових програм на Java за допомогою ssh, rsync, vim тощо з його командного рядка терміналу, навіть якщо у вас немає root.
Девід Кері

Ви можете отримати suта інші загальні команди GNU, вкорінивши свій пристрій та встановивши Busybox (зайнятий ящик зазвичай встановлюється під час вкорінення), але ви не можете отримати підхід, оскільки це менеджер пакунків для дистрибутивів на основі Debian. Android не є дистрибутивом Linux, єдине поширене в ньому ядро ​​Linux.
Адоніс К. Какулідіс

Відповіді:


12

Підсумовуючи коментарі:

Спочатку потрібно зрозуміти, що оновлення додатків працює на Android по-іншому, ніж це стосується "звичайного" дистрибутива Linux: Не існує такого поняття, як "влучне". Хоча в Android є власний менеджер пакунків (прослуховування pmкоманди), встановленням / оновленнями зазвичай займаються служби / додатки, такі як або інші . pmскоріше можна порівняти з dpkg на системах на базі Debian: він може робити локальні установки (тобто з .apkфайлом, який уже присутній на самому пристрої: це pm installбула б команда для цього) та багато іншого.

Крім цього: додаток для терміналів можна порівняти з терміналом на Linux повністю. Ви отримуєте "вікно" в текстовому режимі, де ви можете виконувати команди. Більшість з них навіть схоже на ті , які доступні на Linux, так як Android є на основі Linux: у вас є такі речі , як cd, ls, grepі багатьох інших. Для детальної інформації про це, можливо, ви захочете подивитися, наприклад

Погляд на наш термінальний тег-wiki також не зашкодить :)

Я б сказав, що всі термінальні програми, доступні для Android, повинні підтримувати вищезазначене. Деякі навіть пропонують додаткові функції, такі як все середовище розробки ( Terminal IDE ) або доступ до віддалених серверів ( JuiceSSH ).


Також варто зазначити, що встановлення
зайнятого файлу

Право, @saloalv - кількість команд залежно від версії Busybox :) Не забудьте встановити Busybox для всієї системи, як правило, потрібен root.
Іззи

якби це було можливо встановити!! у всій системі, це було б чудово для користувачів без вкорінення. На жаль, схоже, що розділ sdcard є fat32, і тому бінарний файл не може бути наданий прав виконання
saloalv

1
@saloalv - це навіть не винуватець. Але він чітко встановлений noexecпрапором (з міркувань безпеки).
Іззи

3

Там є термінал додаток , яке використовує «схильний» для установки пакетів. Це приголомшливо і в ньому є багато пакетів для портативних пристроїв - Termux & Playstore Link


1

В даний час в Google Play Store є додаток "termux". він постачається з повною оболонкою unix / linux та з apt. тоді все інше повинно бути прямо вперед. зворотний бік: він не підтримує такі елементи, як мій планшет на базі Android 4.4.2.


0

Встановіть термінальний емулятор та Busybox на своєму Android. Terminal Emulator дає вікно командного рядка і Busybox APK дає корисні команди, які використовуються в Linux , як wget, chmod, chrootі багато іншого.


Чи можете ви зв’язати програми?
Firelord

0

Якщо припустити, що:

  1. Ваш пристрій Android укорінений;
  2. suДвійковий розташований в /system/xbin/su;
  3. Оболонка двійкової розташована на /system/bin/sh; і
  4. На вашому пристрої Android встановлений термінальний емулятор .

Якщо всі 4 вищезазначені умови виконані, то:

  • Якщо ви хочете ввести оболонку і стати root (superuser uid 0), щоб ви могли виконувати команди без обмежень uid, запустіть програму Terminal Emulator і просто виконайте цю команду:

    su -
    

    Для відключення від uid 0 (вихід суперпользователя) натисніть Volume -і Dабо введіть exitта натиснітьEnter

  • Крім того, якщо ви хочете завжди запускати термінальний емулятор як корінь, тоді запускайте термінальний емулятор, перейдіть до Налаштування , прокрутіть униз до розділу SHELL , торкніться опції командного рядка та змініть команду, щоб вона стала такою:

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

    Після зміни команди вийдіть з термінального емулятора (закрийте програму) та запустіть його знову. Зверніть увагу, як інтерфейс оболонки термінального емулятора тепер показує вас root@somethingза замовчуванням.

Якщо ви хочете додати додаткові команди у вашу вкорінену систему Android, встановіть BusyBox .

У разі , якщо ваш пристрій Android не укоренилися, ви можете використовувати емулятор терміналу для того , щоб виконати деякі базові (користувач) команди , такі як blkid, cat, cd, clear, cp, du, grep, id, ln, ls, ping, sleep, uptimeі так далі.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.