Terk edilmiş ssh oturumlarına bağlanabilir veya görüntüleyebilir miyim?


14

sshŞirket ağındaki herhangi bir ana bilgisayardan yapabileceğim sanal bir redhat örneği var . Benim sshya da beni kesmek için neden olmayabilir bazı komut dosyalarını çalıştırırken oturumu düştü. whoKomut lokal hala düştü bağlantıyı listeler. İle yeniden bağlanmak sshtamamen yeni bir oturum başlatır. Orijinal oturuma bağlanmanın bir yolu var mı? Değilse öldürebilir miyim? Kök ve fiziksel erişimim var. Orijinal oturumda ekran kullanmıyordum.

Yanıtlar:


11

Uzaktan kumandanın ekranını kullanmak istiyorsunuz ve sonra ssh'a geri döndüğünüzde o ekran örneğine yeniden bağlanıyorsunuz.

ancak hayır, kendi başına bir ssh oturumuna yeniden bağlanamazsınız, ekranı (veya bunu kolaylaştırmak için bunun gibi bir şeyi) kullanmanız gerekir.

En az bir başka seçenek ve bu seçenek (tmux) ile ekran arasındaki bazı farklılıklar için bu soruya bakın . bu sorunun cevabını okuduktan sonra ... aslında tmux'un daha iyi olduğunu söyleyebilirim

oh ve evet killişlemi durdurmak için (çatallı bash dahil) skill, kullanıcıyı adıyla öldürmeye çalışabilirsiniz , ancak bu kullanıcının kök olup olmadığından şüpheleniyorum ... yapamayacağı şeyleri öldürmeyi deneyebilir.

cevap birkaç kez güncellendi


4

Varsayılan olarak, terk edilmiş bir ssh oturumuna yeniden bağlanamazsınız. Ancak, yeni bir ssh oturumu oluşturduktan sonra yeniden bağlanabileceğiniz bir ssh oturumu içinde işlemler ayarlayabilirsiniz.

Kullanmak istediğiniz şey ekran veya daha iyi byobu adı verilen ekranın etrafındaki kullanıcı dostu bir ambalajdır.

Ekran, aynı ssh oturumunda birden fazla sanal terminal oturumu çalıştırmanıza izin verir. Bir eğitim ve yardım sayfaları mevcuttur.

byobu , ctrl-a tuş kombinasyonu yerine basit bir işlev tuşu ile yeni ekranların kolayca açılmasını sağlayan bir sarıcıdır . Ayrıca, adlandırılabilen tüm açık sanal terminallerle birlikte bir durum satırı gösterir.

Başka bir güzel özellik, ssh bağlantınız kesikken tüm ekranınızın ayakta kalabilmesidir. Sadece ssh ile tekrar bağlanın ve byobu arayın ve her şey eskisi gibi.

Sonunda byobu bazı ekran görüntüleri .


3

Belirtildiği gibi, ekran muhtemelen en iyi bahistir. Oturumunuz bırakılırsa / durdurulursa, çalışmaya devam eder. Kullanılabilir oturumları görmek için 'screen -list' yazın ve istediğiniz oturumla 'screen -r' yazın. Küçük bir ipucu, her şeyi kopyalamak / yapıştırmak yerine oturum dizesini tamamlayabilirsiniz.

Ancak, ekran sinir bozucu olabilir. Müşterimde, konsoldaki geçmişi görmek için kolayca yukarı kaydıramazsınız. Beklediğinizden biraz farklı davranıyor. Yapmak istediğiniz tek şey, uzun süren proc'larınızın öldürülmediğinden emin olmaksa, 'nohup' kullanın. Bağlantınızı kaybettiğinizde işleminizin kapanmasını önler. Bununla birlikte, proc çıkışınızı izlemek istiyorsanız bir dosyaya gönderdiğinizden emin olun. Ayrıca, bir bash betiğiniz varsa, nohup'ın önünde açıkça 'bash' çağırmanız gerektiğini düşünüyorum. Bir örnek...

nohup bash ./myscript.sh> output.log 2> & 1 &

Bu, proc'un öldürülmesini önlemek için, betiğinizde bash belirli şeyler varsa bash'ı açıkça çağırmak anlamına gelir, betiğiniz geçerli dizinde 'myscript.sh' olarak adlandırılır, hem std'yi gönderecek dosya olarak output.log hem de hataya ve proc'u arka planda çalıştırmak için sonda '&' işaretine tıklayın.

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.