Byobu vs. GNU Screen vs. tmux - becerilerin kullanışlılığı ve aktarılabilirliği [kapalı]


95

Şimdiye kadar ben kullandım Konsole birden kabuk oturumları yönetmek için ama denemedim Byobu , GNU Ekranı ve tmux birden kabukları daha iyi destek sağlamak. Hepsi, mevcut oturumu ayırmaya ve daha sonra o eski oturuma tekrar eklemeyi sağlayan bir ana özelliği paylaşıyor.

Öğrenmek için bir araç seçmeme yardımcı olmak için şunu bilmek isterim: Aşağıdaki açılardan ne kadar farklılar?

  1. Özellikler (açık)
  2. Proje olgunluğu. Çok fazla değişen bir araç öğrenmek istemiyorum. Donanımlar açıktır, ancak kaybolan özellikler gibi sürprizlerden hoşlanmıyorum.
  3. Öğrenme eğrisi
  4. Farklı platformlarda bulunabilirlik. Bir araç öğrenirsem, bir FreeBSD sunucusunda, SuSE masaüstünde veya Ubuntu'da kullanabilmek isterim.
  5. Diğer etkileşimli kabuk programlarıyla uyumluluk. Hala vimve emacs -nwalışkın olduğum şekilde (pencere dışı modu veya metin modu) kullanabilir miyim? Klavye kısayolları diğer araçlarla çakışır mı?

Hepsini denedim ve Byobu GNU Screen ve tmux için bir tür ön uç gibi görünüyor. O zaman neden birisi GNU ekran projesine katkıda bulunmak ve yeni özellikler eklemek yerine Byobu'yu yarattı? Byobu neden GNU Ekranında bir çeşit gelişmiş arayüz modu değil? Byobu'yu GNU ekranlı arka uç olarak günlük aracım olarak kullanırsam, bu bilgiyi belirli bir makinede yalnızca GNU Ekranı varsa, Byobu olmadan GNU Ekranını kullanmak için aktarabilir miyim?


1
Kendi soruma yorum yapıyorum. Gönderimden sonra, StackExchange: gnu-screen: 199 kere tmux: 125 kez byobu: 18 kez bu etiketin hala popüler olmadığı anlamına mı geliyor? Ya da bu byobu o kadar sezgiseldir ki hiç kimsenin nasıl kullanılacağı hakkında bir sorusu yoktur?
Keitai

1
Çünkü byobusadece screenekstra özelliklere sahip bir çatal olduğundan, gnu-screenetiket uygulanır.
Grawity

2
Belgeleri (göre manpages.ubuntu.com/manpages/precise/en/man1/byobu.1.html ) Byobu varsayılan yapılandırması varsayılan arka uç olarak tmux kullanmaktır. Eğer byobu bir gnu ekran çatalı ise, bu tmux'un gnu ekrandan daha iyi olduğu anlamına mı geliyor?
Keitai

1
İlginç, şu an tmux'u desteklediğini bilmiyordum, ancak yalnızca bir sarmalayıcı betiği kalıyor - görünüşe göre bir çatal bile değil. Ancak evet, tmux bazı yönlerden Ekrandan daha iyidir (en azından SSS’nin iddia ettiği gibi).
Grawity

22
Byobu hiçbir şeyin çatalı değil! Bu, Gnome / KDE'nin Xorg'un üstündeki bir katman olmasına benzer, Screen ve Tmux'un üstündeki bir katmandır.
Dustin Kirkland

Yanıtlar:


32

GNU Ekranı vs Tmux için, okumak

ve bloglarda bulunabilecek başka birkaç karşılaştırma enkarnasyonu ve bunun gibi.

Sık sık tekrarlanan bazı genel terimler:

  • Tmux daha yeni. Bu, biraz meraklısı (basit dikey bölme, hoş yeşil çizgiler) olduğu ve örneğin uyumluluk için (destekçilerine göre önemsiz ölçüde) test edilebilecek biraz daha az iyi olduğu anlamına gelir.
  • Tmux kaynaklar konusunda daha yalın.
  • GNU Ekranı her yerde bulunur ve büyük olasılıkla hala daha fazla kullanılmaktadır.

Bunun dışında biri, biri veya diğeri alternatif için belirli işlevlere bakabilir ve kişisel tercih tartışmaya hakim olacaktır. Şahsen GNU Screen'i çok kullanırdım - şimdi Tmux kullanıyorum.

