[pb SSH] sous Linux
Résolu
stef
-
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour je viens de faire un apt-get upgrade sous Linux debian depuis Putty sous Windows.
L'opération va duré plus d'une heure encore, mais je dois eteidnre mon pc. Si je coupe putty, l'upgrade va s'arreter aussi.
Comment quitter Putty (et le reprendre sur une autre machine) sans quitter l'opération qui est en cours sur le serveur?
Merci
L'opération va duré plus d'une heure encore, mais je dois eteidnre mon pc. Si je coupe putty, l'upgrade va s'arreter aussi.
Comment quitter Putty (et le reprendre sur une autre machine) sans quitter l'opération qui est en cours sur le serveur?
Merci
A voir également:
- Parnohup
- Linux reader - Télécharger - Stockage
- Ssh download - Télécharger - Divers Web & Internet
- Toutou linux - Télécharger - Systèmes d'exploitation
- Backtrack linux - Télécharger - Sécurité
- R-linux - Télécharger - Sauvegarde
5 réponses
Salut stef,
C'est peut-être tard, vu l'heure de ton message.. mais bon, tu peux faire comme çà :
- suspendre le "job" : ctrl-z
- fermer putty
- ouvrir putty ailleurs
- continuer le "job" sur ta fenêtre de terminal : fg
Tu peux aussi le continuer en tâche de fond (bg) si tu ne tiens pas à voir la sortie sur l'écran. Ou, à l'avenir, commencer directement ta commande en arrière plan (commande &).
Voir : http://linuxreviews.org/beginner/jobs/
Dal
C'est peut-être tard, vu l'heure de ton message.. mais bon, tu peux faire comme çà :
- suspendre le "job" : ctrl-z
- fermer putty
- ouvrir putty ailleurs
- continuer le "job" sur ta fenêtre de terminal : fg
Tu peux aussi le continuer en tâche de fond (bg) si tu ne tiens pas à voir la sortie sur l'écran. Ou, à l'avenir, commencer directement ta commande en arrière plan (commande &).
Voir : http://linuxreviews.org/beginner/jobs/
Dal
Salut [Dall],
Le problème c'est que le "job" est accoché à un shell, et quand tu fermes le shell, ben forcément tu tues le "job" !!!
J'ai même essayé avec un "nohup cmd&" et même avec ça, pas moyen de garder le "job" vivant. Pour la petit histoire je l'ai passé en arrière plan (bg %n) avant de lui balancer le signal.
Donc si quelqu'un a la soluce pour détacher un "job" de son shell et le rebalancer sur un autre.... merci d'avance ;-))
Le problème c'est que le "job" est accoché à un shell, et quand tu fermes le shell, ben forcément tu tues le "job" !!!
J'ai même essayé avec un "nohup cmd&" et même avec ça, pas moyen de garder le "job" vivant. Pour la petit histoire je l'ai passé en arrière plan (bg %n) avant de lui balancer le signal.
Donc si quelqu'un a la soluce pour détacher un "job" de son shell et le rebalancer sur un autre.... merci d'avance ;-))
nohup pour moi ca sert pour garder un programme en vie si le shell auquel il est rattaché meurt, donc je suis surpris que là ca ne marche pas.
En tout cas, tu peux utiliser un screen, ça c'est sur que ça marche :p Et après tu récupères le screen à la maison :p Voici les bases :
screen (créé un screen)
Ctrl+A d (detached=console principale=reviens au premier plan)
screen -r (recupere un screen ouvert sur bash detached)
Ctrl+A " (liste des screens ouverts)
Ctrl+A ? (help)
En tout cas, tu peux utiliser un screen, ça c'est sur que ça marche :p Et après tu récupères le screen à la maison :p Voici les bases :
screen (créé un screen)
Ctrl+A d (detached=console principale=reviens au premier plan)
screen -r (recupere un screen ouvert sur bash detached)
Ctrl+A " (liste des screens ouverts)
Ctrl+A ? (help)
Salut mamie,
Merci pour la réponse.
Ben moi aussi je suis surpris (à moitié), car c'est un shell de conexion à travers "ssh" et forcément quand on sort on coupe tous les ponts, donc... !!!
C'est pour ça que je demandais si il y avait moyen de racorder le processus du shell à un autre terminal pour garder le lien ;-\
Sinon, screen ok, mais faut-il encore avoir lancé le process via "screen" !!! ;-))
Merci pour la réponse.
Ben moi aussi je suis surpris (à moitié), car c'est un shell de conexion à travers "ssh" et forcément quand on sort on coupe tous les ponts, donc... !!!
C'est pour ça que je demandais si il y avait moyen de racorder le processus du shell à un autre terminal pour garder le lien ;-\
Sinon, screen ok, mais faut-il encore avoir lancé le process via "screen" !!! ;-))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'avoue ne pas avoir testé avant de poster. Merci à tous les deux, je note çà dans mes tablettes :)
Dal
Dal
J'ai trouvé et ca a marché pour moi pendant un bon vieux bzip2 de 5giga.
Et pas besoin d'executer la commande avec une precommande spéciale.
Il suffit d'utiliser disown:
Si la commande n'a pas été exécuté sans le &, il suffit de faire Ctrl-Z puis bg pour passer la commande en job.
Voici la description et l'exemple:
disown
Some shells, like bash and zsh, contain a disown built-in which performs a similar function to detach. disown, without any arguments, removes the current job from the job table, meaning that, for all intents and purposes, the shell forgets the job exists. In particular, as with detach, the jobs will not exit when the shell does. You can also specify one or more jobs after the disown command, which will remove the specified jobs, rather than the current one.
Examples:
$ gv report.pdf &
[1] 9916
$ jobs
[1] + running gv report.pdf
$ disown %1
$ jobs
$ exit
# Shell exits, leaving gv running
Si vous faite un ps -ef vous verez que votre commande est toujours exécuté.
Et pas besoin d'executer la commande avec une precommande spéciale.
Il suffit d'utiliser disown:
Si la commande n'a pas été exécuté sans le &, il suffit de faire Ctrl-Z puis bg pour passer la commande en job.
Voici la description et l'exemple:
disown
Some shells, like bash and zsh, contain a disown built-in which performs a similar function to detach. disown, without any arguments, removes the current job from the job table, meaning that, for all intents and purposes, the shell forgets the job exists. In particular, as with detach, the jobs will not exit when the shell does. You can also specify one or more jobs after the disown command, which will remove the specified jobs, rather than the current one.
Examples:
$ gv report.pdf &
[1] 9916
$ jobs
[1] + running gv report.pdf
$ disown %1
$ jobs
$ exit
# Shell exits, leaving gv running
Si vous faite un ps -ef vous verez que votre commande est toujours exécuté.
- Connexion via ssh sur machine B
- Lancement de screen => screen
- Lancement de la commande ("top" pour avoir une tâche active)
- Arrêt (suspension) de la tâche => CTRL +Z
- Mise en arrière plan => bg %1
- Protection par "nohup" de la tâche => nohup top&
- Détachement du "screen" => CTRL +A + d
- Déconnexion => exit
- Lancement sur la machine B d'un shell
- Récupération du screen => screen -r
- Vérification des jobs => jobs
- Mise au premier plan de la tâche => fg %1
Je beam(e) comme dirait "johndoe" ;-)))
Merci mamiemando.