Cách sử dụng dòng lệnh Linux trên Android với Termux

Android là một hệ điều hành rất có “năng lực" với ngày càng nhiều ứng dụng tiếp cận máy tính để bàn. Tuy nhiên, đôi khi bạn muốn thực hiện một số thứ trên Android có thể dễ dàng như máy tính để bàn. May mắn thay bạn có thể sử dụng công cụ Termux, nó xây dựng trên cơ sở hạ tầng hiện có và cung cấp một môi trường dòng lệnh cho phép bạn cài đặt các ứng dụng Linux thực sự trên thiết bị Android. 

Tại sao nên sử dụng Termux?

Trên thực tế, đã có một số ứng dụng trong Play Store chuyển đổi ứng dụng Linux thành các ứng dụng trên Android. Khác với Termux, các ứng dụng này tạo bản sao ứng dụng Linux và “Android hóa” chúng. Ngược lại, Termux là một môi trường Linux độc lập. Các chương trình của nó (cho tất cả các mục đích) chính xác giống hệt các bản sao Linux. Điều này đem đến cho nó một số lợi mà các ứng dụng chuyển đổi không có được:

  • Sự nhất quán - Các ứng dụng Linux đã được chuyển sang Android phải nhận được một số loại giao diện người dùng. Trải nghiệm người dùng trên Android phụ thuộc rất nhiều vào nỗ lực của các nhà phát triển ứng dụng đó. Nó khác nhau trong nhiều trường hợp. Tuy nhiên, các ứng dụng của Termux giống như các phiên bản Linux, từ các phím tắt cho đến cách bạn cài đặt chúng.
  • Gọn nhẹ - Việc thêm các “code Android" được mô tả ở trên có thể gây ra các vấn đề cho một số ứng dụng. Lấy ví dụ như ứng dụng client SSH trên Android (ứng dụng VX ConnectBot hiển thị dưới đây) có dung lượng từ 2 MB đến 12 MB. Tuy nhiên, ngoại trừ một số màn hình đồ họa, cuối cùng bạn vẫn phải dùng ứng dụng trong giao diện dòng lệnh như hình dưới đây. Khi so với với Dropbear có sẵn trong Termux, nó chỉ nặng có 396 KB (bạn nên lưu ý rằng đây là KB không phải MB nhé) thì client SSH này năng hơn rất nhiều và Dropbear còn cung cấp một máy chủ SSH để khởi động.

Dòng lệnh Linux trên Android

  • Tính chất đúng lúc - Khi ứng dụng được cập nhật, bạn vẫn phải chờ đợi các nhà phát triển ứng dụng Android nâng cấp nó. Ngược lại, các ứng dụng Termux là các gói Linux tương đối tiêu chuẩn, yêu cầu ít công việc hơn. Nó thậm chí có thể được tạo ra tự động cùng với các phiên bản dành cho máy tính để bàn. Bạn có thể truy cập vào các tính năng mới nhanh hơn với Termux.
  • Giá - Tất nhiên, các ứng dụng bạn mua từ Play Store trong khi sử dụng sẽ phát sinh các chi phí có liên quan nhưng tất cả các ứng dụng trong Termux đều miễn phí.

Download: Termux (miễn phí)

Sử dụng Termux

Trước khi bắt đầu vào tìm hiểu cách thức sử dụng Termux, bạn cần lưu ý rằng Termux là một môi trường dòng lệnh, nó không có giao diện người dùng ưa thích với các nút như bạn thường thấy ở các ứng dụng chuyển đổi Linux trên Android khác. 

Điều này không chỉ đối với gói Termux cơ bản mà còn cả ứng dụng của nó. Bạn sẽ không nhận được phiên bản mới nhất của LibreOffice. Bạn cần phải có hiểu biết nhất định với dòng lệnh để cài đặt và sử dụng các chương trình này.

Tuy nhiên quá trình cài đặt chương trình khá đơn giản. Termux sử dụng cùng một trình cài đặt gói có sẵn trong Debian và Ubuntu Linux, được gọi là Advanced Packaging Tools (APT). Để xem những ứng dụng nào có sẵn, mở Termux và gõ lệnh sau:

apt list

Chạy dòng lệnh để hiện thị danh sách ứng dụng

Sau đó bạn sẽ thấy hiển thị một danh sách tất cả các gói hoặc gói phần mềm có thể cài đặt. Nếu bạn muốn xem chi tiết về một phần mềm nào đó chỉ cần gõ dòng này và thay thế từ trong ngoặc vuông bằng tên ứng dụng:

