Termux крок за кроком
При першому знайомстві Termux, а я далеко не лінуксоїд, викликав у моїй голові дві думки: «Круть несусвітня!» і "Як ним користуватися?". Порившись в інетах, я не знайшов жодної статті, що повністю дозволяє почати користуватися Termux`ом так щоб це приносило більше задоволення ніж гемору. Будемо це виправляти.
За яким, власне кажучи, я поліз до Termux? По-перше, хакінг, точніше бажання трохи в ньому розібратися. По-друге, відсутність можливості користуватися Kali Linux`ом.
Тут я постараюся зібрати докупи все корисне знайдене мною по темі. Розбирається ця стаття навряд чи здивує, але тим хто тільки пізнає принади Termux`а, сподіваюся, буде корисна.
Для кращого розуміння матеріалу рекомендую повторювати описане мною не простою копіпастою, а самостійно вводити команди. Для зручності нам знадобиться або Android пристрій з підключеною клавіатурою, або як у моєму випадку Android пристрій та ПК/Ноутбук (Windows) підключені до однієї мережі. Android бажано з root`ом, але не обов'язково. Іноді я щось вказую в дужках, як правило, це дозволить краще зрозуміти матеріал (якщо написане в дужках не зовсім зрозуміло, то сміливо пропускайте це, потім у процесі і в міру потреби все роз'ясниться).
Крок 1
Буду банальний і страшенно логічний одночасно
Ставимо Termux з Google Play Market:

Відкриваємо встановлений додаток і бачимо:

Далі варто оновити встановлені пакети. Для цього вводимо дві команди, по ходу виконання яких з усім погоджуємося, вводячи Y:
apt update
apt upgrade
Першою командою ми перевіряємо список встановлених пакетів та шукаємо ті, які можна оновити, а другою оновлюємо їх. Тому команди потрібно писати саме в такій послідовності.
Тепер у нас найсвіжіша версія Termux.
Ще кілька потрібних команд
ls – відображає список файлів та директорій у поточній директорії
cd – переміщає до зазначеної директорії, наприклад:
Важливо розуміти: якщо шлях не вказано прямо (~/storage/downloads/1.txt) він буде від поточної директорії
cd dir1 – перемістить в dir1 якщо у поточній директорії вона є
cd ~/dir1 – перемістить dir1 по вказаному шляху від кореневої папки
cd або cd ~ - Перемістити в кореневу папку
clear - Очищаємо консоль
ifconfig - можна подивитися IP, а можна і мережу налаштувати
cat – дозволяє працювати з файлами/пристроями (в рамках одного потоку) наприклад:
cat 1.txt - Переглянемо вміст файлу 1.txt
cat 1.txt>>2.txt – копіюємо файл 1.txt у файл 2.txt (файл 1.txt залишиться)
rm — Використовується для видалення файлів із файлової системи. Ключі, що використовуються з rm:
-r - Опрацьовувати всі вкладені директорії. Цей ключ необхідний, якщо файл, що видаляється, є директорією. Якщо файл, що видаляється, не є директорією, то ключ -r не впливає на команду rm.
-i - Виводити запит на підтвердження кожної операції видалення.
-f – не повертати код помилкового завершення, якщо помилки були викликані неіснуючими файлами; не вимагати підтвердження операцій.
Наприклад:
rm -rf mydir – видалити без підтвердження та коду помилкового завершення файл (або каталог) mydir.
mkdir <путь> - створює директорію по зазначеному шляху
echo – може служити для запису рядка у файл, якщо використовується '>' файл буде перезаписано, якщо '>>' рядок буде дописано до кінця файлу:
echo "string" > filename
Більш детально за командами UNIX шукаємо в інтернеті (самрозвиток ніхто не скасовував).
Поєднання клавіш Ctrl+C та Ctrl+Z перериває та припиняє виконання команд відповідно.
Крок 2
Полегши собі життя
Щоб не мучити себе без потреби введенням команд з екранної клавіатури (у «польових» умовах, звичайно, від цього не втекти) є два шляхи:
- Підключити до Android пристрої повноцінну клавіатуру будь-яким зручним способом.
- Скористайтеся ssh. Простіше кажучи, у вас на комп'ютері буде відкрито консоль Termux`а запущеного на вашому комп'ютері Android пристрої.
Я пішов другим шляхом, хоча він і трохи складний в налаштуванні, але все окупиться зручністю використання.
На комп'ютері необхідно встановити програму ssh-клієнт, я користуюся Bitvise SSH Client, т.ч. всі подальші дії відбуваються у цій програмі.

