Je suis développeur web freelance et propose des formations à Symfony2 ! Contactez-moi pour en discuter.

Je travaille en permanence avec plusieurs machines différentes pour me connecter à des serveurs de développement, de préproduction, à ma machine virtuelle ou à des machines de productions. Après avoir oublié plusieurs fois certains mots de passe, puis m’être planté une fois ou deux de terminal et avoir lanché des scripts sur la mauvaise machine, j’ai commencé à utiliser des codes couleurs pour les différentes machines que j’utilise. Et comme il est pénible de changer les codes couleurs à chaque connection, je me suis finalement mis à utiliser Revelation pour résoudre les deux problèmes en une fois.

L'astuce : une couleur pour chaque machine

L’astuce : une couleur pour chaque machine

Révélation est en effet un gestionnaire de mots de passe, qui sert à les centraliser, et à lancer diverses applications qui les utilisent. Un mot de passe maitre sert à protéger l’accès à des personnes non désirées (dans une certaine mesure). Je m’en sers donc pour me stocker les mots de pass de connection SSH, et pour me connecter directement aux machines distantes en SSH.

L’astuce pour ne pas me tromper de machine, c’est que chacune d’entre elle a une couleur différente. Rouge (comme danger) pour la machine de production, vert pour une VM, et ainsi de suite.

Pour faire pareil, il suffit d’installer Revelation (apt-get install revelation), puis de faire 3 choses :

Créer un profil pour les couleurs des différentes machines :

N'ayez pas peur d'avoir autant de profils que de machine

N’ayez pas peur d’avoir autant de profils que de machine

Faire la manipulation suivante (sur Ubuntu) pour vos différentes machines :
Ouvrir une console
Edition -> profils -> nouveau
On lui donne un nom (notez le, il va servir plus tard), et le fait se baser sur un profil déjà plaisant
Dans l’onglet couleur, il suffit de décocher « utiliser les couleurs du thème système », et de choisir des couleurs (de texte et d’arrière plan) qui conviennent.

Quand vous avez terminé, vous devriez avoir autant de profils que vous utilisez de machine différente, et chacune d’entre elle aura une couleur différente. Vous pouvez remarquer que je nomme mes profils sous la forme profilXXX, histoire de m’y retrouver.

Configurer les raccourcis dans Revelation :

N'oubliez pas de mettre le nom du profil dans "Domaine"

N’oubliez pas de mettre le nom du profil dans « Domaine »

Une fois qu’on a les différents profils, il faut ensuite configurer les différentes connection SSH, comme dans l’image de droite.
On crée un nouveau raccourci de type shell, avec le nom de son choix, puis on remplit le nom d’hôte, le nom d’utilisateur et le mot de passe nécessaire à la connection à son shell.

L’astuce pour lancer la connection avec le profil désiré, c’est de mettre le nom du profil dans le champ « domaine ». On va ensuite configurer Revelation pour utiliser cette information comme nous le souhaitons.

N’oubliez pas de sauvegarder votre configuration Revelation (ctrl+S, ou le gros bouton enregistrer)

Configurer l’utilisation des profils au lancement des connections SSH :

Dernière étape, il faut préciser à Revelation d’utiliser nos profils lorsque l’on lance un terminal. Pour celà, il suffit d’aller dans Editer -> Préférences -> Commandes de lancement, et dans la ligne SSH, de mettre ce qui suit :

1
gnome-terminal %(--profile=%d%) -x ssh %(-l %u%) %h

Cette ligne parle d’elle même, on lance un terminal avec une connection ssh dont les options sont les paramètres de configuration de la machine donnée, et on choisit le profil correspondant pour le terminal.

Terminé !

L’utilisation est simple : on ouvre sa configuration dans revelation, choisit une machine, et le mot de passe est copié dans le presse papier. Sous Ubuntu, on peut le coller avec clic-molette, on appuie sur entrée, et c’est bon, on est connecté à sa machine. Et voila, fini les pertes de mot de passe, et fini les commandes lancées sur la mauvaise machine. Merci à Antho pour l’astuce !

Une Réponse à “Ne plus se planter de console entre sa VM, la préprod, la prod…”

  1. Fred Dit:

    Autre façon de faire, modifier la couleur du prompt selon l’environnement. A mon boulot les noms des machines sont standardisés, et le prompt est généré conditionnellement selon ce nom, du coup un même fichier .profile suffit pour toutes les machines.

Répondre

Unable to load the Are You a Human PlayThru™. Please contact the site owner to report the problem.