apt show [ten ung dung]

Chạy lệnh xem chi tiết ứng dụng

Nó sẽ hiển thị một bản tóm tắt ngắn gọn về gói. Hình ảnh minh họa trên là chi tiết ứng dụng soạn thảo văn bản Emacs. Cuối cùng, để cài đặt, chỉ cần gõ lệnh này vào:

apt install [ten ung dung]

Chạy dòng lệnh cài đặt ứng dụng

Sau khi cài đặt xong, bạn có thể bắt đầu chương trình bằng cách gõ tên của nó tại dấu nhắc lệnh. Ảnh chụp màn hình dưới đây cho thấy ứng dụng soạn thảo văn bản chạy sau khi cài đặt.

Trình soạn thảo văn bản

Bây giờ chúng ta hãy xem một số tiện ích tuyệt vời mà bạn có thể có được thông qua Termux.

Các tiện ích Linux cơ bản

Ứng dụng này sẽ cho phép bạn sử dụng các tiện ích cơ bản của Linux để thực hiện các thao tác như sao chép (lệnh cp), di chuyển tệp (lệnh mv), đọc nội dung thư mục (lệnh ls) và xóa (lệnh rm).

Không có gì là bạn không thể làm với công cụ quản lý tập tin Android phải không? Vâng, Termux cũng vậy, nó có chứa lệnh "link" (ln). Termux ở trong thư mục /data/data/com.termux/files/home, đây không phải là nơi chứa các tập tin còn lại của bạn (thường là /sdcard). Nhưng bạn có thể tạo liên kết mềm (symbolic link) mới trong thư mục này (ví dụ: /data/data/com.termux/files/home/documents to /sdcard/Documents).

Điều này sẽ cho phép bạn nhanh chóng điều hướng đến các tệp đó.

Đường dẫn đến tập tin

Các lệnh quản lý tập tin trong Termux cơ bản có thể làm giảm nhu cầu sử dụng các công cụ quản lý tập tin riêng trừ khi chúng có các tính năng bổ sung. Khả năng tạo liên kết giữa các thư mục cũng có thể loại bỏ các ứng dụng như Link Folder và nó sẽ giúp bạn tiết kiệm thời gian root điện thoại của bạn để có được chức năng này.

Ứng dụng soạn thảo văn bản

Termux cung cấp các phiên bản gần đây cho cả hai ứng dụng soạn thảo văn bản Linux chính: VIM (v8.0, mới và ổn định khi viết) và Emacs (v25.2). Các hình ảnh dưới đây so sánh Emacs chạy trong giao diện cửa sổ lệnh terninal konsole trên Linux (ảnh minh họa trên) và trên Termux (ảnh minh họa dưới). Lưu ý những điểm tương đồng.

Emacs chạy trên linux

Emacs chạy trên Termux

Bây giờ, Android đã có rất nhiều ứng dụng soạn thảo văn bản gần giống như vậy. Và một trong số chúng thực hiện tốt các thao tác lưu và mở tệp văn bản nhưng một số ứng dụng khác không nhiều chức năng như vậy. 

Emacs và VIM là ứng dụng soạn thảo văn bản tuyệt vời. Bạn thậm chí có thể sử dụng Emacs như công cụ quản lý tệp, ứng dụng viết kịch bản, công cụ quản lý công việc Trello, trình phát nhạc hoặc để chơi Minesweeper. 

Trình chỉnh sửa văn bản Android thường có một tính năng chính, có ứng dụng tập trung vào việc biên soạn theo chế độ distraction-free, có ứng dụng có thể xem trước Markdown hoặc định dạng khác, và có ứng dụng chỉ để ghi chú. Các trình biên tập dựa trên terminal ở trên có thể đáp ứng những nhu cầu này trong một chương trình duy nhất và nó có sẵn trên các nền tảng máy tính để bàn.

Tiện ích dòng lệnh

Gói Termux bao gồm một số tiện ích dòng lệnh Linux hữu ích:

  • Gnuplot - một chương trình vẽ đồ họa toán học
  • Imagemagick - một bộ công cụ chuyển đổi và chỉnh sửa hình ảnh
  • P7zip - tiện ích lưu trữ/giải nén 
  • Unrar - một công cụ giải nén định dạng RAR
  • Wget - một chương trình để lấy các tập tin trên internet qua HTTP hoặc FTP

