Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
technique:tips:broadcast [2021/01/30 14:51] – créée qduchemitechnique:tips:broadcast [2021/11/22 21:31] (Version actuelle) qduchemi
Ligne 7: Ligne 7:
 On a parfois besoin d'effectuer la même opération sur toutes les machines : installer un paquet, le configurer, redémarrer un service, etc. On a parfois besoin d'effectuer la même opération sur toutes les machines : installer un paquet, le configurer, redémarrer un service, etc.
  
-Se connecter un à un aux machines est assez pénible et fastidieux. De plus, on utilise pas Ansible, qui permettrait de résoudre le problème assez facilement.+Se connecter un à un aux machines est assez péniblefastidieux, et plus propice aux erreurs. De plus, on utilise pas Ansible, qui permettrait de résoudre le problème assez facilement.
  
 Je te propose ici une solution simple pour automatiser la connexion à toutes les machines, et taper une seule fois les commandes. Je te propose ici une solution simple pour automatiser la connexion à toutes les machines, et taper une seule fois les commandes.
  
-<bootnote>Il existe plein d'autres solutions `pssh`, `cssh`, etc. Libre à toi de choisir celle qui te convient !</bootnote>+<bootnote>Il existe plein d'autres solutions `pssh`, `cssh`, etc. Libre à toi de choisir celle qui te convient !</bootnote>
  
 ### Terminator et layout personnalisé ### Terminator et layout personnalisé
  
