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]"" (якщо цікаво що це і з чим його їдять, прошу
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