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: 
The [rsnapshot](http://linux.die.net/man/1/rsnapshot) man page seems to imply that you add the `per-backup-point` arguments as a comma separated list after the destination, the example they give is

```
backup /var/ localhost/ one_fs=1

```

> 
> This is the same as the other examples, but notice the fourth column. This is how you specify per-backup-point options to over-ride global settings. This extra parameter can take several options, separated by commas. 
> 
> 
> 

so I guess you would use

```
backup /var/ localhost/ ssh_args=-p456

```
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

```