J'ai décidé d'essayer tmux :j'ai lu la documentation et cherché sur Google, essayant de trouver un moyen d'avoir deux utilisateurs partageant une session, chacun avec un curseur différent.
Cependant, en donnant 777 permissions au socket, ou en créant un groupe, chgrp
en ajoutant le socket et en y ajoutant les deux utilisateurs, semble permettre à ce même socket d'être utilisé pour partager une session avec un seul curseur :les deux utilisateurs peuvent écrire, mais toujours à la même position du curseur.
À l'heure actuelle, les deux utilisateurs sont sur le même serveur domestique via ssh, et l'idée est de pouvoir avoir :
- Un terminal dans, disons, le volet de gauche, où je peux taper des commandes
- Un autre terminal dans un volet de droite, où je peux voir un autre utilisateur saisir des commandes dans
son propre terminal - La même chose pour l'autre utilisateur
Ce que je fais pour le moment, c'est utiliser deux sessions (non partagées) et un script -f
et tail -f
combinaison qui fonctionne un peu pour lire les frappes des uns et des autres, mais je pense qu'il existe probablement un moyen de le faire en utilisant les capacités de partage de tmux.
Existe-t-il un moyen de faire fonctionner cette idée avec le support d'écriture dans le terminal de l'autre ?
Quelle est la meilleure façon de procéder ?
Réponse acceptée :
Cette question est un peu ancienne, mais je cherchais quelque chose de similaire et je l'ai trouvée ici. Il crée une deuxième session qui partage des fenêtres avec la première, mais possède sa propre vue et son propre curseur.
tmux new-session -s alice
tmux new-session -t alice -s bob
Si le partage se produit entre deux comptes d'utilisateurs, vous devrez peut-être encore jouer avec les autorisations (ce qui semble déjà fonctionner).
Modifier : Comme suggéré, une citation d'une autre réponse :
Tout d'abord, ajoutez un groupe pour les utilisateurs de tmux
export TMUX_GROUP=tmux
addgroup $TMUX_GROUP
Créez un répertoire avec le groupe défini sur $TMUX_GROUP et utilisez le bit setgid pour que les fichiers créés dans le répertoire aient automatiquement le groupe défini sur $TMUX_GROUP.
mkdir /var/tmux
chgrp $TMUX_GROUP /var/tmux
chmod g+ws /var/tmux
Assurez-vous ensuite que les utilisateurs qui souhaitent partager la session sont membres de $TMUX_GROUP
usermod -aG $TMUX_GROUP user1
usermod -aG $TMUX_GROUP user2