GNU/Linux >> Belajar Linux >  >> Linux

Menggunakan Irssi di dalam sesi tmux Linux

Jika Anda sudah agak akrab dengan tmux dan Irssi, silakan merujuk ke langkah-langkah dasar di bagian TL;DR di bawah ini. Untuk detail dan opsi lebih lanjut, lihat langkah-langkah konfigurasi yang lebih mendalam di bagian bawah halaman.

Terminal multiplexer (tmux)

Dari tmux halaman manual: tmux adalah multiplexer terminal:memungkinkan sejumlah terminal dibuat, diakses, dan dikendalikan dari satu layar. tmux mungkin terlepas dari layar dan terus berjalan di latar belakang, lalu disambungkan kembali. tmux adalah alternatif untuk perintah layar.

Irssi

Irssi adalah klien Internet Relay Chat (IRC) berbasis terminal untuk sistem *nix. Dari halaman manual Irssi: Irssi adalah  klien Internet Relay Chat modular. Ini sangat dapat diperluas dan sangat aman. Menjadi klien berbasis termcap layar penuh dengan banyak fitur, Irssi mudah dikembangkan melalui skrip dan modul.

[ Anda mungkin juga menyukai: Menggunakan pengubah kata dengan riwayat Bash di Linux ]

TL;DR

Saya menggunakan Irssi untuk klien IRC saya dan menjalankannya di dalam tmux sidang. Untuk menyiapkannya, SSH dengan nama Kerberos Anda ke server shell atau server lompat Anda: jump_server . Simpan file konfigurasi ini:file konfigurasi tmux (.tmux.conf) di ~/ , mulai tmux , simpan file konfigurasi Irssi (config) ke ~/.irssi/ Anda folder, atur nama dan nick IRC Anda di Setelan di bagian bawah file konfigurasi, lalu mulai irssi . Setelah berada di dalam Irssi, jalankan:

[(status)] /connect <irc_server>

Untuk bergabung dengan saluran lain:

/join #whatever

Untuk mengubah nama panggilan Anda:

/nick newname

Untuk mengirim pesan pribadi kepada seseorang:

/query otherperson

Untuk mengubah kamar/kueri mana yang ditampilkan:

Alt + kiri atau tombol panah kanan

Atau

Alt + 2, 3, 4, 5

Dan itu akan melompat ke layar itu. Saya tahu bahwa #sbr-sysmgmt ada di #2, jadi Alt + 2 akan membawaku ke ruangan itu. Untuk mencantumkan orang-orang di saluran:

/who #sbr-sysmgmt

Atau

/names

Dan itu akan mencantumkan semua orang di ruangan saat ini.

Untuk keluar dari tmux tetapi biarkan IRC berjalan:

Kontrol + a , lepaskan Kontrol , d

Untuk melanjutkan sesi SSH + tmux Anda, masukkan:

/usr/bin/ssh -t <jump_server> tmux attach

Saya memiliki skrip startup di akhir dokumen ini yang dapat Anda gunakan.

Dokumentasi lebih mendalam

Saya menggunakan Irssi untuk klien karena beberapa alasan. Terutama, saya lebih suka karena dijalankan di konsol daripada sebagai aplikasi mandiri. Karena itu, saya dapat menjalankannya di sesi SSH jika server jarak jauh telah menginstal Irssi. Untuk membuatnya lebih permanen, saya kemudian menjalankan Irssi di dalam tmux sidang. Itu berarti saya dapat terhubung ke VPN dan kemudian menjalankan perintah:/usr/bin/ssh -t <jump_server> tmux attach , yang menghubungkan saya melalui SSH ke server jarak jauh dan secara otomatis melampirkan tmux . saya sesi, yang menjalankan Irssi.

Konfigurasi tmux

Untuk mengatur ini dari awal, SSH ke jump_server server. Setelah itu, gunakan curl , wget , atau apa pun untuk mendapatkan tmux.conf file (kecuali jika Anda sudah memiliki tmux.conf ) dari file konfigurasi tmux saya, dan simpan sebagai .tmux.conf Anda . Berikut adalah informasi tambahan dari halaman manual untuk tmux :

-f file Tentukan file konfigurasi alternatif. Secara default, tmux memuat file konfigurasi sistem dari /etc/tmux.conf, jika ada, kemudian mencari file konfigurasi pengguna di ~/.tmux.conf.

Sekarang Anda memiliki ~/.tmux.conf , Anda dapat memulai tmux program. Ini pada dasarnya sama dengan screen jika Anda akrab dengannya. Jika tidak, tmux memungkinkan Anda memulai perintah, memutuskan sambungan dari sesi (yang biasanya akan mematikan perintah Anda yang sedang berjalan), memulai kembali sesi SSH Anda, dan melampirkan kembali ke sesi di mana perintah Anda masih berjalan. Untuk melihat ini, mulai tmux dengan perintah ini:

$ tmux

Kemudian mulailah melakukan ping ke Google:

$ ping google.com

Sedangkan ping akan pergi, putuskan sambungan dari tmux . Anda sidang. Untuk melakukannya, tekan Kontrol + a , lepaskan Kontrol tombol, lalu tekan d . Anda harus kembali ke layar SSH utama. Jangan ragu untuk memutuskan sambungan dari sesi SSH lalu menyambungkan kembali. Untuk melihat tmux sesi, jalankan perintah berikut:

