Actualmente estoy ejecutando una copia de seguridad y ahora debe transferirse a una desmontable como en tmuxo screen. ¿Hay alguna manera de hacer esto cuando el comando se está ejecutando actualmente?
Puedo enviar el comando al fondo presionando Ctrl+ Zy volver a colocarlo emitiendo un fgcomando. pero no sé si esa sesión puede regresar cuando salgo de la terminal.
command-line
shell
gnu-screen
tmux
Jürgen Paul
fuente
fuente

Respuestas:
Esto funciona la mayor parte del tiempo:
Prerrequisitos: tener
reptyrytmux/screeninstalado; podrá encontrarlos conapt-getoyum, según su plataforma.Use Ctrl+ Zpara suspender el proceso.
Reanude el proceso en segundo plano con
bgEncuentre la identificación del proceso del proceso en segundo plano con
jobs -lVerás algo similar a esto:
Desconozca el trabajo del padre actual (shell) con
disown yourprocessnameInicio
tmux(preferido), oscreen.Vuelva a adjuntar el proceso a
tmux/screensession con reptyr:Ahora puede desconectar el multiplexor (por defecto Ctrl+ B, Dpara
tmuxo Ctrl+ A, Dparascreen) y desconectar SSH mientras su proceso continúa entmux/screen.Más tarde, cuando vuelva a conectarse con SSH, podrá conectarlo a su multiplexor (p
tmux attach. Ej .).fuente
sudo reptyr 1430todavía recibí: "... [-] No se puede abrir el tty en el niño. No se puede adjuntar a pid 1430: Permiso denegado"echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scopebg, el proceso debería ejecutarse en segundo plano, por lo quejobsdebería decir enRunninglugar deStopped.reptyres bueno pero recibí un error de permisoLuego encontrado
-L Like '-l', but also redirect the child's stdio to the slave.que funcionó de maravilla
fuente
-Lmensaje, recibí un mensaje como el tuyo,Opened a new pty: /dev/pts/6pero mi suspendidotopno apareció en el tmux. ¿que me estoy perdiendo aqui?puede usar disown para separar el trabajo de su terminal, si ese comando está disponible.
Sin embargo, es más seguro ejecutarlo con nohup.
fuente
nohup? ¿Cómo funcionadisowningun proceso?