Т.к. на даний момент Termux підтримує лише підключення за методом Publickey з використанням файлу-ключа, нам необхідно створити цей файл. Для цього у програмі Bitvise SSH Client на вкладці Login клацаємо по Client key manager у вікні генеруємо новий публічний ключ і експортуємо його в OpenSSH форматі у файл з назвою termux.pub (насправді можна будь-яку назву). Створений файл розміщуємо у внутрішню пам'ять вашого Android пристрої в папку Downloads (до цієї папки, і ще кількох, Termux має спрощений доступ без root).
У вкладці Login у полі Host вводимо IP вашого Android пристрої (дізнатися можна ввівши в Termux команду ifconfig) у полі Port має бути 8022.
Тепер переходимо до встановлення OpenSSH Termux, для цього вводимо наступні команди:
apt install openssh (у процесі, якщо потрібно, вводимо 'y')
pkill sshd (Цією командою зупиняємо OpenSSH)
termux-setup-storage (Підключити внутрішню пам'ять)
cat ~/storage/downloads/termux.pub>>~/.ssh/authorized_keys (Копіюємо файл-ключ)
sshd (запускаємо ssh хост)
Повертаємося до Bitvise SSH Client та натискаємо кнопку Log in. У процесі підключення з'явиться вікно, в якому вибираємо Method - publickey, Client key це Passphrase (якщо ви її вказали під час генерації файлу-ключа).
У разі успішного підключення (якщо все зробили, як написано, то має бути підключено без проблем) відкриється вікно.

Тепер ми можемо вводити команди з ПК, а виконуватимуться вони на вашому. Android пристрої. Не складно здогадатися, які це дає переваги.
Крок 3
Налаштуємо Termux, встановимо додаткові утиліти
Насамперед давайте встановимо bash-completion (скорчалку, чарівний-Tab, хто як називає). Суть утиліти в тому що, вводячи команди, ви можете натиснувши Tab скористатися автозаповненням. Для встановлення пишемо:
apt install bash-completion (Працює автоматично за натисканням Tab)
Що за життя без текстового редактора з підсвічуванням коду (якщо раптом захочеться покодити, а воно захочеться). Для встановлення пишемо:
apt install vimТут вже можна скористатися автозаповненням - пишемо 'apt i' тепер натискаємо Tab і наша команда дописується до 'apt install'.
Користуватися vim`ом не складно, щоб відкрити файл 1.txt (якщо його немає, він створиться) пишемо:
vim 1.txt Щоб почати вводити текст, натисніть 'i'
Щоб завершити введення тексту, натисніть ESC
Перед введенням команди має бути двокрапка ':'
':q' – вийти без збереження
':w' – зберегти
':wq' – зберегти та вийти
Раз ми тепер можемо створювати та редагувати файли, давайте трохи покращимо вигляд та інформативність командного рядка Termux`а. Для цього нам потрібно привласнити змінної оточення PS1 значення "[33 [1; 33; 1; 32m]: [33 [1; 31m] w $ [33 [0m] [33 [0m]"" (якщо цікаво що це і з чим його їдять, прошу ). Щоб це зробити нам потрібно у файл '.bashrc' (лежить докорінно і виконується при кожному запуску оболонки) додати рядок:
PS1 = "[ 33[1;33;1;32m]:[ 33[1;31m]w$ [ 33[0m][ 33[0m]"Для простоти та наочності скористаємося vim`ом:
cd
vim .bashrc
Вписуємо рядок, зберігаємо та виходимо.
Додати рядок у файл можна і в інший спосіб, скориставшись командою 'echo':
echo PS1='"[ 33[1;33;1;32m]:[ 33[1;31m]w$ [ 33[0m][ 33[0m]"' >> .bashrcЗверніть увагу, що для відображення подвійних лапок весь рядок з ними потрібно покласти в одинарні лапки. У цій команді стоїть '>>', тому файл буде доповнений, щоб переписати '>'.
У файл .bashrc так само можна вписати або скорочення. Наприклад, ми хочемо однією командою проводити update і upgrade відразу. Для цього до .bashrc додаємо рядок:
alias updg = "apt update && apt upgrade"Для внесення рядка можна скористатися vim'ом або командою echo (якщо не виходить самостійно – див. нижче)
Синтаксис alias'ів такий:
alias <сокращение> = "<перечень команд>"Отже, додаємо скорочення:
echo alias updg='"apt update && apt upgrade"' >> .bashrcОсь ще кілька корисних утиліт
Ставити через apt install
man - Вбудована довідка для більшості команд.
man %commandname
imagemagick — Утиліта для роботи із зображеннями (конвертування, стиснення, обрізка). Підтримує багато форматів, включаючи pdf. Приклад: Сконвертувати всі картинки з поточної папки в один pdf і зменшити їх розмір.
convert *.jpg -scale 50% img.pdf
ffmpeg — Один із найкращих конвертерів аудіо/відео. Інструкцію з використання гугліть.
mc - Двопанельний файловий менеджер на зразок Far.
Попереду ще чимало кроків, головне, що рух розпочато!
Джерело: habr.com
