Ang Eternal Terminal (ET) ay isang remote shell na awtomatikong kumokonekta muli nang hindi naaantala ang sesyon.
Hindi tulad ng normal na SSH session, ang session na ginawa gamit ang ET ay magpapatuloy kahit na magpalit ka ng IP o magkaroon ng network outage.
Nangangahulugan iyon na kahit na ang IP address ng iyong remote host ay binago, ang Eternal Terminal ay mananatili kang konektado sa remote system.
Ang isa pang kilalang tampok ng ET ay maaari naming patakbuhin ang tmux / screen sa loob ng isang session na ET.
Sinusuportahan ng ET ang mode ng control ng tmux na nagbibigay-daan sa iyo upang magkaroon ng operating system scroll bar, tab at windows.
Dito inilalayo ng ET ang sarili mula sa iba pang mga katulad na app tulad ng Mosh (isang tanyag na kahalili sa SSH).
Bagaman nag-aalok ang Mosh ng parehong pag-andar tulad ng ET, hindi nito sinusuportahan ang hover mode o tmux control mode. Sa madaling salita, ang ET ay isang malayong terminal para sa abala at walang pasensya na mga tao.
Mahalagang banggitin na ang ET ay hindi isang terminal emulator, ito ay isang remote shell lamang.
Ang ET ay malakas na inspirasyon ng maraming mga proyekto na maaaring mabanggit:
- ssh: ito ay isang mahusay na programa ng remote terminal, at talagang ginagamit ng ET ang ssh upang simulan ang koneksyon. Ang malaking pagkakaiba sa pagitan ng ET at ssh ay ang isang session na ET ay maaaring mabuhay sa mga pagkawala ng network at roaming ng IP.
- ang autossh: ay isang utility na awtomatikong nagre-restart ng isang ssh session kapag nakakita ito ng muling pagkakakonekta. Ito ay isang mas advanced na bersyon ng paggawa «habang totoo; ssh myhost.com ». Ang ET ay nakakatipid ng mahalagang oras sa pamamagitan ng pagpapanatili ng iyong tmux session kahit na namatay ang koneksyon ng TCP at mabilis na ipagpatuloy.
- mosh: Ang Mosh ay isang tanyag na kahalili sa ET. Habang nagbibigay ang mosh ng parehong pangunahing pagpapaandar tulad ng ET, hindi nito sinusuportahan ang katutubong pag-scroll o ang mode ng control ng tmux (tmux -CC).
Paano i-install ang ET sa Linux?
Para sa mga interesadong mag-install ng ET sa kanilang mga sistema, sundin lamang ang mga hakbang na aming ibinabahagi sa ibaba.
Mahalagang banggitin na ang ET ay dapat na mai-install sa server at sa system ng client. Bilang default, gumagamit ang ET ng port 2022, kaya kung nasa likod ka ng isang firewall o router, dapat mong buksan ang port na ito.
Para sa mga gumagamit ng Ubuntu at mga derivatives nito, maaari naming idagdag ang sumusunod na imbakan sa system na may:
sudo add-apt-repository ppa:jgmath2000/et
Mahalagang banggitin na ang repository na ito ay may bisa lamang hanggang sa Ubuntu 18.04 LTS, kaya para sa mga gumagamit ng Ubuntu 18.10 dapat silang mag-download at mag-install ng deb package.
Kapag naidagdag na ang repository, nagpapatuloy kaming mai-install ang application sa:
sudo apt-get update
sudo apt-get install et
Kung nais mong mai-install mula sa deb package, dapat mong i-download at i-install ito sa mga sumusunod na utos.
Dapat i-download ng mga gumagamit ng 64-bit na system ang package na ito kasama ang:
wget https://launchpad.net/~jgmath2000/+archive/ubuntu/et/+build/15589986/+files/et_5.1.8-xenial1_amd64.deb
Ang mga gumagamit ng system na 32-bit ay na-download ito:
wget https://launchpad.net/~jgmath2000/+archive/ubuntu/et/+build/15589988/+files/et_5.1.8-xenial1_i386.deb
At para sa mga gumagamit ng ARM, ang package na i-download ay:
wget https://launchpad.net/~jgmath2000/+archive/ubuntu/et/+build/15589987/+files/et_5.1.8-xenial1_armhf.deb
Kapag tapos na ang pag-download, kailangan lang nilang mai-install ang na-download na package gamit ang:
sudo dpkg -i et*.deb
At nilulutas nila ang mga dependency sa:
sudo apt -f install

Ngayon sa kaso ng mga gumagamit ng Debian, dapat silang magbukas ng isang terminal at isagawa ang sumusunod na utos dito:
echo "deb https://mistertea.github.io/debian-et/debian-source/ stretch main" | sudo tee -a /etc/apt/source.list
curl -sS https://mistertea.github.io/debian-et/et.gpg | sudo apt-key add -
I-update at i-install ang application gamit ang:
sudo apt update
sudo apt install et
Para sa natitirang mga pamamahagi ng Linux, dapat mong i-download at i-compile ang source code ng application sa mga sumusunod na utos.
Kaya dapat mayroon silang mga sumusunod na dependency na naka-install sa iyong system:
- libboost-dev
- libsodium-dev
- libncurses5-dev
- libprotobuf-dev
- protobuf-compiler
- cmake
- libgoogle-glog-dev
- libgflags-dev
- magsiper
- wget
Una naming nai-download ang source code sa:
wget https://github.com/MisterTea/EternalTerminal/archive/master.zip
Tapos na ngayon i-unzip namin ang na-download na file gamit ang:
unzip master.zip
Inilalagay namin ang nabuong direktoryo sa:
cd master
At nagpapatuloy kaming mag-ipon ng code sa mga sumusunod na utos:
mkdir build
cd build
cmake ../
make
Sa wakas dapat nating mai-install ang application gamit ang utos na ito:
sudo make install