Je mets en place un server sur lequel plusieurs développeurs travaillent sur plusieurs applications.
J'ai compris comment donner à certains développeurs un access partagé aux directorys d'application nécessaires en utilisant le setgid bit
et les default ACLs
pour donner default ACLs
à n'importe qui dans un groupe.
Beaucoup de ces applications s'exécutent sous un terminal en cours de développement pour un access facile. Lorsque je travaille seul, je configure un user pour une application et lance l'écran en tant que cet user. Cela a l'inconvénient que chaque développeur d'utiliser la screen session
doit connaître le mot de passe et il est plus difficile de séparer les counts d'user et d'application.
Une façon qui pourrait fonctionner est d'utiliser des fonctions multi-user écran. Ils ne fonctionnent pas en dehors de la boîte cependant, l'écran se plaint d'avoir besoin de la suid root
. Est-ce que donner cela a des inconvénients? Je fais très attention à utiliser n'importe quoi. Peut-être y a-t-il une raison pour laquelle ce n'est pas le défaut?
Devrais-je le faire avec l' screen
ou existe-t-il une autre manière intelligente de faire ce que je veux?
Oui, vous pouvez le faire avec un screen
qui a un support multi-user.
Tout d'abord, créez une nouvelle session:
screen -d -m -S multisession
Joindre à cela:
screen -r multisession
Activer le support multi-user:
Appuyez sur Ctrl-a
et tapez
:multiuser on :acladd USER ← use username of user you want to give access to your screen
Maintenant, Ctrl-a d
et listr les sessions:
$ screen -ls There is a screen on: 4791.multisession (Multi, detached)
Vous avez maintenant une session d'écran multi-user. Donnez le nom multisession
à l'user acl'd, afin qu'il puisse y attacher:
screen -x youruser/multisession
Et c'est tout.
Le seul inconvénient est que l' screen
doit fonctionner comme suid
root. Mais AFAIK est la situation normale par défaut.
HTH