Daily Weekly Monthly

Daily Shaarli

All links of one day in a single page.

September 8, 2016

[Astuce] screen: Cannot open your terminal '/dev/pts/0' - please check / Articles & Astuces / Mondedie.fr

Hier, j'ai voulu modifier un peu le programme écrit en c "reboot-rtorrent" et je me suis heurté à quelque chose d'étrange.
Il n'est pas possible de se rattacher à une session screen si auparavant on s'est connecté via ssh et su à notre utilisateur.

Par exemple, je me connecte avec l'utilisateur alexandre via ssh, et j'ai envie de voir une session screen de l'utilisateur pierre.
Pour cela je fais : (ex : je veux regarder le rtorrent de pierre)

alexandre@machine-de-guerre:~$ su pierre
pierre@machine-de-guerre:~$ screen -ls
There are screens on:
9732.test (19/03/2015 23:13:19)(Detached)
9025.pierre-rtorrent (03/09/2081 32:11:18)(Detached)
2 Sockets in /var/run/screen/S-pierre.
pierre@machine-de-guerre:~$ screen -r pierre-rtorrent
Cannot open your terminal '/dev/pts/0' - please check.

Là, impossible de rattacher la session screen.

La petite astuce est d'exécuter la commande ci-dessous avant de vouloir rattacher une session screen

script /dev/null

Et le miracle opère.

alexandre@machine-de-guerre:~$ su pierre
pierre@machine-de-guerre:~$ script /dev/null
pierre@machine-de-guerre:~$ screen -r pierre-rtorrent
pierre@machine-de-guerre:~$ magic !

note : Pour quitter une session screen sans la tuer vous faîtes [Ctrl + a] + [d]
Pour tuer une session screen... il faut aller lire la doc big_smile

Voilà, c'est fini.