Byobu’nun benim için “katil özelliklere” sahip olduğunu bulamadım. Kullanım durumlarım için gerekli olmadığına inandığım bir soyutlama sağlıyor.


Buna bakmanın bir başka yolu, Byobu'nun GNU Ekranı veya Tmux'u arka uç olarak kullanabileceğini, kullanıcı POV'larındaki farklılıkların çoğunlukla yüzeysel olduğunu gösteren nottur.


268

Harika soru! Buna değer, ben Byobu'nun yazarı ve koruyucusuyum .

Byobu , başlangıçta GNU Ekranının üstüne oturmak için yazılmış bir konfigürasyon katmanıdır, fakat aynı zamanda Tmux'un üstünde de çalışıyor .

Ben geri Byobu yazmaya başladı 2008 Aralık Ben Ekran ve Ubuntu Sunucu kullanıcılarının bir grup ile bir araya geldi gibi Googleplex'te ve tespit hepsi bize bizim içinde düzgün / eğlence / kullanışlı dalaverecileri kendi demet muhafaza ~/.screenrcyapılandırmaları. Bunları, kullandığımız düzinelerce veya yüzlerce sunucu arasında elle taşımak zorunda kaldık. Püf noktaları ve püf noktaları ticaretine başladık ve bunları "ekran profilleri" adı verilen orijinal GPLv3 projesinde toplamaya başladım . Yaklaşık 6 ay sonra, bir topluluk " ekran profilleri " etrafında gelişti ve proje sadece ekran kırmalarından çok daha fazlası oldu - yapılandırma araçlarına, canlı durum eklentilerine ve anahtar bağlantılarına sahip olduk. Bu yüzden projeyi yeniden adlandırdık Bu zarif, katlanır "ekranlar" için Japonca bir kelime olan "Byobu" ve "Byobu $ FOO" için Google’ı "Ekran $ FOO" dan daha başarılı bir şekilde kullanabilme avantajına sahiptir.

Çoğu Linux dağıtımında ( Ubuntu , Debian , Fedora , Arch ) ve çoğu Mac / BSD ve diğer UNIX'lerde işlevsel olan Byobu ile, istediğiniz tüm terminallerde aynı görünüm ve kullanım, uygun tuş bağlamaları, dinamik sistem durum bilgisi verir. erişmeniz gerekiyor.

Neden GNU Screen projesine geri dönmüyorsunuz? Birkaç sebep ... Byobu'nun çalıştığı şeylerin yanı sıra yapılandırma seçenekleri. Hiçbiri ihtiyacı fonksiyonel olması Ekran kaynak tabanı dahil edilecek. Ekran varsayılan olarak eklerse, bazı şeyler daha iyi çalışabilir veya daha iyi sonuç verebilir, ancak değişikliklerin çoğu 25 yıllık bir yukarı akış projesine katkıda bulunmaları genellikle zor veya imkansız olan "çok düşünülür" dür . Ayrıca, GNU Screen projesi hiç değilse çok yavaş ilerliyor. 25+ yaşında ve 2008 yılının Ağustos ayından bu yana resmen serbest bırakılmadı . Her dağıtım sadece / usr / bin / screen'inizin çalışmasını ve güvenliğini sağlamak için çok sayıda yığın taşıyor. örneğin, Ubuntu ve Debian şu anda ~ 48’de 19K kod satırı taşıyoryamalar .

Yaklaşık 2 yıl önce Tmux'u öğrendim ve kaynak kodu, tasarım, arayüz ve aktif toplulukla gerçekten aşık oldum! Tmux'la ilgili düzeltmelere katkıda bulunmak ve posta listesindeki konuları tartışmak için çok daha kolay bir zaman geçirdim . Ve her yerde kullanan bir Byobu kullanıcısı olarak, Tmux seanslarıma 4 yıldan fazla süredir Byobu'nun tadını çıkarmaya başladığım ile aynı görünüm ve hissi vermek istedim. Bu yüzden taşıdık Byobu tüm kod Screen olarak, arka uç olarak tmux ile aynı derecede iyi çalışması için. İtibariyle Byobu 5.0 sürümü hala eski modunda desteklenmez Ekran ile, tmux, artık varsayılan arka uç olduğunu. Byobu şimdi, büyük ölçüde geliştirilmiş 256 renkli destek, UTF8 karakterleri ve yatay / dikey pencere bölme de dahil olmak üzere, Tmux'un Ekran Üzerindeki modern özelliklerinin çoğundan yararlanıyor.

