Linux'de Screen Aracının Basit Kullanımı

Konu:

Etiketler:

SSH ya da benzeri bir yol ile uzak bağlantı yaptığımız Linux terminallerinde bağlantı bitse ya da bitirilse bile çalışmasının durmasını istemediğimiz bazı komutlar olabilir. Bunun için screen aracını kullanabiliriz. Screen, makinamızda yüklü değilse yüklememiz gerekebilir (örn. Ubuntu için sudo apt-get install screen).

Henüz screen'i kullanarak herhangi bir processi bırakmamışsak (gerekıyorsa sudo ile birlikte) sadece screen komutu ile yeni bir terminal açabiliriz. Ardından terminali terketsek de devam etmesini istediğimiz komutu çalıştırıp Ctrl + A ve ardından Ctrl + D tuş kombinasyonu ile ilgili terminali deattach edebiliriz, yani ayırabiliriz. Ayırdığımız terminaldeki işlem devam edecektir. Fakat biz o terminali terketmiş oluruyoruz.

Terkettiğimiz bir terminalin hayatta olduğunu görmek için screen -list komutunu kullanabiliriz. Bıraktığımız tüm terminal ekranlarının listesini bize verecektir.

En son terkedilen terminale geri dönmek yani terminali attach etmek için screen -d -r komutunu kullanırız. Bu şekilde en son bıraktığımız terminale ulaşırız.

Eğer hayatta olan bir terminal ile işimiz bitti ve bu terminali sonlandırmak istiyorsak, ilgili terminale bağlıyken exit komutuyla bu terminalin hayatına son verebiliriz.

Yani kısaca;

  1. screen deriz ve yeni bir terminal açılır. Bu terminalde çalışmasını istediğimiz komutu yazarız, örneğin 'node app' komutunu çalıştıralım;
  2. node app deriz.
  3. Komutumuzu bitirmeden terminalde ayrılmak için Ctrl + A ve ardından Ctrl + D tuş kombinasyonlarını kullanırız.
  4. Önceki terminale geri döndük, devam eden terminale gitmek için screen -d -r komutunu çalıştırırız.
  5. Bu terminali durdurmak için exit deriz.
  6. Tüm terminalleri listelemek için: screen -list

Not: Screen komutları için root yetkisi gerekebilir. Dolayısıyla örneğin Ubuntu'da her bir screen komutundan önce sudo gerekebilir.

Sorun: screen komutunu çalıştırdığımda boş bir ekran ve No more PTYs. uyarısı ile karşılaşıyorum. Nasıl çözebilirim?

screen komutunu root yetkisi ile çalıştırmadığımız takdirde böyle bir uyarı alırız. screen'i root yetkisiyle çalıştırdığımızda sorun olmayacaktır. Örneğin ubuntu için sudo screen demek yeterlidir.

Yeni yorum ekle

Filtered HTML

  • Web sayfası ve e-posta adresleri otomatik olarak bağlantıya çevrilir.
  • İzin verilen HTML etiketleri: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Satırlar ve paragraflar otomatik olarak bölünür.

Plain text

  • Hiç bir HTML etiketine izin verilmez
  • Web sayfası ve e-posta adresleri otomatik olarak bağlantıya çevrilir.
  • Satırlar ve paragraflar otomatik olarak bölünür.
Bu formu göndererek Mollom gizlilik şartlarını kabul etmiş oluyorsunuz.