Public bug reported:

I'm running rsync version 3.2.7-1ubuntu1.2 on an up-to-date installation
of Ubuntu Server 24.04.2.

I use rsync to copy files to a removable disk for backup purposes.  As
far as rsync is concerned, the copy is from one local path to another.
I use --remote-option=--fake-super to encode the file metadata in the
destination copy.  I'm seeing a problem where the destination data is
put in the wrong place.

The simple steps I found to reproduce this in just one directory of an
ext4 file system are below.  Notice a copy of source_dir wasn't put into
dest_dir.  It was put in a directory named ''$'\001' to ls and '?' to
find.  The directory name is random binary garbage.

<root@noble>ls -la
total 8
drwxr-xr-x  2 root root 4096 Mar 16 21:19 .
drwx------ 13 root root 4096 Mar 16 21:16 ..
<root@noble>mkdir source_dir
<root@noble>echo data > source_dir/testfile
<root@noble>mkdir dest_dir
<root@noble>rsync -a --remote-option=--fake-super source_dir dest_dir/
<root@noble>ls -la
total 20
drwxr-xr-x  3 root root 4096 Mar 16 21:20 ''$'\001'
drwxr-xr-x  5 root root 4096 Mar 16 21:20  .
drwx------ 13 root root 4096 Mar 16 21:16  ..
drwxr-xr-x  2 root root 4096 Mar 16 21:20  dest_dir
drwxr-xr-x  2 root root 4096 Mar 16 21:20  source_dir
<root@noble>find .
.
./dest_dir
./source_dir
./source_dir/testfile
./?
./?/source_dir
./?/source_dir/testfile

If I check our the rsync git repository and compile a upstream version
of rsync 3.2.7 or 3.4.1 (the latest), I don't see this issue.  The copy
of source_dir was put into dest_dir as expected.

<root@noble>ls -la
total 8
drwxr-xr-x  2 root root 4096 Mar 16 21:41 .
drwx------ 13 root root 4096 Mar 16 21:41 ..
<root@noble>mkdir source_dir
<root@noble>echo data > source_dir/testfile
<root@noble>mkdir dest_dir
<root@noble>rsync-3.2.7 -a --remote-option=--fake-super source_dir dest_dir/
<root@noble>ls -la
total 16
drwxr-xr-x  4 root root 4096 Mar 16 21:42 .
drwx------ 13 root root 4096 Mar 16 21:41 ..
drwxr-xr-x  3 root root 4096 Mar 16 21:42 dest_dir
drwxr-xr-x  2 root root 4096 Mar 16 21:42 source_dir
<root@noble>find .
.
./dest_dir
./dest_dir/source_dir
./dest_dir/source_dir/testfile
./source_dir
./source_dir/testfile


Other background:

<root@noble>lsb_release -rd
No LSB modules are available.
Description:    Ubuntu 24.04.2 LTS
Release:        24.04

<root@noble>apt-cache policy rsync
rsync:
  Installed: 3.2.7-1ubuntu1.2
  Candidate: 3.2.7-1ubuntu1.2
  Version table:
 *** 3.2.7-1ubuntu1.2 500
        500 http://us.archive.ubuntu.com/ubuntu noble-updates/main amd64 
Packages
        500 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages
        100 /var/lib/dpkg/status
     3.2.7-1ubuntu1 500
        500 http://us.archive.ubuntu.com/ubuntu noble/main amd64 Packages

ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: rsync 3.2.7-1ubuntu1.2
ProcVersionSignature: Ubuntu 6.8.0-55.57-generic 6.8.12
Uname: Linux 6.8.0-55-generic x86_64
ApportVersion: 2.28.1-0ubuntu3.5
Architecture: amd64
CasperMD5CheckResult: pass
Date: Sun Mar 16 21:28:26 2025
InstallationDate: Installed on 2025-03-07 (10 days ago)
InstallationMedia: Ubuntu-Server 24.04.1 LTS "Noble Numbat" - Release amd64 
(20240827)
ProcEnviron:
 LANG=en_US.UTF-8
 PATH=(custom, no user)
 SHELL=/bin/bash
 TERM=screen
 XDG_RUNTIME_DIR=<set>
SourcePackage: rsync
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: rsync (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug noble

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2103377

Title:
  rsync problem with local copying and --fake-super

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/rsync/+bug/2103377/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to