Screen veya Tmux'taki varsayılan ayarlardan memnunsanız veya kendi konfigürasyon dosyalarınızı sıfırdan yazmak istiyorsanız, o zaman elbette, Screen ve Tmux, hayatımıza yıllar boyu verimlilik katan harika araçlar olarak. Screen ve Tmux'un kutudan ne yaptığını gerçekten genişleten ve genişleten bir dizi yapılandırma ile ilgileniyorsanız, Byobu!

Şerefe, Dustin


16
İyi açıklama. Ekranın çok fazla yamalı olması şaşırtıcı - yeni bir bakıcıya mı ihtiyacı var mı? Ve byobu harika - teşekkürler.
nealmcb

10
Keşke iki kez oy kullanabilseydim. Ben yıllardır byobu kullanıyorum ve bu kadar zamandır beni sakladığı karmaşıklığı daha yeni öğrendim.
Jamie Cook

2
Ben her zaman CTRL+` as escape. With ekran ` kullanırım ve tmuxbu bir cazibe gibi çalışır, ancak değil byobu(Debian 7.1 Wheezy).
Tino

1
Şimdi bu screenyeni bir bakıcıya sahip ve gelişme buhar almış gibi görünüyor, işler değişiyor mu?
muru

Bu varsayılan varsayımlar, onu genç tmux projesi haline getiremez mi? Yanıt, "Neden tmux projesine geri katkıda bulunmuyorsunuz?" Paragrafı eksik görünüyor. xkcd.com/927
user2707671

12

Gerçek bir kullanım durumunda itibaren arasındaki en büyük fark screenve tmuxonlar bölünmüş pencere ele nasıl.

Bir pencere screentek bir sözde-terminaldir. Bir screenoturuma eklendiğinde , terminalinizi her biri bir screenpencere görüntüleyebilen birden fazla bölgeye bölebilirsiniz . Birden fazla bölge aynı pencereyi görüntüleyebilir. Bölmeler oturumun bir parçası değildir; Eğer ayrılırsanız, bölmeleriniz kaybolur.

Bir pencere, her tmuxpanel için bir veya daha fazla sahte terminalden oluşur. Bu, daha sonra söküp tekrar takarsanız bölmelerin kalması demektir. Ayrıca, aynı anda yalnızca bir pencerede görüntüleyebileceğiniz tmuxve bölmelerin birden fazla pencerede paylaşılamadığı anlamına gelir . tmuxAncak, bir pencerenin birden fazla oturum arasında paylaşılmasına izin verir .

Kullanılan modeli tercih ediyorum tmux, ancak kullanılan modelden daha iyi olduğunu iddia edemedim screen.


3
Argüman yanlısı tmuxolan Deutsche Bahn . Hızlı bir trene bin, sshbir mobil bağlantı kullanarak çalışmayı dene ve tmuxmodelin çok daha üstün olduğunu göreceksin , çünkü sık bağlantı kopmasından birinden sonra, tekrar atlamadan sonra atlama panelindeki tüm panelleri yeniden ayarlamana gerek yok. SCNR
Tino

3
Sık sık kesilmeleri karşı karşıya, ben içine bakarak öneririz konmuş savrul aksine kayıp sinyalden otomatik kurtarmak hangissh
Ciprian Tomoiagă

4

Benim için, tmux için anlaşma kırıcı oturum paylaşımının uygulanmasıydı.

GNU Ekranında, başka bir kullanıcının bir oturuma bağlanmasına izin verirseniz veya oturumunuzu birden fazla terminale bağladıysanız, bağımsız olarak çalışabilirler (A oturumundaki ekranları B terminalinden değiştirmek A terminalini aynı zamanda ekrana çevirmez. oturum A).

Yukarıdaki, tmux (henüz?) Durumlarında değil veya davranışları değiştirmenin bir yolunu bulamadım.

Birisi bu davranışı tmux'ta değiştirmenin bir yolunu biliyorsa veya tmux bu davranışı değiştirmek için güncelleme yapıyorsa veya şimdi bu davranışı değiştirme seçeneği veriyorsa, lütfen yorum bırakın.


6
tmux"bağlantılı" oturumlar kavramına sahiptir new-session -t shared. 'Paylaşılan' pencereler yeni oturumda görünür, bir pencerede yeni pencereler diğerinde görünür ve bir pencerenin kapatılması diğer pencerede kapanır. Ancak, her bir müşterinin gördüğü pencere, eklediği gerçek oturuma özgüdür.
chepner
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.