Коротко о главном: что такое Termux

Termux — это эмулятор терминала Android и приложения среды Linux, которое работает напрямую, без необходимости рутирования или настройки. Минимальная базовая система устанавливается автоматически — дополнительные пакеты доступны через диспетчер пакетов APT.
Telegram-канал создателя Трешбокса про технологии
Если кратко и грубо-то, Termux — это консоль, которая в ваших услугах.
По умолчанию в Termux установлена минимальная базовая система. Дополнительные пакеты доступны из диспетчера пакетов «pkg» (аналоге apt). Приложение поддерживает расширенное управление при наличии прав суперпользователя и установка специального пакета «tsu» (аналог sudo). Без root-прав приложение также имеет достаточно широкие возможности.

Вот он, зверь)
Так-же Termux имеет ряд дополнений, которые все можно найти в F-Droid.
- Termux: API — доступ к аппаратным функциям Android и Chrome.
- Termux: Boot — запускайте скрипт(ы), когда ваше устройство загружается.
- Termux: Float — запустите Termux в плавающем окне.
- Termux: Styling — используйте цветовые схемы и шрифты для Powerline, чтобы настроить внешний вид терминала Termux.
- Termux: Tasker — простой способ вызвать исполняемые файлы Termux из Tasker и совместимых приложений.
- Termux: Widget — запускайте небольшие скриптлеты с домашнего экрана.
Для чего используется Termux
- Автоматизация устройства с помощью скриптов и надстройки Termux Tasker.
- Передача файлов и синхронизация через syncthing, rsync, rclone и т. д.
- Программирование (clang, python, vim и т. д.).
- Проверка защищённости устройств на взлом.
- Проверка защищённости сайтов на DDoS или Dos.
- Искать уязвимости в роутере или сети.
- Проверка защищённости от спама (может кому-то надо будет :))
Установка
Если установить, то через F-Droid, так как в Google Play поддержка обновлений прекращена. На сегодняшний день реализована только поддержка Android устройств с 7.0-12.0. Чтобы установить на ПК нужно использовать специальные утилиты. На данный момент самыми популярными утилитами являются: Bluestacks и NoxPlayer.
Команды
Раз Termux консоль, то он принимает команды. (По аналогии с cmd).
Вот список команд, которые могут пригодиться.
- apt update # — поиск обновлений. Всегда выполняйте эти первые 2 команды перед работой
- apt upgrade # -установка обновлений
- pkg \ apt install # установка пакета
- git clone # установка репозитория из GitHub
- help # помощь \ выводит список команд termux
- help # выводит список команд пакета пример –python help
- pkg search package — ищет пакет пакета
- pkg remove package — удаляет пакет
- pkg list-installed — выведет список загружаемых пакетов
- . — повторить последнюю команду
- выход — разлогиниться
Файловая система
- ls — список файлов и каталогов
- ls -al — форматированный список со скрытыми каталогами и файлами
- cd dir — сменить директорию на dir
- cd — сменить на домашний каталог
- pwd — показать текущий каталог
- mkdir dir — создать каталог dir
- rm file — удалить файл
- rm -r dir — удалить каталог dir
- rm -f file — удалить форсированно файл
- rm -rf dir — удалить форсированно каталог dir
- cp file1 file2 — скопировать file1 в file2
- cp -r dir1 dir2 — скопировать dir1 в dir2; создаст каталог dir2, если он не существует
- mv file1 file2 — переименовать или переместить file1 в file2. если file2 существующий каталог — переместить file1 в каталог file2
- ln -s file link — создать символическую ссылку к файлу файл
- touch file — создать файл
- cat> file — направить стандартный ввод в файл
- more file — вывести содержимое файла
- head file — вывести первые 10 строк файла
- tail file — вывести последние 10 строк файла
- tail -f file — вывести содержимое файла по мере роста, начинает с последних 10 строк
Управление процессами
- kill pid — убить процесс с id pid
- наверх — показать все запущенные процессы
- killall proc — убить все процессы с именем proc
- bg — список остановленных и фоновых задач; продолжение выполнения остановленной задачи в фоне
- fg — выносит на передний план последние задачи
- fg n — вынести задачу n на передний план
Права доступа на файлы
chmod восьмеричный файл — сменить права файла на восьмеричное, раздельное для пользователя, группы.
- 4 — чтение ®
- 2 — запись (ш)
- 1 — исполнение (x)
Системная информация
- date — вывести текущую дату и время
- cal — вывести календарь на текущий месяц
- uptime — показать текущий аптайм
- whoami — имя, под которым вы залогинены
- uname -a — показать информацию о ядре
- cat / proc / cpuinfo — информация ЦПУ
- cat / proc / meminfo — информация о памяти
- команда man — показать мануал для команды
- df — показать инф. о использование дисков
- du — вывести «вес» текущего каталога
- бесплатно — использование памяти и обмен
- whereis app — возможное расположение программы app
- какое приложение — какое приложение будет запущена по умолчанию
Сеть
- ping host — пропинговать хост и вывести результат
- whois domain — получить информацию whois для домена
dig domain — получить DNS информацию о домене - dig -x host — реверсивно искать host
- wget file — скачать файл
- wget -c file — продолжить остановленную закачку
Установка python2 / 3 скриптов
В Termux вызов пайтона: python2 и python.
(X — версия Python)
- pythonX setup.py
- pythonX -m pip install -r requirements.txt
- pipX install -r requirements.txt
Клавиатурные сочетания
- Ctrl + C — завершить текущую команду
- Ctrl + Z — остановить текущую команду, продолжть с fg на переднем плане или bg в фоне
- Ctrl + D — разлогиниться, тоже самое, что и выйти
Ctrl + W — - Ctrl + W — удалить одно слово в текущей строке
- Ctrl + U — удалить строку
- Так же стрелки (вверх и вниз) можно использовать в качестве истории команд
И так все же, что что он сможет?
И много чего можно найти в github для termux, но оставлю одну прогу в которой много инструментов для проверки защищённости устройства. Я не несу за ваш страх и риск.
DarkFly-Tool включает в себя огромное множество инструментов. От проверки на защищённость от вирусов до скачивания видео из интернета. В нем присутствуют как безобидные инструменты, так и утилиты для взлома камер, вирусы, спамеры и тому подобное.
Установка в Termux
- apt update -y&&apt upgrade -y
- apt install python -y&&apt install git — y
- git clone github.com/Ranginang67/DarkFly-Tool
- cd DarkFly-Tool
- chmod + x install.py
Использование
- python2 install.py
- DarkFly
Прикольчик : D
Бегущий — поезд будет бежать по вашему поезду экрану, и после того, как он пройдет, вы увидите свой терминал.
Эта команда установит sl пакет в termux: (мелочь, а приятно)
Теперь пакет sl установлен в вашем termux, и вам просто нужно набрать sl.
Установка пакетов в Termux
Мы уже рассказывали, как сделать хакерский смартфон с помощью Termux и Kali. Сегодня я покажу как устанавливать пакеты в Termux.
Termux — это простой и удобный терминал, предоставляющий множество возможностей среды Linux. Он позволяет выполнять команды в подходящей среде, избегая необходимости предварительной настройки окружения.
Как установить пакеты в Termux
Установить Termux можно разными способами, самый простой — из Google Play.
Теперь установим некоторые важные базовые инструменты, которые необходимы для установки пакетов.
Обновление pkg
pkg update
pkg upgrade
Установка всех необходимых версий Python
pkg install python
pkg install python2
pkg install python3
Установка pip
pkg install python — pip
Установка git
pkg install git
Установка wget
pkg install wget
Установка пакетов в Termux
Можно приступать к работе и устанавливать пакеты в Termux. За установку пакетов отвечает команда pkg install .
pkg install имя-пакета
Удаление пакетов из Termux
С помощью следующей команды, вы можете удалить пакеты из Termux.
pkg uninstall имя-пакета
Пакет будет удален, но останутся файлы конфигурации. Если нужно их удалить, используйте команду apt purge .
Команда List отобразит все установленный пакеты.
pkg list — all
Обновление пакетов в Termux
Перед установкой нового пакета настоятельно рекомендуется обновить установленные пакеты. Обновить пакеты можно с помощью команды:
pkg upgrade
Я рекомендую проверять наличие обновлений минимум раз в месяц или перед установкой новых пакетов.
Шпаргалка по командам
| pkg autoclean | Удаление устаревших файлов .deb из кеша. |
| pkg clean | Удаление всех файлов .deb из кеша. |
| pkg files | Список файлов, установленных указанным пакетом. |
| pkg list — all | Список всех доступных пакетов. |
| pkg list — installed | Список установленных пакетов. |
| pkg reinstall | Переустановить пакет. |
| pkg search | Поиск пакета. |
| pkg show | Получение информации о пакете. |
Репозитории и зеркала Termux
Termux не поддерживает пакеты из репозиториев Debian, Ubuntu и других дистрибутивов Linux. Поэтому не пытайтесь поместить их в свой sources.list или вручную устанавливать файлы .deb.
Зеркала — это серверы, на которых хранятся пакеты Termux. Выбор зеркала позволяет определить, откуда загружать пакеты.
Чтобы выбрать зеркало или группу зеркал в Termux, выполните следующие шаги:
- Запустите Termux на своем устройстве Android.
- При появлении запроса на выбор зеркала или группы зеркал введите номер, соответствующий вашему выбору. Обычно доступно несколько вариантов.
- Нажмите клавишу Enter, чтобы подтвердить выбор.
Выбор зеркала может зависеть от вашего местоположения и доступности серверов. Если одно зеркало не работает или загрузка пакетов слишком медленная, вы всегда можете повторить процесс и выбрать другое зеркало.
Если вы пропустили этот шаг при первом запуске Termux и хотите выбрать зеркало позже, выполните команду:
Команды Termux по категориям
Termux — это эмулятор терминала для операционной системы Android, который позволяет выполнять команды Linux на мобильных устройствах. В статье поделюсь своим списком команд Термукс.
Команды Termux
Вот список всех команд Termux, разбитых по категориям.
Основные команды Termux
- ls — список файлов и каталогов.
- ls — al — форматированный список со скрытыми каталогами и файлами.
- cd dir — переход в директорию.
- cd — переход в домашний каталог.
- pwd — отображение текущего каталога.
Команды для работы с файлами в Termux
- mkdir директория — создание каталога.
- rm файл — удаление файла.
- rm — r директория — удаление каталога.
- rm — r — f /путь — удаление каталога.
- rm — f файл < / code >— форсированное удаление файла.
- rm — rf директория — форсированное удаление файла каталога.
- cp файл 1 файл 2 — копирование файл1 в файл2
- cp — r директория 1 директория 2 — копирование директории1 в директорию2 (создаст каталог директорию2, если не существует).
- mv файл 1 файл 2 — переименование или перемещение файла1 в файл2 (если файла2 существующий каталог — переместит файл1 в каталог файл2).
- ln — s файол ссылка — создание ссылки к файлу.
- touch file — создание файла.
Команды для получения информации о файлах
- cat > файл — направляет стандартный ввод в файл.
- more файл — выводит содержимое файла.
- head файл — выводит первые 10 строк файла.
- tail файл — выводит последние 10 строк файла.
- tail — f файл — выводит файл по мере роста, начинает с последних 10 строк.
Команды для управления процессами в Termux
- ps — выводит текущие активные процессы.
- top — отображает все запущенные процессы.
- kill pid — убивает процесс по pid.
- killall proc — убивает все процессы с именем proc.
- bg — выводит список остановленных и фоновых задач.
- fg — выносит на передний план последние задачи.
- fg n — вынести задачу n на передний план.
- chmod 777 — сменить права файла (чтение, запись, выполнение для всех)
Команды Termux для работы с SSH
- ssh user @ хост — подключается к хосту как юзер.
- ssh — p порт юзер @ хост — подключается к хосту используя порт как юзер.
- ssh — copy — id юзер @ хост — подключается к хосту использую ключ.
Команды поиска в Termux
- grep pattern files — поиск файлов шаблонов.
- grep — r pattern директория — поиск рекурсивно паттерн (шаблон) в директории.
- locate файл — поиск всех файлов с определенным именем.
Команды для отображения системной информации
- date — вывод текущей даты и времени.
- cal — вывод календаря текущего месяца.
- uptime — отображает текущий аптайм.
- whoami — отображает имя, под которым вы залогинены.
- uname — a — показывает информацию о ядре.
- cat / proc / cpuinfo — информация о ЦПУ.
- cat / proc / meminfo — информация о памяти.
- man command — показывает мануал для command.
- df — выводит инфу об общем объеме памяти, выделенной файловой системе, и объеме свободной памяти.
- du — выводит размер текущего каталога.
- free — отображает использование памяти и swap.
- whereis приложение — показывает возможное расположение программы.
- which приложение — выводит информацию о приложение, которое будет запущено по умолчанию.
Команды для работы с архивами в Termux
- tar cf файл . tar файлы — создает tar-архив.
- tar xf файл . tar — распаковывает файл.tar.
- tar czf файл . tar . gz files — создает tar-архив с сжатием Gzip.
- tar xzf файл . tar . gz — распаковывает tar с Gzip.
- tar cjf файл . tar . bz2 — создает tar-архив с сжатием Bzip2.
- tar xjf файл . tar . bz2 — распаковывает tar с Bzip2
- gzip файл — сжимает файл и переименовывает в file.gz.
- gzip — d файл . gz — обратная процедура.
Команды для работы с сетью в Termux
- ping хост — пингует хост и выводит результат.
- whois домен — получает информацию whois для домена.
- dig домен — получает информацию DNS о домене.
- dig — x хост — реверсивно ищет хост.
- wget файл — скачивает файл.
- wget — c файл — возобновляет остановленную закачку.
Установка пакетов и работа с ними
- pkg install пакет — устанавливает пакет.
- pkg remove пакет — удаляет пакет.
- pkg search пакет — ищет пакет в репозитории.
- pkg list — installed — выводит список установок.
Команды с Android
- adb — инструмент для отладки устройств Android с ПК.
- pm — менеджер пакетов.
- pm list packages отображает список загруженных пакетов.
- am — менеджер для запуска и остановки приложений.
Горячие клавиши Termux
- Ctrl + C — завершает текущую команду.
- Ctrl + Z — останавливает текущую команду.
- Ctrl + D — разлогинивание, тоже самое, что и exit .
- Ctrl + W — удаляет одно слово в текущей строке.
- Ctrl + U — удаляет строку.
- ! ! — повторяет последнюю команду.
- exit — разлогиниться.
Заключение
Командная строка Termux предоставляет гибкость и мощь, управление пакетами, поддержку скриптов и разработку на Android, что делает его отличным для обучения Linux и выполнения разнообразных задач.
Но у Termux есть недостатки, такие как: ограниченные права доступа, отсутствие графического интерфейса, ограниченные ресурсы, обновления и доступность пакетов, а также зависимость от Android, что следует учитывать при его использовании.
Чтобы увеличить потенциал Termux нужет root Термукс. Об этом мы рассказывали в отдельной статье (см. первую ссылку выше).
- Использование Termux API
- Как установить и использовать Tool X в Termux
С чего начать
Termux это эмулятор терминала для Android OS, возможности которого могут быть расширены при помощи огромной коллекции пакетов програмного обеспечения портированного на Android OS. Главная цель проекта — предоставить опыт использования командной строки Linux пользователям мобильных устройств без необходимости получения прав суперпользователи или иных специальных модификаций устройства.
Contents
- 1 Как это работает?
- 2 Является ли Termux таким же как дистрибутив Linux?
- 3 Что я могу сделать при помощи Termux?
- 4 Нужны ли права root?
- 5 Есть ли какие-нибудь туториалы?
- 5.1 Команды
- 5.2 Shell скриптинг
Как это работает?
Фактически это приложение которое просто запускает бинарник утилиты командной строки при помощи системного вызова execve(2) и перенаправляет стандартные потоки ввода, вывода и ошибок на текстовый экран. Termux не является ни виртуальной машиной, ни иным видом эмулированной/симулированной системы. Программы выполняются прямо на устройстве, что обеспечивает максимально возможную производительность.
Так как набор стандартных утилит командной строки Android весьма ограничен, мы портировали более 1000 пакетов програмного обеспечения которые вы можете встретить в системах GNU/Linux. Все пакеты скомпилированы при помощи Android NDK и имеют лишь патчи совместимости для корректной работы на Android OS.
Так как операционная система не имеет директории определяемые стандартом FHS или же не предоставляет к ним доступ на запись, Termux не может использовать такие директории как /bin, /etc, /usr, /var. Вместо этого, все файлы находятся в приватной директории приложения, которая находится здесь:
/data/data/com.termux/files/usr
Мы называем эту директорию «префикс» и обычно ссылаемся на нее как «$PREFIX» что также является переменной окружения командной оболочки. Префикс всегда постоянен и не может быть перенесен на карту SD, как минимум при обычных условиях. И на это есть причины:
- Многие бинарники используют статические пути для обращения к файлам в /etc, /bin, /var и тд.
- Заголовки исполняемых файлов формата ELF используют DT_RUNPATH установленый как $PREFIX/lib. Используется для динамической компоновки зависимостей.
- Файловая система должна поддерживать параметры доступа (chmod) и специальные файлы, такие как сокеты и символьные ссылки. То есть ФС должна быть EXT4 или F2FS например, а не какой-нибудь там FAT32.
Также есть отдельная директория для пользовательских данных, то есть домашняя директория или $HOME. Она находится здесь:
/data/data/com.termux/files/home
Конечно, отличий среды Termux от GNU/Linux немного больше, чем перечислено здесь. Смотрите Differences from Linux для более подробной информации.
Является ли Termux таким же как дистрибутив Linux?
Termux предоставляет пакетную экосистему, как в дистрибутивах Linux. Однако Termux таковым не является и более того, он просто обычное приложение Android OS.
Это приводит к нескольким отличиям:
1. Как сказано выше, все устанавливается в $PREFIX, а не в стандартные директории вроде /bin или /etc.
2. Среда является однопользовательской. Будьте осторожны если работаете с правами root. Можно очень легко нарушить параметры доступа к файлам и контексты SELinux — это приведет к неприятным последствиям, разгребать которые придется вам самим.
3. Динамический компоновщик и libc предоставляются Android OS.
Все эти три отличия могут вызвать проблемы, если вы попытаетесь запустить в Termux программу скомпилированную под GNU/Linux систему.
Что я могу сделать при помощи Termux?
Типичные варианты использования:
- Обработка данных при помощи Python.
- Среда разработки.
- Загрузка и управление файлами.
- Изучение командной строки.
- SSH клиент.
- Синхронизация и резервное копирование данных.
Естественно, это далеко не все варианты использования приложения. У нас более 1000 пакетов в репозиториях. Если этого недостаточно, вы можете сами скомпилировать необходимое ПО прямо на устройстве. У нас есть пакеты различных компиляторов и интерпретаторов языков программирования, например C, C++, Go, Rust, Python, Ruby, Node.js.
Ну и для особо одаренных: Termux не является программой для рутования, хакинга и тд. Конечно, это все возможно при помощи Termux, если у вас есть необходимые навыки, для приобретения которых вам придется прилично потрудиться.
Нужны ли права root?
Для обычного использования права суперпользователя вам не понадобятся. Termux нацелен в первую очередь на пользователей устройств без root.
Права суперпользователя необходимы лишь в том случае, если вы собрались выполнять действия, перечисленные ниже:
- Модификация системных файлов.
- Изменение параметров ОС или ядра.
- Установка приложений при помощи «pm» или «cmd».
- Доступ на чтение/запись ко всем файловым системам устройства.
- Полный доступ к аппаратному обеспечению, портам и тд.
- Создание полноценного окружения chroot, а также контейнеризация.
- Полноценный контроль над устройством.
В подавляющем большинстве случаев, вам root не нужен!
Есть ли какие-нибудь туториалы?
This section or list is incomplete. Please help to improve it.
Мы не можем поддерживать в актуальном состоянии подробную информацию о таких общих вещах как команды, shell-скриптинг и тд, по этому данная информация не размещается на Termux Wiki. Здесь предоставлены ссылки на сторонние ресурсы.
Команды
Изучите основные команды используемые в консоли Linux:
Shell скриптинг
Shell скриптинг является ключевым навыком для работы с терминалом. Без этого вы не сможете делать что-либо серьезное в Termux, да и в GNU/Linux системах вообще.
- http://mywiki.wooledge.org/BashGuide
- https://www.tldp.org/LDP/Bash-Beginners-Guide/html/
Эти ресурсы могут быть полезны также и для продвинутых пользователей командной оболочки:
- https://wiki-dev.bash-hackers.org/ — справочник с примерами для встроеных команд интерпретатора Bash.
Могу ли я сотрудничать?
Вот вам предложения, если решите внести свой вклад в развитие проекта:
- Написание страниц Termux Wiki: исправляйте ошибки, дополняйте и поддерживайте в актуальном состоянии уже имеющуюся информацию.
- Информируйте об ошибках. Пожалуйста, шлите отчеты об ошибках которые относятся только к приложению или пакетам. Нас не волнуют баги в скриптах, которые вы нашли где-то в Интернете.
- Шлите предложения о пакетах, которые вы бы хотели видеть в официальном репозитории.
- Шлите патчи с исправлениями и улучшениями.
Весь исходный код и скрипты сборки вы можете найти здесь: https://github.com/termux.
Смотреть также
- FAQ
- Development Environments
- Editors
- Differences from Linux
- Package Management
- Recover a broken environment
- Software