SSH istemcisini kapattıktan sonra çalışmakta olan bir arka plan işleminin durdurulmasını önleyin


3

Linux makinemde (Debian squeeze) çalışan bir işlemim bitmesi saatler (veya günler) alıyor.

Bunun ile yeniden başlatmak durdurmak istemiyorum screen, tmuxya bir çıkış ile yönlendirme nohup.

İle arka planda koymak için güvenli bir yol var mı ^Zve bgben ssh-oturumu kapatmak kez bu kadar bu devam edecek?


"tmux .." ile tekrar başlatmak için onu durdurun derken ne demek istiyorsunuz? Eğer ssh üzerinden bir tmux / scrn oturumu başlatırsanız, ssh bağlantınızı kapatırsanız hayatta kalacaktır.

işlem zaten çalışıyor ve birkaç saat sürüyor, ancak bunu durduramıyorum veya veri kaybedeceğim.
rubo77

Eğer komut zaten çalışıyorsa, bunu başarmanın bir yolu olduğunu sanmıyorum. Eğer altında çalıştırırsanız gelecekte bunu yapmak için, ancak, sayısız yolu vardır screen, dtach, tmuxvb zaten not olarak veya uygun yönlendirmeler ile ve nohup. Sen belki mümkün ^Z, bgşimdi, ama bu yeterli olsun o size arka ondan sonra terminaldeki I / O does bağlıdır.

Yanıtlar:


7

kullanım

commandtoexecute &> /dev/null &

sürecinizi arka planda çalıştıracak ve tüm çıktıları / dev / null dizinine yazdıracaktır.

/dev/nullÇıktıyı görmek için başka bir dosyayla değiştirin .

Örneğin commandtoexecute &> /tmp/file1 &

tail -f /tmp/file1tekrar çıkışa eklemek için kullanın

Ayrıca stdin'i yönlendirebilirsiniz, bkz. Http://www.tuxfiles.org/linuxhelp/iodirection.html

Zaten çalışan bir işlemden ayırmak istiyorsanız. disown <pid> Proid'inizin kimliğini bulmak için kullanın .

Terminali başka bir terminale de değiştirebilirsiniz:

  1. ekran başlatmak
  2. sürecinin karşılığını almak
  3. koşmak reptyr <pid>
  4. CTRL + A + D kullanarak ayır

reptyr: https://serverfault.com/a/284795


Ben de hata çıktısını görmek için 2> & 1 eklerdim.
Dmytro Sirenko

2
&> Tüm çıktıları yönlendirir: D

thx, bu ilk etapta doğru başlangıç ​​olurdu. Ama sorumu okumamışsın: işlem zaten devam ediyor ve
eklerinle başlayamazsın

tamam, düzenlendi, cevabımı kontrol et

1
beni buna getiriyor: serverfault.com/a/284795 , Bir ekran başlat, ptyr ile reptyr çalıştır ve ayır
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.