How to Automatically Start or Reattach to a tmux Session with SSH #
When working on remote servers, maintaining persistent workflows can save a lot
of time and effort. By combining SSH
with tmux
, you can ensure that a session
starts automatically upon connection—or reattaches to an existing one. This
code snipped demonstrates how to configure your .ssh/config
file to achieve
this.
# .ssh/config
Host hack
Hostname hack.sizeofvoid.org
User KawwptnBlaubaer
IdentityFile ~/.ssh/id_ed25519_sk
RequestTTY yes
RemoteCommand tmux new -A -s hackon
Key points:
-
RequestTTY
: Ensures a pseudo-terminal is allocated. This is required for interactive applications like tmux. -
RemoteCommand: This is the magic command that handles tmux sessions:
-
tmux new
: Starts a new session. -
-A
: Attach to an existing session if one with the same name already exists. -
-s hackon
: Specifies the session name as hackon. You can replace this with a name of your choice.