Saat ini saya sedang menjalankan cadangan dan sekarang harus ditransfer ke yang dapat dilepas seperti pada tmux
atau screen
. Apakah ada cara untuk melakukan ini ketika perintah sedang berjalan?
Saya dapat mengirim perintah latar belakang dengan menekan Ctrl+ Zdan memasangnya kembali dengan mengeluarkan fg
perintah. tapi saya tidak tahu apakah sesi itu bisa kembali ketika saya keluar dari terminal.
command-line
shell
gnu-screen
tmux
Jürgen Paul
sumber
sumber
Jawaban:
Ini berfungsi, sebagian besar waktu:
Prasyarat: sudah
reptyr
dantmux
/screen
terpasang; Anda dapat menemukannya denganapt-get
atauyum
, tergantung pada platform Anda.Gunakan Ctrl+ Zuntuk menunda proses.
Lanjutkan proses di latar belakang dengan
bg
Temukan ID proses dari proses latar belakang
jobs -l
Anda akan melihat sesuatu yang mirip dengan ini:
Menolak pekerjaan dari induk saat ini (shell) dengan
disown yourprocessname
Mulai
tmux
(disukai), atauscreen
.Pasang kembali proses ke
tmux
/screen
sesi dengan reptyr:Sekarang Anda dapat melepaskan multiplexer (default Ctrl+ B, Duntuk
tmux
, atau Ctrl+ A, Duntukscreen
), dan memutuskan koneksi SSH saat proses Anda berlanjut ditmux
/screen
.Kemudian ketika Anda terhubung dengan SSH lagi, Anda dapat melampirkan multiplexer Anda (mis
tmux attach
.).sumber
sudo reptyr 1430
saya masih dapat: "... [-] Tidak dapat membuka tty pada anak. Tidak dapat melampirkan pid 1430: Izin ditolak"echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
bg
, proses harus berjalan di latar belakang, jadijobs
harus mengatakanRunning
daripadaStopped
.reptyr
bagus tapi saya mendapat kesalahan izinKemudian ditemukan
-L Like '-l', but also redirect the child's stdio to the slave.
yang bekerja seperti pesona
sumber
-L
saya mendapat pesan seperti milik Anda,Opened a new pty: /dev/pts/6
tetapi penangguhan sayatop
tidak muncul di tmux. Apa yang kulewatkan di sini?Anda dapat menggunakan disown untuk melepaskan pekerjaan dari terminalnya, jika perintah itu tersedia.
lebih aman untuk menjalankannya dengan nohup untuk memulai.
sumber
nohup
? Bagaimana caradisowning
kerja suatu proses?