156 lines
3.9 KiB
Groff
156 lines
3.9 KiB
Groff
.\" Traduction Laurent GAUTROT <l.gautrot@free.fr> - 2011-08-06
|
|
.mso www.tmac
|
|
.TH reptyr 1 "03 Feb 2011"
|
|
.SH NOM
|
|
reptyr \- Reassoccie un programme en cours d'exécution à un nouveau terminal
|
|
.SH SYNOPSIS
|
|
.B reptyr
|
|
.I PID
|
|
|
|
.B reptyr \-l
|
|
|
|
.SH DESCRIPTION
|
|
|
|
.B reptyr
|
|
est un utilitaire qui prend un programme en cours d'exécution et
|
|
l'attache à un nouveau terminal. Vous avez démarré un programme long à
|
|
travers ssh, mais vous devez partir et vous ne voulez pas
|
|
l'interrompre\ ? Démarrez simplement un screen, utilisez
|
|
.B reptyr
|
|
pour l'attraper, puis tuez la session ssh et vous pouvez rentrer à la
|
|
maison.
|
|
.LP
|
|
.B reptyr
|
|
fonctionne en s'attachant au programme visé à l'aide de
|
|
.BR ptrace (2),
|
|
en redirigeant les descripteurs de fichiers appropriés et en modifiant
|
|
le terminal de contrôle du programme (Voir
|
|
.BR tty (4))
|
|
C'est le détail qui fait que
|
|
.B reptyr
|
|
focntionne bien mieux que les autres programmes du même type, comme
|
|
.BR retty (1).
|
|
|
|
.LP
|
|
Après avoir attaché un programme, il apparaît soit à l'arrière-plan,
|
|
soit suspendu pour le shell qui l'a lancé (variable en fonction du
|
|
shell).
|
|
Pour une sécurité maximale, vous pouvez exécuter
|
|
.IP
|
|
bg; disown
|
|
.LP
|
|
|
|
dans le vieux shell pour supprimer l'association avec le programme,
|
|
mais
|
|
.B reptyr
|
|
tente de s'assurer que le programme visé reste en cours d'exécution
|
|
même si vous fermez le shell sans le faire.
|
|
|
|
.SH OPTIONS
|
|
|
|
.B \-l
|
|
.IP
|
|
Plutôt que d'attacher un nouveau processus, crée un couveau couple de
|
|
pty, redirige l'extrémité maîtresse vers le terminal en corus, puis
|
|
affiche le nom du pty esclave. Il pourra être passé en argument par
|
|
exemple à l'option
|
|
.I set inferior-tty
|
|
de
|
|
.B gdb.
|
|
.LP
|
|
|
|
.B \-s
|
|
.IP
|
|
|
|
Par défaut, reptyr déplace tout descripteur de fichier de la cible qui
|
|
était connecté au terminal de contrôle vers le nouveau terminal.
|
|
L'option
|
|
.B -s
|
|
fait que reptyr attache les descripteurs de fichiers 0, 1 et 2 sans
|
|
condition même si la cible n'a pas de terminal de contrôle ou qu'elle
|
|
n'est pas connectée à un terminal.
|
|
.LP
|
|
|
|
.B \-v
|
|
.IP
|
|
Affiche la version de
|
|
.B reptyr
|
|
et sort.
|
|
.LP
|
|
|
|
.B \-h
|
|
.IP
|
|
Affiche un message d'usage et sort.
|
|
.LP
|
|
|
|
.B \-V
|
|
.IP
|
|
Affiche des messages verbeux.
|
|
.LP
|
|
|
|
.SH NOTES
|
|
|
|
.B reptyr
|
|
dépend de l'appel système
|
|
.BR ptrace (2)
|
|
pour s'attacher au programme distant. Sur Ubuntu Maverick et suivant
|
|
cette possibilité est désactivée par défaut pour des raisons de
|
|
sécurité. Vous pouvez l'activer temporairement avec
|
|
.IP
|
|
# echo 0 > /proc/sys/kernel/yama/ptrace_scope
|
|
.LP
|
|
en tant que rootn ou de manière permanente en éditant le fichier
|
|
.IR /etc/sysctl.d/10-ptrace.conf ,
|
|
ui contient aussi plus d'information sur ce réglage.
|
|
|
|
.SH BUGS
|
|
|
|
Quand on s'attache à quelques programmes curses, ils ne redessinent
|
|
pas immédiatement l'écran, et un
|
|
.B ^L
|
|
ou équivalent est nécessaire pour forcer l'actualisation.
|
|
|
|
De la même manière, après avoir attaché certains programmes, le vieux
|
|
terminal est dans un état étrange et un
|
|
.B clear
|
|
ou même un
|
|
.B reset
|
|
est nécessaire avant que le vieux terminal ne soit à nouveau
|
|
utilisable.
|
|
|
|
L'attachement à rtorrent (et peut-être à d'autres applications) ne
|
|
fonctionne pas (rtorrent arrête d'accepter des entrées). Le problème
|
|
est que rtorrent utilise epoll pour vérifier l'entrée standard et
|
|
qu'on ne met pas à jour la référence interne que le descripteur de
|
|
fichier d'epoll a de l'ancien terminal.
|
|
|
|
L'attachement à un processus avec des fils ne fonctionne pas
|
|
correctement. Il devrait être possible de le corriger. Il faut juste
|
|
ptracer chaque fils individuellement et de jouer avec lui.
|
|
|
|
L'attachement à un processus
|
|
.BR less (1)
|
|
ne fonctionne pas si vous avez un fichier
|
|
.I .lessfilter
|
|
parce que
|
|
.BR less
|
|
abandonne un fils zombie dans ce cas. Ça devrait pouvoir être corrigé.
|
|
|
|
Vous pouvez rapporter des bugs à l'auteur (voir ci-dessous) ou par
|
|
l'issue tracker sur
|
|
GitHub.
|
|
|
|
.SH AUTEURS
|
|
|
|
reptyr est écrit par Nelson Elhage <nelhage@nelhage.com>.
|
|
|
|
.SH HOMEPAGE
|
|
|
|
.URL https://github.com/nelhage/reptyr
|
|
|
|
.SH VOIR AUSSI
|
|
|
|
.BR neercs (1),
|
|
.BR screen (1)
|
|
|