Редактирование: Termux, Эмулятор терминала линукс для андроид

Перейти к: навигация, поиск

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 1: Строка 1:
 
       = termux, Эмулятор терминала линукс для андроид. =
 
       = termux, Эмулятор терминала линукс для андроид. =
termux - это эмулятор терминала и linux-среда для android.
+
termux - это эмулятор терминала и linux-среда для android, это
 +
замечательная прога вообще отдельного описания требует, но постараюсь
 +
коротко.
  
во-первых, эту штуку можно использовать как простой эмулятор
+
начать с того, что эту штуку можно использовать как простой эмулятор
 
терминала для вызова встроенных команд android, и это единственный более
 
терминала для вызова встроенных команд android, и это единственный более
 
или менее доступный терминал, который я видел под андроид, в других окно
 
или менее доступный терминал, который я видел под андроид, в других окно
Строка 15: Строка 17:
 
который может запускаться на телефоне безо всякого рута.
 
который может запускаться на телефоне безо всякого рута.
  
если подробнее, то, как вы знаете, андроид, это тоже linux, но
+
если подробнее, то, как вы знаете, андроид, это по ядру тоже linux, но
 
со значительными отличиями от того, что мы привыкли понимать под словом
 
со значительными отличиями от того, что мы привыкли понимать под словом
linux, хотябы по архитектуре файловой системы.
+
linux, хотябы по архитектуре фс.
  
у каждого приложения там есть определённый каталог в файловой системе, где
+
в-общем, у каждого приложения там есть определённый каталог на фс, где
 
приложение может держать свои данные, private storage, там можно
 
приложение может держать свои данные, private storage, там можно
 
размещать и запускать оттуда любые адаптированные под местные условия
 
размещать и запускать оттуда любые адаптированные под местные условия
бинарники.
+
бинари.
  
они создали свою среду linux с программами, адаптированными под эти различия, на базе busybox и apt.
+
они создали свою среду linux с прогами, адаптированными под эти различия
 +
на базе busybox и apt.
  
 
как результат, вы можете поставить туда очень многие пакеты нормального
 
как результат, вы можете поставить туда очень многие пакеты нормального
linux, например apache, python, jq, bash, golang, curl, wget, nmap и т.д.
+
linux, например apache, python, jq, bash, curl, wget, nmap и т.д.
  
 
говорят, кто-то запускал там nodejs.
 
говорят, кто-то запускал там nodejs.
  
под android существуют такие приложения, как LinuxDeploy, которые позволяют запускать на смартфоне обычные linux-дистрибутивы - debian, ubuntu, arch.
+
что интересно, если другие похожие софты используют chroot, то эта
обычно подобные приложения используют для этого системный вызов chroot, почему для их работы и требуются root-права.
+
работает с путями android напрямую, то есть те же shell-скрипты должны
termux же работает с путями android напрямую, то есть те же shell-скрипты должны
 
 
там начинаться с #!/data/data/com.termux/files/usr/bin/bash
 
там начинаться с #!/data/data/com.termux/files/usr/bin/bash
  
Строка 39: Строка 41:
 
эту раскладку.
 
эту раскладку.
  
при использовании LinuxDeploy и ему подобных на смартфоне запускаются файлы, скомпилированные просто под arm, без учёта особенностей android.
+
это и отличает его от софт типа LinuxDeploy, которые ставят в chroot
из-за этого некоторые программы либо не работают совсем, либо не выполняют часть своих функций.
+
существующие дистры, такие как debian или arch, используя бинари,
 +
скомпилированные просто под arm.
  
также там всё сильно зависит от того, как производитель смартфона организовал внутреннее устройство своей системы.
+
из-за этого многие проги не могут нормально взаимодействовать с
на этой почве могут возникать различные неприятные сюрпризы типа невозможности использовать sudo или полного отсутствия выхода в интернет для программ дистрибутива.
+
особенностями android (своя система shared memory и ещё некоторые) и
 +
просто отказываются работать, особенно это относится к сложным
 +
мультипроцессным софтам (hydra, postgresql).
  
в termux же, если там есть какой-то пакет, то вы можете быть почти уверены,
+
ещё, так как это дело использует хакерские методы для запуска дистров, у
 +
вас может, например, отказаться работать sudo или не быть интернета в не
 +
