Eternal Terminal (ET) là một trình shell từ xa tự động kết nối lại mà không làm gián đoạn phiên làm việc.
Khác với phiên SSH thông thường, phiên được tạo bằng ET sẽ tiếp tục hoạt động bất kể bạn có thay đổi địa chỉ IP hay gặp sự cố mạng.
Điều đó có nghĩa là ngay cả khi địa chỉ IP của máy chủ từ xa của bạn bị thay đổi, Eternal Terminal vẫn sẽ giúp bạn kết nối với hệ thống từ xa.
Một tính năng đáng chú ý khác của ET là chúng ta có thể chạy tmux/screen trong phiên ET.
ET hỗ trợ chế độ điều khiển tmux cho phép bạn có thanh cuộn, tab và cửa sổ hệ điều hành.
Đây là điểm khác biệt của ET với các ứng dụng tương tự khác như Mosh (Một giải pháp thay thế phổ biến cho SSH).
Mặc dù Mosh cung cấp chức năng tương tự như ET nhưng nó không hỗ trợ chế độ cuộn hoặc chế độ điều khiển tmux. Nói một cách đơn giản, ET là một thiết bị đầu cuối từ xa dành cho những người bận rộn và thiếu kiên nhẫn.
Điều quan trọng cần đề cập là ET không phải là trình mô phỏng thiết bị đầu cuối, nó chỉ là một trình bao từ xa.
ET được truyền cảm hứng mạnh mẽ từ một số dự án có thể kể đến:
- ssh - là một chương trình thiết bị đầu cuối từ xa tuyệt vời và trên thực tế, ET sử dụng ssh để khởi tạo kết nối. Sự khác biệt lớn giữa ET và ssh là phiên ET có thể tồn tại khi mất mạng và chuyển vùng IP.
- autossh - là tiện ích tự động khởi động lại phiên ssh khi phát hiện kết nối lại. Đây là một phiên bản nâng cao hơn của doing while true; ssh myhost.com. ET tiết kiệm thời gian quý báu bằng cách duy trì phiên tmux của bạn ngay cả khi kết nối TCP bị hỏng và tiếp tục nhanh chóng.
- mosh – Mosh là một lựa chọn thay thế phổ biến cho ET. Mặc dù mosh cung cấp chức năng cơ bản giống như ET nhưng nó không hỗ trợ chế độ cuộn gốc hoặc chế độ điều khiển tmux (tmux -CC).
Làm cách nào để cài đặt ET trên Linux?
Đối với những ai muốn cài đặt ET trên hệ thống của mình, họ nên làm theo các bước mà chúng tôi chia sẻ bên dưới.
Điều quan trọng cần đề cập là ET phải được cài đặt trên máy chủ và hệ thống máy khách. Theo mặc định, ET sử dụng cổng 2022, vì vậy nếu bạn sử dụng tường lửa hoặc bộ định tuyến, bạn phải mở cổng này.
Đối với những người dùng Ubuntu và các dẫn xuất của nó, chúng ta có thể thêm kho lưu trữ sau vào hệ thống bằng:
sudo add-apt-repository ppa:jgmath2000/et
Điều quan trọng cần đề cập là kho lưu trữ này chỉ hợp lệ cho tối đa Ubuntu 18.04 LTS, vì vậy người dùng Ubuntu 18.10 phải tải xuống và cài đặt gói deb.
Sau khi đã thêm kho lưu trữ, chúng ta tiến hành cài đặt ứng dụng với:
sudo apt-get update
sudo apt-get install et
Nếu bạn muốn cài đặt từ gói gỡ lỗi, bạn phải tải xuống và cài đặt nó bằng các lệnh sau.
Người dùng hệ thống 64 bit phải tải xuống gói này với:
wget https://launchpad.net/~jgmath2000/+archive/ubuntu/et/+build/15589986/+files/et_5.1.8-xenial1_amd64.deb
Người dùng hệ thống 32 bit tải xuống phần này:
wget https://launchpad.net/~jgmath2000/+archive/ubuntu/et/+build/15589988/+files/et_5.1.8-xenial1_i386.deb
Và đối với những người dùng ARM, gói bạn phải tải xuống là:
wget https://launchpad.net/~jgmath2000/+archive/ubuntu/et/+build/15589987/+files/et_5.1.8-xenial1_armhf.deb
Sau khi quá trình tải xuống hoàn tất, bạn chỉ cần cài đặt gói đã tải xuống với:
sudo dpkg -i et*.deb
Và họ giải quyết sự phụ thuộc bằng:
sudo apt -f install

Bây giờ, trong trường hợp những người dùng Debian, họ phải mở một thiết bị đầu cuối và thực thi lệnh sau trong đó:
echo «deb https://mistertea.github.io/debian-et/debian-source/ kéo dài chính» | sudo tee -a /etc/apt/sources.list
cuộn tròn -sS https://mistertea.github.io/debian-et/et.gpg | Thêm khóa apt sudo –
Cập nhật và cài đặt ứng dụng với:
sudo apt update
sudo apt install et
Đối với các bản phân phối Linux còn lại, bạn phải tải xuống và biên dịch mã nguồn của ứng dụng bằng các lệnh sau.
Vì vậy, bạn phải cài đặt sẵn các phần phụ thuộc sau trên hệ thống của mình:
- libboost-dev
- libsodium-dev
- libncurses5-dev
- libprotobuf-dev
- trình biên dịch protobuf
- cmake
- libgoogle-glog-dev
- libgflags-dev
- giải nén
- wget
Đầu tiên chúng ta tải mã nguồn với:
wget https://github.com/MisterTea/EternalTerminal/archive/master.zip
Khi việc này hoàn tất, bây giờ chúng ta sẽ giải nén tệp đã tải xuống bằng:
unzip master.zip
Chúng tôi vào thư mục được tạo với:
cd master
Và chúng ta tiến hành biên dịch code bằng các lệnh sau:
mkdir build
cd build
cmake ../
make
Cuối cùng chúng ta phải cài đặt ứng dụng bằng lệnh này:
sudo make install