$ tmux ls

Anda akan melihat satu sesi Anda terdaftar. Untuk melampirkan kembali, ketik:

$ tmux attach

Anda harus kembali ke ping perintah, yang masih berjalan. Anda dapat memiliki beberapa tmux sesi, jadi untuk dilampirkan ke sesi tertentu, daftarkan dulu, lalu tentukan sesi mana yang akan dilampirkan:

[pgervase@jump_server ~]$ tmux ls
0: 1 windows (created Mon Jan 20 08:06:24 2020) [211x51] (attached)
3: 1 windows (created Fri May  8 11:38:38 2020) [154x39]
[jump_server] [11:39:06 AM]
[pgervase@jump_server ~]$ tmux attach 3

Untuk tujuan saya, saya biasanya hanya memiliki satu tmux sesi di server ini sehingga saya dapat melewati tmux attach ke perintah SSH saya dan tidak ada masalah dengan koneksi ke sesi Irssi saya.

Konfigurasi Irssi

Pada titik ini, Anda memiliki pengetahuan pengantar tentang menggunakan tmux . Ini cukup mudah untuk kasus penggunaan dasar, dan untungnya, yang saya pedulikan hanyalah penggunaan dasar itu. Sekarang, untuk konfigurasi Irsi. Simpan file konfigurasi Irssi ke ~/.irssi/ folder, atur nama dan nick IRC Anda di Setelan di bagian bawah file konfigurasi, lalu mulai irssi . Setelah berada di dalam Irssi, sambungkan ke server Red Hat IRC:

[(status)] /connect <irc_server>

Hei, hei, Anda menggunakan IRC!

Untuk bergabung dengan saluran lain:

/join #whatever

Untuk mengubah nama panggilan Anda:

/nick newname

Untuk mengirim pesan pribadi kepada seseorang:

/query otherperson

Untuk mengubah kamar/kueri mana yang ditampilkan, pilih:

Alt + kiri atau tombol panah kanan

Atau

Alt + 2, 3, 4, 5

Dan itu akan melompat ke layar itu. Saya tahu bahwa # sbr-sysmgmt ada di #2, jadi Alt + 2 akan membawa saya ke ruangan itu.

Untuk mencantumkan orang di saluran:

/who #sbr-sysmgmt

Atau

/names

Dan itu akan mencantumkan semua orang di ruangan saat ini.

Untuk keluar dari tmux tetapi biarkan IRC berjalan, pilih:

Kontrol + a , lepaskan Kontrol , dan pilih d

Untuk melanjutkan sesi SSH + tmux Anda, jalankan:

/usr/bin/ssh -t <jump_server> tmux attach

[ Dapatkan ebook gratis ini:Mengelola kluster Kubernetes Anda untuk boneka. ]

Menutup

Berikut skrip startup yang saya gunakan setiap pagi yang menghubungkan saya ke VPN saya (VPN1 atau VPN2), melakukan kinit , dan kemudian menghubungkan saya ke server SSH:

#!/bin/bash

#### First things first, wait for network connection
echo "step 1: ping google"
until ping -c 1 8.8.8.8 > /dev/null; do sleep 2; done

echo "step 2: stop any old vpn"
/usr/bin/nmcli connection down "VPN1"
/usr/bin/nmcli connection down "VPN2"
echo "step 3: token --- get your token for the vpn"
echo "step 4: start new vpn1 vpn"
/usr/bin/nmcli --ask connection up "VPN1"
#/usr/bin/nmcli --ask connection up "VPN2"

/usr/bin/sleep 5
echo "step 5: kinit"
until /usr/bin/kinit; do
  echo "something didn't work, so shutting down vpn..."
  /usr/bin/nmcli connection down "VPN1"
  echo ""
  echo "redo step 3: token"
  /usr/bin/echo ""
  echo "starting new vpn2 vpn..."
  /usr/bin/nmcli --ask connection up "VPN2"
  #/usr/bin/nmcli --ask connection up "VPN1"
  /usr/bin/sleep 5
  echo "kinit..."
  date
  #/usr/bin/kinit
  date
done
echo "ssh for irc"
/usr/bin/ssh -t <jump_server> tmux attach

Di sana Anda memiliki cara sederhana untuk mengelola sesi Irssi melalui tmux. Luangkan waktu beberapa menit untuk mempelajari prosesnya, sehingga Anda akan mendapatkan efisiensi dan kenyamanan.


Linux
  1. Berbagi Sesi Terminal Linux Dengan Tmux dan Layar

  2. Cara Mulai Menggunakan Tmux Like A Pro Dalam 5 Menit

  3. Bagaimana cara menyalin file tanpa menggunakan scp di dalam sesi ssh?

  1. Debug Linux menggunakan ProcDump

  2. Soket Tmux Api?

  3. Menggunakan Perintah ripgrep (rg) di Linux

  1. 50 Tutorial Sysadmin UNIX / Linux

  2. Kali Linux di Android menggunakan Linux Deploy

  3. Meluncurkan tmux menggunakan terminal gnome