Thông thường nếu cần thực hiện các chức năng trên, bạn sẽ cần các ứng dụng độc lập riêng. Tùy thuộc vào số lượng các chức năng mà bạn cần, thậm chí khi có ứng dụng xử lý tất cả các định dạng lưu trữ và đồ hoạ trên thì bạn vẫn phải tải về một số ứng dụng trên thiết bị của mình. Tuy nhiên với gói Termux, bạn chỉ cần chạy các tiện ích dòng lệnh trên để thực hiện và chúng thật sự rất hữu ích.

Máy chủ

Termux cung cấp các máy chủ web Linux như Apache và lighttpd.

Tại sao bạn muốn chạy một máy chủ web trên thiết bị Android của bạn? Ngoài lập trình, thì còn có nhiều ứng dụng hiện nay là ứng dụng web. Ví dụ, nếu bạn đang tìm kiếm một ứng dụng quản lý dự án chạy trên thiết bị của mình, các tùy chọn Android "gốc" có vẻ hơi ít. Tuy nhiên bạn có thể cài đặt nginx- cơ sở dữ liệu PostgreSQL, Python và sử dụng Taiga mà không cần phải đăng ký dịch vụ của bên thứ ba hoặc dịch vụ lưu trữ (hosting).

Dropbear trong Termux cung cấp một máy chủ SSH để đăng nhập vào điện thoại/máy tính bảng của bạn và chuyển các tệp tin cho một máy khách (client). Điều này rất hữu ích trong trường hợp bạn muốn trao đổi một vài tập tin với một máy khác mà không muốn sử dụng các dịch vụ đám mây hay không muốn hoặc không thể cài đặt trình điều khiển để cắm trực tiếp vào thiết bị. Bạn có thể khởi động máy chủ dropbear trong một lúc, sử dụng một máy khách trên Windows hoặc MacOS, lấy những gì bạn cần qua mạng và tắt nó.

Máy chủ SSH

Ứng dụng như máy chủ PAW miễn phí hoặc máy chủ Ulti trả phí cho phép bạn chạy một máy chủ web.

Lập trình

Mặc dù nhiều ứng dụng Android cung cấp khả năng viết code, nhưng chúng không cung cấp ngôn ngữ. Với Termux bạn có thể kiểm tra code đó ngay trên thiết bị của mình. Nó cung cấp các bản phân phối chuẩn của các ngôn ngữ lập trình như:

  • BASH shell
  • Python (cả v2 và v3 đều khả dụng)
  • PHP
  • Ruby

Viết Script với Termux

Các hệ thống kiểm soát mã nguồn git và Subversion cũng có sẵn, những ứng dụng của chúng không chỉ để dùng cho lập trình. Nếu bạn muốn kiểm soát dữ liệu của mình, kiểm soát nguồn cho phép bạn lưu trữ các tệp ở bất cứ nơi nào bạn muốn. Bạn cũng có thể kiểm soát khi bạn gửi bản cập nhật cho các thiết bị khác và sử dụng "tags" cho các phiên bản nhãn (như "mydocument_v12_Aaron's_edit_final_for_real_the_last_one.DOCX").

Có một số gói ngôn ngữ lập trình cho Android, chẳng hạn như PHP, QPython hoặc Pocket Ruby. Nhưng chúng cung cấp giao diện người dùng "cồng kềnh" và có thể yêu cầu các ứng dụng khác phải có đầy đủ các tiện ích (như máy chủ dựa trên Apache phải đi kèm với PHP). Có những ứng dụng dựa trên Android cho cả hai git chẳng hạn như Pocket svn như Open Android SVN Pro. Tuy nhiên hai ứng dụng này không phải là miễn phí và bạn cần phải có một ứng dụng riêng biệt cho từng loại kiểm soát nguồn. Termux cung cấp cả hai trong cùng một gói miễn phí. Bằng cách kiểm soát mã nguồn, bạn cũng có thể cắt giảm máy khách cho các dịch vụ đồng bộ hóa đám mây như Dropbox.

Termux là một ứng dụng cực nhỏ gọn, mở ra rất nhiều tính năng cho thiết bị Android của bạn. Dòng lệnh là một trong những tính năng mạnh mẽ nhất của Linux và Termux được xây dựng trên nhân Linux (kernel) của thiết bị để giúp bạn thực hiện hiệu quả hơn.

Thứ Ba, 29/08/2017 14:10
35 👨 2.367