---
name: "rdup-up"
section: "1"
platform: "linux"
package: "rdup"
version: "1.1.15-1"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/rdup-up"
---

# rdup-up(1)

update a directory tree with a rdup archive

## NAME

rdup-up - update a directory tree with a rdup archive

## SYNOPSIS

**rdup-up** \[*OPTION*\]... *DIRECTORY*

## DESCRIPTION

With **rdup-up** you can update an (possibly) existing directory structure with a rdup archive.

The rdup archive has to be given to **rdup-up**'s standard input.

### Username and uids

**rdup** outputs both the user name and uid, the receiving system (which may be a totally different system) checks if the user name and uid match. If the user name and uid don't match the (numeric) uid is used on the file. The same holds true for the group name and gid.

### File ownership

As **rdup** supports backups via SSH the following situation can occur: locally **rdup** is run a root, but **rdup-up** is run as a non-root user (the one logged in via SSH). In this case the original owner- and group name can not be set. If this happens **rdup-up** will create a *.\_rdup\_.* file which contains the user/group information, also see the *-u* flag for **rdup-tr** (and **rdup**).

## OPTIONS

- **-n**

  Do a dry-run and do not create anything on disk.

- **-t**

  Create DIRECTORY (ala mkdir -p) if it does not exist.

- **-s N**

  Strip N path components from a pathname. If the resulting pathname is empty after this operation it is skipped. Be careful however with the following structure:

      /foo\
       /foo/bar\
       /foo/bar/bla.txt\
       /foo/blork/bla.txt

  With **rdup-up -s***2* this will leave:

      \<empty\>\
       \<empty\>\
       /bla.txt\
       /bla.txt

  And the last 'bla.txt' will *over write* the previous one, this will happen without warnings.

- **-r PATH**

  This option is related to the -s option, but works different. The string PATH is removed from (the beginning of) each pathname. With *-r* */home/backup* the pathname */home/backup/bin/mycmd* becomes */bin/mycmd*. The same could be done with **-s 2**, but then you need to count the slashes. Note -s is always performed before -r.

- **-v**

  Be more verbose and echo the processed files to *standard output*.

- **-T**

  Show a table of contents of the rdup stream received (ala tar -tf -). With -T the directory argument is optional. -T unsets any verbose (-v) options.

- **-u**

  Do not create a *.\_rdup\_.* file which contains user/group information when failing to **chown** the actual file or directory. Useful when restoring a backup when you do not want to see *.\_rdup.\_*-files being created.

- **-q**

  Silence 'chown' failures even when running as root. This can be helpful when the  file system does not implement 'chown' or disallows it ('sshfs' for instance).

- **-h**

  A short help message.

- **-V**

  Show the version.

## EXIT CODE

**rdup-up** return a zero exit code on success, otherwise 1 is returned.

## AUTHOR

Written by Miek Gieben.

## REPORTING BUGS

Report bugs to \<miek@miek.nl\>.

## SEE ALSO

http:/www.miek.nl/projects/rdup/ is the main site of rdup. Also see [rdup(1)](/rdup/1.md), [rdup-tr(1)](/rdup-tr/1.md) and [rdup-backups(7)](/rdup-backups/7.md).

## COPYRIGHT

Copyright (C) 2005-2010 Miek Gieben. This is free software. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Licensed under the GPL version 3. See the file LICENSE in the source distribution of rdup.