-[Terminator](https://doc.ubuntu-fr.org/terminator) est un terminal virtuel qui a pour particularité de scinder la fenêtre en plusieurs sous-terminaux, de créer des groupes de terminaux où les commandes sont répliquées, et est très personnalisable.+[Terminator](https://doc.ubuntu-fr.org/terminator) est un terminal virtuel qui a pour particularité de pouvoir scinder la fenêtre en plusieurs sous-terminaux, de créer des groupes de terminaux où les commandes sont répliquées, et est très personnalisable.
  
 En général, il suffit d'installer le paquet `terminator` sur ta machine. En général, il suffit d'installer le paquet `terminator` sur ta machine.
Ligne 23: Ligne 23:
 #### Configurer le layout #### Configurer le layout
  
-Ouvre un terminal, puis utilise une combinaison des raccourcis `Ctrl+Shift+o` et `Ctrl+Shift+e` pour ouvrir des sous terminaux, jusqu'à ce que la disposition te convienne et qu'il y en ait aucun que de machines (à ce jour, : `alice`, `bob`, `pica01`, `pica02`, `pica01-test`, `monitoring`, `media`). Exemple :+Ouvre un terminal, puis utilise une combinaison des raccourcis `Ctrl+Shift+o` et `Ctrl+Shift+e` pour ouvrir des sous terminaux, jusqu'à ce que la disposition te convienne et qu'il y en ait aucun que de machines (à ce jour, : `alice`, `bob`, `caribou`, `pica01`, `pica02`, `pica01-test`, `monitoring`, `media`). 
  
-{{ :technique:tips:terminator_split.png?600 |}}+<bootnote warning>C'est rare de devoir toucher simultanément aux machines physiques et aux machines virtuelles.</bootnote>
  
-Ensuite, on se rend dans les paramètre de Layout, et on en rajoute un nouveau. Terminator va automatiquement récupérer la configuration des terminaux ouverts, et l'intégrer dans le nouveau profil, il n'y a rien à faire.+Exemple : 
 + 
 +{{ :technique:tips:terminator_split.png?800 |}} 
 + 
 +Ensuite, on se rend dans les paramètre de `Layout`, et on en rajoute un nouveau. Terminator va automatiquement récupérer la configuration des terminaux ouverts, et l'intégrer dans le nouveau profil, il n'y a rien à faire.
  
 <bootnote warning>Si d'autres instances de Terminator sont ouvertes, elles seront également prises en compte, il vaut mieux les fermer.</bootnote> <bootnote warning>Si d'autres instances de Terminator sont ouvertes, elles seront également prises en compte, il vaut mieux les fermer.</bootnote>
Ligne 33: Ligne 37:
 Exemple : Exemple :
  
-{{ :technique:tips:terminator_new_layout.png |}}+{{ :technique:tips:terminator_new_layout.png?400 |}}
  
 On renomme le profil (exemple `picasoft`), et on appuie sur `save`. On renomme le profil (exemple `picasoft`), et on appuie sur `save`.
Ligne 39: Ligne 43:
 On retrouve bien les 7 terminaux. Pour chacun d'entre eux, on va indiquer la commande à exécuter, en l'occurrence une connexion SSH sur les machines. Exemple : On retrouve bien les 7 terminaux. Pour chacun d'entre eux, on va indiquer la commande à exécuter, en l'occurrence une connexion SSH sur les machines. Exemple :
  
-{{ :technique:tips:terminator_custom_command.png |}}+{{ :technique:tips:terminator_custom_command.png?600 |}}
  
-<bootnote warning>Ne pas cliquer sur `save` ! *you use the Save button in the Layouts after spending time setting the items below, you will lose these stored values (custom command, working directory) First get the layout right, then edit these within the Layouts tab of the Preferences Window. You do not need to use the Save button to keep these settings. There is potential to improve this behaviour, as it is a little unintuitive.* [Source](https://terminator-gtk3.readthedocs.io/en/latest/layouts.html)</bootnote>+<bootnote warning>Ne pas cliquer sur `save` !  
 +\\ 
 +« **If you use the Save button** in the Layouts after spending time setting the items below, **you will lose these stored values (custom command, working directory)**. First get the layout right, then edit these within the Layouts tab of the Preferences Window. You do not need to use the Save button to keep these settings. There is potential to improve this behaviour, as it is a little unintuitive. » *[Source](https://terminator-gtk3.readthedocs.io/en/latest/layouts.html)*</bootnote>
  
 On change la machine pour chaque terminal, puis on ferme. On change la machine pour chaque terminal, puis on ferme.
Ligne 60: Ligne 66:
 {{ :technique:tips:terminator_broadcastt.png |}} {{ :technique:tips:terminator_broadcastt.png |}}
  
-<bootnote>Il est aussi possible de mettre un sous-ensemble de terminaux dans un groupepuis de broadcaster pour ce groupe uniquement.</bootnote>+<bootnote>Il est aussi possible de mettre tous les terminaux dans un groupe (`Group All in Tab`) puis de broadcaster pour ce groupe uniquement. Sinon, le broadcast sera effectif dans tous les autres terminaux ouverts, même dans une autre fenêtre.</bootnote>
  
 Maintenant, tu peux rentrer ta passphrase et tester la puissance de cette configuration en lançant une commande sur toutes les machines, par exemple `hostname` : Maintenant, tu peux rentrer ta passphrase et tester la puissance de cette configuration en lançant une commande sur toutes les machines, par exemple `hostname` :
  
-{{ :technique:tips:terminator_hostname.png |}}+{{ :technique:tips:terminator_hostname.png?800 |}}
  
 ### Un grand pouvoir... ### Un grand pouvoir...
Ligne 76: Ligne 82:
  
 <bootnote critical>Toute commande en `sudo` doit être vérifiée mille fois. :-D</bootnote> <bootnote critical>Toute commande en `sudo` doit être vérifiée mille fois. :-D</bootnote>
- 
-### Flemme de configurer à la main ? 
- 
-Voilà la section de mon fichier de config. Remplace avec ton login et ça devrait rouler ! 
- 
-```toml 
-[layouts] 
-  [[default]] 
-    [[[child0]]] 
-      type = Window 
-      parent = "" 
-      order = 0 
-      position = 0:55 
-      maximised = False 
-      fullscreen = False 
-      size = 3200, 1691 
-      title = chosto@chosto: ~ 
-    [[[terminal0]]] 
-      type = Terminal 
-      parent = child0 
-      order = 0 
-      profile = default 
-      uuid = 498cd758-0193-4b69-b40a-9743e0b080a7 
-  [[picasoft]] 
-    [[[child0]]] 
-      type = Window 
-      parent = "" 
-      order = 0 
-      position = 0:55 
-      maximised = False 
-      fullscreen = False 
-      size = 3200, 1691 
-      title = chosto@chosto: ~ 
-      last_active_term = a2704452-a79d-4da7-8e26-02006a653f4b 
-      last_active_window = True 
-    [[[child1]]] 
-      type = VPaned 
-      parent = child0 
-      order = 0 
-      position = 843 
-      ratio = 0.5 
-    [[[child2]]] 
-      type = VPaned 
-      parent = child1 
-      order = 0 
-      position = 419 
-      ratio = 0.5 
-    [[[child3]]] 
-      type = HPaned 
-      parent = child2 
-      order = 0 
-      position = 1598 
-      ratio = 0.5001564945226917 
-    [[[terminal4]]] 
-      type = Terminal 
-      parent = child3 
-      order = 0 
-      profile = default 
-      uuid = 498cd758-0193-4b69-b40a-9743e0b080a7 
-      command = ssh qduchemi@bob.picasoft.net 
-    [[[terminal5]]] 
-      type = Terminal 
-      parent = child3 
-      order = 1 
-      profile = default 
-      uuid = be52c063-b71d-48d9-bf5f-1087e8a5021e 
-      command = ssh qduchemi@alice.picasoft.net 
-    [[[child6]]] 
-      type = HPaned 
-      parent = child2 
-      order = 1 
-      position = 1598 
-      ratio = 0.5001564945226917 
-    [[[terminal7]]] 
-      type = Terminal 
-      parent = child6 
-      order = 0 
-      profile = default 
-      uuid = 459f8f25-6f92-46a7-86bc-a591f86cbfb8 
-      command = ssh qduchemi@media.picasoft.net 
-    [[[terminal8]]] 
-      type = Terminal 
-      parent = child6 
-      order = 1 
-      profile = default 
-      uuid = 0da29a47-442a-42e6-bfeb-5519e11781cc 
-      command = ssh qduchemi@monitoring.picasoft.net 
-    [[[child9]]] 
-      type = HPaned 
-      parent = child1 
-      order = 1 
-      position = 1598 
-      ratio = 0.5001564945226917 
-    [[[child10]]] 
-      type = VPaned 
-      parent = child9 
-      order = 0 
-      position = 421 
-      ratio = 0.5 
-    [[[terminal11]]] 
-      type = Terminal 
-      parent = child10 
-      order = 0 
-      profile = default 
-      uuid = a2704452-a79d-4da7-8e26-02006a653f4b 
-      command = ssh qduchemi@pica02.picasoft.net 
-    [[[terminal12]]] 
-      type = Terminal 
-      parent = child10 
-      order = 1 
-      profile = default 
-      uuid = c949ff4d-c156-4444-b8f6-5ccda3a39a0a 
-      command = ssh qduchemi@pica01-test.picasoft.net 
-    [[[terminal13]]] 
-      type = Terminal 
-      parent = child9 
-      order = 1 
-      profile = default 
-      uuid = c63ef1d8-085d-4b7a-8e1d-89bc09a2d5bb 
-      command = ssh qduchemi@pica01.picasoft.net 
-``` 
  • technique/tips/broadcast.1612014684.txt.gz
  • de qduchemi