Используйте терминал Linux на своем телефоне Android

Когда дело касается ультрамобильных вычислений, я предпочитаю PocketCHIP или Raspberry Pi с экраном, а не мобильный телефон или планшет. Эти решения предлагают чистую среду Linux с открытым исходным кодом, насколько позволяет оборудование, и не делают никаких предположений о том, как я предполагаю работать.

Однако иногда единственное, что у меня есть, — это мобильный телефон. Хотя есть несколько действительно отличных приложений для Android, многие из них кажутся излишними для простых задач, особенно зная, сколько можно сделать в простом терминале на моем рабочем столе Linux. Я не единственный, кто так думает, и именно поэтому родился проект Termux .

Termux — это эмулятор терминала и приложение среды Linux для Android. Также не требуется рутировать ваше устройство.

 

Termux автоматически устанавливает минимальную базовую систему, а дополнительные пакеты доступны с помощью диспетчера пакетов, как и в случае с Fedora, Debian или подобными.

Установить Termux

Установить Termux так же просто, как установить любое приложение на Android-устройство. Вы можете использовать либо магазин Google Play по умолчанию, либо репозиторий приложений с открытым исходным кодом F-Droid .

 

Вы также можете скачать исходный код и скомпилировать его самостоятельно.

 

Linux-подобный Android

Установив Termux на свой мобильный телефон, вы получите минимальную систему Linux, работающую как приложение на вашем (основанном на Linux) устройстве Android. Вы можете использовать большинство обычных терминальных приложений, с которыми вы знакомы, или вы можете ознакомиться с ними сейчас, когда они у вас есть на вашем телефоне. Что наиболее важно, интерфейс Termux предоставляет программные клавиши Ctrl, Alt, Esc и клавиши со стрелками, поэтому основные сочетания клавиш легко набирать даже на виртуальной клавиатуре. В длительных поездках я предпочитаю носить с собой клавиатуру Bluetooth, поэтому я могу использовать Termux так же легко, как терминал на моем настольном компьютере или ноутбуке.

По умолчанию Termux запускает Bash:

echo $0
/data/data/com.termux/files/usr/bin/bash

Большинство команд, к которым вы привыкли, будут работать должным образом, независимо от того, являются ли они встроенными командами Bash или обычным набором общих команд и утилит Linux. Также доступно несколько других оболочек, включая Zsh и tcsh .

Установка команд

Если вы привыкли к Linux, или даже к Homebrew на Mac или к Chocolatey в Windows, то вы уже знаете, как установить дополнительные команды для Termux. Его бэкэнд-менеджер пакетов — Apt из Debian Linux, но Termux использует эту pkgкоманду как упрощенный интерфейс. Результат приближается к неизменной простоте работы с DNF в Fedora , и я бы хотел видеть его pkgв качестве уровня абстракции на других платформах (представьте, что вы используете те же команды управления пакетами в Debian, RHEL и Slackware).

Первый пакет, который я установил, был простым текстовым редактором:

$ pkg search jed
[...]
jed/stable 4.6-4 aarch64
Lightweight text editor
$ pkg install jed

Запуск Jed был точно такой же, как запуск его на моем рабочем столе RHEL. Оба работают в терминале и используют одинаковые сочетания клавиш. Это именно тот мобильный опыт, который мне нужен: такой же, как на моем компьютере.

Дистанционное управление

Текстовый редактор — это одно, но Termux раскрывает свой истинный потенциал при первом подключении к компьютеру по SSH. С помощью этого простого терминала вы можете войти на любой компьютер в любой сети, к которой у вас есть доступ. У вас есть портативная консоль, которую вы можете использовать в качестве хоста или терминала для любых доступных вам вычислительных мощностей.

Однако это не заканчивается на SSH. Для kubectl есть пакет Termux , поэтому, используя use-contextпараметр в kubectl, вы можете поддерживать свой кластер Kubernetes из любого места.

Вклад в Termux

Одна из моих любимых вещей в Termux — это то, что он устраняет существенный барьер для участия в мобильном проекте. Все текущие мобильные платформы с открытым исходным кодом основаны на Android или Android, что требует специального набора инструментов и достаточного количества знаний Java.

Termux, по своей природе, ограждает потенциальных новых участников от большей части этого, потому что вы можете писать пакеты для Termux, ничего не зная об Android. Вы можете создать определение пакета для Termux, если знаете, как писать сценарий оболочки, потому что вы пишете пакет для подсистемы Termux.

Положи терминал в карман

Termux — отличный способ изучить терминал Linux, и его легко установить. Установите Termux на свой телефон или планшет.