home | hardware | software | misc | about | rss

Safely Broadcasting All With Terminator

03-June-2021

This won't be a long post, but hopefully will save someone out there from a disaster.

I wrote before about how I am a fan of Terminator and its "broadcast all" feature, which allows you to send a command to multiple Terminator panes or windows simultaneously. When combined with the pane splitting feature, this can be a tremendous time saver when you need to run the same command on multiple servers, for example, and have multiple SSH sessions open.

However, "broadcast all" can be dangerous, because Terminator will happily send that command to all of your Terminator windows, even in other virtual desktops. Working on configuring some out-of-production servers in one Terminator window? Forgot about that minimized Terminator window that has an open SSH session to a production server? It's easy to see where this could go. Fortunately, the only damage I have inflicted with this mistake (so far) was to my ego when I sent a reboot command to a bunch of remote machines, and was very surprised to see my own laptop reboot too. Sigh.

The "broadcast group" alternative seems to be the intended way to prevent this, but this requires actually setting up groups and then manually assigning Terminator instances to them. I simply can't be bothered. Instead, I just want to broadcast to multiple panes in my current Terminator window and nowhere else.

Fortunately, there's an easy solution: don't let Terminator use DBus. Go to preferences, uncheck "DBus server", done. Now "broadcast all" will only send your commands to the current window and its panes. You other Terminator sessions will be untouched.