рутовых сессиях.
 +
 
 +
в termux же, если там есть какой пакет, то вы можете быть почти уверены,
 
что он у вас будет работать, так как компилируется всё изначально под
 
что он у вас будет работать, так как компилируется всё изначально под
 
андроид.
 
андроид.
 
в LinuxDeploy и подобных для запуска linux используются хакерские методы, а здесь всё делается легальным способом, поэтому будет работать на большинстве устройств.
 
  
 
ещё, кроме безрута, это даёт ряд преимуществ:
 
ещё, кроме безрута, это даёт ряд преимуществ:
Строка 67: Строка 74:
 
синтеза речи android, поставить что-то на воспроизведение.
 
синтеза речи android, поставить что-то на воспроизведение.
  
среди доступных пакетов есть и pulseaudio, совместимый с системой вывода звука android.
+
тут даже можно запустить любую пульсосовместимую программу и она будет
с его помощью можно воспроизводить звук при помощи таких программ, как sox.
+
выводить звук, правда speechd там пока нет.
  
 
тут всё ограничено только вашей фантазией.
 
тут всё ограничено только вашей фантазией.
Строка 84: Строка 91:
 
если прокрутить на этом ряде вперёд, как бы пролистывая на вторую страницу, то будет обычное поле редактирования.
 
если прокрутить на этом ряде вперёд, как бы пролистывая на вторую страницу, то будет обычное поле редактирования.
 
объясняю зачем это нужно.
 
объясняю зачем это нужно.
разработчики termux это сделали, поскольку у многих клавиотур есть функции типа автодополнения и предсказания набираемого текста, истории буфера обмена и подобные, для которых необходимо иметь точное представление об уже набранном тексте, что в условиях терминального окна нормально работать не может, так как там набранный текст определяется работающей в терминале программой, с которой клава взаимодействовать не способна в принципе.
+
девелоперы termux это сделали, поскольку у многих клавиотур есть функции типа автодополнения и предсказания набираемого текста, истории буфера обмена и подобные, для которых клаве необходимо иметь точное представление об уже набранном тексте, что в условиях терминального окна нормально работать не может, так как там набранный текст определяется работающей в терминале программой, с которой клава взаимодействовать не способна в принципе.
 
итак, набираемый в этом поле текст никак не влияет на то, что работает в терминале, пока мы не нажмём клавишу ввод. тогда поле очистится и всё, что мы набирали, отправится вверх в терминал. когда мы ещё раз нажмём ввод, будет послан сигнал перевода строки и, если перед нами стандартная консоль, введённая нами команда начнёт выполняться.
 
итак, набираемый в этом поле текст никак не влияет на то, что работает в терминале, пока мы не нажмём клавишу ввод. тогда поле очистится и всё, что мы набирали, отправится вверх в терминал. когда мы ещё раз нажмём ввод, будет послан сигнал перевода строки и, если перед нами стандартная консоль, введённая нами команда начнёт выполняться.
 
для нас с вами это поле означает нормальную работу произношения символов и слов при вводе, а также возможность нормально перемещаться по тексту, чтобы исправить ошибки, так что его очень удобно использовать для подготовки команды перед запуском.
 
для нас с вами это поле означает нормальную работу произношения символов и слов при вводе, а также возможность нормально перемещаться по тексту, чтобы исправить ошибки, так что его очень удобно использовать для подготовки команды перед запуском.
Строка 129: Строка 136:
 
скачать можно либо с плеймаркета, либо с FDroid.
 
скачать можно либо с плеймаркета, либо с FDroid.
 
если предпочитаете не использовать первое, но не знаете, что такое второе, всё равно идите на FDroid и качайте apk оттуда, они в отличие от гугла не блокируют прямую скачку apk через браузер.
 
если предпочитаете не использовать первое, но не знаете, что такое второе, всё равно идите на FDroid и качайте apk оттуда, они в отличие от гугла не блокируют прямую скачку apk через браузер.
 
+
но и termux, и аддоны все должны быть из одного источника, либо с плея, либо оттуда.
но termux и дополнения должны быть из одного источника, смешивать apk с FDroid и google play нельзя.
 

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии Creative Commons — Attribution 3.0 (см. LUWRAIN Wiki:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!