Question: I have a global rsnapshot config file for all machines that we backup. The global file has

```
ssh_args -p 123

```

The machine specific files include the global config file and tries to override the port:

```
include_conf    /etc/rsnapshot-common.conf
ssh_args    -p 456

```

This does not work, I get the error:

> 
> global ssh\_args can only be set once, but is already set. Perhaps you wanted to use a per-backup-point ssh\_args instead.
> 
> 
> 

So it knows what I want to do, but it doesn't tell me how to do it! The man page doesn't mention any way of doing this either. How do I change the port after its been set globally?

Answer: 
You can also set the port globally for that user inside the corresponding `~/.ssh/config`:

```
Host example.com
Port 1234

```

That way it'd get picked up everywhere SSH-related and you won't have to manually specify it each time. 

Not saying it's a better solution, just an alternative.
rsnapshot.conf is a TAB-separated file, so the ssh\_args can even contain spaces. Mine looks like this:

```
backup  root@HOSTNAME:/ HOSTNAME/   ssh_args=-p 2220 -i /ssh-id -o StrictHostKeychecking=no

```